UNPKG

jodit-pro

Version:

PRO Version of Jodit Editor

1,181 lines (1,087 loc) 3.15 MB
/*! * jodit-pro - PRO Version of Jodit Editor * Author: Chupurnov Valerii <chupurnov@gmail.com> * Version: v4.9.27 * Url: https://xdsoft.net/jodit/pro/ * License(s): SEE LICENSE IN LICENSE.md */ (function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(); else if(typeof define === 'function' && define.amd) define([], factory); else { var a = factory(); for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; } })(self, function() { return /******/ (function() { // webpackBootstrap /******/ "use strict"; /******/ var __webpack_modules__ = ({ /***/ 117: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ askInsertTypeDialog: function() { return /* binding */ askInsertTypeDialog; }, /* harmony export */ getAllTypes: function() { return /* binding */ getAllTypes; }, /* harmony export */ pasteInsertHtml: function() { return /* binding */ pasteInsertHtml; } /* harmony export */ }); /* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82758); /* harmony import */ var _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2748); /* harmony import */ var _core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(27613); /* harmony import */ var _core_ui_button_button_button_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(10830); function _array_like_to_array(arr, len) { if (len == null || len > arr.length) len = arr.length; for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i]; return arr2; } function _array_without_holes(arr) { if (Array.isArray(arr)) return _array_like_to_array(arr); } function _iterable_to_array(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } function _non_iterable_spread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } function _to_consumable_array(arr) { return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread(); } function _unsupported_iterable_to_array(o, minLen) { if (!o) return; if (typeof o === "string") return _array_like_to_array(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen); } /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ /** * Remove special HTML comments * @private */ function removeExtraFragments(html) { html = html.replace(/<meta[^>]+?>/g, ''); var start = html.search(/<!--StartFragment-->/i); if (start !== -1) { html = html.substring(start + 20); } var end = html.search(/<!--EndFragment-->/i); if (end !== -1) { html = html.substring(0, end); } return html; } /** * @private */ function isDragEvent(e) { return Boolean(e && e.type === 'drop'); } /** * One insert point for clipboard plugins * @private */ function pasteInsertHtml(e, editor, html) { if (editor.isInDestruct) { return; } if (isDragEvent(e)) { editor.s.insertCursorAtPoint(e.clientX, e.clientY); } var result = editor.e.fire('beforePasteInsert', html); if (!(0,_core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_2__.isVoid)(result) && ((0,_core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_2__.isString)(result) || (0,_core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_2__.isNumber)(result) || _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isNode(result))) { html = result; } if ((0,_core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_2__.isString)(html)) { html = removeExtraFragments(html); } editor.s.insertHTML(html); } /** * Return all available data types in event * @private */ function getAllTypes(dt) { var types = dt.types; var types_str = ''; if ((0,_core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_2__.isArray)(types) || ({}).toString.call(types) === '[object DOMStringList]') { for(var i = 0; i < types.length; i += 1){ types_str += types[i] + ';'; } } else { types_str = (types || _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.TEXT_PLAIN).toString() + ';'; } return types_str; } /** * Make command dialog * @private */ function askInsertTypeDialog(jodit, msg, title, callback, buttonList) { if (jodit.e.fire('beforeOpenPasteDialog', msg, title, callback, buttonList) === false) { return; } var dialog = jodit.confirm('<div style="word-break: normal; white-space: normal">'.concat(jodit.i18n(msg), "</div>"), jodit.i18n(title)); var buttons = buttonList.map(function(param) { var text = param.text, value = param.value; return (0,_core_ui_button_button_button_js__WEBPACK_IMPORTED_MODULE_3__.Button)(jodit, { text: text, name: text.toLowerCase(), tabIndex: 0 }).onAction(function() { dialog.close(); callback(value); }); }); dialog.e.one(dialog, 'afterClose', function() { if (!jodit.s.isFocused()) { jodit.s.focus(); } }); var cancel = (0,_core_ui_button_button_button_js__WEBPACK_IMPORTED_MODULE_3__.Button)(jodit, { text: 'Cancel', tabIndex: 0 }).onAction(function() { dialog.close(); }); dialog.setFooter(_to_consumable_array(buttons).concat([ cancel ])); buttons[0].focus(); buttons[0].state.variant = 'primary'; jodit.e.fire('afterOpenPasteDialog', dialog, msg, title, callback, buttonList); return dialog; } /***/ }), /***/ 159: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ FileBrowserItem: function() { return /* binding */ FileBrowserItem; } /* harmony export */ }); /* harmony import */ var _core_helpers_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21537); function _class_call_check(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for(var i = 0; i < props.length; i++){ var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _create_class(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } function _instanceof(left, right) { if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) { return !!right[Symbol.hasInstance](left); } else { return left instanceof right; } } /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ var FileBrowserItem = /*#__PURE__*/ function() { "use strict"; function FileBrowserItem(data) { var _this = this; _class_call_check(this, FileBrowserItem); this.data = data; // TODO Check with Object.assign Object.keys(data).forEach(function(key) { _this[key] = data[key]; }); } _create_class(FileBrowserItem, [ { key: "path", get: function get() { return (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_0__.normalizePath)(this.data.source.path ? this.data.source.path + '/' : '/'); } }, { key: "imageURL", get: function get() { var timestamp = this.time || new Date().getTime().toString(), _this_data = this.data, thumbIsAbsolute = _this_data.thumbIsAbsolute, source = _this_data.source, thumb = _this_data.thumb, file = _this_data.file, path = thumb || file; return thumbIsAbsolute && path ? path : (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_0__.normalizeUrl)(source.baseurl, source.path, path || '') + '?_tmst=' + encodeURIComponent(timestamp); } }, { key: "fileURL", get: function get() { var name = this.data.name; var _this_data = this.data, file = _this_data.file, fileIsAbsolute = _this_data.fileIsAbsolute, source = _this_data.source; if (file !== undefined) { name = file; } return fileIsAbsolute && name ? name : (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_0__.normalizeUrl)(source.baseurl, source.path, name || ''); } }, { key: "time", get: function get() { var changed = this.data.changed; return changed && (typeof changed === 'number' ? new Date(changed).toLocaleString() : changed) || ''; } }, { key: "uniqueHashKey", get: function get() { var data = this.data; var key = [ data.sourceName, data.name, data.file, this.time, data.thumb ].join('_'); key = key.toLowerCase().replace(/[^0-9a-z\-.]/g, '-'); return key; } }, { key: "toJSON", value: function toJSON() { return this.data; } } ], [ { key: "create", value: function create(data) { if (_instanceof(data, FileBrowserItem)) { return data; } return new FileBrowserItem(data); } } ]); return FileBrowserItem; }(); /***/ }), /***/ 302: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ getKey: function() { return /* binding */ getKey; } /* harmony export */ }); /* harmony import */ var _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2748); /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ /** * @module plugins/indent */ /** * Get style rule key for current direction * @internal */ var getKey = function getKey(direction, box) { return "".concat(_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isCell(box) ? 'padding' : 'margin').concat(direction === 'rtl' ? 'Right' : 'Left'); }; /***/ }), /***/ 384: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ sanitizeAttributes: function() { return /* binding */ sanitizeAttributes; } /* harmony export */ }); /* harmony import */ var _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2748); /* harmony import */ var _core_helpers_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21537); /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ /** * @private */ function sanitizeAttributes(jodit, nodeElm, hadEffect) { if (_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isElement(nodeElm) && (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_1__.sanitizeHTMLElement)(nodeElm, { safeJavaScriptLink: jodit.options.cleanHTML.safeJavaScriptLink, removeOnError: jodit.options.cleanHTML.removeOnError })) { return true; } return hadEffect; } /***/ }), /***/ 445: /***/ (function(__unused_webpack_module, __webpack_exports__) { /* harmony default export */ __webpack_exports__["default"] = ("<svg xmlns='http://www.w3.org/2000/svg' viewBox=\"0 0 1792 1792\"> <path d=\"M1792 1344v128q0 26-19 45t-45 19h-1664q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1664q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19h-1280q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1280q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19h-1536q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1536q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19h-1152q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1152q26 0 45 19t19 45z\"/> </svg> "); /***/ }), /***/ 575: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* unused harmony export enter */ /* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82758); /* harmony import */ var _core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(65478); /* harmony import */ var _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2748); /* harmony import */ var _core_global_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(580); /* harmony import */ var _core_helpers_checker_is_boolean_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(87612); /* harmony import */ var _core_plugin_plugin_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20356); /* harmony import */ var _helpers_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(35399); function _assert_this_initialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } function _call_super(_this, derived, args) { derived = _get_prototype_of(derived); return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args)); } function _class_call_check(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _construct(Parent, args, Class) { if (_is_native_reflect_construct()) { _construct = Reflect.construct; } else { _construct = function construct(Parent, args, Class) { var a = [ null ]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _set_prototype_of(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); } function _defineProperties(target, props) { for(var i = 0; i < props.length; i++){ var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _create_class(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } function _get_prototype_of(o) { _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _get_prototype_of(o); } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _set_prototype_of(subClass, superClass); } function _is_native_function(fn) { return Function.toString.call(fn).indexOf("[native code]") !== -1; } function _possible_constructor_return(self, call) { if (call && (_type_of(call) === "object" || typeof call === "function")) { return call; } return _assert_this_initialized(self); } function _set_prototype_of(o, p) { _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _set_prototype_of(o, p); } function _type_of(obj) { "@swc/helpers - typeof"; return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj; } function _wrap_native_super(Class) { var _cache = typeof Map === "function" ? new Map() : undefined; _wrap_native_super = function wrapNativeSuper(Class) { if (Class === null || !_is_native_function(Class)) return Class; if (typeof Class !== "function") { throw new TypeError("Super expression must either be null or a function"); } if (typeof _cache !== "undefined") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _get_prototype_of(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _set_prototype_of(Wrapper, Class); }; return _wrap_native_super(Class); } function _is_native_reflect_construct() { try { var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})); } catch (_) {} return (_is_native_reflect_construct = function() { return !!result; })(); } /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ var __decorate = undefined && undefined.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if ((typeof Reflect === "undefined" ? "undefined" : _type_of(Reflect)) === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; /** * One of most important core plugins. It is responsible for all the browsers to have the same effect when the Enter * button is pressed. By default, it should insert the <p> */ var enter = /*#__PURE__*/ function(Plugin) { "use strict"; _inherits(enter, Plugin); function enter() { _class_call_check(this, enter); return _call_super(this, enter, arguments); } _create_class(enter, [ { /** @override */ key: "afterInit", value: function afterInit(editor) { var _this = this; // use 'enter' option if no set var defaultTag = editor.o.enter.toLowerCase(); var brMode = defaultTag === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.BR.toLowerCase(); if (!editor.o.enterBlock) { editor.o.enterBlock = brMode ? _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.PARAGRAPH : defaultTag; } editor.registerCommand('enter', function(command, value) { var event = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}; return _this.onEnter(event); }); } }, { key: "onEnterKeyDown", value: function onEnterKeyDown(event) { if (event.key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_ENTER) { var editor = this.j; var beforeEnter = editor.e.fire('beforeEnter', event); if (beforeEnter !== undefined) { return beforeEnter; } if (!editor.s.isCollapsed()) { editor.execCommand('Delete'); } editor.s.focus(); this.onEnter(event); editor.e.fire('afterEnter', event); editor.synchronizeValues(); // fire change return false; } } }, { key: "onEnter", value: function onEnter(event) { var jodit = this.jodit; var fake = jodit.createInside.fake(); try { _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.safeInsertNode(jodit.s.range, fake); (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.moveCursorOutFromSpecialTags)(jodit, fake, [ 'a' ]); var block = (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.getBlockWrapper)(fake, jodit); var isLi = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isLeaf(block); // if use <br> defaultTag for break line or when was entered SHIFt key or in <td> or <th> or <blockquote> if ((!isLi || (event === null || event === void 0 ? void 0 : event.shiftKey)) && (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.checkBR)(fake, jodit, event === null || event === void 0 ? void 0 : event.shiftKey)) { return false; } // wrap no wrapped element if (!block && !(0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.hasPreviousBlock)(fake, jodit)) { block = (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.wrapText)(fake, jodit); } if (!block) { (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.insertParagraph)(fake, jodit, isLi ? 'li' : jodit.o.enter); return false; } if (!(0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.checkUnsplittableBox)(fake, jodit, block)) { return false; } if (isLi && this.__isEmptyListLeaf(block)) { (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.processEmptyLILeaf)(fake, jodit, block); return false; } (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.splitFragment)(fake, jodit, block); } finally{ fake.isConnected && jodit.s.setCursorBefore(fake); _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.safeRemove(fake); } } }, { key: "__isEmptyListLeaf", value: function __isEmptyListLeaf(li) { var result = this.j.e.fire('enterIsEmptyListLeaf', li); return (0,_core_helpers_checker_is_boolean_js__WEBPACK_IMPORTED_MODULE_4__.isBoolean)(result) ? result : _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isEmpty(li); } }, { /** @override */ key: "beforeDestruct", value: function beforeDestruct(editor) { editor.e.off('keydown.enter'); } } ]); return enter; }(_wrap_native_super(_core_plugin_plugin_js__WEBPACK_IMPORTED_MODULE_5__.Plugin)); __decorate([ (0,_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__.watch)(':keydown.enter') ], enter.prototype, "onEnterKeyDown", null); _core_global_js__WEBPACK_IMPORTED_MODULE_3__.pluginSystem.add('enter', enter); /***/ }), /***/ 580: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ eventEmitter: function() { return /* binding */ eventEmitter; }, /* harmony export */ extendLang: function() { return /* binding */ extendLang; }, /* harmony export */ getContainer: function() { return /* binding */ getContainer; }, /* harmony export */ getPopupViewRoot: function() { return /* binding */ getPopupViewRoot; }, /* harmony export */ instances: function() { return /* binding */ instances; }, /* harmony export */ modules: function() { return /* binding */ modules; }, /* harmony export */ pluginSystem: function() { return /* binding */ pluginSystem; }, /* harmony export */ uniqueUid: function() { return /* binding */ uniqueUid; } /* harmony export */ }); /* harmony import */ var _helpers_checker_is_jodit_object_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(19306); /* harmony import */ var _helpers_checker_is_string_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(70799); /* harmony import */ var _helpers_checker_is_view_object_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39955); /* harmony import */ var _helpers_string_kebab_case_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(12475); /* harmony import */ var _helpers_utils_css_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(41180); /* harmony import */ var _helpers_utils_get_class_name_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(80568); /* harmony import */ var _plugin_plugin_system_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(41876); /* harmony import */ var _event_emitter_global_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(57012); /* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(82758); /* harmony import */ var _dom_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(22732); /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ var instances = {}; var counter = 1; var uuids = new Set(); /** * Generate global unique uid */ function uniqueUid() { function gen() { counter += 10 * (Math.random() + 1); return Math.round(counter).toString(16); } var uid = gen(); while(uuids.has(uid)){ uid = gen(); } uuids.add(uid); return uid; } var pluginSystem = new _plugin_plugin_system_js__WEBPACK_IMPORTED_MODULE_6__.PluginSystem({ getContainer: getContainer }); var modules = {}; var extendLang = function extendLang(langs) { Object.keys(langs).forEach(function(key) { if (_constants_js__WEBPACK_IMPORTED_MODULE_8__.lang[key]) { Object.assign(_constants_js__WEBPACK_IMPORTED_MODULE_8__.lang[key], langs[key]); } else { _constants_js__WEBPACK_IMPORTED_MODULE_8__.lang[key] = langs[key]; } }); }; var boxes = new WeakMap(); /** * Create unique box(HTMLCotainer) and remove it after destroy */ function getContainer(jodit, classFunc) { var tag = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'div', createInsideEditor = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : false; var name = (0,_helpers_checker_is_string_js__WEBPACK_IMPORTED_MODULE_1__.isString)(classFunc) ? classFunc : classFunc ? (0,_helpers_utils_get_class_name_js__WEBPACK_IMPORTED_MODULE_5__.getClassName)(classFunc.prototype) : 'jodit-utils'; var data = boxes.get(jodit) || {}, key = name + tag; var view = (0,_helpers_checker_is_view_object_js__WEBPACK_IMPORTED_MODULE_2__.isViewObject)(jodit) ? jodit : jodit.j; var body = null; if (!data[key]) { var c = view.c; body = getPopupViewRoot(view.o, view.container, jodit.od.body); if (createInsideEditor && (0,_helpers_checker_is_jodit_object_js__WEBPACK_IMPORTED_MODULE_0__.isJoditObject)(jodit) && jodit.od !== jodit.ed) { c = jodit.createInside; var place = tag === 'style' ? jodit.ed.head : jodit.ed.body; body = (0,_helpers_checker_is_jodit_object_js__WEBPACK_IMPORTED_MODULE_0__.isJoditObject)(jodit) && jodit.o.shadowRoot ? jodit.o.shadowRoot : place; } var box = c.element(tag, { className: "jodit jodit-".concat((0,_helpers_string_kebab_case_js__WEBPACK_IMPORTED_MODULE_3__.kebabCase)(name), "-container jodit-box") }); box.classList.add("jodit_theme_".concat(view.o.theme || 'default')); body.appendChild(box); data[key] = box; jodit.hookStatus('beforeDestruct', function() { view.events.off(box); _dom_index_js__WEBPACK_IMPORTED_MODULE_9__.Dom.safeRemove(box); delete data[key]; if (Object.keys(data).length) { boxes.delete(jodit); } }); boxes.set(jodit, data); view.events.fire('getContainer', box); } data[key].classList.remove('jodit_theme_default', 'jodit_theme_dark'); data[key].classList.add("jodit_theme_".concat(view.o.theme || 'default')); return data[key]; } /** * Get root element for view * @internal */ function getPopupViewRoot(o, container, defaultRoot) { var _a, _b, _c; return (_c = (_b = (_a = o.popupRoot) !== null && _a !== void 0 ? _a : o.shadowRoot) !== null && _b !== void 0 ? _b : _dom_index_js__WEBPACK_IMPORTED_MODULE_9__.Dom.closest(container, function(parentElement) { return _dom_index_js__WEBPACK_IMPORTED_MODULE_9__.Dom.isHTMLElement(parentElement) && (_dom_index_js__WEBPACK_IMPORTED_MODULE_9__.Dom.isTag(parentElement, 'dialog') || [ 'fixed', 'absolute' ].includes((0,_helpers_utils_css_js__WEBPACK_IMPORTED_MODULE_4__.css)(parentElement, 'position'))); }, defaultRoot)) !== null && _c !== void 0 ? _c : defaultRoot; } /** * Global event emitter * @deprecated use `import { eventEmitter } from 'jodit/core/event-emitter/global';` */ var eventEmitter = _event_emitter_global_js__WEBPACK_IMPORTED_MODULE_7__.eventEmitter; /***/ }), /***/ 638: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ Alert: function() { return /* reexport safe */ _alert_js__WEBPACK_IMPORTED_MODULE_0__.Alert; }, /* harmony export */ Confirm: function() { return /* reexport safe */ _confirm_js__WEBPACK_IMPORTED_MODULE_1__.Confirm; }, /* harmony export */ Dialog: function() { return /* reexport safe */ _dialog_js__WEBPACK_IMPORTED_MODULE_2__.Dialog; }, /* harmony export */ Prompt: function() { return /* reexport safe */ _prompt_js__WEBPACK_IMPORTED_MODULE_3__.Prompt; } /* harmony export */ }); /* harmony import */ var _alert_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71568); /* harmony import */ var _confirm_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(26866); /* harmony import */ var _dialog_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(78584); /* harmony import */ var _prompt_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(36806); /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ /** * [[include:modules/dialog/README.md]] * @packageDocumentation * @module modules/dialog */ /***/ }), /***/ 757: /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) { /* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6441); /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ /** * @module plugins/media */ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.mediaFakeTag = 'jodit-media'; _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.mediaInFakeBlock = true; _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.mediaBlocks = [ 'video', 'audio' ]; /***/ }), /***/ 767: /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) { /* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82758); /* harmony import */ var _core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(65478); /* harmony import */ var _core_global_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(580); /* harmony import */ var _core_plugin_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(50911); /* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(66288); /* harmony import */ var _cases_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(47686); function _assert_this_initialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } function _call_super(_this, derived, args) { derived = _get_prototype_of(derived); return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args)); } function _class_call_check(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _construct(Parent, args, Class) { if (_is_native_reflect_construct()) { _construct = Reflect.construct; } else { _construct = function construct(Parent, args, Class) { var a = [ null ]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _set_prototype_of(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); } function _defineProperties(target, props) { for(var i = 0; i < props.length; i++){ var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _create_class(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } function _get_prototype_of(o) { _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _get_prototype_of(o); } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _set_prototype_of(subClass, superClass); } function _is_native_function(fn) { return Function.toString.call(fn).indexOf("[native code]") !== -1; } function _possible_constructor_return(self, call) { if (call && (_type_of(call) === "object" || typeof call === "function")) { return call; } return _assert_this_initialized(self); } function _set_prototype_of(o, p) { _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _set_prototype_of(o, p); } function _type_of(obj) { "@swc/helpers - typeof"; return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj; } function _wrap_native_super(Class) { var _cache = typeof Map === "function" ? new Map() : undefined; _wrap_native_super = function wrapNativeSuper(Class) { if (Class === null || !_is_native_function(Class)) return Class; if (typeof Class !== "function") { throw new TypeError("Super expression must either be null or a function"); } if (typeof _cache !== "undefined") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _get_prototype_of(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _set_prototype_of(Wrapper, Class); }; return _wrap_native_super(Class); } function _is_native_reflect_construct() { try { var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})); } catch (_) {} return (_is_native_reflect_construct = function() { return !!result; })(); } /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ var __decorate = undefined && undefined.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if ((typeof Reflect === "undefined" ? "undefined" : _type_of(Reflect)) === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var tab = /*#__PURE__*/ function(Plugin) { "use strict"; _inherits(tab, Plugin); function tab() { _class_call_check(this, tab); return _call_super(this, tab, arguments); } _create_class(tab, [ { key: "afterInit", value: function afterInit(jodit) {} }, { key: "__onTab", value: function __onTab(event) { if (event.key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_TAB && this.__onShift(event.shiftKey)) { return false; } } }, { key: "__onCommand", value: function __onCommand(command) { if ((command === 'indent' || command === 'outdent') && this.__onShift(command === 'outdent')) { return false; } } }, { key: "__onShift", value: function __onShift(shift) { var res = (0,_cases_index_js__WEBPACK_IMPORTED_MODULE_5__.onTabInsideLi)(this.j, shift); if (res) { this.j.e.fire('afterTab', shift); } return res; } }, { key: "beforeDestruct", value: function beforeDestruct(jodit) {} } ]); return tab; }(_wrap_native_super(_core_plugin_index_js__WEBPACK_IMPORTED_MODULE_3__.Plugin)); __decorate([ (0,_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__.watch)(':keydown.tab') ], tab.prototype, "__onTab", null); __decorate([ (0,_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__.watch)(':beforeCommand.tab') ], tab.prototype, "__onCommand", null); _core_global_js__WEBPACK_IMPORTED_MODULE_2__.pluginSystem.add('tab', tab); /***/ }), /***/ 820: /***/ (function(__unused_webpack_module, __webpack_exports__) { /* harmony default export */ __webpack_exports__["default"] = ("<svg xmlns='http://www.w3.org/2000/svg' viewBox=\"0 0 1792 1792\"> <path d=\"M747 1521q74 32 140 32 376 0 376-335 0-114-41-180-27-44-61.5-74t-67.5-46.5-80.5-25-84-10.5-94.5-2q-73 0-101 10 0 53-.5 159t-.5 158q0 8-1 67.5t-.5 96.5 4.5 83.5 12 66.5zm-14-746q42 7 109 7 82 0 143-13t110-44.5 74.5-89.5 25.5-142q0-70-29-122.5t-79-82-108-43.5-124-14q-50 0-130 13 0 50 4 151t4 152q0 27-.5 80t-.5 79q0 46 1 69zm-541 889l2-94q15-4 85-16t106-27q7-12 12.5-27t8.5-33.5 5.5-32.5 3-37.5.5-34v-65.5q0-982-22-1025-4-8-22-14.5t-44.5-11-49.5-7-48.5-4.5-30.5-3l-4-83q98-2 340-11.5t373-9.5q23 0 68.5.5t67.5.5q70 0 136.5 13t128.5 42 108 71 74 104.5 28 137.5q0 52-16.5 95.5t-39 72-64.5 57.5-73 45-84 40q154 35 256.5 134t102.5 248q0 100-35 179.5t-93.5 130.5-138 85.5-163.5 48.5-176 14q-44 0-132-3t-132-3q-106 0-307 11t-231 12z\"/> </svg> "); /***/ }), /***/ 1115: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ /* harmony default export */ __webpack_exports__["default"] = ({ 'Speech Recognize': 'Puheentunnistus', newline: 'uusi rivi', delete: 'poistaa', space: 'tilaa', Sound: 'Ääni', 'Interim Results': 'Välitulokset' }); /***/ }), /***/ 1172: /***/ (function(__unused_webpack_module, __webpack_exports__) { /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ /* harmony default export */ __webpack_exports__["default"] = ({ 'copy-format': '复制格式' }); /***/ }), /***/ 1255: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* unused harmony export dragAndDropElement */ /* harmony import */ var _core_decorators_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(65478); /* harmony import */ var _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22732); /* harmony import */ var _core_global_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(580); /* harmony import */ var _core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(21537); /* harmony import */ var _core_plugin_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(50911); /* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(44586); function _assert_this_initialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } function _call_super(_this, derived, args) { derived = _get_prototype_of(derived); return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args)); } function _class_call_check(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _construct(Parent, args, Class) { if (_is_native_reflect_construct()) { _construct = Reflect.construct; } else { _construct = function construct(Parent, args, Class) { var a = [ null ]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _set_prototype_of(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); } function _defineProperties(target, props) { for(var i = 0; i < props.length; i++){ var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _create_class(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } function _get_prototype_of(o) { _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _get_prototype_of(o); } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _set_prototype_of(subClass, superClass); } function _is_native_function(fn) { return Function.toString.call(fn).indexOf("[native code]") !== -1; } function _possible_constructor_return(self, call) { if (call && (_type_of(call) === "object" || typeof call === "function")) { return call; } return _assert_this_initialized(self); } function _set_prototype_of(o, p) { _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _set_prototype_of(o, p); } function _type_of(obj) { "@swc/helpers - typeof"; return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj; } function _wrap_native_super(Class) { var _cache = typeof Map === "function" ? new Map() : undefined; _wrap_native_super = function wrapNativeSuper(Class) { if (Class === null || !_is_native_function(Class)) return Class; if (typeof Class !== "function") { throw new TypeError("Super expression must either be null or a function"); } if (typeof _cache !== "undefined") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _get_prototype_of(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _set_prototype_of(Wrapper, Class); }; return _wrap_native_super(Class); } function _is_native_reflect_construct() { try { var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})); } catch (_) {} return (_is_native_reflect_construct = function() { return !!result; })(); } /*! * Jodit Editor (https://xdsoft.net/jodit/) * Released under MIT see LICENSE.txt in the project root for license information. * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net */ var __decorate = undefined && undefined.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if ((typeof Reflect === "undefined" ? "undefined" : _type_of(Reflect)) === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var DragState; (function(DragState) { DragState[DragState["IDLE"] = 0] = "IDLE"; DragState[DragState["WAIT_DRAGGING"] = 1] = "WAIT_DRAGGING"; DragState[DragState["DRAGGING"] = 2] = "DRAGGING"; })(DragState || (DragState = {})); /** * Process drag and drop image or another element inside the editor */ var dragAndDropElement = /*#__PURE__*/ function(Plugin) { "use strict"; _inherits(dragAndDropElement, Plugin); function dragAndDropElement() { _class_call_check(this, dragAndDropElement); var _this; _this = _call_super(this, dragAndDropElement, arguments); _this.dragList = [];