jodit 4.9.16 → 4.10.1

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 (65) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/es2015/jodit.css +8 -4
  3. package/es2015/jodit.fat.min.css +1 -1
  4. package/es2015/jodit.fat.min.js +5 -5
  5. package/es2015/jodit.js +60 -47
  6. package/es2015/jodit.min.css +1 -1
  7. package/es2015/jodit.min.js +5 -5
  8. package/es2015/plugins/debug/debug.css +1 -1
  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 +1 -1
  13. package/es2015/plugins/speech-recognize/speech-recognize.min.js +1 -1
  14. package/es2018/jodit.fat.min.css +1 -1
  15. package/es2018/jodit.fat.min.js +5 -5
  16. package/es2018/jodit.min.css +1 -1
  17. package/es2018/jodit.min.js +5 -5
  18. package/es2018/plugins/debug/debug.min.js +1 -1
  19. package/es2018/plugins/speech-recognize/speech-recognize.min.js +1 -1
  20. package/es2021/jodit.css +8 -4
  21. package/es2021/jodit.fat.min.css +1 -1
  22. package/es2021/jodit.fat.min.js +6 -6
  23. package/es2021/jodit.js +60 -47
  24. package/es2021/jodit.min.css +1 -1
  25. package/es2021/jodit.min.js +6 -6
  26. package/es2021/plugins/debug/debug.css +1 -1
  27. package/es2021/plugins/debug/debug.js +1 -1
  28. package/es2021/plugins/debug/debug.min.js +1 -1
  29. package/es2021/plugins/speech-recognize/speech-recognize.css +1 -1
  30. package/es2021/plugins/speech-recognize/speech-recognize.js +1 -1
  31. package/es2021/plugins/speech-recognize/speech-recognize.min.js +1 -1
  32. package/es2021.en/jodit.css +8 -4
  33. package/es2021.en/jodit.fat.min.css +1 -1
  34. package/es2021.en/jodit.fat.min.js +6 -6
  35. package/es2021.en/jodit.js +60 -47
  36. package/es2021.en/jodit.min.css +1 -1
  37. package/es2021.en/jodit.min.js +11 -11
  38. package/es2021.en/plugins/debug/debug.css +1 -1
  39. package/es2021.en/plugins/debug/debug.js +1 -1
  40. package/es2021.en/plugins/debug/debug.min.js +1 -1
  41. package/es2021.en/plugins/speech-recognize/speech-recognize.css +1 -1
  42. package/es2021.en/plugins/speech-recognize/speech-recognize.js +1 -1
  43. package/es2021.en/plugins/speech-recognize/speech-recognize.min.js +1 -1
  44. package/es5/jodit.css +11 -5
  45. package/es5/jodit.fat.min.css +1 -1
  46. package/es5/jodit.fat.min.js +2 -2
  47. package/es5/jodit.js +115 -98
  48. package/es5/jodit.min.css +3 -3
  49. package/es5/jodit.min.js +2 -2
  50. package/es5/plugins/debug/debug.css +1 -1
  51. package/es5/plugins/debug/debug.js +1 -1
  52. package/es5/plugins/debug/debug.min.js +1 -1
  53. package/es5/plugins/speech-recognize/speech-recognize.css +1 -1
  54. package/es5/plugins/speech-recognize/speech-recognize.js +1 -1
  55. package/es5/plugins/speech-recognize/speech-recognize.min.js +1 -1
  56. package/es5/polyfills.fat.min.js +1 -1
  57. package/es5/polyfills.js +1 -1
  58. package/es5/polyfills.min.js +1 -1
  59. package/esm/core/constants.js +1 -1
  60. package/esm/modules/table/table.js +2 -3
  61. package/esm/modules/widget/tabs/tabs.js +1 -1
  62. package/esm/plugins/inline-popup/config/config.js +9 -0
  63. package/esm/plugins/inline-popup/config/items/cells.js +1 -1
  64. package/esm/plugins/select-cells/select-cells.js +12 -8
  65. package/package.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.9.16
4
+ * Version: v4.10.1
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -998,15 +998,17 @@ class selectCells extends jodit_core_plugin__WEBPACK_IMPORTED_MODULE_7__.Plugin
998
998
  break;
999
999
  case 'bincolumn':
