jodit 4.2.27 → 4.2.33

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 (162) hide show
  1. package/.nvmrc +1 -1
  2. package/CHANGELOG.md +110 -5
  3. package/es2015/jodit.css +11 -1
  4. package/es2015/jodit.fat.min.css +1 -1
  5. package/es2015/jodit.fat.min.js +2 -2
  6. package/es2015/jodit.js +354 -243
  7. package/es2015/jodit.min.css +1 -1
  8. package/es2015/jodit.min.js +2 -2
  9. package/es2015/plugins/debug/debug.js +1 -1
  10. package/es2015/plugins/debug/debug.min.js +1 -1
  11. package/es2015/plugins/speech-recognize/speech-recognize.css +1 -1
  12. package/es2015/plugins/speech-recognize/speech-recognize.js +25 -18
  13. package/es2015/plugins/speech-recognize/speech-recognize.min.js +2 -2
  14. package/es2018/jodit.css +11 -1
  15. package/es2018/jodit.fat.min.css +1 -1
  16. package/es2018/jodit.fat.min.js +2 -2
  17. package/es2018/jodit.js +347 -236
  18. package/es2018/jodit.min.css +1 -1
  19. package/es2018/jodit.min.js +2 -2
  20. package/es2018/plugins/debug/debug.js +1 -1
  21. package/es2018/plugins/debug/debug.min.js +1 -1
  22. package/es2018/plugins/speech-recognize/speech-recognize.css +1 -1
  23. package/es2018/plugins/speech-recognize/speech-recognize.js +25 -18
  24. package/es2018/plugins/speech-recognize/speech-recognize.min.js +2 -2
  25. package/es2021/jodit.css +11 -1
  26. package/es2021/jodit.fat.min.css +1 -1
  27. package/es2021/jodit.fat.min.js +2 -2
  28. package/es2021/jodit.js +347 -236
  29. package/es2021/jodit.min.css +1 -1
  30. package/es2021/jodit.min.js +2 -2
  31. package/es2021/plugins/debug/debug.js +1 -1
  32. package/es2021/plugins/debug/debug.min.js +1 -1
  33. package/es2021/plugins/speech-recognize/speech-recognize.css +1 -1
  34. package/es2021/plugins/speech-recognize/speech-recognize.js +25 -18
  35. package/es2021/plugins/speech-recognize/speech-recognize.min.js +2 -2
  36. package/es2021.en/jodit.css +11 -1
  37. package/es2021.en/jodit.fat.min.css +1 -1
  38. package/es2021.en/jodit.fat.min.js +2 -2
  39. package/es2021.en/jodit.js +322 -230
  40. package/es2021.en/jodit.min.css +1 -1
  41. package/es2021.en/jodit.min.js +2 -2
  42. package/es2021.en/plugins/debug/debug.js +1 -1
  43. package/es2021.en/plugins/debug/debug.min.js +1 -1
  44. package/es2021.en/plugins/speech-recognize/speech-recognize.css +1 -1
  45. package/es2021.en/plugins/speech-recognize/speech-recognize.js +25 -18
  46. package/es2021.en/plugins/speech-recognize/speech-recognize.min.js +2 -2
  47. package/es5/164.fat.min.js +10 -0
  48. package/es5/164.js +4939 -0
  49. package/es5/164.min.js +10 -0
  50. package/es5/5.fat.min.js +10 -0
  51. package/es5/5.js +76 -0
  52. package/es5/5.min.js +10 -0
  53. package/es5/jodit.css +12 -2
  54. package/es5/jodit.fat.min.css +1 -1
  55. package/es5/jodit.fat.min.js +2 -2
  56. package/es5/jodit.js +777 -5685
  57. package/es5/jodit.min.css +3 -3
  58. package/es5/jodit.min.js +2 -2
  59. package/es5/plugins/debug/debug.js +1 -1
  60. package/es5/plugins/debug/debug.min.js +1 -1
  61. package/es5/plugins/speech-recognize/speech-recognize.css +1 -1
  62. package/es5/plugins/speech-recognize/speech-recognize.js +26 -19
  63. package/es5/plugins/speech-recognize/speech-recognize.min.js +2 -2
  64. package/esm/config.js +3 -7
  65. package/esm/core/async/async.js +2 -1
  66. package/esm/core/constants.d.ts +2 -0
  67. package/esm/core/constants.js +10 -6
  68. package/esm/core/decorators/watch/watch.js +0 -1
  69. package/esm/core/dom/dom.js +2 -2
  70. package/esm/core/event-emitter/event-emitter.js +3 -3
  71. package/esm/core/global.js +13 -3
  72. package/esm/core/helpers/array/to-array.d.ts +1 -6
  73. package/esm/core/helpers/array/to-array.js +1 -1
  74. package/esm/core/helpers/async/set-timeout.d.ts +0 -3
  75. package/esm/core/helpers/async/set-timeout.js +3 -2
  76. package/esm/core/helpers/checker/has-browser-color-picker.d.ts +0 -3
  77. package/esm/core/helpers/checker/has-browser-color-picker.js +2 -1
  78. package/esm/core/helpers/checker/is-url.d.ts +0 -3
  79. package/esm/core/helpers/checker/is-url.js +2 -1
  80. package/esm/core/helpers/html/apply-styles.js +3 -3
  81. package/esm/core/helpers/html/clean-from-word.js +2 -1
  82. package/esm/core/helpers/html/htmlspecialchars.d.ts +0 -3
  83. package/esm/core/helpers/html/htmlspecialchars.js +2 -1
  84. package/esm/core/helpers/normalize/normalize-size.d.ts +1 -1
  85. package/esm/core/helpers/size/get-scroll-parent.js +3 -2
  86. package/esm/core/helpers/utils/complete-url.js +2 -1
  87. package/esm/core/helpers/utils/convert-media-url-to-video-embed.js +2 -1
  88. package/esm/core/helpers/utils/default-language.js +3 -2
  89. package/esm/core/helpers/utils/reset.js +3 -3
  90. package/esm/core/request/ajax.js +2 -1
  91. package/esm/core/selection/selection.js +1 -0
  92. package/esm/core/selection/style/api/has-same-style.js +15 -10
  93. package/esm/core/selection/style/api/toggle-attributes.js +2 -1
  94. package/esm/core/selection/style/commit-style.d.ts +1 -1
  95. package/esm/core/ui/form/inputs/file/file.d.ts +1 -0
  96. package/esm/core/ui/form/inputs/file/file.js +1 -0
  97. package/esm/core/ui/form/validators/input.d.ts +3 -3
  98. package/esm/core/ui/form/validators/select.d.ts +1 -1
  99. package/esm/jodit.js +3 -0
  100. package/esm/modules/file-browser/config.js +9 -1
  101. package/esm/modules/file-browser/data-provider.js +0 -1
  102. package/esm/modules/file-browser/file-browser.js +0 -1
  103. package/esm/modules/table/table.js +0 -1
  104. package/esm/modules/toolbar/button/button.d.ts +1 -1
  105. package/esm/plugins/backspace/cases/check-remove-char.js +1 -0
  106. package/esm/plugins/clean-html/config.d.ts +3 -3
  107. package/esm/plugins/iframe/config.d.ts +15 -3
  108. package/esm/plugins/iframe/config.js +1 -0
  109. package/esm/plugins/iframe/iframe.js +3 -0
  110. package/esm/plugins/indent/helpers.d.ts +1 -1
  111. package/esm/plugins/inline-popup/config/items/a.d.ts +2 -2
  112. package/esm/plugins/inline-popup/config/items/cells.d.ts +1 -1
  113. package/esm/plugins/inline-popup/config/items/img.d.ts +1 -1
  114. package/esm/plugins/search/config.js +2 -2
  115. package/esm/plugins/search/helpers/highlight-text-ranges.d.ts +2 -1
  116. package/esm/plugins/search/helpers/highlight-text-ranges.js +15 -4
  117. package/esm/plugins/search/search.d.ts +2 -2
  118. package/esm/plugins/search/search.js +8 -7
  119. package/esm/plugins/search/ui/search.js +3 -3
  120. package/esm/plugins/source/editor/engines/ace.d.ts +0 -1
  121. package/esm/plugins/speech-recognize/config.js +1 -1
  122. package/esm/plugins/speech-recognize/helpers/api.d.ts +1 -1
  123. package/esm/plugins/speech-recognize/helpers/api.js +5 -2
  124. package/esm/plugins/speech-recognize/helpers/sound.js +6 -4
  125. package/esm/plugins/stat/config.d.ts +1 -0
  126. package/esm/plugins/stat/config.js +1 -0
  127. package/esm/plugins/stat/stat.js +14 -3
  128. package/esm/plugins/symbols/langs/index.d.ts +2 -1
  129. package/esm/plugins/symbols/langs/index.js +2 -1
  130. package/esm/plugins/symbols/langs/ua.d.ts +1 -0
  131. package/esm/plugins/symbols/langs/ua.js +9 -0
  132. package/esm/polyfills.d.ts +10 -0
  133. package/esm/polyfills.js +54 -0
  134. package/esm/tsconfig.json +1 -1
  135. package/package.json +1 -1
  136. package/types/core/constants.d.ts +2 -0
  137. package/types/core/helpers/array/to-array.d.ts +1 -6
  138. package/types/core/helpers/async/set-timeout.d.ts +0 -3
  139. package/types/core/helpers/checker/has-browser-color-picker.d.ts +0 -3
  140. package/types/core/helpers/checker/is-url.d.ts +0 -3
  141. package/types/core/helpers/html/htmlspecialchars.d.ts +0 -3
  142. package/types/core/helpers/normalize/normalize-size.d.ts +1 -1
  143. package/types/core/selection/style/commit-style.d.ts +1 -1
  144. package/types/core/ui/form/inputs/file/file.d.ts +1 -0
  145. package/types/core/ui/form/validators/input.d.ts +3 -3
  146. package/types/core/ui/form/validators/select.d.ts +1 -1
  147. package/types/modules/toolbar/button/button.d.ts +1 -1
  148. package/types/plugins/clean-html/config.d.ts +3 -3
  149. package/types/plugins/iframe/config.d.ts +15 -3
  150. package/types/plugins/indent/helpers.d.ts +1 -1
  151. package/types/plugins/inline-popup/config/items/a.d.ts +2 -2
  152. package/types/plugins/inline-popup/config/items/cells.d.ts +1 -1
  153. package/types/plugins/inline-popup/config/items/img.d.ts +1 -1
  154. package/types/plugins/search/helpers/highlight-text-ranges.d.ts +2 -1
  155. package/types/plugins/search/search.d.ts +2 -2
  156. package/types/plugins/source/editor/engines/ace.d.ts +0 -1
  157. package/types/plugins/speech-recognize/helpers/api.d.ts +1 -1
  158. package/types/plugins/stat/config.d.ts +1 -0
  159. package/types/plugins/symbols/langs/index.d.ts +2 -1
  160. package/types/plugins/symbols/langs/ua.d.ts +1 -0
  161. package/types/polyfills.d.ts +10 -0
  162. package/types/tsconfig.json +1 -1
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.2.27
4
+ * Version: v4.2.33
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.2.27
4
+ * Version: v4.2.33
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.2.27
4
+ * Version: v4.2.33
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.2.27
4
+ * Version: v4.2.33
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -89,7 +89,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_3__/* .Config */ .T.prototype.controls.spe
89
89
  api = new _helpers_recognize_manager__WEBPACK_IMPORTED_MODULE_5__/* .RecognizeManager */ .g(jodit.async, nativeApi);
