handsontable 15.1.0 → 15.2.0-next-8670a33-20250312
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.
- package/3rdparty/walkontable/src/selection/border/border.js +16 -3
- package/3rdparty/walkontable/src/selection/border/border.mjs +17 -4
- package/3rdparty/walkontable/src/selection/scanner.js +1 -1
- package/3rdparty/walkontable/src/selection/scanner.mjs +2 -2
- package/3rdparty/walkontable/src/table.js +3 -2
- package/3rdparty/walkontable/src/table.mjs +4 -3
- package/3rdparty/walkontable/src/utils/orderView/viewDiffer/viewOrder.js +1 -0
- package/3rdparty/walkontable/src/utils/orderView/viewDiffer/viewOrder.mjs +1 -0
- package/3rdparty/walkontable/src/viewport.js +30 -3
- package/3rdparty/walkontable/src/viewport.mjs +30 -3
- package/CHANGELOG.md +40 -0
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.js +2 -37
- package/core.mjs +2 -37
- package/dataMap/dataMap.js +4 -12
- package/dataMap/dataMap.mjs +4 -12
- package/dataMap/dataSource.js +2 -2
- package/dataMap/dataSource.mjs +2 -2
- package/dataMap/metaManager/metaSchema.js +2 -2
- package/dataMap/metaManager/metaSchema.mjs +2 -2
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +494 -400
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +73 -73
- package/dist/handsontable.js +494 -400
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +43 -43
- package/dist/languages/all.js +139 -28
- package/dist/languages/all.min.js +1 -1
- package/dist/languages/fa-IR.js +167 -0
- package/dist/languages/fa-IR.min.js +1 -0
- package/dist/languages/it-IT.js +3 -0
- package/dist/languages/it-IT.min.js +1 -1
- package/dist/languages/sr-SP.js +3 -0
- package/dist/languages/sr-SP.min.js +1 -1
- package/editors/autocompleteEditor/autocompleteEditor.js +25 -20
- package/editors/autocompleteEditor/autocompleteEditor.mjs +25 -20
- package/editors/dateEditor/dateEditor.d.ts +0 -2
- package/editors/dateEditor/dateEditor.js +18 -7
- package/editors/dateEditor/dateEditor.mjs +17 -6
- package/focusManager.js +5 -3
- package/focusManager.mjs +6 -4
- package/helpers/dom/element.d.ts +1 -0
- package/helpers/dom/element.js +21 -2
- package/helpers/dom/element.mjs +20 -2
- package/helpers/dom/event.js +2 -1
- package/helpers/dom/event.mjs +2 -1
- package/helpers/mixed.js +2 -2
- package/helpers/mixed.mjs +2 -2
- package/helpers/number.js +1 -0
- package/helpers/number.mjs +1 -0
- package/i18n/languages/fa-IR.d.ts +5 -0
- package/i18n/languages/fa-IR.js +96 -0
- package/i18n/languages/fa-IR.mjs +90 -0
- package/i18n/languages/index.d.ts +2 -0
- package/i18n/languages/index.js +2 -0
- package/i18n/languages/index.mjs +2 -1
- package/i18n/languages/it-IT.js +3 -0
- package/i18n/languages/it-IT.mjs +3 -0
- package/i18n/languages/sr-SP.js +3 -0
- package/i18n/languages/sr-SP.mjs +3 -0
- package/i18n/phraseFormatters/substituteVariables.js +1 -0
- package/i18n/phraseFormatters/substituteVariables.mjs +1 -0
- package/languages/all.js +139 -28
- package/languages/fa-IR.js +167 -0
- package/languages/fa-IR.mjs +92 -0
- package/languages/index.js +139 -28
- package/languages/index.mjs +2 -1
- package/languages/it-IT.js +3 -0
- package/languages/it-IT.mjs +3 -0
- package/languages/sr-SP.js +3 -0
- package/languages/sr-SP.mjs +3 -0
- package/package.json +13 -2
- package/plugins/columnSorting/columnSorting.js +17 -1
- package/plugins/columnSorting/columnSorting.mjs +18 -2
- package/plugins/columnSorting/columnStatesManager.js +1 -0
- package/plugins/columnSorting/columnStatesManager.mjs +1 -0
- package/plugins/columnSorting/utils.js +14 -0
- package/plugins/columnSorting/utils.mjs +13 -0
- package/plugins/comments/comments.js +5 -2
- package/plugins/comments/comments.mjs +6 -3
- package/plugins/contextMenu/menu/menu.js +9 -3
- package/plugins/contextMenu/menu/menu.mjs +9 -3
- package/plugins/contextMenu/predefinedItems/columnLeft.js +3 -8
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +3 -8
- package/plugins/contextMenu/predefinedItems/columnRight.js +2 -9
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +2 -9
- package/plugins/contextMenu/predefinedItems/rowAbove.js +3 -8
- package/plugins/contextMenu/predefinedItems/rowAbove.mjs +3 -8
- package/plugins/contextMenu/predefinedItems/rowBelow.js +2 -9
- package/plugins/contextMenu/predefinedItems/rowBelow.mjs +2 -9
- package/plugins/copyPaste/copyPaste.js +3 -3
- package/plugins/copyPaste/copyPaste.mjs +4 -4
- package/plugins/exportFile/types/csv.js +1 -0
- package/plugins/exportFile/types/csv.mjs +1 -0
- package/plugins/filters/conditionCollection.js +0 -26
- package/plugins/filters/conditionCollection.mjs +0 -26
- package/plugins/filters/filters.d.ts +2 -0
- package/plugins/filters/filters.js +77 -8
- package/plugins/filters/filters.mjs +77 -8
- package/plugins/mergeCells/mergeCells.js +9 -6
- package/plugins/mergeCells/mergeCells.mjs +9 -6
- package/plugins/multiColumnSorting/multiColumnSorting.js +1 -21
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +1 -21
- package/plugins/nestedHeaders/nestedHeaders.js +5 -3
- package/plugins/nestedHeaders/nestedHeaders.mjs +5 -3
- package/plugins/nestedHeaders/stateManager/index.js +1 -0
- package/plugins/nestedHeaders/stateManager/index.mjs +1 -0
- package/plugins/undoRedo/actions/_base.js +10 -0
- package/plugins/undoRedo/actions/_base.mjs +10 -0
- package/plugins/undoRedo/actions/cellAlignment.js +1 -1
- package/plugins/undoRedo/actions/cellAlignment.mjs +1 -1
- package/plugins/undoRedo/actions/columnMove.js +1 -1
- package/plugins/undoRedo/actions/columnMove.mjs +1 -1
- package/plugins/undoRedo/actions/columnSort.js +1 -1
- package/plugins/undoRedo/actions/columnSort.mjs +1 -1
- package/plugins/undoRedo/actions/createColumn.js +1 -1
- package/plugins/undoRedo/actions/createColumn.mjs +1 -1
- package/plugins/undoRedo/actions/createRow.js +1 -1
- package/plugins/undoRedo/actions/createRow.mjs +1 -1
- package/plugins/undoRedo/actions/dataChange.js +1 -1
- package/plugins/undoRedo/actions/dataChange.mjs +1 -1
- package/plugins/undoRedo/actions/filters.js +3 -3
- package/plugins/undoRedo/actions/filters.mjs +3 -3
- package/plugins/undoRedo/actions/mergeCells.js +4 -1
- package/plugins/undoRedo/actions/mergeCells.mjs +4 -1
- package/plugins/undoRedo/actions/removeColumn.js +4 -2
- package/plugins/undoRedo/actions/removeColumn.mjs +4 -2
- package/plugins/undoRedo/actions/removeRow.js +1 -1
- package/plugins/undoRedo/actions/removeRow.mjs +1 -1
- package/plugins/undoRedo/actions/rowMove.js +1 -1
- package/plugins/undoRedo/actions/rowMove.mjs +1 -1
- package/plugins/undoRedo/actions/unmergeCells.js +4 -1
- package/plugins/undoRedo/actions/unmergeCells.mjs +4 -1
- package/plugins/undoRedo/undoRedo.d.ts +48 -17
- package/renderers/checkboxRenderer/checkboxRenderer.js +1 -1
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +2 -2
- package/renderers/numericRenderer/numericRenderer.js +10 -2
- package/renderers/numericRenderer/numericRenderer.mjs +10 -2
- package/renderers/textRenderer/textRenderer.js +3 -12
- package/renderers/textRenderer/textRenderer.mjs +4 -13
- package/shortcuts/utils.js +1 -0
- package/shortcuts/utils.mjs +1 -0
- package/styles/handsontable.css +83 -99
- package/styles/handsontable.min.css +3 -3
- package/styles/ht-theme-horizon.css +14 -2
- package/styles/ht-theme-horizon.min.css +3 -3
- package/styles/ht-theme-main.css +14 -2
- package/styles/ht-theme-main.min.css +3 -3
- package/tableView.js +9 -0
- package/tableView.mjs +9 -0
- package/translations/maps/linkedPhysicalIndexToValueMap.js +1 -0
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +1 -0
- package/translations/maps/utils/physicallyIndexed.js +1 -0
- package/translations/maps/utils/physicallyIndexed.mjs +1 -0
- package/utils/dataStructures/priorityMap.js +1 -0
- package/utils/dataStructures/priorityMap.mjs +1 -0
- package/plugins/multiColumnSorting/utils.js +0 -13
- package/plugins/multiColumnSorting/utils.mjs +0 -9
package/languages/index.js
CHANGED
@@ -628,6 +628,109 @@ var _default = exports["default"] = dictionary;
|
|
628
628
|
"use strict";
|
629
629
|
|
630
630
|
|
631
|
+
var _interopRequireDefault = __webpack_require__(1);
|
632
|
+
exports.__esModule = true;
|
633
|
+
var _handsontable = _interopRequireDefault(__webpack_require__(2));
|
634
|
+
/**
|
635
|
+
* @preserve
|
636
|
+
* Authors: Ali Almasi
|
637
|
+
* Last updated: Jan 19, 2025
|
638
|
+
*
|
639
|
+
* Description: Definition file for Farsi - Iran language-country.
|
640
|
+
*/
|
641
|
+
|
642
|
+
const C = _handsontable.default.languages.dictionaryKeys;
|
643
|
+
const dictionary = {
|
644
|
+
languageCode: 'fa-IR',
|
645
|
+
[C.CONTEXTMENU_ITEMS_NO_ITEMS]: 'هیچ گزینه ای در دسترس نیست',
|
646
|
+
[C.CONTEXTMENU_ITEMS_ROW_ABOVE]: 'درج ردیف در بالا',
|
647
|
+
[C.CONTEXTMENU_ITEMS_ROW_BELOW]: 'درج ردیف در پایین',
|
648
|
+
[C.CONTEXTMENU_ITEMS_INSERT_LEFT]: 'درج ستون در چپ',
|
649
|
+
[C.CONTEXTMENU_ITEMS_INSERT_RIGHT]: 'درج ستون در راست',
|
650
|
+
[C.CONTEXTMENU_ITEMS_REMOVE_ROW]: ['حذف ردیف', 'حذف ردیف ها'],
|
651
|
+
[C.CONTEXTMENU_ITEMS_REMOVE_COLUMN]: ['حذف ستون', 'حذف ستون ها'],
|
652
|
+
[C.CONTEXTMENU_ITEMS_UNDO]: 'واگرد',
|
653
|
+
[C.CONTEXTMENU_ITEMS_REDO]: 'بازگردانی',
|
654
|
+
[C.CONTEXTMENU_ITEMS_READ_ONLY]: 'فقط خواندنی',
|
655
|
+
[C.CONTEXTMENU_ITEMS_CLEAR_COLUMN]: 'پاک کردن ستون',
|
656
|
+
[C.CONTEXTMENU_ITEMS_ALIGNMENT]: 'تراز',
|
657
|
+
[C.CONTEXTMENU_ITEMS_ALIGNMENT_LEFT]: 'چپ',
|
658
|
+
[C.CONTEXTMENU_ITEMS_ALIGNMENT_CENTER]: 'وسط',
|
659
|
+
[C.CONTEXTMENU_ITEMS_ALIGNMENT_RIGHT]: 'راست',
|
660
|
+
[C.CONTEXTMENU_ITEMS_ALIGNMENT_JUSTIFY]: 'میزان',
|
661
|
+
[C.CONTEXTMENU_ITEMS_ALIGNMENT_TOP]: 'بالا',
|
662
|
+
[C.CONTEXTMENU_ITEMS_ALIGNMENT_MIDDLE]: 'میانه',
|
663
|
+
[C.CONTEXTMENU_ITEMS_ALIGNMENT_BOTTOM]: 'پایین',
|
664
|
+
[C.CONTEXTMENU_ITEMS_FREEZE_COLUMN]: 'انجماد ستون',
|
665
|
+
[C.CONTEXTMENU_ITEMS_UNFREEZE_COLUMN]: 'باز کردن ستون',
|
666
|
+
[C.CONTEXTMENU_ITEMS_BORDERS]: 'مرز ها',
|
667
|
+
[C.CONTEXTMENU_ITEMS_BORDERS_TOP]: 'بالا',
|
668
|
+
[C.CONTEXTMENU_ITEMS_BORDERS_RIGHT]: 'راست',
|
669
|
+
[C.CONTEXTMENU_ITEMS_BORDERS_BOTTOM]: 'پایین',
|
670
|
+
[C.CONTEXTMENU_ITEMS_BORDERS_LEFT]: 'چپ',
|
671
|
+
[C.CONTEXTMENU_ITEMS_REMOVE_BORDERS]: 'حذف مرز (ها)',
|
672
|
+
[C.CONTEXTMENU_ITEMS_ADD_COMMENT]: 'افزودن کامنت',
|
673
|
+
[C.CONTEXTMENU_ITEMS_EDIT_COMMENT]: 'تغییر کامنت',
|
674
|
+
[C.CONTEXTMENU_ITEMS_REMOVE_COMMENT]: 'حذف کامنت',
|
675
|
+
[C.CONTEXTMENU_ITEMS_READ_ONLY_COMMENT]: 'فقط خواندنی کردن کامنت',
|
676
|
+
[C.CONTEXTMENU_ITEMS_MERGE_CELLS]: 'ادغام سلول ها',
|
677
|
+
[C.CONTEXTMENU_ITEMS_UNMERGE_CELLS]: 'جدا کردن سلول ها',
|
678
|
+
[C.CONTEXTMENU_ITEMS_COPY]: 'کپی',
|
679
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_HEADERS]: ['کپی با سر ستون', 'کپی با سرستون ها'],
|
680
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_GROUP_HEADERS]: ['کپی با سرستون گروه', 'کپی با سرستون گروه ها'],
|
681
|
+
[C.CONTEXTMENU_ITEMS_COPY_COLUMN_HEADERS_ONLY]: ['فقط کپی سرستون', 'فقط کپی سرستون ها'],
|
682
|
+
[C.CONTEXTMENU_ITEMS_CUT]: 'بریدن',
|
683
|
+
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_INSERT_CHILD]: 'درج زیر ردیف',
|
684
|
+
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_DETACH_CHILD]: 'جدا کردن از سرردیف',
|
685
|
+
[C.CONTEXTMENU_ITEMS_HIDE_COLUMN]: ['پنهان کردن ستون', 'پنهان کردن ستون ها'],
|
686
|
+
[C.CONTEXTMENU_ITEMS_SHOW_COLUMN]: ['نمایش ستون', 'نمایش ستون ها'],
|
687
|
+
[C.CONTEXTMENU_ITEMS_HIDE_ROW]: ['پنهان کردن ردیف', 'پنهان کردن ردیف ها'],
|
688
|
+
[C.CONTEXTMENU_ITEMS_SHOW_ROW]: ['نمایش ردیف', 'نمایش ردیف ها'],
|
689
|
+
[C.FILTERS_CONDITIONS_NONE]: 'هیچ',
|
690
|
+
[C.FILTERS_CONDITIONS_EMPTY]: 'خالی است',
|
691
|
+
[C.FILTERS_CONDITIONS_NOT_EMPTY]: 'خالی نیست',
|
692
|
+
[C.FILTERS_CONDITIONS_EQUAL]: 'برابر است با',
|
693
|
+
[C.FILTERS_CONDITIONS_NOT_EQUAL]: 'برابر نیست با',
|
694
|
+
[C.FILTERS_CONDITIONS_BEGINS_WITH]: 'شروع می شود با',
|
695
|
+
[C.FILTERS_CONDITIONS_ENDS_WITH]: 'پایان می یابد با',
|
696
|
+
[C.FILTERS_CONDITIONS_CONTAINS]: 'شامل می شود',
|
697
|
+
[C.FILTERS_CONDITIONS_NOT_CONTAIN]: 'شامل نمی شود',
|
698
|
+
[C.FILTERS_CONDITIONS_GREATER_THAN]: 'بزرگ تر',
|
699
|
+
[C.FILTERS_CONDITIONS_GREATER_THAN_OR_EQUAL]: 'بزرگتر مساوی',
|
700
|
+
[C.FILTERS_CONDITIONS_LESS_THAN]: 'کوچکتر',
|
701
|
+
[C.FILTERS_CONDITIONS_LESS_THAN_OR_EQUAL]: 'کوچکتر مساوی',
|
702
|
+
[C.FILTERS_CONDITIONS_BETWEEN]: 'در میان است',
|
703
|
+
[C.FILTERS_CONDITIONS_NOT_BETWEEN]: 'در میان نیست',
|
704
|
+
[C.FILTERS_CONDITIONS_AFTER]: 'بعد',
|
705
|
+
[C.FILTERS_CONDITIONS_BEFORE]: 'قبل',
|
706
|
+
[C.FILTERS_CONDITIONS_TODAY]: 'امروز',
|
707
|
+
[C.FILTERS_CONDITIONS_TOMORROW]: 'فردا',
|
708
|
+
[C.FILTERS_CONDITIONS_YESTERDAY]: 'دیروز',
|
709
|
+
[C.FILTERS_VALUES_BLANK_CELLS]: 'سلول های خالی',
|
710
|
+
[C.FILTERS_DIVS_FILTER_BY_CONDITION]: 'فیلتر بر اساس شرایط',
|
711
|
+
[C.FILTERS_DIVS_FILTER_BY_VALUE]: 'فیلتر بر اساس مقدار',
|
712
|
+
[C.FILTERS_LABELS_CONJUNCTION]: 'و',
|
713
|
+
[C.FILTERS_LABELS_DISJUNCTION]: 'یا',
|
714
|
+
[C.FILTERS_BUTTONS_SELECT_ALL]: 'انتخاب همه',
|
715
|
+
[C.FILTERS_BUTTONS_CLEAR]: 'پاک کردن',
|
716
|
+
[C.FILTERS_BUTTONS_OK]: 'تایید',
|
717
|
+
[C.FILTERS_BUTTONS_CANCEL]: 'لغو',
|
718
|
+
[C.FILTERS_BUTTONS_PLACEHOLDER_SEARCH]: 'جستجو',
|
719
|
+
[C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'مقدار',
|
720
|
+
[C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'مقدار دوم',
|
721
|
+
[C.CHECKBOX_CHECKED]: 'چک شده',
|
722
|
+
[C.CHECKBOX_UNCHECKED]: 'چک نشده'
|
723
|
+
};
|
724
|
+
_handsontable.default.languages.registerLanguageDictionary(dictionary);
|
725
|
+
var _default = exports["default"] = dictionary;
|
726
|
+
|
727
|
+
/***/ }),
|
728
|
+
/* 9 */
|
729
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
730
|
+
|
731
|
+
"use strict";
|
732
|
+
|
733
|
+
|
631
734
|
var _interopRequireDefault = __webpack_require__(1);
|
632
735
|
exports.__esModule = true;
|
633
736
|
var _handsontable = _interopRequireDefault(__webpack_require__(2));
|
@@ -719,7 +822,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
719
822
|
var _default = exports["default"] = dictionary;
|
720
823
|
|
721
824
|
/***/ }),
|
722
|
-
/*
|
825
|
+
/* 10 */
|
723
826
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
724
827
|
|
725
828
|
"use strict";
|
@@ -822,8 +925,8 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
822
925
|
var _default = exports["default"] = dictionary;
|
823
926
|
|
824
927
|
/***/ }),
|
825
|
-
/*
|
826
|
-
/*
|
928
|
+
/* 11 */,
|
929
|
+
/* 12 */
|
827
930
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
828
931
|
|
829
932
|
"use strict";
|
@@ -876,6 +979,9 @@ const dictionary = {
|
|
876
979
|
[C.CONTEXTMENU_ITEMS_MERGE_CELLS]: 'Unisci celle',
|
877
980
|
[C.CONTEXTMENU_ITEMS_UNMERGE_CELLS]: 'Separa celle',
|
878
981
|
[C.CONTEXTMENU_ITEMS_COPY]: 'Copia',
|
982
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_HEADERS]: ['Copia con intestazione', 'Copia con intestazioni'],
|
983
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_GROUP_HEADERS]: 'Copia con intestazione completa',
|
984
|
+
[C.CONTEXTMENU_ITEMS_COPY_COLUMN_HEADERS_ONLY]: ['Copia solo intestazione', 'Copia solo intestazioni'],
|
879
985
|
[C.CONTEXTMENU_ITEMS_CUT]: 'Taglia',
|
880
986
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_INSERT_CHILD]: 'Inserisci riga figlia',
|
881
987
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_DETACH_CHILD]: 'Scollega da riga madre',
|
@@ -920,7 +1026,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
920
1026
|
var _default = exports["default"] = dictionary;
|
921
1027
|
|
922
1028
|
/***/ }),
|
923
|
-
/*
|
1029
|
+
/* 13 */
|
924
1030
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
925
1031
|
|
926
1032
|
"use strict";
|
@@ -1020,7 +1126,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
1020
1126
|
var _default = exports["default"] = dictionary;
|
1021
1127
|
|
1022
1128
|
/***/ }),
|
1023
|
-
/*
|
1129
|
+
/* 14 */
|
1024
1130
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
1025
1131
|
|
1026
1132
|
"use strict";
|
@@ -1117,7 +1223,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
1117
1223
|
var _default = exports["default"] = dictionary;
|
1118
1224
|
|
1119
1225
|
/***/ }),
|
1120
|
-
/*
|
1226
|
+
/* 15 */
|
1121
1227
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
1122
1228
|
|
1123
1229
|
"use strict";
|
@@ -1218,7 +1324,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
1218
1324
|
var _default = exports["default"] = dictionary;
|
1219
1325
|
|
1220
1326
|
/***/ }),
|
1221
|
-
/*
|
1327
|
+
/* 16 */
|
1222
1328
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
1223
1329
|
|
1224
1330
|
"use strict";
|
@@ -1315,7 +1421,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
1315
1421
|
var _default = exports["default"] = dictionary;
|
1316
1422
|
|
1317
1423
|
/***/ }),
|
1318
|
-
/*
|
1424
|
+
/* 17 */
|
1319
1425
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
1320
1426
|
|
1321
1427
|
"use strict";
|
@@ -1415,7 +1521,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
1415
1521
|
var _default = exports["default"] = dictionary;
|
1416
1522
|
|
1417
1523
|
/***/ }),
|
1418
|
-
/*
|
1524
|
+
/* 18 */
|
1419
1525
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
1420
1526
|
|
1421
1527
|
"use strict";
|
@@ -1518,7 +1624,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
1518
1624
|
var _default = exports["default"] = dictionary;
|
1519
1625
|
|
1520
1626
|
/***/ }),
|
1521
|
-
/*
|
1627
|
+
/* 19 */
|
1522
1628
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
1523
1629
|
|
1524
1630
|
"use strict";
|
@@ -1615,7 +1721,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
1615
1721
|
var _default = exports["default"] = dictionary;
|
1616
1722
|
|
1617
1723
|
/***/ }),
|
1618
|
-
/*
|
1724
|
+
/* 20 */
|
1619
1725
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
1620
1726
|
|
1621
1727
|
"use strict";
|
@@ -1712,7 +1818,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
1712
1818
|
var _default = exports["default"] = dictionary;
|
1713
1819
|
|
1714
1820
|
/***/ }),
|
1715
|
-
/*
|
1821
|
+
/* 21 */
|
1716
1822
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
1717
1823
|
|
1718
1824
|
"use strict";
|
@@ -1766,6 +1872,9 @@ const dictionary = {
|
|
1766
1872
|
[C.CONTEXTMENU_ITEMS_MERGE_CELLS]: 'Spoji ćelije',
|
1767
1873
|
[C.CONTEXTMENU_ITEMS_UNMERGE_CELLS]: 'Odvoji ćelije',
|
1768
1874
|
[C.CONTEXTMENU_ITEMS_COPY]: 'Kopiraj',
|
1875
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_HEADERS]: ['Kopiraj sa zaglavljem', 'Kopiraj sa zaglavljima'],
|
1876
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_GROUP_HEADERS]: ['Kopiraj sa zaglavljem grupe', 'Kopiraj sa zaglavljima grupe'],
|
1877
|
+
[C.CONTEXTMENU_ITEMS_COPY_COLUMN_HEADERS_ONLY]: ['Kopiraj samo zaglavlje', 'Kopiraj samo zaglavlja'],
|
1769
1878
|
[C.CONTEXTMENU_ITEMS_CUT]: 'Iseci',
|
1770
1879
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_INSERT_CHILD]: 'Unesi ugnježdeni red',
|
1771
1880
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_DETACH_CHILD]: 'Odvoji ugnježdeni red',
|
@@ -1810,7 +1919,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
1810
1919
|
var _default = exports["default"] = dictionary;
|
1811
1920
|
|
1812
1921
|
/***/ }),
|
1813
|
-
/*
|
1922
|
+
/* 22 */
|
1814
1923
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
1815
1924
|
|
1816
1925
|
"use strict";
|
@@ -1910,7 +2019,7 @@ _handsontable.default.languages.registerLanguageDictionary(dictionary);
|
|
1910
2019
|
var _default = exports["default"] = dictionary;
|
1911
2020
|
|
1912
2021
|
/***/ }),
|
1913
|
-
/*
|
2022
|
+
/* 23 */
|
1914
2023
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
1915
2024
|
|
1916
2025
|
"use strict";
|
@@ -2055,33 +2164,35 @@ var _enUS = _interopRequireDefault(__webpack_require__(6));
|
|
2055
2164
|
exports.enUS = _enUS.default;
|
2056
2165
|
var _esMX = _interopRequireDefault(__webpack_require__(7));
|
2057
2166
|
exports.esMX = _esMX.default;
|
2058
|
-
var
|
2167
|
+
var _faIR = _interopRequireDefault(__webpack_require__(8));
|
2168
|
+
exports.faIR = _faIR.default;
|
2169
|
+
var _frFR = _interopRequireDefault(__webpack_require__(9));
|
2059
2170
|
exports.frFR = _frFR.default;
|
2060
|
-
var _hrHR = _interopRequireDefault(__webpack_require__(
|
2171
|
+
var _hrHR = _interopRequireDefault(__webpack_require__(10));
|
2061
2172
|
exports.hrHR = _hrHR.default;
|
2062
|
-
var _itIT = _interopRequireDefault(__webpack_require__(
|
2173
|
+
var _itIT = _interopRequireDefault(__webpack_require__(12));
|
2063
2174
|
exports.itIT = _itIT.default;
|
2064
|
-
var _jaJP = _interopRequireDefault(__webpack_require__(
|
2175
|
+
var _jaJP = _interopRequireDefault(__webpack_require__(13));
|
2065
2176
|
exports.jaJP = _jaJP.default;
|
2066
|
-
var _koKR = _interopRequireDefault(__webpack_require__(
|
2177
|
+
var _koKR = _interopRequireDefault(__webpack_require__(14));
|
2067
2178
|
exports.koKR = _koKR.default;
|
2068
|
-
var _lvLV = _interopRequireDefault(__webpack_require__(
|
2179
|
+
var _lvLV = _interopRequireDefault(__webpack_require__(15));
|
2069
2180
|
exports.lvLV = _lvLV.default;
|
2070
|
-
var _nbNO = _interopRequireDefault(__webpack_require__(
|
2181
|
+
var _nbNO = _interopRequireDefault(__webpack_require__(16));
|
2071
2182
|
exports.nbNO = _nbNO.default;
|
2072
|
-
var _nlNL = _interopRequireDefault(__webpack_require__(
|
2183
|
+
var _nlNL = _interopRequireDefault(__webpack_require__(17));
|
2073
2184
|
exports.nlNL = _nlNL.default;
|
2074
|
-
var _plPL = _interopRequireDefault(__webpack_require__(
|
2185
|
+
var _plPL = _interopRequireDefault(__webpack_require__(18));
|
2075
2186
|
exports.plPL = _plPL.default;
|
2076
|
-
var _ptBR = _interopRequireDefault(__webpack_require__(
|
2187
|
+
var _ptBR = _interopRequireDefault(__webpack_require__(19));
|
2077
2188
|
exports.ptBR = _ptBR.default;
|
2078
|
-
var _ruRU = _interopRequireDefault(__webpack_require__(
|
2189
|
+
var _ruRU = _interopRequireDefault(__webpack_require__(20));
|
2079
2190
|
exports.ruRU = _ruRU.default;
|
2080
|
-
var _srSP = _interopRequireDefault(__webpack_require__(
|
2191
|
+
var _srSP = _interopRequireDefault(__webpack_require__(21));
|
2081
2192
|
exports.srSP = _srSP.default;
|
2082
|
-
var _zhCN = _interopRequireDefault(__webpack_require__(
|
2193
|
+
var _zhCN = _interopRequireDefault(__webpack_require__(22));
|
2083
2194
|
exports.zhCN = _zhCN.default;
|
2084
|
-
var _zhTW = _interopRequireDefault(__webpack_require__(
|
2195
|
+
var _zhTW = _interopRequireDefault(__webpack_require__(23));
|
2085
2196
|
exports.zhTW = _zhTW.default;
|
2086
2197
|
})();
|
2087
2198
|
|
package/languages/index.mjs
CHANGED
@@ -4,6 +4,7 @@ import deCH from "./de-CH.mjs";
|
|
4
4
|
import deDE from "./de-DE.mjs";
|
5
5
|
import enUS from "./en-US.mjs";
|
6
6
|
import esMX from "./es-MX.mjs";
|
7
|
+
import faIR from "./fa-IR.mjs";
|
7
8
|
import frFR from "./fr-FR.mjs";
|
8
9
|
import hrHR from "./hr-HR.mjs";
|
9
10
|
import itIT from "./it-IT.mjs";
|
@@ -18,4 +19,4 @@ import ruRU from "./ru-RU.mjs";
|
|
18
19
|
import srSP from "./sr-SP.mjs";
|
19
20
|
import zhCN from "./zh-CN.mjs";
|
20
21
|
import zhTW from "./zh-TW.mjs";
|
21
|
-
export { arAR, csCZ, deCH, deDE, enUS, esMX, frFR, hrHR, itIT, jaJP, koKR, lvLV, nbNO, nlNL, plPL, ptBR, ruRU, srSP, zhCN, zhTW };
|
22
|
+
export { arAR, csCZ, deCH, deDE, enUS, esMX, faIR, frFR, hrHR, itIT, jaJP, koKR, lvLV, nbNO, nlNL, plPL, ptBR, ruRU, srSP, zhCN, zhTW };
|
package/languages/it-IT.js
CHANGED
@@ -110,6 +110,9 @@ const dictionary = {
|
|
110
110
|
[C.CONTEXTMENU_ITEMS_MERGE_CELLS]: 'Unisci celle',
|
111
111
|
[C.CONTEXTMENU_ITEMS_UNMERGE_CELLS]: 'Separa celle',
|
112
112
|
[C.CONTEXTMENU_ITEMS_COPY]: 'Copia',
|
113
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_HEADERS]: ['Copia con intestazione', 'Copia con intestazioni'],
|
114
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_GROUP_HEADERS]: 'Copia con intestazione completa',
|
115
|
+
[C.CONTEXTMENU_ITEMS_COPY_COLUMN_HEADERS_ONLY]: ['Copia solo intestazione', 'Copia solo intestazioni'],
|
113
116
|
[C.CONTEXTMENU_ITEMS_CUT]: 'Taglia',
|
114
117
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_INSERT_CHILD]: 'Inserisci riga figlia',
|
115
118
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_DETACH_CHILD]: 'Scollega da riga madre',
|
package/languages/it-IT.mjs
CHANGED
@@ -42,6 +42,9 @@ const dictionary = {
|
|
42
42
|
[C.CONTEXTMENU_ITEMS_MERGE_CELLS]: 'Unisci celle',
|
43
43
|
[C.CONTEXTMENU_ITEMS_UNMERGE_CELLS]: 'Separa celle',
|
44
44
|
[C.CONTEXTMENU_ITEMS_COPY]: 'Copia',
|
45
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_HEADERS]: ['Copia con intestazione', 'Copia con intestazioni'],
|
46
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_GROUP_HEADERS]: 'Copia con intestazione completa',
|
47
|
+
[C.CONTEXTMENU_ITEMS_COPY_COLUMN_HEADERS_ONLY]: ['Copia solo intestazione', 'Copia solo intestazioni'],
|
45
48
|
[C.CONTEXTMENU_ITEMS_CUT]: 'Taglia',
|
46
49
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_INSERT_CHILD]: 'Inserisci riga figlia',
|
47
50
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_DETACH_CHILD]: 'Scollega da riga madre',
|
package/languages/sr-SP.js
CHANGED
@@ -111,6 +111,9 @@ const dictionary = {
|
|
111
111
|
[C.CONTEXTMENU_ITEMS_MERGE_CELLS]: 'Spoji ćelije',
|
112
112
|
[C.CONTEXTMENU_ITEMS_UNMERGE_CELLS]: 'Odvoji ćelije',
|
113
113
|
[C.CONTEXTMENU_ITEMS_COPY]: 'Kopiraj',
|
114
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_HEADERS]: ['Kopiraj sa zaglavljem', 'Kopiraj sa zaglavljima'],
|
115
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_GROUP_HEADERS]: ['Kopiraj sa zaglavljem grupe', 'Kopiraj sa zaglavljima grupe'],
|
116
|
+
[C.CONTEXTMENU_ITEMS_COPY_COLUMN_HEADERS_ONLY]: ['Kopiraj samo zaglavlje', 'Kopiraj samo zaglavlja'],
|
114
117
|
[C.CONTEXTMENU_ITEMS_CUT]: 'Iseci',
|
115
118
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_INSERT_CHILD]: 'Unesi ugnježdeni red',
|
116
119
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_DETACH_CHILD]: 'Odvoji ugnježdeni red',
|
package/languages/sr-SP.mjs
CHANGED
@@ -43,6 +43,9 @@ const dictionary = {
|
|
43
43
|
[C.CONTEXTMENU_ITEMS_MERGE_CELLS]: 'Spoji ćelije',
|
44
44
|
[C.CONTEXTMENU_ITEMS_UNMERGE_CELLS]: 'Odvoji ćelije',
|
45
45
|
[C.CONTEXTMENU_ITEMS_COPY]: 'Kopiraj',
|
46
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_HEADERS]: ['Kopiraj sa zaglavljem', 'Kopiraj sa zaglavljima'],
|
47
|
+
[C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_GROUP_HEADERS]: ['Kopiraj sa zaglavljem grupe', 'Kopiraj sa zaglavljima grupe'],
|
48
|
+
[C.CONTEXTMENU_ITEMS_COPY_COLUMN_HEADERS_ONLY]: ['Kopiraj samo zaglavlje', 'Kopiraj samo zaglavlja'],
|
46
49
|
[C.CONTEXTMENU_ITEMS_CUT]: 'Iseci',
|
47
50
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_INSERT_CHILD]: 'Unesi ugnježdeni red',
|
48
51
|
[C.CONTEXTMENU_ITEMS_NESTED_ROWS_DETACH_CHILD]: 'Odvoji ugnježdeni red',
|
package/package.json
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
"url": "https://github.com/handsontable/handsontable/issues"
|
11
11
|
},
|
12
12
|
"author": "Handsoncode <hello@handsontable.com>",
|
13
|
-
"version": "15.
|
13
|
+
"version": "15.2.0-next-8670a33-20250312",
|
14
14
|
"main": "index",
|
15
15
|
"module": "index.mjs",
|
16
16
|
"jsnext:main": "index.mjs",
|
@@ -83,7 +83,7 @@
|
|
83
83
|
"lodash": "^4.17.20",
|
84
84
|
"mini-css-extract-plugin": "^2.7.6",
|
85
85
|
"minimatch": "^3.0.4",
|
86
|
-
"puppeteer": "^
|
86
|
+
"puppeteer": "^24.2.1",
|
87
87
|
"replace-in-file": "^6.1.0",
|
88
88
|
"rimraf": "^3.0.2",
|
89
89
|
"sass": "^1.58.0",
|
@@ -192,6 +192,10 @@
|
|
192
192
|
"require": "./languages/es-MX.js",
|
193
193
|
"import": "./languages/es-MX.mjs"
|
194
194
|
},
|
195
|
+
"./languages/fa-IR": {
|
196
|
+
"require": "./languages/fa-IR.js",
|
197
|
+
"import": "./languages/fa-IR.mjs"
|
198
|
+
},
|
195
199
|
"./languages/fr-FR": {
|
196
200
|
"require": "./languages/fr-FR.js",
|
197
201
|
"import": "./languages/fr-FR.mjs"
|
@@ -648,6 +652,11 @@
|
|
648
652
|
"require": "./i18n/languages/es-MX.js",
|
649
653
|
"import": "./i18n/languages/es-MX.mjs"
|
650
654
|
},
|
655
|
+
"./i18n/languages/fa-IR": {
|
656
|
+
"types": "./i18n/languages/fa-IR.d.ts",
|
657
|
+
"require": "./i18n/languages/fa-IR.js",
|
658
|
+
"import": "./i18n/languages/fa-IR.mjs"
|
659
|
+
},
|
651
660
|
"./i18n/languages/fr-FR": {
|
652
661
|
"types": "./i18n/languages/fr-FR.d.ts",
|
653
662
|
"require": "./i18n/languages/fr-FR.js",
|
@@ -745,6 +754,8 @@
|
|
745
754
|
"./dist/languages/en-US.min.js": "./dist/languages/en-US.min.js",
|
746
755
|
"./dist/languages/es-MX.js": "./dist/languages/es-MX.js",
|
747
756
|
"./dist/languages/es-MX.min.js": "./dist/languages/es-MX.min.js",
|
757
|
+
"./dist/languages/fa-IR.js": "./dist/languages/fa-IR.js",
|
758
|
+
"./dist/languages/fa-IR.min.js": "./dist/languages/fa-IR.min.js",
|
748
759
|
"./dist/languages/fr-FR.js": "./dist/languages/fr-FR.js",
|
749
760
|
"./dist/languages/fr-FR.min.js": "./dist/languages/fr-FR.min.js",
|
750
761
|
"./dist/languages/hr-HR.js": "./dist/languages/hr-HR.js",
|
@@ -35,6 +35,13 @@ const SHORTCUTS_GROUP = PLUGIN_KEY;
|
|
35
35
|
_hooks.Hooks.getSingleton().register('beforeColumnSort');
|
36
36
|
_hooks.Hooks.getSingleton().register('afterColumnSort');
|
37
37
|
|
38
|
+
/**
|
39
|
+
* Tracks the conflicts between `columnSorting` and `multiColumnSorting` options.
|
40
|
+
* Only one plugin can be enabled for Handsontable instance. Once one of them is enabled,
|
41
|
+
* the other should remain disabled even if it's set to `true`.
|
42
|
+
*/
|
43
|
+
const pluginConflictsState = new WeakMap();
|
44
|
+
|
38
45
|
// DIFF - MultiColumnSorting & ColumnSorting: changed configuration documentation.
|
39
46
|
/**
|
40
47
|
* @plugin ColumnSorting
|
@@ -143,9 +150,17 @@ class ColumnSorting extends _base.BasePlugin {
|
|
143
150
|
*/
|
144
151
|
enablePlugin() {
|
145
152
|
var _this = this;
|
153
|
+
if (pluginConflictsState.has(this.hot) && pluginConflictsState.get(this.hot) !== this.pluginKey) {
|
154
|
+
this.hot.updateSettings({
|
155
|
+
[this.pluginKey]: false
|
156
|
+
});
|
157
|
+
(0, _utils.warnAboutPluginsConflict)(pluginConflictsState.get(this.hot), this.pluginKey);
|
158
|
+
return;
|
159
|
+
}
|
146
160
|
if (this.enabled) {
|
147
161
|
return;
|
148
162
|
}
|
163
|
+
pluginConflictsState.set(this.hot, this.pluginKey);
|
149
164
|
this.columnStatesManager = new _columnStatesManager.ColumnStatesManager(this.hot, `${this.pluginKey}.sortingStates`);
|
150
165
|
this.columnMetaCache = new _translations.PhysicalIndexToValueMap(physicalIndex => {
|
151
166
|
let visualIndex = this.hot.toVisualColumn(physicalIndex);
|
@@ -190,6 +205,7 @@ class ColumnSorting extends _base.BasePlugin {
|
|
190
205
|
}
|
191
206
|
this.updateHeaderClasses(headerSpanElement);
|
192
207
|
};
|
208
|
+
pluginConflictsState.delete(this.hot);
|
193
209
|
|
194
210
|
// Changing header width and removing indicator.
|
195
211
|
this.hot.addHook('afterGetColHeader', clearColHeader);
|
@@ -667,7 +683,7 @@ class ColumnSorting extends _base.BasePlugin {
|
|
667
683
|
* @param {object} newSettings New settings object.
|
668
684
|
*/
|
669
685
|
onUpdateSettings(newSettings) {
|
670
|
-
super.onUpdateSettings();
|
686
|
+
super.onUpdateSettings(newSettings);
|
671
687
|
if (this.columnMetaCache !== null) {
|
672
688
|
// Column meta cache base on settings, thus we should re-init the map.
|
673
689
|
this.columnMetaCache.init(this.hot.columnIndexMapper.getNumberOfIndexes());
|
@@ -18,7 +18,7 @@ import { IndexesSequence, PhysicalIndexToValueMap as IndexToValueMap } from "../
|
|
18
18
|
import { Hooks } from "../../core/hooks/index.mjs";
|
19
19
|
import { ColumnStatesManager } from "./columnStatesManager.mjs";
|
20
20
|
import { EDITOR_EDIT_GROUP as SHORTCUTS_GROUP_EDITOR } from "../../shortcutContexts/index.mjs";
|
21
|
-
import { HEADER_SPAN_CLASS, getNextSortOrder, areValidSortStates, getHeaderSpanElement, isFirstLevelColumnHeader, wasHeaderClickedProperly } from "./utils.mjs";
|
21
|
+
import { HEADER_SPAN_CLASS, getNextSortOrder, areValidSortStates, getHeaderSpanElement, isFirstLevelColumnHeader, wasHeaderClickedProperly, warnAboutPluginsConflict } from "./utils.mjs";
|
22
22
|
import { getClassesToRemove, getClassesToAdd } from "./domHelpers.mjs";
|
23
23
|
import { rootComparator } from "./rootComparator.mjs";
|
24
24
|
import { registerRootComparator, sort } from "./sortService/index.mjs";
|
@@ -32,6 +32,13 @@ registerRootComparator(PLUGIN_KEY, rootComparator);
|
|
32
32
|
Hooks.getSingleton().register('beforeColumnSort');
|
33
33
|
Hooks.getSingleton().register('afterColumnSort');
|
34
34
|
|
35
|
+
/**
|
36
|
+
* Tracks the conflicts between `columnSorting` and `multiColumnSorting` options.
|
37
|
+
* Only one plugin can be enabled for Handsontable instance. Once one of them is enabled,
|
38
|
+
* the other should remain disabled even if it's set to `true`.
|
39
|
+
*/
|
40
|
+
const pluginConflictsState = new WeakMap();
|
41
|
+
|
35
42
|
// DIFF - MultiColumnSorting & ColumnSorting: changed configuration documentation.
|
36
43
|
/**
|
37
44
|
* @plugin ColumnSorting
|
@@ -140,9 +147,17 @@ export class ColumnSorting extends BasePlugin {
|
|
140
147
|
*/
|
141
148
|
enablePlugin() {
|
142
149
|
var _this = this;
|
150
|
+
if (pluginConflictsState.has(this.hot) && pluginConflictsState.get(this.hot) !== this.pluginKey) {
|
151
|
+
this.hot.updateSettings({
|
152
|
+
[this.pluginKey]: false
|
153
|
+
});
|
154
|
+
warnAboutPluginsConflict(pluginConflictsState.get(this.hot), this.pluginKey);
|
155
|
+
return;
|
156
|
+
}
|
143
157
|
if (this.enabled) {
|
144
158
|
return;
|
145
159
|
}
|
160
|
+
pluginConflictsState.set(this.hot, this.pluginKey);
|
146
161
|
this.columnStatesManager = new ColumnStatesManager(this.hot, `${this.pluginKey}.sortingStates`);
|
147
162
|
this.columnMetaCache = new IndexToValueMap(physicalIndex => {
|
148
163
|
let visualIndex = this.hot.toVisualColumn(physicalIndex);
|
@@ -187,6 +202,7 @@ export class ColumnSorting extends BasePlugin {
|
|
187
202
|
}
|
188
203
|
this.updateHeaderClasses(headerSpanElement);
|
189
204
|
};
|
205
|
+
pluginConflictsState.delete(this.hot);
|
190
206
|
|
191
207
|
// Changing header width and removing indicator.
|
192
208
|
this.hot.addHook('afterGetColHeader', clearColHeader);
|
@@ -664,7 +680,7 @@ export class ColumnSorting extends BasePlugin {
|
|
664
680
|
* @param {object} newSettings New settings object.
|
665
681
|
*/
|
666
682
|
onUpdateSettings(newSettings) {
|
667
|
-
super.onUpdateSettings();
|
683
|
+
super.onUpdateSettings(newSettings);
|
668
684
|
if (this.columnMetaCache !== null) {
|
669
685
|
// Column meta cache base on settings, thus we should re-init the map.
|
670
686
|
this.columnMetaCache.init(this.hot.columnIndexMapper.getNumberOfIndexes());
|
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
require("core-js/modules/es.error.cause.js");
|
5
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
5
6
|
require("core-js/modules/esnext.iterator.map.js");
|
6
7
|
var _object = require("../../helpers/object");
|
7
8
|
var _translations = require("../../translations");
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import "core-js/modules/es.error.cause.js";
|
2
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
2
3
|
import "core-js/modules/esnext.iterator.map.js";
|
3
4
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
4
5
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
@@ -6,6 +6,7 @@ exports.createDateTimeCompareFunction = createDateTimeCompareFunction;
|
|
6
6
|
exports.getHeaderSpanElement = getHeaderSpanElement;
|
7
7
|
exports.getNextSortOrder = getNextSortOrder;
|
8
8
|
exports.isFirstLevelColumnHeader = isFirstLevelColumnHeader;
|
9
|
+
exports.warnAboutPluginsConflict = warnAboutPluginsConflict;
|
9
10
|
exports.wasHeaderClickedProperly = wasHeaderClickedProperly;
|
10
11
|
require("core-js/modules/es.set.difference.v2.js");
|
11
12
|
require("core-js/modules/es.set.intersection.v2.js");
|
@@ -22,6 +23,8 @@ var _object = require("../../helpers/object");
|
|
22
23
|
var _event = require("../../helpers/dom/event");
|
23
24
|
var _mixed = require("../../helpers/mixed");
|
24
25
|
var _sortService = require("./sortService");
|
26
|
+
var _console = require("../../helpers/console");
|
27
|
+
var _templateLiteralTag = require("../../helpers/templateLiteralTag");
|
25
28
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
26
29
|
const ASC_SORT_STATE = exports.ASC_SORT_STATE = 'asc';
|
27
30
|
const DESC_SORT_STATE = exports.DESC_SORT_STATE = 'desc';
|
@@ -173,4 +176,15 @@ function createDateTimeCompareFunction(sortOrder, format, columnPluginSettings)
|
|
173
176
|
}
|
174
177
|
return _sortService.DO_NOT_SWAP;
|
175
178
|
};
|
179
|
+
}
|
180
|
+
|
181
|
+
/**
|
182
|
+
* Warn users about problems when using `columnSorting` and `multiColumnSorting` plugins simultaneously.
|
183
|
+
*
|
184
|
+
* @param {string} workingPlugin The plugin that will work.
|
185
|
+
* @param {string} disabledPlugin The plugin that will remain disabled.
|
186
|
+
*/
|
187
|
+
function warnAboutPluginsConflict(workingPlugin, disabledPlugin) {
|
188
|
+
(0, _console.warn)((0, _templateLiteralTag.toSingleLine)`Plugins \`columnSorting\` and \`multiColumnSorting\` should not be enabled simultaneously.\x20
|
189
|
+
Only \`${workingPlugin}\` will work. The \`${disabledPlugin}\` plugin will remain disabled.`);
|
176
190
|
}
|
@@ -13,6 +13,8 @@ import { isObject } from "../../helpers/object.mjs";
|
|
13
13
|
import { isRightClick } from "../../helpers/dom/event.mjs";
|
14
14
|
import { isEmpty } from "../../helpers/mixed.mjs";
|
15
15
|
import { DO_NOT_SWAP, FIRST_BEFORE_SECOND, FIRST_AFTER_SECOND } from "./sortService/index.mjs";
|
16
|
+
import { warn } from "../../helpers/console.mjs";
|
17
|
+
import { toSingleLine } from "../../helpers/templateLiteralTag.mjs";
|
16
18
|
export const ASC_SORT_STATE = 'asc';
|
17
19
|
export const DESC_SORT_STATE = 'desc';
|
18
20
|
export const HEADER_SPAN_CLASS = 'colHeader';
|
@@ -163,4 +165,15 @@ export function createDateTimeCompareFunction(sortOrder, format, columnPluginSet
|
|
163
165
|
}
|
164
166
|
return DO_NOT_SWAP;
|
165
167
|
};
|
168
|
+
}
|
169
|
+
|
170
|
+
/**
|
171
|
+
* Warn users about problems when using `columnSorting` and `multiColumnSorting` plugins simultaneously.
|
172
|
+
*
|
173
|
+
* @param {string} workingPlugin The plugin that will work.
|
174
|
+
* @param {string} disabledPlugin The plugin that will remain disabled.
|
175
|
+
*/
|
176
|
+
export function warnAboutPluginsConflict(workingPlugin, disabledPlugin) {
|
177
|
+
warn(toSingleLine`Plugins \`columnSorting\` and \`multiColumnSorting\` should not be enabled simultaneously.\x20
|
178
|
+
Only \`${workingPlugin}\` will work. The \`${disabledPlugin}\` plugin will remain disabled.`);
|
166
179
|
}
|
@@ -608,6 +608,9 @@ class Comments extends _base.BasePlugin {
|
|
608
608
|
innerHeight
|
609
609
|
} = this.hot.rootWindow;
|
610
610
|
const documentElement = this.hot.rootDocument.documentElement;
|
611
|
+
const scrollbarWidth = (0, _element.getScrollbarWidth)(this.hot.rootDocument);
|
612
|
+
const verticalScrollbarWidth = (0, _element.hasVerticalScrollbar)(this.hot.rootWindow) ? scrollbarWidth : 0;
|
613
|
+
const horizontalScrollbarWidth = (0, _element.hasHorizontalScrollbar)(this.hot.rootWindow) ? scrollbarWidth : 0;
|
611
614
|
let x = left + rootWindow.scrollX + lastColWidth;
|
612
615
|
let y = top + rootWindow.scrollY + lastRowHeight;
|
613
616
|
if (this.hot.isRtl()) {
|
@@ -615,12 +618,12 @@ class Comments extends _base.BasePlugin {
|
|
615
618
|
}
|
616
619
|
|
617
620
|
// flip to the right or left the comments editor position when it goes out of browser viewport
|
618
|
-
if (this.hot.isLtr() && left + cellWidth + editorWidth > innerWidth) {
|
621
|
+
if (this.hot.isLtr() && left + cellWidth + editorWidth > innerWidth - verticalScrollbarWidth) {
|
619
622
|
x = left + rootWindow.scrollX - editorWidth - 1;
|
620
623
|
} else if (this.hot.isRtl() && x < -(documentElement.scrollWidth - documentElement.clientWidth)) {
|
621
624
|
x = left + rootWindow.scrollX + lastColWidth + 1;
|
622
625
|
}
|
623
|
-
if (top + editorHeight > innerHeight) {
|
626
|
+
if (top + editorHeight > innerHeight - horizontalScrollbarWidth) {
|
624
627
|
y -= editorHeight - cellHeight + 1;
|
625
628
|
}
|
626
629
|
_classPrivateFieldGet(_editor, this).setPosition(x, y);
|
@@ -9,7 +9,7 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
9
9
|
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
10
10
|
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
11
11
|
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
12
|
-
import { addClass,
|
12
|
+
import { addClass, closest, getScrollbarWidth, hasClass, hasVerticalScrollbar, hasHorizontalScrollbar, isChildOf, outerHeight, removeClass } from "../../helpers/dom/element.mjs";
|
13
13
|
import { stopImmediatePropagation } from "../../helpers/dom/event.mjs";
|
14
14
|
import { deepClone, deepExtend } from "../../helpers/object.mjs";
|
15
15
|
import { BasePlugin } from "../base/index.mjs";
|
@@ -604,6 +604,9 @@ export class Comments extends BasePlugin {
|
|
604
604
|
innerHeight
|
605
605
|
} = this.hot.rootWindow;
|
606
606
|
const documentElement = this.hot.rootDocument.documentElement;
|
607
|
+
const scrollbarWidth = getScrollbarWidth(this.hot.rootDocument);
|
608
|
+
const verticalScrollbarWidth = hasVerticalScrollbar(this.hot.rootWindow) ? scrollbarWidth : 0;
|
609
|
+
const horizontalScrollbarWidth = hasHorizontalScrollbar(this.hot.rootWindow) ? scrollbarWidth : 0;
|
607
610
|
let x = left + rootWindow.scrollX + lastColWidth;
|
608
611
|
let y = top + rootWindow.scrollY + lastRowHeight;
|
609
612
|
if (this.hot.isRtl()) {
|
@@ -611,12 +614,12 @@ export class Comments extends BasePlugin {
|
|
611
614
|
}
|
612
615
|
|
613
616
|
// flip to the right or left the comments editor position when it goes out of browser viewport
|
614
|
-
if (this.hot.isLtr() && left + cellWidth + editorWidth > innerWidth) {
|
617
|
+
if (this.hot.isLtr() && left + cellWidth + editorWidth > innerWidth - verticalScrollbarWidth) {
|
615
618
|
x = left + rootWindow.scrollX - editorWidth - 1;
|
616
619
|
} else if (this.hot.isRtl() && x < -(documentElement.scrollWidth - documentElement.clientWidth)) {
|
617
620
|
x = left + rootWindow.scrollX + lastColWidth + 1;
|
618
621
|
}
|
619
|
-
if (top + editorHeight > innerHeight) {
|
622
|
+
if (top + editorHeight > innerHeight - horizontalScrollbarWidth) {
|
620
623
|
y -= editorHeight - cellHeight + 1;
|
621
624
|
}
|
622
625
|
_classPrivateFieldGet(_editor, this).setPosition(x, y);
|