1000
1000
  {
1001
- const columnsSet = new Set(), columns = cells.reduce((acc, td)=>{
1002
- if (!columnsSet.has(td.cellIndex)) {
1003
- acc.push(td);
1004
- columnsSet.add(td.cellIndex);
1001
+ const columnsSet = new Set();
1002
+ const columns = [];
1003
+ cells.forEach((td)=>{
1004
+ const [, col] = this.__tableModule.formalCoordinate(table, td);
1005
+ if (!columnsSet.has(col)) {
1006
+ columns.push(col);
1007
+ columnsSet.add(col);
1005
1008
  }
1006
- return acc;
1007
- }, []);
1008
- columns.forEach((td)=>{
1009
- this.__tableModule.removeColumn(table, td.cellIndex);
1009
+ });
1010
+ columns.sort((a, b)=>b - a).forEach((col)=>{
1011
+ this.__tableModule.removeColumn(table, col);
1010
1012
  });
1011
1013
  }
1012
1014
  break;
@@ -7879,7 +7881,7 @@ const cmd = (control)=>control.args && (0,jodit_core_helpers_checker__WEBPACK_IM
7879
7881
  tooltip: 'Add row'
7880
7882
  },
7881
7883
  {
7882
- name: 'delete',
7884
+ name: 'deleteTable',
7883
7885
  icon: 'bin',
7884
7886
  list: {
7885
7887
  tablebin: 'Delete table',
@@ -33524,7 +33526,7 @@ __webpack_require__.r(__webpack_exports__);
33524
33526
  * ```
33525
33527
  * @packageDocumentation
33526
33528
  * @module constants
33527
- */ const APP_VERSION = "4.9.16";
33529
+ */ const APP_VERSION = "4.10.1";
33528
33530
  // prettier-ignore
33529
33531
  const ES = "es2021";
33530
33532
  const IS_ES_MODERN = true;
@@ -35659,7 +35661,7 @@ function buildData(uploader, data) {
35659
35661
  if (!(0,jodit_core_helpers_checker_is_function__WEBPACK_IMPORTED_MODULE_2__.isFunction)(content)) {
35660
35662
  tab.appendChild(jodit_core_component__WEBPACK_IMPORTED_MODULE_0__.Component.isInstanceOf(content, jodit_core_ui__WEBPACK_IMPORTED_MODULE_4__.UIElement) ? content.container : content);
35661
35663
  } else {
35662
- tab.appendChild(jodit.c.div('jodit-tab_empty'));
35664
+ tab.classList.add('jodit-tab_empty');
35663
35665
  }
35664
35666
  tabBox.appendChild(tab);
35665
35667
  button.onAction(()=>{
@@ -35779,27 +35781,28 @@ function buildData(uploader, data) {
35779
35781
  /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
35780
35782
 
35781
35783
  "use strict";
35782
- /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29434);
35783
- /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5266);
35784
- /* harmony import */ var _items_a__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(70235);
35785
- /* harmony import */ var _items_cells__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(17849);
35786
- /* harmony import */ var _items_iframe__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(466);
35787
- /* harmony import */ var _items_img__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(75711);
35788
- /* harmony import */ var _items_toolbar__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(59399);
35789
- /* harmony import */ var jodit_plugins_inline_popup_icons_addcolumn_svg__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(38681);
35790
- /* harmony import */ var jodit_plugins_inline_popup_icons_addcolumn_svg__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_addcolumn_svg__WEBPACK_IMPORTED_MODULE_7__);
35791
- /* harmony import */ var jodit_plugins_inline_popup_icons_addrow_svg__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(64637);
35792
- /* harmony import */ var jodit_plugins_inline_popup_icons_addrow_svg__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_addrow_svg__WEBPACK_IMPORTED_MODULE_8__);
35793
- /* harmony import */ var jodit_plugins_inline_popup_icons_merge_svg__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(94190);
35794
- /* harmony import */ var jodit_plugins_inline_popup_icons_merge_svg__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_merge_svg__WEBPACK_IMPORTED_MODULE_9__);
35795
- /* harmony import */ var jodit_plugins_inline_popup_icons_splitg_svg__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(51957);
35796
- /* harmony import */ var jodit_plugins_inline_popup_icons_splitg_svg__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_splitg_svg__WEBPACK_IMPORTED_MODULE_10__);
35797
- /* harmony import */ var jodit_plugins_inline_popup_icons_splitv_svg__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(71940);
35798
- /* harmony import */ var jodit_plugins_inline_popup_icons_splitv_svg__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_splitv_svg__WEBPACK_IMPORTED_MODULE_11__);
35799
- /* harmony import */ var jodit_plugins_inline_popup_icons_th_svg__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(43218);
35800
- /* harmony import */ var jodit_plugins_inline_popup_icons_th_svg__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_th_svg__WEBPACK_IMPORTED_MODULE_12__);
35801
- /* harmony import */ var jodit_plugins_inline_popup_icons_th_list_svg__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(48007);
35802
- /* harmony import */ var jodit_plugins_inline_popup_icons_th_list_svg__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_th_list_svg__WEBPACK_IMPORTED_MODULE_13__);
35784
+ /* harmony import */ var jodit_core_helpers_checker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(28686);
35785
+ /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29434);
35786
+ /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5266);
35787
+ /* harmony import */ var _items_a__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(70235);
35788
+ /* harmony import */ var _items_cells__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(17849);
35789
+ /* harmony import */ var _items_iframe__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(466);
35790
+ /* harmony import */ var _items_img__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(75711);
35791
+ /* harmony import */ var _items_toolbar__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(59399);
35792
+ /* harmony import */ var jodit_plugins_inline_popup_icons_addcolumn_svg__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(38681);
35793
+ /* harmony import */ var jodit_plugins_inline_popup_icons_addcolumn_svg__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_addcolumn_svg__WEBPACK_IMPORTED_MODULE_8__);
35794
+ /* harmony import */ var jodit_plugins_inline_popup_icons_addrow_svg__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(64637);
35795
+ /* harmony import */ var jodit_plugins_inline_popup_icons_addrow_svg__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_addrow_svg__WEBPACK_IMPORTED_MODULE_9__);
35796
+ /* harmony import */ var jodit_plugins_inline_popup_icons_merge_svg__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(94190);
35797
+ /* harmony import */ var jodit_plugins_inline_popup_icons_merge_svg__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_merge_svg__WEBPACK_IMPORTED_MODULE_10__);
35798
+ /* harmony import */ var jodit_plugins_inline_popup_icons_splitg_svg__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(51957);
35799
+ /* harmony import */ var jodit_plugins_inline_popup_icons_splitg_svg__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_splitg_svg__WEBPACK_IMPORTED_MODULE_11__);
35800
+ /* harmony import */ var jodit_plugins_inline_popup_icons_splitv_svg__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(71940);
35801
+ /* harmony import */ var jodit_plugins_inline_popup_icons_splitv_svg__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_splitv_svg__WEBPACK_IMPORTED_MODULE_12__);
35802
+ /* harmony import */ var jodit_plugins_inline_popup_icons_th_svg__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(43218);
35803
+ /* harmony import */ var jodit_plugins_inline_popup_icons_th_svg__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_th_svg__WEBPACK_IMPORTED_MODULE_13__);
35804
+ /* harmony import */ var jodit_plugins_inline_popup_icons_th_list_svg__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(48007);
35805
+ /* harmony import */ var jodit_plugins_inline_popup_icons_th_list_svg__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(jodit_plugins_inline_popup_icons_th_list_svg__WEBPACK_IMPORTED_MODULE_14__);
35803
35806
  /*!
35804
35807
  * Jodit Editor (https://xdsoft.net/jodit/)
35805
35808
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -35820,21 +35823,30 @@ function buildData(uploader, data) {
35820
35823
 
35821
35824
 
35822
35825
 
35823
- jodit_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.toolbarInline = true;
35824
- jodit_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.toolbarInlineForSelection = false;
35825
- jodit_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.toolbarInlineDisableFor = [];
35826
- jodit_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.toolbarInlineDisabledButtons = [
35826
+
35827
+ jodit_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.toolbarInline = true;
35828
+ jodit_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.toolbarInlineForSelection = false;
35829
+ jodit_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.toolbarInlineDisableFor = [];
35830
+ jodit_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.toolbarInlineDisabledButtons = [
35827
35831
  'source'
35828
35832
  ];
35829
- jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_0__.Icon.set('addcolumn', (jodit_plugins_inline_popup_icons_addcolumn_svg__WEBPACK_IMPORTED_MODULE_7___default())).set('addrow', (jodit_plugins_inline_popup_icons_addrow_svg__WEBPACK_IMPORTED_MODULE_8___default())).set('merge', (jodit_plugins_inline_popup_icons_merge_svg__WEBPACK_IMPORTED_MODULE_9___default())).set('th', (jodit_plugins_inline_popup_icons_th_svg__WEBPACK_IMPORTED_MODULE_12___default())).set('splitg', (jodit_plugins_inline_popup_icons_splitg_svg__WEBPACK_IMPORTED_MODULE_10___default())).set('splitv', (jodit_plugins_inline_popup_icons_splitv_svg__WEBPACK_IMPORTED_MODULE_11___default())).set('th-list', (jodit_plugins_inline_popup_icons_th_list_svg__WEBPACK_IMPORTED_MODULE_13___default()));
35830
- jodit_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.popup = {
35831
- a: _items_a__WEBPACK_IMPORTED_MODULE_2__["default"],
35832
- img: _items_img__WEBPACK_IMPORTED_MODULE_5__["default"],
35833
- cells: _items_cells__WEBPACK_IMPORTED_MODULE_3__["default"],
35834
- toolbar: _items_toolbar__WEBPACK_IMPORTED_MODULE_6__["default"],
35835
- jodit: _items_iframe__WEBPACK_IMPORTED_MODULE_4__["default"],
35836
- iframe: _items_iframe__WEBPACK_IMPORTED_MODULE_4__["default"],
35837
- 'jodit-media': _items_iframe__WEBPACK_IMPORTED_MODULE_4__["default"],
35833
+ jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_1__.Icon.set('addcolumn', (jodit_plugins_inline_popup_icons_addcolumn_svg__WEBPACK_IMPORTED_MODULE_8___default())).set('addrow', (jodit_plugins_inline_popup_icons_addrow_svg__WEBPACK_IMPORTED_MODULE_9___default())).set('merge', (jodit_plugins_inline_popup_icons_merge_svg__WEBPACK_IMPORTED_MODULE_10___default())).set('th', (jodit_plugins_inline_popup_icons_th_svg__WEBPACK_IMPORTED_MODULE_13___default())).set('splitg', (jodit_plugins_inline_popup_icons_splitg_svg__WEBPACK_IMPORTED_MODULE_11___default())).set('splitv', (jodit_plugins_inline_popup_icons_splitv_svg__WEBPACK_IMPORTED_MODULE_12___default())).set('th-list', (jodit_plugins_inline_popup_icons_th_list_svg__WEBPACK_IMPORTED_MODULE_14___default()));
35834
+ // Register cell popup buttons as global controls so they can be
35835
+ // referenced by name in custom popup configurations.
35836
+ // Skip buttons that already exist in controls (e.g. 'align' from justify plugin).
35837
+ _items_cells__WEBPACK_IMPORTED_MODULE_4__["default"].forEach((item)=>{
35838
+ if (!(0,jodit_core_helpers_checker__WEBPACK_IMPORTED_MODULE_0__.isString)(item) && item.name && !jodit_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.controls[item.name]) {
35839
+ jodit_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.controls[item.name] = item;
35840
+ }
35841
+ });
35842
+ jodit_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.popup = {
35843
+ a: _items_a__WEBPACK_IMPORTED_MODULE_3__["default"],
35844
+ img: _items_img__WEBPACK_IMPORTED_MODULE_6__["default"],
35845
+ cells: _items_cells__WEBPACK_IMPORTED_MODULE_4__["default"],
35846
+ toolbar: _items_toolbar__WEBPACK_IMPORTED_MODULE_7__["default"],
35847
+ jodit: _items_iframe__WEBPACK_IMPORTED_MODULE_5__["default"],
35848
+ iframe: _items_iframe__WEBPACK_IMPORTED_MODULE_5__["default"],
35849
+ 'jodit-media': _items_iframe__WEBPACK_IMPORTED_MODULE_5__["default"],
35838
35850
  selection: [
35839
35851
  'bold',
35840
35852
  'underline',
@@ -41046,7 +41058,8 @@ class Table extends jodit_core_component__WEBPACK_IMPORTED_MODULE_2__.ViewCompon
41046
41058
  if (!insertAfter && jodit_core_dom__WEBPACK_IMPORTED_MODULE_5__.Dom.isCell(selectedCell.previousElementSibling)) {
41047
41059
  return this.appendColumn(table, selectedCell.previousElementSibling, true);
41048
41060
  }
41049
- const columnIndex = insertAfter ? selectedCell.cellIndex + ((selectedCell.colSpan || 1) - 1) : selectedCell.cellIndex;
41061
+ const [, formalCol] = Table.__formalCoordinate(table, selectedCell, insertAfter);
41062
+ const columnIndex = formalCol;
41050
41063
  const newColumnIndex = insertAfter ? columnIndex + 1 : columnIndex;
41051
41064
  for(let i = 0; i < box.length;){
41052
41065
  const cells = box[i];