90
90
  api.lang = (0,jodit_core_helpers_checker_is_string__WEBPACK_IMPORTED_MODULE_7__/* .isString */ .K)(lang)
91
91
  ? lang
92
- : (0,jodit_core_helpers_utils_attr__WEBPACK_IMPORTED_MODULE_0__/* .attr */ .C)(jodit.od.documentElement, 'lang') ?? undefined;
92
+ : ((0,jodit_core_helpers_utils_attr__WEBPACK_IMPORTED_MODULE_0__/* .attr */ .C)(jodit.od.documentElement, 'lang') ?? undefined);
93
93
  api.continuous = continuous;
94
94
  api.interimResults = interimResults;
95
95
  api.sound = sound;
@@ -170,13 +170,17 @@ const WARN = 940;
170
170
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
171
171
  /* harmony export */ o: function() { return /* binding */ SpeechRecognition; }
172
172
  /* harmony export */ });
173
+ /* harmony import */ var jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(17352);
173
174
  /*!
174
175
  * Jodit Editor (https://xdsoft.net/jodit/)
175
176
  * Released under MIT see LICENSE.txt in the project root for license information.
176
177
  * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
177
178
  */
178
- const SpeechRecognition = window.SpeechRecognition ||
179
- window.webkitSpeechRecognition;
179
+
180
+ const SpeechRecognition = jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.globalWindow
181
+ ? jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.globalWindow.SpeechRecognition ||
182
+ jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.globalWindow.webkitSpeechRecognition
183
+ : undefined;
180
184
 
181
185
 
182
186
  /***/ }),
@@ -210,9 +214,9 @@ function execSpellCommand(jodit, commandSentence) {
210
214
  /* harmony export */ });
211
215
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(31635);
212
216
  /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22664);
213
- /* harmony import */ var jodit_core_event_emitter_eventify__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(43431);
214
- /* harmony import */ var _sound__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(95473);
215
- /* harmony import */ var jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(81629);
217
+ /* harmony import */ var jodit_core_event_emitter_eventify__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(43431);
218
+ /* harmony import */ var _sound__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(95473);
219
+ /* harmony import */ var jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(81629);
216
220
  /*!
217
221
  * Jodit Editor (https://xdsoft.net/jodit/)
218
222
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -224,7 +228,7 @@ var RecognizeManager_1;
224
228
 
225
229
 
226
230
 
227
- let RecognizeManager = RecognizeManager_1 = class RecognizeManager extends jodit_core_event_emitter_eventify__WEBPACK_IMPORTED_MODULE_1__/* .Eventify */ .h {
231
+ let RecognizeManager = RecognizeManager_1 = class RecognizeManager extends jodit_core_event_emitter_eventify__WEBPACK_IMPORTED_MODULE_2__/* .Eventify */ .h {
228
232
  set lang(v) {
229
233
  this._lang = v;
230
234
  this._api.lang = v;
@@ -262,7 +266,7 @@ let RecognizeManager = RecognizeManager_1 = class RecognizeManager extends jodit
262
266
  this._restartTimeout = this.async.setTimeout(() => {
263
267
  this.restart();
264
268
  this.emit('pulse', false);
265
- this._makeSound(jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_2__/* .WARN */ .Z);
269
+ this._makeSound(jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_3__/* .WARN */ .Z);
266
270
  }, 5000);
267
271
  this.emit('pulse', true);
268
272
  };
@@ -339,7 +343,7 @@ let RecognizeManager = RecognizeManager_1 = class RecognizeManager extends jodit
339
343
  this.emit('pulse', false);
340
344
  this.emit('result', this.__interimResults);
341
345
  this.__interimResults = '';
342
- this._makeSound(jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_2__/* .PII */ .N);
346
+ this._makeSound(jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_3__/* .PII */ .N);
343
347
  this.restart();
344
348
  }
345
349
  _onProgress(e) {
@@ -373,13 +377,13 @@ let RecognizeManager = RecognizeManager_1 = class RecognizeManager extends jodit
373
377
  e.error === 'language-not-supported') {
374
378
  this.emit('error', 'Language unavailable');
375
379
  }
376
- this._makeSound(jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_2__/* .WARN */ .Z);
380
+ this._makeSound(jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_3__/* .WARN */ .Z);
377
381
  this.emit('pulse', false);
378
382
  this.stop();
379
383
  }
380
384
  _makeSound(frequency) {
381
385
  if (this.sound) {
382
- (0,_sound__WEBPACK_IMPORTED_MODULE_3__/* .sound */ .s)({ frequency });
386
+ (0,_sound__WEBPACK_IMPORTED_MODULE_1__/* .sound */ .s)({ frequency });
383
387
  }
384
388
  }
385
389
  };
@@ -399,7 +403,8 @@ RecognizeManager = RecognizeManager_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/*
399
403
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
400
404
  /* harmony export */ s: function() { return /* binding */ sound; }
401
405
  /* harmony export */ });
402
- /* harmony import */ var jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(81629);
406
+ /* harmony import */ var jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(17352);
407
+ /* harmony import */ var jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(81629);
403
408
  /*!
404
409
  * Jodit Editor (https://xdsoft.net/jodit/)
405
410
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -409,17 +414,19 @@ RecognizeManager = RecognizeManager_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/*
409
414
  * @module plugins/speech-recognize
410
415
  */
411
416
 
417
+
412
418
  /**
413
419
  * @internal
414
420
  */
415
- function sound({ sec = 0.1, frequency = jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_0__/* .PII */ .N, gain = 0.1, type = 'sine' } = {}) {
416
- if (typeof window.AudioContext === 'undefined' &&
417
- typeof window.webkitAudioContext === 'undefined') {
421
+ function sound({ sec = 0.1, frequency = jodit_plugins_speech_recognize_constants__WEBPACK_IMPORTED_MODULE_1__/* .PII */ .N, gain = 0.1, type = 'sine' } = {}) {
422
+ if (!jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.globalWindow ||
423
+ (typeof jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.globalWindow.AudioContext === 'undefined' &&
424
+ typeof jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.globalWindow.webkitAudioContext === 'undefined')) {
418
425
  return;
419
426
  }
420
427
  // one context per document
421
- const context = new (window.AudioContext ||
422
- window.webkitAudioContext)();
428
+ const context = new (jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.globalWindow.AudioContext ||
429
+ jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.globalWindow.webkitAudioContext)();
423
430
  const vol = context.createGain();
424
431
  const osc = context.createOscillator();
425
432
  osc.type = type;
@@ -1,10 +1,10 @@
1
1
  /*!
2
2
  * jodit - Jodit is an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.2.27
4
+ * Version: v4.2.33
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
8
8
 
9
9
 
10
- ((e,t)=>{if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var s=t();for(var i in s)("object"==typeof exports?exports:e)[i]=s[i]}})(self,(function(){return(self.webpackChunkjodit=self.webpackChunkjodit||[]).push([[882],{71096(e,t,s){"use strict";var i=s(9810),n=s(98253),r=s(26150),o=s(72197),u=s(931),c=s(36115),a=s(71722),l=s(93676),p=s(22227),h=s.n(p);c.T.prototype.speechRecognize={api:void 0!==a.o?a.o:null,sound:!0,continuous:!1,interimResults:!0,commands:{"newline|enter":"enter","delete|remove word|delete word":"backspaceWordButton",comma:"inserthtml::,",underline:"inserthtml::_",hyphen:"inserthtml::-",space:"inserthtml:: ",question:"inserthtml::?",dot:"inserthtml::.","quote|quotes|open quote":"inserthtml::'","header|header h1":"formatblock::h1","select all":"selectall"}},u.I.set("speech-recognize",h()),c.T.prototype.controls.speechRecognize={isVisible:e=>!!e.o.speechRecognize.api,isActive(e,t){const s=(0,o.m)(e,"speech");return!!s?.isEnabled},isDisabled:e=>!e.o.speechRecognize.api,exec(e,t,{button:s,control:u}){const{api:c,lang:a,continuous:p,interimResults:h,sound:d}=e.o.speechRecognize;if(!c)return void e.alert("Speech recognize API unsupported in your browser");let m=(0,o.m)(e,"speech");if(!m){const t=new c;m=new l.g(e.async,t),m.lang=(0,n.K)(a)?a:(0,r.C)(e.od.documentElement,"lang")??void 0,m.continuous=p,m.interimResults=h,m.sound=d,(0,o.m)(e,"speech",m),m.on("pulse",(e=>{s.setMod("pulse",e)})),m.on("result",(t=>e.e.fire("speechRecognizeResult",t))),m.on("progress",(t=>e.e.fire("speechRecognizeProgressResult",t))),m.on("error",(t=>e.message.error(t))),s.hookStatus("beforeDestruct",(()=>{(0,o.m)(e,"speech",null),m.destruct()}))}if(u.args){const e=u.args[0];if((0,i.L)(m[e]))return m[e]=!m[e],void(m.isEnabled&&m.restart())}m.toggle(),m.isEnabled&&s.setMod("pulse",!0),s.state.activated=m.isEnabled},name:"speechRecognize",command:"toggleSpeechRecognize",tooltip:"Speech Recognize",list:{sound:"Sound",interimResults:"Interim Results"},childTemplate(e,t,s){const i=(0,o.m)(e,"speech");return`<span class='jodit-speech-recognize__list-item'><input ${i?.[t]??e.o.speechRecognize[t]?"checked":""} class='jodit-checkbox' type='checkbox'>&nbsp;${s}</span>`},mods:{stroke:!1}}},81629(e,t,s){"use strict";s.d(t,{N(){return i},Z(){return n}});const i=440,n=940},71722(e,t,s){"use strict";s.d(t,{o(){return i}});const i=window.SpeechRecognition||window.webkitSpeechRecognition},50834(e,t,s){"use strict";function i(e,t){const[s,i]=t.split("::");e.execCommand(s,null,i)}s.d(t,{F(){return i}})},93676(e,t,s){"use strict";s.d(t,{g(){return a}});var i,n=s(31635),r=s(22664),o=s(43431),u=s(95473),c=s(81629);let a=i=class e extends o.h{set lang(e){this._lang=e,this._api.lang=e}get lang(){return this._lang}set continuous(e){this._continuous=e,this._api.continuous=e}get continuous(){return this._continuous}set interimResults(e){this._interimResults=e,this._api.interimResults=e}get interimResults(){return this._interimResults}constructor(e,t){super(),this.async=e,this._continuous=!1,this._interimResults=!1,this.sound=!0,this._isEnabled=!1,this._restartTimeout=0,this._onSpeechStart=e=>{this._isEnabled&&(this.async.clearTimeout(this._restartTimeout),this._restartTimeout=this.async.setTimeout((()=>{this.restart(),this.emit("pulse",!1),this._makeSound(c.Z)}),5e3),this.emit("pulse",!0))},this.__interimResults="",this._api=t,i._instances.add(this)}destruct(){this.stop(),i._instances.delete(this),super.destruct()}get isEnabled(){return this._isEnabled}start(){if(!this._isEnabled){this._isEnabled=!0,i._instances.forEach((e=>{e!==this&&e.stop()}));try{this._api.start()}catch(e){return this._onError(e),void this.stop()}this.__on("speechstart",this._onSpeechStart).__on("error",this._onError).__on("result",this._onProgress).__on("end",this._onResults)}}stop(){this._isEnabled&&(this._api.abort(),this._api.stop(),this.__off("speechstart",this._onSpeechStart).__off("error",this._onError).__off("result",this._onProgress).__off("end",this._onResults),this.async.clearTimeout(this._restartTimeout),this._isEnabled=!1,this.emit("pulse",!1))}toggle(){this._isEnabled?this.stop():this.start()}restart(){this.stop(),this.start()}__on(e,t){return this._api.addEventListener(e,t),this}__off(e,t){return this._api.removeEventListener(e,t),this}_onResults(e){this.emit("pulse",!1),this.emit("result",this.__interimResults),this.__interimResults="",this._makeSound(c.N),this.restart()}_onProgress(e){if(this._isEnabled&&(this.__interimResults="",e.results)){for(let t=0;e.results.length>t;t++){const s=e.results.item(t);if(s.length){const{transcript:e}=s.item(0);this.__interimResults+=e}}this.__interimResults&&this.emit("progress",this.__interimResults)}}_onError(e){"voice-unavailable"===e.error&&this.emit("error","Voice unavailable"),"not-allowed"===e.error&&this.emit("error","Not allowed"),"language-unavailable"!==e.error&&"language-not-supported"!==e.error||this.emit("error","Language unavailable"),this._makeSound(c.Z),this.emit("pulse",!1),this.stop()}_makeSound(e){this.sound&&(0,u.s)({frequency:e})}};a._instances=new Set,a=i=(0,n.Cg)([r.autobind],a)},95473(e,t,s){"use strict";s.d(t,{s(){return n}});var i=s(81629);function n({sec:e=.1,frequency:t=i.N,gain:s=.1,type:n="sine"}={}){if(void 0===window.AudioContext&&void 0===window.webkitAudioContext)return;const r=new(window.AudioContext||window.webkitAudioContext),o=r.createGain(),u=r.createOscillator();u.type=n,u.frequency.value=t,u.connect(o),o.connect(r.destination),u.start(),u.stop(r.currentTime+e),o.gain.value=s}},61593(e){"use strict";e.exports={newline:"الخط الجديد",delete:"حذف",space:"الفضاء","Speech Recognize":"التعرف على الكلام",Sound:"الصوت","Interim Results":"النتائج المؤقتة"}},64458(e){"use strict";e.exports={newline:"řádek",delete:"odstranit",space:"prostora","Speech Recognize":"Rozpoznání Řeči",Sound:"Zvuk","Interim Results":"Průběžné Výsledky"}},89601(e){"use strict";e.exports={newline:"Zeilenumbruch",delete:"löschen",space:"Raum","Speech Recognize":"Sprache Erkennen",Sound:"Sound","Interim Results":"Zwischenergebnis"}},87710(e){"use strict";e.exports={newline:"nueva línea",delete:"eliminar",space:"espacio","Speech Recognize":"Reconocimiento de Voz",Sound:"Sonido","Interim Results":"Resultados Provisionales"}},15603(e){"use strict";e.exports={newline:"خط جدید",delete:"حذف",space:"فضا","Speech Recognize":"گفتار را تشخیص دهید",Sound:"صدا","Interim Results":"نتایج موقت"}},84059(e){"use strict";e.exports={"Speech Recognize":"Puheentunnistus",newline:"uusi rivi",delete:"poistaa",space:"tilaa",Sound:"Ääni","Interim Results":"Välitulokset"}},13958(e){"use strict";e.exports={newline:"nouvelle ligne",delete:"supprimer",space:"espace","Speech Recognize":"Reconnaissance Vocale",Sound:"Son","Interim Results":"Résultats Intermédiaires"}},18717(e){"use strict";e.exports={newline:"חדשות",delete:"מחק",space:"שטח","Speech Recognize":"דיבור מזהה",Sound:"קול","Interim Results":"תוצאות ביניים"}},14765(e){"use strict";e.exports={newline:"újsor",delete:"törlés",space:"tér","Speech Recognize":"A Beszéd Felismeri",Sound:"Hang","Interim Results":"Időközi Eredmények"}},77995(e){"use strict";e.exports={newline:"newline",delete:"Hapus",space:"ruang","Speech Recognize":"Pidato Mengenali",Sound:"Suara","Interim Results":"Hasil Sementara"}},25202(e,t,s){"use strict";s.r(t),s.d(t,{ar(){return i},cs_cz(){return n},de(){return r},es(){return o},fa(){return u},fi(){return c},fr(){return a},he(){return l},hu(){return p},id(){return h},it(){return d},ja(){return m},ko(){return g},mn(){return R},nl(){return _},pl(){return S},pt_br(){return w},ru(){return z},tr(){return f},ua(){return v},zh_cn(){return b},zh_tw(){return x}});var i=s(61593),n=s(64458),r=s(89601),o=s(87710),u=s(15603),c=s(84059),a=s(13958),l=s(18717),p=s(14765),h=s(77995),d=s(92315),m=s(54711),g=s(68632),R=s(76769),_=s(3424),S=s(85454),w=s(64149),z=s(16491),f=s(48948),v=s(95700),b=s(84370),x=s(56646)},92315(e){"use strict";e.exports={newline:"nuova riga",delete:"eliminare",space:"spazio","Speech Recognize":"Discorso Riconoscere",Sound:"Suono","Interim Results":"Risultati intermedi"}},54711(e){"use strict";e.exports={newline:"改行",delete:"削除",space:"スペース","Speech Recognize":"音声認識",Sound:"音","Interim Results":"中間結果"}},68632(e){"use strict";e.exports={newline:"줄 바꿈",delete:"삭제",space:"공간","Speech Recognize":"음성 인식",Sound:"소리","Interim Results":"중간 결과"}},76769(e){"use strict";e.exports={newline:"Шинэ мөр",delete:"Устгах",space:"Зай","Speech Recognize":"Дуу хоолой таних",Sound:"Дуу","Interim Results":"Түр зуурын үр дүн"}},3424(e){"use strict";e.exports={newline:"regel",delete:"verwijderen",space:"ruimte","Speech Recognize":"Spraak Herkennen",Sound:"Geluid","Interim Results":"Tussentijdse Resultaten"}},85454(e){"use strict";e.exports={newline:"newline",delete:"usunąć",space:"przestrzeń","Speech Recognize":"Rozpoznawanie Mowy",Sound:"Dźwięk","Interim Results":"Wyniki Okresowe"}},64149(e){"use strict";e.exports={newline:"linha",delete:"excluir",space:"espaco","Speech Recognize":"Discurso Reconhecer",Sound:"Som","Interim Results":"Resultados Provisórios"}},16491(e){"use strict";e.exports={newline:"новая строка|перенос|энтер",delete:"удалить",space:"пробел","Speech Recognize":"Распознавание речи",Sound:"Звук","Interim Results":"Промежуточные результаты"}},48948(e){"use strict";e.exports={newline:"yeni satır",delete:"silmek",space:"uzay","Speech Recognize":"Konuşma Tanıma",Sound:"Ses","Interim Results":"Ara Sonuçlar"}},95700(e){"use strict";e.exports={newline:"новая строка|перенос|ентер",delete:"видалити",space:"пробел","Speech Recognize":"Распознавание речи",Sound:"Звук","Interim Results":"Проміжні результати"}},84370(e){"use strict";e.exports={newline:"新行",delete:"删除",space:"空间","Speech Recognize":"言语识别",Sound:"声音","Interim Results":"中期业绩"}},56646(e){"use strict";e.exports={newline:"換行",delete:"刪除",space:"空白","Speech Recognize":"語音辨識",Sound:"聲音","Interim Results":"階段性辨識結果"}},37873(e,t,s){"use strict";s.r(t),s.d(t,{SpeechRecognizeNative(){return h}});var i=s(31635),n=s(66927),r=s(55186),o=s(56298),u=s(84976),c=s(71005),a=(s(71096),s(46173)),l=s(50834),p=s(25202);class h extends c.k{constructor(){super(...arguments),this.buttons=[{group:"state",name:"speechRecognize"}],this._commandToWord={}}afterInit(e){const{commands:t}=e.o.speechRecognize;t&&((0,o.JW)(p),(0,u.HP)(t,!1).forEach((s=>{s.split("|").forEach((i=>{i=i.trim().toLowerCase(),this._commandToWord[i]=t[s];const n=e.i18n(i);n!==i&&n.split("|").forEach((e=>{this._commandToWord[e.trim().toLowerCase()]=t[s].trim()}))}))})))}beforeDestruct(e){r.J.safeRemove(this.messagePopup)}onSpeechRecognizeProgressResult(e){this.messagePopup||(this.messagePopup=this.j.create.div("jodit-speech-recognize__popup")),this.j.workplace.appendChild(this.messagePopup),this.j.async.clearTimeout(this.__hidePopupTimeout),this.__hidePopupTimeout=this.j.async.setTimeout((()=>{r.J.safeRemove(this.messagePopup)}),1e3),this.messagePopup.innerText=e+"|"}onSpeechRecognizeResult(e){this.j.async.clearTimeout(this.__hidePopupTimeout),r.J.safeRemove(this.messagePopup);const{j:t}=this,{s}=t;if(!this._checkCommand(e)){const{range:i}=s,n=s.current();if(s.isCollapsed()&&r.J.isText(n)&&r.J.isOrContains(t.editor,n)&&n.nodeValue){const r=n.nodeValue;n.nodeValue=r+(/[\u00A0 ]\uFEFF*$/.test(r)?"":" ")+e,i.setStartAfter(n),s.selectRange(i),t.synchronizeValues()}else s.insertHTML(e)}}_checkCommand(e){return e=e.toLowerCase().replace(/\./g,""),!!this._commandToWord[e]&&((0,l.F)(this.j,this._commandToWord[e]),!0)}}(0,i.Cg)([(0,n.w)(":speechRecognizeProgressResult")],h.prototype,"onSpeechRecognizeProgressResult",null),(0,i.Cg)([(0,n.w)(":speechRecognizeResult")],h.prototype,"onSpeechRecognizeResult",null),a.x.plugins.add("speech-recognize",h)},22227(e){e.exports='<svg viewBox="0 0 16 16" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <path d="M8,11c1.657,0,3-1.343,3-3V3c0-1.657-1.343-3-3-3S5,1.343,5,3v5C5,9.657,6.343,11,8,11z"/> <path d="M13,8V6h-1l0,1.844c0,1.92-1.282,3.688-3.164,4.071C6.266,12.438,4,10.479,4,8V6H3v2c0,2.414,1.721,4.434,4,4.899V15H5v1h6 v-1H9v-2.101C11.279,12.434,13,10.414,13,8z"/> </svg>'}},e=>e(e.s=37873)])}));
10
+ ((e,t)=>{if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var s=t();for(var i in s)("object"==typeof exports?exports:e)[i]=s[i]}})(self,(function(){return(self.webpackChunkjodit=self.webpackChunkjodit||[]).push([[882],{71096(e,t,s){"use strict";var i=s(9810),n=s(98253),o=s(26150),r=s(72197),u=s(931),c=s(36115),l=s(71722),a=s(93676),p=s(22227),h=s.n(p);c.T.prototype.speechRecognize={api:void 0!==l.o?l.o:null,sound:!0,continuous:!1,interimResults:!0,commands:{"newline|enter":"enter","delete|remove word|delete word":"backspaceWordButton",comma:"inserthtml::,",underline:"inserthtml::_",hyphen:"inserthtml::-",space:"inserthtml:: ",question:"inserthtml::?",dot:"inserthtml::.","quote|quotes|open quote":"inserthtml::'","header|header h1":"formatblock::h1","select all":"selectall"}},u.I.set("speech-recognize",h()),c.T.prototype.controls.speechRecognize={isVisible:e=>!!e.o.speechRecognize.api,isActive(e,t){const s=(0,r.m)(e,"speech");return!!s?.isEnabled},isDisabled:e=>!e.o.speechRecognize.api,exec(e,t,{button:s,control:u}){const{api:c,lang:l,continuous:p,interimResults:h,sound:d}=e.o.speechRecognize;if(!c)return void e.alert("Speech recognize API unsupported in your browser");let m=(0,r.m)(e,"speech");if(!m){const t=new c;m=new a.g(e.async,t),m.lang=(0,n.K)(l)?l:(0,o.C)(e.od.documentElement,"lang")??void 0,m.continuous=p,m.interimResults=h,m.sound=d,(0,r.m)(e,"speech",m),m.on("pulse",(e=>{s.setMod("pulse",e)})),m.on("result",(t=>e.e.fire("speechRecognizeResult",t))),m.on("progress",(t=>e.e.fire("speechRecognizeProgressResult",t))),m.on("error",(t=>e.message.error(t))),s.hookStatus("beforeDestruct",(()=>{(0,r.m)(e,"speech",null),m.destruct()}))}if(u.args){const e=u.args[0];if((0,i.L)(m[e]))return m[e]=!m[e],void(m.isEnabled&&m.restart())}m.toggle(),m.isEnabled&&s.setMod("pulse",!0),s.state.activated=m.isEnabled},name:"speechRecognize",command:"toggleSpeechRecognize",tooltip:"Speech Recognize",list:{sound:"Sound",interimResults:"Interim Results"},childTemplate(e,t,s){const i=(0,r.m)(e,"speech");return`<span class='jodit-speech-recognize__list-item'><input ${i?.[t]??e.o.speechRecognize[t]?"checked":""} class='jodit-checkbox' type='checkbox'>&nbsp;${s}</span>`},mods:{stroke:!1}}},81629(e,t,s){"use strict";s.d(t,{N(){return i},Z(){return n}});const i=440,n=940},71722(e,t,s){"use strict";s.d(t,{o(){return n}});var i=s(17352);const n=i.globalWindow?i.globalWindow.SpeechRecognition||i.globalWindow.webkitSpeechRecognition:void 0},50834(e,t,s){"use strict";function i(e,t){const[s,i]=t.split("::");e.execCommand(s,null,i)}s.d(t,{F(){return i}})},93676(e,t,s){"use strict";s.d(t,{g(){return l}});var i,n=s(31635),o=s(22664),r=s(43431),u=s(95473),c=s(81629);let l=i=class e extends r.h{set lang(e){this._lang=e,this._api.lang=e}get lang(){return this._lang}set continuous(e){this._continuous=e,this._api.continuous=e}get continuous(){return this._continuous}set interimResults(e){this._interimResults=e,this._api.interimResults=e}get interimResults(){return this._interimResults}constructor(e,t){super(),this.async=e,this._continuous=!1,this._interimResults=!1,this.sound=!0,this._isEnabled=!1,this._restartTimeout=0,this._onSpeechStart=e=>{this._isEnabled&&(this.async.clearTimeout(this._restartTimeout),this._restartTimeout=this.async.setTimeout((()=>{this.restart(),this.emit("pulse",!1),this._makeSound(c.Z)}),5e3),this.emit("pulse",!0))},this.__interimResults="",this._api=t,i._instances.add(this)}destruct(){this.stop(),i._instances.delete(this),super.destruct()}get isEnabled(){return this._isEnabled}start(){if(!this._isEnabled){this._isEnabled=!0,i._instances.forEach((e=>{e!==this&&e.stop()}));try{this._api.start()}catch(e){return this._onError(e),void this.stop()}this.__on("speechstart",this._onSpeechStart).__on("error",this._onError).__on("result",this._onProgress).__on("end",this._onResults)}}stop(){this._isEnabled&&(this._api.abort(),this._api.stop(),this.__off("speechstart",this._onSpeechStart).__off("error",this._onError).__off("result",this._onProgress).__off("end",this._onResults),this.async.clearTimeout(this._restartTimeout),this._isEnabled=!1,this.emit("pulse",!1))}toggle(){this._isEnabled?this.stop():this.start()}restart(){this.stop(),this.start()}__on(e,t){return this._api.addEventListener(e,t),this}__off(e,t){return this._api.removeEventListener(e,t),this}_onResults(e){this.emit("pulse",!1),this.emit("result",this.__interimResults),this.__interimResults="",this._makeSound(c.N),this.restart()}_onProgress(e){if(this._isEnabled&&(this.__interimResults="",e.results)){for(let t=0;e.results.length>t;t++){const s=e.results.item(t);if(s.length){const{transcript:e}=s.item(0);this.__interimResults+=e}}this.__interimResults&&this.emit("progress",this.__interimResults)}}_onError(e){"voice-unavailable"===e.error&&this.emit("error","Voice unavailable"),"not-allowed"===e.error&&this.emit("error","Not allowed"),"language-unavailable"!==e.error&&"language-not-supported"!==e.error||this.emit("error","Language unavailable"),this._makeSound(c.Z),this.emit("pulse",!1),this.stop()}_makeSound(e){this.sound&&(0,u.s)({frequency:e})}};l._instances=new Set,l=i=(0,n.Cg)([o.autobind],l)},95473(e,t,s){"use strict";s.d(t,{s(){return o}});var i=s(17352),n=s(81629);function o({sec:e=.1,frequency:t=n.N,gain:s=.1,type:o="sine"}={}){if(!i.globalWindow||void 0===i.globalWindow.AudioContext&&void 0===i.globalWindow.webkitAudioContext)return;const r=new(i.globalWindow.AudioContext||i.globalWindow.webkitAudioContext),u=r.createGain(),c=r.createOscillator();c.type=o,c.frequency.value=t,c.connect(u),u.connect(r.destination),c.start(),c.stop(r.currentTime+e),u.gain.value=s}},61593(e){"use strict";e.exports={newline:"الخط الجديد",delete:"حذف",space:"الفضاء","Speech Recognize":"التعرف على الكلام",Sound:"الصوت","Interim Results":"النتائج المؤقتة"}},64458(e){"use strict";e.exports={newline:"řádek",delete:"odstranit",space:"prostora","Speech Recognize":"Rozpoznání Řeči",Sound:"Zvuk","Interim Results":"Průběžné Výsledky"}},89601(e){"use strict";e.exports={newline:"Zeilenumbruch",delete:"löschen",space:"Raum","Speech Recognize":"Sprache Erkennen",Sound:"Sound","Interim Results":"Zwischenergebnis"}},87710(e){"use strict";e.exports={newline:"nueva línea",delete:"eliminar",space:"espacio","Speech Recognize":"Reconocimiento de Voz",Sound:"Sonido","Interim Results":"Resultados Provisionales"}},15603(e){"use strict";e.exports={newline:"خط جدید",delete:"حذف",space:"فضا","Speech Recognize":"گفتار را تشخیص دهید",Sound:"صدا","Interim Results":"نتایج موقت"}},84059(e){"use strict";e.exports={"Speech Recognize":"Puheentunnistus",newline:"uusi rivi",delete:"poistaa",space:"tilaa",Sound:"Ääni","Interim Results":"Välitulokset"}},13958(e){"use strict";e.exports={newline:"nouvelle ligne",delete:"supprimer",space:"espace","Speech Recognize":"Reconnaissance Vocale",Sound:"Son","Interim Results":"Résultats Intermédiaires"}},18717(e){"use strict";e.exports={newline:"חדשות",delete:"מחק",space:"שטח","Speech Recognize":"דיבור מזהה",Sound:"קול","Interim Results":"תוצאות ביניים"}},14765(e){"use strict";e.exports={newline:"újsor",delete:"törlés",space:"tér","Speech Recognize":"A Beszéd Felismeri",Sound:"Hang","Interim Results":"Időközi Eredmények"}},77995(e){"use strict";e.exports={newline:"newline",delete:"Hapus",space:"ruang","Speech Recognize":"Pidato Mengenali",Sound:"Suara","Interim Results":"Hasil Sementara"}},25202(e,t,s){"use strict";s.r(t),s.d(t,{ar(){return i},cs_cz(){return n},de(){return o},es(){return r},fa(){return u},fi(){return c},fr(){return l},he(){return a},hu(){return p},id(){return h},it(){return d},ja(){return m},ko(){return g},mn(){return R},nl(){return _},pl(){return S},pt_br(){return w},ru(){return z},tr(){return f},ua(){return b},zh_cn(){return v},zh_tw(){return x}});var i=s(61593),n=s(64458),o=s(89601),r=s(87710),u=s(15603),c=s(84059),l=s(13958),a=s(18717),p=s(14765),h=s(77995),d=s(92315),m=s(54711),g=s(68632),R=s(76769),_=s(3424),S=s(85454),w=s(64149),z=s(16491),f=s(48948),b=s(95700),v=s(84370),x=s(56646)},92315(e){"use strict";e.exports={newline:"nuova riga",delete:"eliminare",space:"spazio","Speech Recognize":"Discorso Riconoscere",Sound:"Suono","Interim Results":"Risultati intermedi"}},54711(e){"use strict";e.exports={newline:"改行",delete:"削除",space:"スペース","Speech Recognize":"音声認識",Sound:"音","Interim Results":"中間結果"}},68632(e){"use strict";e.exports={newline:"줄 바꿈",delete:"삭제",space:"공간","Speech Recognize":"음성 인식",Sound:"소리","Interim Results":"중간 결과"}},76769(e){"use strict";e.exports={newline:"Шинэ мөр",delete:"Устгах",space:"Зай","Speech Recognize":"Дуу хоолой таних",Sound:"Дуу","Interim Results":"Түр зуурын үр дүн"}},3424(e){"use strict";e.exports={newline:"regel",delete:"verwijderen",space:"ruimte","Speech Recognize":"Spraak Herkennen",Sound:"Geluid","Interim Results":"Tussentijdse Resultaten"}},85454(e){"use strict";e.exports={newline:"newline",delete:"usunąć",space:"przestrzeń","Speech Recognize":"Rozpoznawanie Mowy",Sound:"Dźwięk","Interim Results":"Wyniki Okresowe"}},64149(e){"use strict";e.exports={newline:"linha",delete:"excluir",space:"espaco","Speech Recognize":"Discurso Reconhecer",Sound:"Som","Interim Results":"Resultados Provisórios"}},16491(e){"use strict";e.exports={newline:"новая строка|перенос|энтер",delete:"удалить",space:"пробел","Speech Recognize":"Распознавание речи",Sound:"Звук","Interim Results":"Промежуточные результаты"}},48948(e){"use strict";e.exports={newline:"yeni satır",delete:"silmek",space:"uzay","Speech Recognize":"Konuşma Tanıma",Sound:"Ses","Interim Results":"Ara Sonuçlar"}},95700(e){"use strict";e.exports={newline:"новая строка|перенос|ентер",delete:"видалити",space:"пробел","Speech Recognize":"Распознавание речи",Sound:"Звук","Interim Results":"Проміжні результати"}},84370(e){"use strict";e.exports={newline:"新行",delete:"删除",space:"空间","Speech Recognize":"言语识别",Sound:"声音","Interim Results":"中期业绩"}},56646(e){"use strict";e.exports={newline:"換行",delete:"刪除",space:"空白","Speech Recognize":"語音辨識",Sound:"聲音","Interim Results":"階段性辨識結果"}},37873(e,t,s){"use strict";s.r(t),s.d(t,{SpeechRecognizeNative(){return h}});var i=s(31635),n=s(66927),o=s(55186),r=s(56298),u=s(84976),c=s(71005),l=(s(71096),s(46173)),a=s(50834),p=s(25202);class h extends c.k{constructor(){super(...arguments),this.buttons=[{group:"state",name:"speechRecognize"}],this._commandToWord={}}afterInit(e){const{commands:t}=e.o.speechRecognize;t&&((0,r.JW)(p),(0,u.HP)(t,!1).forEach((s=>{s.split("|").forEach((i=>{i=i.trim().toLowerCase(),this._commandToWord[i]=t[s];const n=e.i18n(i);n!==i&&n.split("|").forEach((e=>{this._commandToWord[e.trim().toLowerCase()]=t[s].trim()}))}))})))}beforeDestruct(e){o.J.safeRemove(this.messagePopup)}onSpeechRecognizeProgressResult(e){this.messagePopup||(this.messagePopup=this.j.create.div("jodit-speech-recognize__popup")),this.j.workplace.appendChild(this.messagePopup),this.j.async.clearTimeout(this.__hidePopupTimeout),this.__hidePopupTimeout=this.j.async.setTimeout((()=>{o.J.safeRemove(this.messagePopup)}),1e3),this.messagePopup.innerText=e+"|"}onSpeechRecognizeResult(e){this.j.async.clearTimeout(this.__hidePopupTimeout),o.J.safeRemove(this.messagePopup);const{j:t}=this,{s}=t;if(!this._checkCommand(e)){const{range:i}=s,n=s.current();if(s.isCollapsed()&&o.J.isText(n)&&o.J.isOrContains(t.editor,n)&&n.nodeValue){const o=n.nodeValue;n.nodeValue=o+(/[\u00A0 ]\uFEFF*$/.test(o)?"":" ")+e,i.setStartAfter(n),s.selectRange(i),t.synchronizeValues()}else s.insertHTML(e)}}_checkCommand(e){return e=e.toLowerCase().replace(/\./g,""),!!this._commandToWord[e]&&((0,a.F)(this.j,this._commandToWord[e]),!0)}}(0,i.Cg)([(0,n.w)(":speechRecognizeProgressResult")],h.prototype,"onSpeechRecognizeProgressResult",null),(0,i.Cg)([(0,n.w)(":speechRecognizeResult")],h.prototype,"onSpeechRecognizeResult",null),l.x.plugins.add("speech-recognize",h)},22227(e){e.exports='<svg viewBox="0 0 16 16" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <path d="M8,11c1.657,0,3-1.343,3-3V3c0-1.657-1.343-3-3-3S5,1.343,5,3v5C5,9.657,6.343,11,8,11z"/> <path d="M13,8V6h-1l0,1.844c0,1.92-1.282,3.688-3.164,4.071C6.266,12.438,4,10.479,4,8V6H3v2c0,2.414,1.721,4.434,4,4.899V15H5v1h6 v-1H9v-2.101C11.279,12.434,13,10.414,13,8z"/> </svg>'}},e=>e(e.s=37873)])}));
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.2.27
4
+ * Version: v4.2.33
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -98,6 +98,8 @@
98
98
  display: inline-flex;
99
99
  flex-grow: 1;
100
100
  justify-content: center;
101
+ text-overflow: ellipsis;
102
+ overflow: hidden;
101
103
  }
102
104
  .jodit-ui-button-icon-text_context_menu .jodit-ui-button-icon-text__text {
103
105
  position: relative;
@@ -533,6 +535,8 @@
533
535
  display: inline-flex;
534
536
  flex-grow: 1;
535
537
  justify-content: center;
538
+ text-overflow: ellipsis;
539
+ overflow: hidden;
536
540
  }
537
541
  .jodit-ui-button_context_menu .jodit-ui-button__text {
538
542
  position: relative;
@@ -1537,6 +1541,8 @@
1537
1541
  display: inline-flex;
1538
1542
  flex-grow: 1;
1539
1543
  justify-content: center;
1544
+ text-overflow: ellipsis;
1545
+ overflow: hidden;
1540
1546
  }
1541
1547
  .jodit-toolbar-button_context_menu .jodit-toolbar-button__text {
1542
1548
  position: relative;
@@ -1895,6 +1901,8 @@
1895
1901
  display: inline-flex;
1896
1902
  flex-grow: 1;
1897
1903
  justify-content: center;
1904
+ text-overflow: ellipsis;
1905
+ overflow: hidden;
1898
1906
  }
1899
1907
  .jodit-toolbar-content_context_menu .jodit-toolbar-content__text {
1900
1908
  position: relative;
@@ -2108,6 +2116,8 @@
2108
2116
  display: inline-flex;
2109
2117
  flex-grow: 1;
2110
2118
  justify-content: center;
2119
+ text-overflow: ellipsis;
2120
+ overflow: hidden;
2111
2121
  }
2112
2122
  .jodit-toolbar-select_context_menu .jodit-toolbar-select__text {
2113
2123
  position: relative;