handsontable 14.1.0-next-1211447-20240205 → 14.2.0-next-4873a35-20240228

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 (163) hide show
  1. package/3rdparty/walkontable/src/core/_base.js +12 -0
  2. package/3rdparty/walkontable/src/core/_base.mjs +12 -0
  3. package/3rdparty/walkontable/src/scroll.js +131 -98
  4. package/3rdparty/walkontable/src/scroll.mjs +133 -100
  5. package/3rdparty/walkontable/src/selection/border/border.js +3 -3
  6. package/3rdparty/walkontable/src/selection/border/border.mjs +3 -3
  7. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +26 -0
  8. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +26 -0
  9. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +26 -0
  10. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +26 -0
  11. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +20 -0
  12. package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +20 -0
  13. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +20 -0
  14. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +20 -0
  15. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +20 -0
  16. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +20 -0
  17. package/3rdparty/walkontable/src/table.js +2 -0
  18. package/3rdparty/walkontable/src/table.mjs +2 -0
  19. package/3rdparty/walkontable/src/viewport.js +9 -0
  20. package/3rdparty/walkontable/src/viewport.mjs +10 -1
  21. package/CHANGELOG.md +38 -0
  22. package/base.js +2 -2
  23. package/base.mjs +2 -2
  24. package/core/index.js +6 -0
  25. package/core/index.mjs +2 -1
  26. package/core/viewportScroll/index.js +65 -0
  27. package/core/viewportScroll/index.mjs +61 -0
  28. package/core/viewportScroll/scrollStrategies/columnHeaderScroll.js +20 -0
  29. package/core/viewportScroll/scrollStrategies/columnHeaderScroll.mjs +16 -0
  30. package/core/viewportScroll/scrollStrategies/cornerHeaderScroll.js +14 -0
  31. package/core/viewportScroll/scrollStrategies/cornerHeaderScroll.mjs +10 -0
  32. package/core/viewportScroll/scrollStrategies/multipleScroll.js +15 -0
  33. package/core/viewportScroll/scrollStrategies/multipleScroll.mjs +11 -0
  34. package/core/viewportScroll/scrollStrategies/noncontiguousScroll.js +15 -0
  35. package/core/viewportScroll/scrollStrategies/noncontiguousScroll.mjs +11 -0
  36. package/core/viewportScroll/scrollStrategies/rowHeaderScroll.js +20 -0
  37. package/core/viewportScroll/scrollStrategies/rowHeaderScroll.mjs +16 -0
  38. package/core/viewportScroll/scrollStrategies/singleScroll.js +46 -0
  39. package/core/viewportScroll/scrollStrategies/singleScroll.mjs +42 -0
  40. package/core.d.ts +1 -1
  41. package/core.js +11 -52
  42. package/core.mjs +12 -53
  43. package/dataMap/metaManager/index.js +1 -1
  44. package/dataMap/metaManager/index.mjs +1 -1
  45. package/dataMap/metaManager/metaLayers/cellMeta.js +6 -1
  46. package/dataMap/metaManager/metaLayers/cellMeta.mjs +6 -1
  47. package/dataMap/metaManager/metaSchema.js +36 -12
  48. package/dataMap/metaManager/metaSchema.mjs +36 -12
  49. package/dist/handsontable.css +2 -2
  50. package/dist/handsontable.full.css +2 -2
  51. package/dist/handsontable.full.js +2997 -1929
  52. package/dist/handsontable.full.min.css +2 -2
  53. package/dist/handsontable.full.min.js +42 -42
  54. package/dist/handsontable.js +2999 -1931
  55. package/dist/handsontable.min.css +2 -2
  56. package/dist/handsontable.min.js +25 -25
  57. package/dist/languages/all.js +130 -25
  58. package/dist/languages/all.min.js +1 -1
  59. package/dist/languages/hr-HR.js +167 -0
  60. package/dist/languages/hr-HR.min.js +1 -0
  61. package/editorManager.js +15 -4
  62. package/editorManager.mjs +15 -4
  63. package/editors/autocompleteEditor/autocompleteEditor.js +2 -2
  64. package/editors/autocompleteEditor/autocompleteEditor.mjs +2 -2
  65. package/editors/baseEditor/baseEditor.js +1 -1
  66. package/editors/baseEditor/baseEditor.mjs +1 -1
  67. package/editors/checkboxEditor/checkboxEditor.js +5 -4
  68. package/editors/checkboxEditor/checkboxEditor.mjs +5 -4
  69. package/editors/dateEditor/dateEditor.js +1 -1
  70. package/editors/dateEditor/dateEditor.mjs +1 -1
  71. package/editors/dropdownEditor/dropdownEditor.js +1 -1
  72. package/editors/dropdownEditor/dropdownEditor.mjs +1 -1
  73. package/editors/handsontableEditor/handsontableEditor.js +1 -1
  74. package/editors/handsontableEditor/handsontableEditor.mjs +1 -1
  75. package/editors/selectEditor/selectEditor.js +1 -1
  76. package/editors/selectEditor/selectEditor.mjs +1 -1
  77. package/editors/textEditor/textEditor.js +1 -2
  78. package/editors/textEditor/textEditor.mjs +1 -2
  79. package/editors/timeEditor/timeEditor.js +1 -1
  80. package/editors/timeEditor/timeEditor.mjs +1 -1
  81. package/helpers/mixed.js +2 -2
  82. package/helpers/mixed.mjs +2 -2
  83. package/helpers/moves.js +86 -0
  84. package/helpers/moves.mjs +82 -0
  85. package/i18n/languages/hr-HR.js +96 -0
  86. package/i18n/languages/hr-HR.mjs +90 -0
  87. package/i18n/languages/index.js +2 -0
  88. package/i18n/languages/index.mjs +2 -1
  89. package/languages/all.js +130 -25
  90. package/languages/hr-HR.js +167 -0
  91. package/languages/hr-HR.mjs +92 -0
  92. package/languages/index.js +130 -25
  93. package/languages/index.mjs +2 -1
  94. package/package.json +11 -1
  95. package/pluginHooks.d.ts +4 -2
  96. package/pluginHooks.js +33 -3
  97. package/pluginHooks.mjs +33 -3
  98. package/plugins/autoColumnSize/autoColumnSize.js +6 -1
  99. package/plugins/autoColumnSize/autoColumnSize.mjs +6 -1
  100. package/plugins/autoRowSize/autoRowSize.js +5 -0
  101. package/plugins/autoRowSize/autoRowSize.mjs +5 -0
  102. package/plugins/autofill/autofill.js +3 -2
  103. package/plugins/autofill/autofill.mjs +3 -2
  104. package/plugins/columnSummary/columnSummary.js +1 -1
  105. package/plugins/columnSummary/columnSummary.mjs +1 -1
  106. package/plugins/dropdownMenu/dropdownMenu.js +58 -4
  107. package/plugins/dropdownMenu/dropdownMenu.mjs +58 -4
  108. package/plugins/filters/component/value.js +51 -5
  109. package/plugins/filters/component/value.mjs +51 -5
  110. package/plugins/filters/utils.js +1 -1
  111. package/plugins/filters/utils.mjs +1 -1
  112. package/plugins/formulas/formulas.js +10 -1
  113. package/plugins/formulas/formulas.mjs +10 -1
  114. package/plugins/formulas/indexSyncer/axisSyncer.js +3 -75
  115. package/plugins/formulas/indexSyncer/axisSyncer.mjs +3 -75
  116. package/plugins/manualColumnResize/manualColumnResize.js +3 -0
  117. package/plugins/manualColumnResize/manualColumnResize.mjs +3 -0
  118. package/plugins/mergeCells/cellsCollection.js +1 -1
  119. package/plugins/mergeCells/cellsCollection.mjs +1 -1
  120. package/plugins/mergeCells/mergeCells.js +30 -0
  121. package/plugins/mergeCells/mergeCells.mjs +30 -0
  122. package/plugins/undoRedo/undoRedo.js +61 -14
  123. package/plugins/undoRedo/undoRedo.mjs +61 -14
  124. package/renderers/autocompleteRenderer/autocompleteRenderer.js +1 -1
  125. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +1 -1
  126. package/renderers/baseRenderer/baseRenderer.js +1 -1
  127. package/renderers/baseRenderer/baseRenderer.mjs +1 -1
  128. package/renderers/checkboxRenderer/checkboxRenderer.js +36 -8
  129. package/renderers/checkboxRenderer/checkboxRenderer.mjs +36 -8
  130. package/renderers/dateRenderer/dateRenderer.js +1 -1
  131. package/renderers/dateRenderer/dateRenderer.mjs +1 -1
  132. package/renderers/dropdownRenderer/dropdownRenderer.js +1 -1
  133. package/renderers/dropdownRenderer/dropdownRenderer.mjs +1 -1
  134. package/renderers/handsontableRenderer/handsontableRenderer.js +1 -1
  135. package/renderers/handsontableRenderer/handsontableRenderer.mjs +1 -1
  136. package/renderers/htmlRenderer/htmlRenderer.js +1 -1
  137. package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
  138. package/renderers/numericRenderer/index.js +2 -1
  139. package/renderers/numericRenderer/index.mjs +1 -1
  140. package/renderers/numericRenderer/numericRenderer.js +28 -13
  141. package/renderers/numericRenderer/numericRenderer.mjs +27 -13
  142. package/renderers/passwordRenderer/passwordRenderer.js +1 -1
  143. package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
  144. package/renderers/selectRenderer/selectRenderer.js +1 -1
  145. package/renderers/selectRenderer/selectRenderer.mjs +1 -1
  146. package/renderers/textRenderer/textRenderer.js +1 -1
  147. package/renderers/textRenderer/textRenderer.mjs +1 -1
  148. package/renderers/timeRenderer/timeRenderer.js +1 -1
  149. package/renderers/timeRenderer/timeRenderer.mjs +1 -1
  150. package/selection/mouseEventHandler.js +4 -0
  151. package/selection/mouseEventHandler.mjs +4 -0
  152. package/selection/selection.js +64 -5
  153. package/selection/selection.mjs +64 -5
  154. package/shortcuts/recorder.js +27 -8
  155. package/shortcuts/recorder.mjs +27 -8
  156. package/tableView.js +86 -5
  157. package/tableView.mjs +87 -6
  158. package/utils/autoResize.js +0 -1
  159. package/utils/autoResize.mjs +0 -1
  160. package/utils/ghostTable.js +6 -6
  161. package/utils/ghostTable.mjs +6 -6
  162. package/utils/parseTable.js +9 -1
  163. package/utils/parseTable.mjs +9 -1
@@ -0,0 +1 @@
1
+ !function(E,T){if("object"==typeof exports&&"object"==typeof module)module.exports=T(require("handsontable"));else if("function"==typeof define&&define.amd)define(["handsontable"],T);else{var _="object"==typeof exports?T(require("handsontable")):T(E.Handsontable);for(var N in _)("object"==typeof exports?exports:E)[N]=_[N]}}("undefined"!=typeof self?self:this,(E=>(()=>{var T={960:T=>{"use strict";T.exports=E},250:E=>{E.exports=function(E){return E&&E.__esModule?E:{default:E}},E.exports.__esModule=!0,E.exports.default=E.exports}},_={};function N(E){var O=_[E];if(void 0!==O)return O.exports;var I=_[E]={exports:{}};return T[E](I,I.exports,N),I.exports}var O={};return(()=>{"use strict";var E=N(250)(N(960));const T=E.default.languages.dictionaryKeys,_={languageCode:"hr-HR",[T.CONTEXTMENU_ITEMS_NO_ITEMS]:"Nema dostupnih mogućnosti",[T.CONTEXTMENU_ITEMS_ROW_ABOVE]:"Umetni redak iznad",[T.CONTEXTMENU_ITEMS_ROW_BELOW]:"Umetni redak ispod",[T.CONTEXTMENU_ITEMS_INSERT_LEFT]:"Umetni stupac lijevo",[T.CONTEXTMENU_ITEMS_INSERT_RIGHT]:"Umetni stupac desno",[T.CONTEXTMENU_ITEMS_REMOVE_ROW]:["Ukloni redak","Ukloni retke"],[T.CONTEXTMENU_ITEMS_REMOVE_COLUMN]:["Ukloni stupac","Ukloni stupce"],[T.CONTEXTMENU_ITEMS_UNDO]:"Poništi",[T.CONTEXTMENU_ITEMS_REDO]:"Ponovi",[T.CONTEXTMENU_ITEMS_READ_ONLY]:"Samo za čitanje",[T.CONTEXTMENU_ITEMS_CLEAR_COLUMN]:"Očisti stupac",[T.CONTEXTMENU_ITEMS_ALIGNMENT]:"Poravnanje",[T.CONTEXTMENU_ITEMS_ALIGNMENT_LEFT]:"Lijevo",[T.CONTEXTMENU_ITEMS_ALIGNMENT_CENTER]:"Centar",[T.CONTEXTMENU_ITEMS_ALIGNMENT_RIGHT]:"Desno",[T.CONTEXTMENU_ITEMS_ALIGNMENT_JUSTIFY]:"Obostrano",[T.CONTEXTMENU_ITEMS_ALIGNMENT_TOP]:"Gore",[T.CONTEXTMENU_ITEMS_ALIGNMENT_MIDDLE]:"Sredina",[T.CONTEXTMENU_ITEMS_ALIGNMENT_BOTTOM]:"Dolje",[T.CONTEXTMENU_ITEMS_FREEZE_COLUMN]:"Zamrzni stupac",[T.CONTEXTMENU_ITEMS_UNFREEZE_COLUMN]:"Odmrzni stupac",[T.CONTEXTMENU_ITEMS_BORDERS]:"Granice",[T.CONTEXTMENU_ITEMS_BORDERS_TOP]:"Gore",[T.CONTEXTMENU_ITEMS_BORDERS_RIGHT]:"Desno",[T.CONTEXTMENU_ITEMS_BORDERS_BOTTOM]:"Dolje",[T.CONTEXTMENU_ITEMS_BORDERS_LEFT]:"Lijevo",[T.CONTEXTMENU_ITEMS_REMOVE_BORDERS]:"Ukloni granicu(e)",[T.CONTEXTMENU_ITEMS_ADD_COMMENT]:"Dodaj komentar",[T.CONTEXTMENU_ITEMS_EDIT_COMMENT]:"Uredi komentar",[T.CONTEXTMENU_ITEMS_REMOVE_COMMENT]:"Izbriši komentar",[T.CONTEXTMENU_ITEMS_READ_ONLY_COMMENT]:"Komentar samo za čitanje",[T.CONTEXTMENU_ITEMS_MERGE_CELLS]:"Spoji čelije",[T.CONTEXTMENU_ITEMS_UNMERGE_CELLS]:"Razdijeli čelije",[T.CONTEXTMENU_ITEMS_COPY]:"Kopiraj",[T.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_HEADERS]:["Kopiraj sa zaglavljem","Kopiraj sa zaglavljima"],[T.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_GROUP_HEADERS]:["Kopiraj sa grupnim zaglavljem","Kopiraj sa grupnim zaglavljima"],[T.CONTEXTMENU_ITEMS_COPY_COLUMN_HEADERS_ONLY]:["Kopiraj samo zaglavlje","Kopiraj samo zaglavlja"],[T.CONTEXTMENU_ITEMS_CUT]:"Izreži",[T.CONTEXTMENU_ITEMS_NESTED_ROWS_INSERT_CHILD]:"Umetni ugniježđeni redak",[T.CONTEXTMENU_ITEMS_NESTED_ROWS_DETACH_CHILD]:"Odvoji ugniježđeni redak",[T.CONTEXTMENU_ITEMS_HIDE_COLUMN]:["Sakrij stupac","Sakrij stupce"],[T.CONTEXTMENU_ITEMS_SHOW_COLUMN]:["Prikaži stupac","Prikaži stupce"],[T.CONTEXTMENU_ITEMS_HIDE_ROW]:["Sakrij redak","Sakrij retke"],[T.CONTEXTMENU_ITEMS_SHOW_ROW]:["Prikaži redak","Prikaži retke"],[T.FILTERS_CONDITIONS_NONE]:"Ništa",[T.FILTERS_CONDITIONS_EMPTY]:"Prazno",[T.FILTERS_CONDITIONS_NOT_EMPTY]:"Nije prazno",[T.FILTERS_CONDITIONS_EQUAL]:"Jednako",[T.FILTERS_CONDITIONS_NOT_EQUAL]:"Nije jednako",[T.FILTERS_CONDITIONS_BEGINS_WITH]:"Počinje s",[T.FILTERS_CONDITIONS_ENDS_WITH]:"Završava s",[T.FILTERS_CONDITIONS_CONTAINS]:"Sadrži",[T.FILTERS_CONDITIONS_NOT_CONTAIN]:"Ne sadrži",[T.FILTERS_CONDITIONS_GREATER_THAN]:"Veće od",[T.FILTERS_CONDITIONS_GREATER_THAN_OR_EQUAL]:"Veće ili jednako od",[T.FILTERS_CONDITIONS_LESS_THAN]:"Manje od",[T.FILTERS_CONDITIONS_LESS_THAN_OR_EQUAL]:"Manje ili jednako od",[T.FILTERS_CONDITIONS_BETWEEN]:"Između",[T.FILTERS_CONDITIONS_NOT_BETWEEN]:"Nije između",[T.FILTERS_CONDITIONS_AFTER]:"Nakon",[T.FILTERS_CONDITIONS_BEFORE]:"Prije",[T.FILTERS_CONDITIONS_TODAY]:"Danas",[T.FILTERS_CONDITIONS_TOMORROW]:"Sutra",[T.FILTERS_CONDITIONS_YESTERDAY]:"Jučer",[T.FILTERS_VALUES_BLANK_CELLS]:"Prazna polja",[T.FILTERS_DIVS_FILTER_BY_CONDITION]:"Filtriraj po uvjetu",[T.FILTERS_DIVS_FILTER_BY_VALUE]:"Filtriraj po vrijednosti",[T.FILTERS_LABELS_CONJUNCTION]:"I",[T.FILTERS_LABELS_DISJUNCTION]:"Ili",[T.FILTERS_BUTTONS_SELECT_ALL]:"Odaberi sve",[T.FILTERS_BUTTONS_CLEAR]:"Očisti",[T.FILTERS_BUTTONS_OK]:"U redu",[T.FILTERS_BUTTONS_CANCEL]:"Odustani",[T.FILTERS_BUTTONS_PLACEHOLDER_SEARCH]:"Pretraži",[T.FILTERS_BUTTONS_PLACEHOLDER_VALUE]:"Vrijednost",[T.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]:"Druga vrijednost",[T.CHECKBOX_CHECKED]:"Označeno",[T.CHECKBOX_UNCHECKED]:"Nije označeno"};E.default.languages.registerLanguageDictionary(_)})(),O=O.___})()));
package/editorManager.js CHANGED
@@ -29,7 +29,6 @@ class EditorManager {
29
29
  *
30
30
  * @param {MouseEvent} event The mouse event object.
31
31
  * @param {object} coords The cell coordinates.
32
- * @param {HTMLTableCellElement|HTMLTableHeaderCellElement} elem The element which triggers the action.
33
32
  */
34
33
  _classPrivateMethodInitSpec(this, _onCellDblClick);
35
34
  /**
@@ -220,6 +219,19 @@ class EditorManager {
220
219
  this.clearActiveEditor();
221
220
  return;
222
221
  }
222
+ const selection = this.hot.getSelectedRangeLast();
223
+ let allowOpening = this.hot.runHooks('beforeBeginEditing', selection.highlight.row, selection.highlight.col, newInitialValue, event, enableFullEditMode);
224
+
225
+ // If the above hook does not return boolean apply default behavior which disallows opening
226
+ // an editor after double mouse click for non-contiguous selection (while pressing Ctrl/Cmd) and
227
+ // for multiple selected cells (while pressing SHIFT).
228
+ if (event instanceof MouseEvent && typeof allowOpening !== 'boolean') {
229
+ allowOpening = this.hot.selection.getLayerLevel() === 0 && selection.isSingle();
230
+ }
231
+ if (allowOpening === false) {
232
+ this.clearActiveEditor();
233
+ return;
234
+ }
223
235
  if (!this.activeEditor) {
224
236
  this.hot.scrollToFocusedCell();
225
237
  this.prepareEditor();
@@ -373,9 +385,8 @@ function _onAfterDocumentKeyDown2(event) {
373
385
  }
374
386
  }
375
387
  }
376
- function _onCellDblClick2(event, coords, elem) {
377
- // may be TD or TH
378
- if (elem.nodeName === 'TD') {
388
+ function _onCellDblClick2(event, coords) {
389
+ if (coords.isCell()) {
379
390
  this.openEditor(null, event, true);
380
391
  }
381
392
  }
package/editorManager.mjs CHANGED
@@ -25,7 +25,6 @@ class EditorManager {
25
25
  *
26
26
  * @param {MouseEvent} event The mouse event object.
27
27
  * @param {object} coords The cell coordinates.
28
- * @param {HTMLTableCellElement|HTMLTableHeaderCellElement} elem The element which triggers the action.
29
28
  */
30
29
  _classPrivateMethodInitSpec(this, _onCellDblClick);
31
30
  /**
@@ -216,6 +215,19 @@ class EditorManager {
216
215
  this.clearActiveEditor();
217
216
  return;
218
217
  }
218
+ const selection = this.hot.getSelectedRangeLast();
219
+ let allowOpening = this.hot.runHooks('beforeBeginEditing', selection.highlight.row, selection.highlight.col, newInitialValue, event, enableFullEditMode);
220
+
221
+ // If the above hook does not return boolean apply default behavior which disallows opening
222
+ // an editor after double mouse click for non-contiguous selection (while pressing Ctrl/Cmd) and
223
+ // for multiple selected cells (while pressing SHIFT).
224
+ if (event instanceof MouseEvent && typeof allowOpening !== 'boolean') {
225
+ allowOpening = this.hot.selection.getLayerLevel() === 0 && selection.isSingle();
226
+ }
227
+ if (allowOpening === false) {
228
+ this.clearActiveEditor();
229
+ return;
230
+ }
219
231
  if (!this.activeEditor) {
220
232
  this.hot.scrollToFocusedCell();
221
233
  this.prepareEditor();
@@ -369,9 +381,8 @@ function _onAfterDocumentKeyDown2(event) {
369
381
  }
370
382
  }
371
383
  }
372
- function _onCellDblClick2(event, coords, elem) {
373
- // may be TD or TH
374
- if (elem.nodeName === 'TD') {
384
+ function _onCellDblClick2(event, coords) {
385
+ if (coords.isCell()) {
375
386
  this.openEditor(null, event, true);
376
387
  }
377
388
  }
@@ -163,7 +163,7 @@ class AutocompleteEditor extends _handsontableEditor.HandsontableEditor {
163
163
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
164
164
  * @param {HTMLTableCellElement} td The rendered cell element.
165
165
  * @param {*} value The rendered value.
166
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
166
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
167
167
  */
168
168
  prepare(row, col, prop, td, value, cellProperties) {
169
169
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -221,7 +221,7 @@ class AutocompleteEditor extends _handsontableEditor.HandsontableEditor {
221
221
  }
222
222
  TD.innerHTML = cellValue;
223
223
  },
224
- afterSelection: (startRow, startCol) => {
224
+ afterSelectionEnd: (startRow, startCol) => {
225
225
  if (rootInstanceAriaTagsEnabled) {
226
226
  const TD = this.htEditor.getCell(startRow, startCol, true);
227
227
  (0, _element.setAttribute)(TD, [(0, _a11y.A11Y_SELECTED)()]);
@@ -160,7 +160,7 @@ export class AutocompleteEditor extends HandsontableEditor {
160
160
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
161
161
  * @param {HTMLTableCellElement} td The rendered cell element.
162
162
  * @param {*} value The rendered value.
163
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
163
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
164
164
  */
165
165
  prepare(row, col, prop, td, value, cellProperties) {
166
166
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -218,7 +218,7 @@ export class AutocompleteEditor extends HandsontableEditor {
218
218
  }
219
219
  TD.innerHTML = cellValue;
220
220
  },
221
- afterSelection: (startRow, startCol) => {
221
+ afterSelectionEnd: (startRow, startCol) => {
222
222
  if (rootInstanceAriaTagsEnabled) {
223
223
  const TD = this.htEditor.getCell(startRow, startCol, true);
224
224
  setAttribute(TD, [A11Y_SELECTED()]);
@@ -163,7 +163,7 @@ class BaseEditor {
163
163
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
164
164
  * @param {HTMLTableCellElement} td The rendered cell element.
165
165
  * @param {*} value The rendered value.
166
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
166
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
167
167
  */
168
168
  prepare(row, col, prop, td, value, cellProperties) {
169
169
  this.TD = td;
@@ -159,7 +159,7 @@ export class BaseEditor {
159
159
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
160
160
  * @param {HTMLTableCellElement} td The rendered cell element.
161
161
  * @param {*} value The rendered value.
162
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
162
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
163
163
  */
164
164
  prepare(row, col, prop, td, value, cellProperties) {
165
165
  this.TD = td;
@@ -14,11 +14,12 @@ class CheckboxEditor extends _baseEditor.BaseEditor {
14
14
  return EDITOR_TYPE;
15
15
  }
16
16
  beginEditing(initialValue, event) {
17
- // Just some events connected with checkbox editor are delegated here. Some `keydown` events like `enter` and `space` key press
18
- // are handled inside `checkboxRenderer`. Some events come here from `editorManager`. Below `if` statement was created by author
19
- // for purpose of handling only `doubleclick` event which may be done on a cell with checkbox.
17
+ // Just some events connected with the checkbox editor are delegated here. Some `keydown` events like `enter` and
18
+ // `space` key presses are handled inside `checkboxRenderer`. Some events come here from `editorManager`. The below
19
+ // `if` statement was created by the author for the purpose of handling only the `doubleclick` event on the TD
20
+ // element with a checkbox.
20
21
 
21
- if (event && event.type === 'mouseup') {
22
+ if (event && event.type === 'mouseup' && event.target.nodeName === 'TD') {
22
23
  const checkbox = this.TD.querySelector('input[type="checkbox"]');
23
24
  if (!(0, _element.hasClass)(checkbox, 'htBadValue')) {
24
25
  checkbox.click();
@@ -11,11 +11,12 @@ export class CheckboxEditor extends BaseEditor {
11
11
  return EDITOR_TYPE;
12
12
  }
13
13
  beginEditing(initialValue, event) {
14
- // Just some events connected with checkbox editor are delegated here. Some `keydown` events like `enter` and `space` key press
15
- // are handled inside `checkboxRenderer`. Some events come here from `editorManager`. Below `if` statement was created by author
16
- // for purpose of handling only `doubleclick` event which may be done on a cell with checkbox.
14
+ // Just some events connected with the checkbox editor are delegated here. Some `keydown` events like `enter` and
15
+ // `space` key presses are handled inside `checkboxRenderer`. Some events come here from `editorManager`. The below
16
+ // `if` statement was created by the author for the purpose of handling only the `doubleclick` event on the TD
17
+ // element with a checkbox.
17
18
 
18
- if (event && event.type === 'mouseup') {
19
+ if (event && event.type === 'mouseup' && event.target.nodeName === 'TD') {
19
20
  const checkbox = this.TD.querySelector('input[type="checkbox"]');
20
21
  if (!hasClass(checkbox, 'htBadValue')) {
21
22
  checkbox.click();
@@ -100,7 +100,7 @@ class DateEditor extends _textEditor.TextEditor {
100
100
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
101
101
  * @param {HTMLTableCellElement} td The rendered cell element.
102
102
  * @param {*} value The rendered value.
103
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
103
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
104
104
  */
105
105
  prepare(row, col, prop, td, value, cellProperties) {
106
106
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -96,7 +96,7 @@ export class DateEditor extends TextEditor {
96
96
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
97
97
  * @param {HTMLTableCellElement} td The rendered cell element.
98
98
  * @param {*} value The rendered value.
99
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
99
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
100
100
  */
101
101
  prepare(row, col, prop, td, value, cellProperties) {
102
102
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -21,7 +21,7 @@ class DropdownEditor extends _autocompleteEditor.AutocompleteEditor {
21
21
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
22
22
  * @param {HTMLTableCellElement} td The rendered cell element.
23
23
  * @param {*} value The rendered value.
24
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
24
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
25
25
  */
26
26
  prepare(row, col, prop, td, value, cellProperties) {
27
27
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -17,7 +17,7 @@ export class DropdownEditor extends AutocompleteEditor {
17
17
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
18
18
  * @param {HTMLTableCellElement} td The rendered cell element.
19
19
  * @param {*} value The rendered value.
20
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
20
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
21
21
  */
22
22
  prepare(row, col, prop, td, value, cellProperties) {
23
23
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -62,7 +62,7 @@ class HandsontableEditor extends _textEditor.TextEditor {
62
62
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
63
63
  * @param {HTMLTableCellElement} td The rendered cell element.
64
64
  * @param {*} value The rendered value.
65
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
65
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
66
66
  */
67
67
  prepare(row, col, prop, td, value, cellProperties) {
68
68
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -59,7 +59,7 @@ export class HandsontableEditor extends TextEditor {
59
59
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
60
60
  * @param {HTMLTableCellElement} td The rendered cell element.
61
61
  * @param {*} value The rendered value.
62
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
62
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
63
63
  */
64
64
  prepare(row, col, prop, td, value, cellProperties) {
65
65
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -99,7 +99,7 @@ class SelectEditor extends _baseEditor.BaseEditor {
99
99
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
100
100
  * @param {HTMLTableCellElement} td The rendered cell element.
101
101
  * @param {*} value The rendered value.
102
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
102
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
103
103
  */
104
104
  prepare(row, col, prop, td, value, cellProperties) {
105
105
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -96,7 +96,7 @@ export class SelectEditor extends BaseEditor {
96
96
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
97
97
  * @param {HTMLTableCellElement} td The rendered cell element.
98
98
  * @param {*} value The rendered value.
99
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
99
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
100
100
  */
101
101
  prepare(row, col, prop, td, value, cellProperties) {
102
102
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -140,7 +140,7 @@ class TextEditor extends _baseEditor.BaseEditor {
140
140
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
141
141
  * @param {HTMLTableCellElement} td The rendered cell element.
142
142
  * @param {*} value The rendered value.
143
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
143
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
144
144
  */
145
145
  prepare(row, col, prop, td, value, cellProperties) {
146
146
  const previousState = this.state;
@@ -245,7 +245,6 @@ class TextEditor extends _baseEditor.BaseEditor {
245
245
  this.textareaParentStyle[this.hot.isRtl() ? 'left' : 'right'] = 'auto';
246
246
  this.textareaParentStyle.opacity = '1';
247
247
  this.textareaStyle.textIndent = '';
248
- this.textareaStyle.overflowY = 'hidden';
249
248
  const childNodes = this.TEXTAREA_PARENT.childNodes;
250
249
  let hasClassHandsontableEditor = false;
251
250
  (0, _number.rangeEach)(childNodes.length - 1, index => {
@@ -136,7 +136,7 @@ export class TextEditor extends BaseEditor {
136
136
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
137
137
  * @param {HTMLTableCellElement} td The rendered cell element.
138
138
  * @param {*} value The rendered value.
139
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
139
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
140
140
  */
141
141
  prepare(row, col, prop, td, value, cellProperties) {
142
142
  const previousState = this.state;
@@ -241,7 +241,6 @@ export class TextEditor extends BaseEditor {
241
241
  this.textareaParentStyle[this.hot.isRtl() ? 'left' : 'right'] = 'auto';
242
242
  this.textareaParentStyle.opacity = '1';
243
243
  this.textareaStyle.textIndent = '';
244
- this.textareaStyle.overflowY = 'hidden';
245
244
  const childNodes = this.TEXTAREA_PARENT.childNodes;
246
245
  let hasClassHandsontableEditor = false;
247
246
  rangeEach(childNodes.length - 1, index => {
@@ -21,7 +21,7 @@ class TimeEditor extends _textEditor.TextEditor {
21
21
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
22
22
  * @param {HTMLTableCellElement} td The rendered cell element.
23
23
  * @param {*} value The rendered value.
24
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
24
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
25
25
  */
26
26
  prepare(row, col, prop, td, value, cellProperties) {
27
27
  super.prepare(row, col, prop, td, value, cellProperties);
@@ -18,7 +18,7 @@ export class TimeEditor extends TextEditor {
18
18
  * @param {number|string} prop The column property (passed when datasource is an array of objects).
19
19
  * @param {HTMLTableCellElement} td The rendered cell element.
20
20
  * @param {*} value The rendered value.
21
- * @param {object} cellProperties The cell meta object ({@see Core#getCellMeta}).
21
+ * @param {object} cellProperties The cell meta object (see {@link Core#getCellMeta}).
22
22
  */
23
23
  prepare(row, col, prop, td, value, cellProperties) {
24
24
  super.prepare(row, col, prop, td, value, cellProperties);
package/helpers/mixed.js CHANGED
@@ -134,7 +134,7 @@ const domMessages = {
134
134
  function _injectProductInfo(key, element) {
135
135
  const hasValidType = !isEmpty(key);
136
136
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
137
- const hotVersion = "14.1.0-next-1211447-20240205";
137
+ const hotVersion = "14.2.0-next-4873a35-20240228";
138
138
  let keyValidityDate;
139
139
  let consoleMessageState = 'invalid';
140
140
  let domMessageState = 'invalid';
@@ -142,7 +142,7 @@ function _injectProductInfo(key, element) {
142
142
  const schemaValidity = _checkKeySchema(key);
143
143
  if (hasValidType || isNonCommercial || schemaValidity) {
144
144
  if (schemaValidity) {
145
- const releaseDate = (0, _moment.default)("16/01/2024", 'DD/MM/YYYY');
145
+ const releaseDate = (0, _moment.default)("06/03/2024", 'DD/MM/YYYY');
146
146
  const releaseDays = Math.floor(releaseDate.toDate().getTime() / 8.64e7);
147
147
  const keyValidityDays = _extractTime(key);
148
148
  keyValidityDate = (0, _moment.default)((keyValidityDays + 1) * 8.64e7, 'x').format('MMMM DD, YYYY');
package/helpers/mixed.mjs CHANGED
@@ -124,7 +124,7 @@ const domMessages = {
124
124
  export function _injectProductInfo(key, element) {
125
125
  const hasValidType = !isEmpty(key);
126
126
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
127
- const hotVersion = "14.1.0-next-1211447-20240205";
127
+ const hotVersion = "14.2.0-next-4873a35-20240228";
128
128
  let keyValidityDate;
129
129
  let consoleMessageState = 'invalid';
130
130
  let domMessageState = 'invalid';
@@ -132,7 +132,7 @@ export function _injectProductInfo(key, element) {
132
132
  const schemaValidity = _checkKeySchema(key);
133
133
  if (hasValidType || isNonCommercial || schemaValidity) {
134
134
  if (schemaValidity) {
135
- const releaseDate = moment("16/01/2024", 'DD/MM/YYYY');
135
+ const releaseDate = moment("06/03/2024", 'DD/MM/YYYY');
136
136
  const releaseDays = Math.floor(releaseDate.toDate().getTime() / 8.64e7);
137
137
  const keyValidityDays = _extractTime(key);
138
138
  keyValidityDate = moment((keyValidityDays + 1) * 8.64e7, 'x').format('MMMM DD, YYYY');
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.getMoves = getMoves;
5
+ require("core-js/modules/es.array.push.js");
6
+ /**
7
+ * Gets first position where to move element (respecting the fact that some element will be sooner or later
8
+ * taken out of the dataset in order to move them).
9
+ *
10
+ * @param {Array<number>} movedIndexes Sequence of moved indexes for certain axis.
11
+ * @param {number} finalIndex Final place where to move rows.
12
+ * @param {number} numberOfIndexes Number of indexes in a dataset.
13
+ * @returns {number} Index informing where to move the first element.
14
+ */
15
+ function getMoveLine(movedIndexes, finalIndex, numberOfIndexes) {
16
+ const notMovedElements = Array.from(Array(numberOfIndexes).keys()).filter(index => movedIndexes.includes(index) === false);
17
+ if (finalIndex === 0) {
18
+ var _notMovedElements$fin;
19
+ return (_notMovedElements$fin = notMovedElements[finalIndex]) !== null && _notMovedElements$fin !== void 0 ? _notMovedElements$fin : 0; // Moving before the first dataset's element.
20
+ }
21
+ return notMovedElements[finalIndex - 1] + 1; // Moving before another element.
22
+ }
23
+
24
+ /**
25
+ * Gets initially calculated move positions.
26
+ *
27
+ * @param {Array<number>} movedIndexes Sequence of moved indexes for certain axis.
28
+ * @param {number} moveLine Final place where to move rows.
29
+ * @returns {Array<{from: number, to: number}>} Initially calculated move positions.
30
+ */
31
+ function getInitiallyCalculatedMoves(movedIndexes, moveLine) {
32
+ const moves = [];
33
+ movedIndexes.forEach(movedIndex => {
34
+ const move = {
35
+ from: movedIndex,
36
+ to: moveLine
37
+ };
38
+ moves.forEach(previouslyMovedIndex => {
39
+ const isMovingFromEndToStart = previouslyMovedIndex.from > previouslyMovedIndex.to;
40
+ const isMovingElementBefore = previouslyMovedIndex.to <= move.from;
41
+ const isMovingAfterElement = previouslyMovedIndex.from > move.from;
42
+ if (isMovingAfterElement && isMovingElementBefore && isMovingFromEndToStart) {
43
+ move.from += 1;
44
+ }
45
+ });
46
+
47
+ // Moved element from right to left (or bottom to top).
48
+ if (move.from >= moveLine) {
49
+ moveLine += 1;
50
+ }
51
+ moves.push(move);
52
+ });
53
+ return moves;
54
+ }
55
+
56
+ /**
57
+ * Gets finally calculated move positions (after adjusting).
58
+ *
59
+ * @param {Array<{from: number, to: number}>} moves Initially calculated move positions.
60
+ * @returns {Array<{from: number, to: number}>} Finally calculated move positions (after adjusting).
61
+ */
62
+ function adjustedCalculatedMoves(moves) {
63
+ moves.forEach((move, index) => {
64
+ const nextMoved = moves.slice(index + 1);
65
+ nextMoved.forEach(nextMovedIndex => {
66
+ const isMovingFromStartToEnd = nextMovedIndex.from < nextMovedIndex.to;
67
+ if (nextMovedIndex.from > move.from && isMovingFromStartToEnd) {
68
+ nextMovedIndex.from -= 1;
69
+ }
70
+ });
71
+ });
72
+ return moves;
73
+ }
74
+
75
+ /**
76
+ * Get list of move positions.
77
+ *
78
+ * @param {Array<number>} movedIndexes Sequence of moved indexes for certain axis.
79
+ * @param {number} finalIndex Final place where to move rows.
80
+ * @param {number} numberOfIndexes Number of indexes in a dataset.
81
+ * @returns {Array<{from: number, to: number}>}
82
+ */
83
+ function getMoves(movedIndexes, finalIndex, numberOfIndexes) {
84
+ const moves = getInitiallyCalculatedMoves(movedIndexes, getMoveLine(movedIndexes, finalIndex, numberOfIndexes));
85
+ return adjustedCalculatedMoves(moves);
86
+ }
@@ -0,0 +1,82 @@
1
+ import "core-js/modules/es.array.push.js";
2
+ /**
3
+ * Gets first position where to move element (respecting the fact that some element will be sooner or later
4
+ * taken out of the dataset in order to move them).
5
+ *
6
+ * @param {Array<number>} movedIndexes Sequence of moved indexes for certain axis.
7
+ * @param {number} finalIndex Final place where to move rows.
8
+ * @param {number} numberOfIndexes Number of indexes in a dataset.
9
+ * @returns {number} Index informing where to move the first element.
10
+ */
11
+ function getMoveLine(movedIndexes, finalIndex, numberOfIndexes) {
12
+ const notMovedElements = Array.from(Array(numberOfIndexes).keys()).filter(index => movedIndexes.includes(index) === false);
13
+ if (finalIndex === 0) {
14
+ var _notMovedElements$fin;
15
+ return (_notMovedElements$fin = notMovedElements[finalIndex]) !== null && _notMovedElements$fin !== void 0 ? _notMovedElements$fin : 0; // Moving before the first dataset's element.
16
+ }
17
+ return notMovedElements[finalIndex - 1] + 1; // Moving before another element.
18
+ }
19
+
20
+ /**
21
+ * Gets initially calculated move positions.
22
+ *
23
+ * @param {Array<number>} movedIndexes Sequence of moved indexes for certain axis.
24
+ * @param {number} moveLine Final place where to move rows.
25
+ * @returns {Array<{from: number, to: number}>} Initially calculated move positions.
26
+ */
27
+ function getInitiallyCalculatedMoves(movedIndexes, moveLine) {
28
+ const moves = [];
29
+ movedIndexes.forEach(movedIndex => {
30
+ const move = {
31
+ from: movedIndex,
32
+ to: moveLine
33
+ };
34
+ moves.forEach(previouslyMovedIndex => {
35
+ const isMovingFromEndToStart = previouslyMovedIndex.from > previouslyMovedIndex.to;
36
+ const isMovingElementBefore = previouslyMovedIndex.to <= move.from;
37
+ const isMovingAfterElement = previouslyMovedIndex.from > move.from;
38
+ if (isMovingAfterElement && isMovingElementBefore && isMovingFromEndToStart) {
39
+ move.from += 1;
40
+ }
41
+ });
42
+
43
+ // Moved element from right to left (or bottom to top).
44
+ if (move.from >= moveLine) {
45
+ moveLine += 1;
46
+ }
47
+ moves.push(move);
48
+ });
49
+ return moves;
50
+ }
51
+
52
+ /**
53
+ * Gets finally calculated move positions (after adjusting).
54
+ *
55
+ * @param {Array<{from: number, to: number}>} moves Initially calculated move positions.
56
+ * @returns {Array<{from: number, to: number}>} Finally calculated move positions (after adjusting).
57
+ */
58
+ function adjustedCalculatedMoves(moves) {
59
+ moves.forEach((move, index) => {
60
+ const nextMoved = moves.slice(index + 1);
61
+ nextMoved.forEach(nextMovedIndex => {
62
+ const isMovingFromStartToEnd = nextMovedIndex.from < nextMovedIndex.to;
63
+ if (nextMovedIndex.from > move.from && isMovingFromStartToEnd) {
64
+ nextMovedIndex.from -= 1;
65
+ }
66
+ });
67
+ });
68
+ return moves;
69
+ }
70
+
71
+ /**
72
+ * Get list of move positions.
73
+ *
74
+ * @param {Array<number>} movedIndexes Sequence of moved indexes for certain axis.
75
+ * @param {number} finalIndex Final place where to move rows.
76
+ * @param {number} numberOfIndexes Number of indexes in a dataset.
77
+ * @returns {Array<{from: number, to: number}>}
78
+ */
79
+ export function getMoves(movedIndexes, finalIndex, numberOfIndexes) {
80
+ const moves = getInitiallyCalculatedMoves(movedIndexes, getMoveLine(movedIndexes, finalIndex, numberOfIndexes));
81
+ return adjustedCalculatedMoves(moves);
82
+ }
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ var C = _interopRequireWildcard(require("../constants"));
5
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
6
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
7
+ /**
8
+ * @preserve
9
+ * Authors: Domagoj Lončarić & Ante Živković
10
+ * Last updated: Jan 31, 2024
11
+ *
12
+ * Description: Definition file for Croatian - Croatia language-country.
13
+ */
14
+
15
+ const dictionary = {
16
+ languageCode: 'hr-HR',
17
+ [C.CONTEXTMENU_ITEMS_NO_ITEMS]: 'Nema dostupnih mogućnosti',
18
+ [C.CONTEXTMENU_ITEMS_ROW_ABOVE]: 'Umetni redak iznad',
19
+ [C.CONTEXTMENU_ITEMS_ROW_BELOW]: 'Umetni redak ispod',
20
+ [C.CONTEXTMENU_ITEMS_INSERT_LEFT]: 'Umetni stupac lijevo',
21
+ [C.CONTEXTMENU_ITEMS_INSERT_RIGHT]: 'Umetni stupac desno',
22
+ [C.CONTEXTMENU_ITEMS_REMOVE_ROW]: ['Ukloni redak', 'Ukloni retke'],
23
+ [C.CONTEXTMENU_ITEMS_REMOVE_COLUMN]: ['Ukloni stupac', 'Ukloni stupce'],
24
+ [C.CONTEXTMENU_ITEMS_UNDO]: 'Poništi',
25
+ [C.CONTEXTMENU_ITEMS_REDO]: 'Ponovi',
26
+ [C.CONTEXTMENU_ITEMS_READ_ONLY]: 'Samo za čitanje',
27
+ [C.CONTEXTMENU_ITEMS_CLEAR_COLUMN]: 'Očisti stupac',
28
+ [C.CONTEXTMENU_ITEMS_ALIGNMENT]: 'Poravnanje',
29
+ [C.CONTEXTMENU_ITEMS_ALIGNMENT_LEFT]: 'Lijevo',
30
+ [C.CONTEXTMENU_ITEMS_ALIGNMENT_CENTER]: 'Centar',
31
+ [C.CONTEXTMENU_ITEMS_ALIGNMENT_RIGHT]: 'Desno',
32
+ [C.CONTEXTMENU_ITEMS_ALIGNMENT_JUSTIFY]: 'Obostrano',
33
+ [C.CONTEXTMENU_ITEMS_ALIGNMENT_TOP]: 'Gore',
34
+ [C.CONTEXTMENU_ITEMS_ALIGNMENT_MIDDLE]: 'Sredina',
35
+ [C.CONTEXTMENU_ITEMS_ALIGNMENT_BOTTOM]: 'Dolje',
36
+ [C.CONTEXTMENU_ITEMS_FREEZE_COLUMN]: 'Zamrzni stupac',
37
+ [C.CONTEXTMENU_ITEMS_UNFREEZE_COLUMN]: 'Odmrzni stupac',
38
+ [C.CONTEXTMENU_ITEMS_BORDERS]: 'Granice',
39
+ [C.CONTEXTMENU_ITEMS_BORDERS_TOP]: 'Gore',
40
+ [C.CONTEXTMENU_ITEMS_BORDERS_RIGHT]: 'Desno',
41
+ [C.CONTEXTMENU_ITEMS_BORDERS_BOTTOM]: 'Dolje',
42
+ [C.CONTEXTMENU_ITEMS_BORDERS_LEFT]: 'Lijevo',
43
+ [C.CONTEXTMENU_ITEMS_REMOVE_BORDERS]: 'Ukloni granicu(e)',
44
+ [C.CONTEXTMENU_ITEMS_ADD_COMMENT]: 'Dodaj komentar',
45
+ [C.CONTEXTMENU_ITEMS_EDIT_COMMENT]: 'Uredi komentar',
46
+ [C.CONTEXTMENU_ITEMS_REMOVE_COMMENT]: 'Izbriši komentar',
47
+ [C.CONTEXTMENU_ITEMS_READ_ONLY_COMMENT]: 'Komentar samo za čitanje',
48
+ [C.CONTEXTMENU_ITEMS_MERGE_CELLS]: 'Spoji čelije',
49
+ [C.CONTEXTMENU_ITEMS_UNMERGE_CELLS]: 'Razdijeli čelije',
50
+ [C.CONTEXTMENU_ITEMS_COPY]: 'Kopiraj',
51
+ [C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_HEADERS]: ['Kopiraj sa zaglavljem', 'Kopiraj sa zaglavljima'],
52
+ [C.CONTEXTMENU_ITEMS_COPY_WITH_COLUMN_GROUP_HEADERS]: ['Kopiraj sa grupnim zaglavljem', 'Kopiraj sa grupnim zaglavljima'],
53
+ [C.CONTEXTMENU_ITEMS_COPY_COLUMN_HEADERS_ONLY]: ['Kopiraj samo zaglavlje', 'Kopiraj samo zaglavlja'],
54
+ [C.CONTEXTMENU_ITEMS_CUT]: 'Izreži',
55
+ [C.CONTEXTMENU_ITEMS_NESTED_ROWS_INSERT_CHILD]: 'Umetni ugniježđeni redak',
56
+ [C.CONTEXTMENU_ITEMS_NESTED_ROWS_DETACH_CHILD]: 'Odvoji ugniježđeni redak',
57
+ [C.CONTEXTMENU_ITEMS_HIDE_COLUMN]: ['Sakrij stupac', 'Sakrij stupce'],
58
+ [C.CONTEXTMENU_ITEMS_SHOW_COLUMN]: ['Prikaži stupac', 'Prikaži stupce'],
59
+ [C.CONTEXTMENU_ITEMS_HIDE_ROW]: ['Sakrij redak', 'Sakrij retke'],
60
+ [C.CONTEXTMENU_ITEMS_SHOW_ROW]: ['Prikaži redak', 'Prikaži retke'],
61
+ [C.FILTERS_CONDITIONS_NONE]: 'Ništa',
62
+ [C.FILTERS_CONDITIONS_EMPTY]: 'Prazno',
63
+ [C.FILTERS_CONDITIONS_NOT_EMPTY]: 'Nije prazno',
64
+ [C.FILTERS_CONDITIONS_EQUAL]: 'Jednako',
65
+ [C.FILTERS_CONDITIONS_NOT_EQUAL]: 'Nije jednako',
66
+ [C.FILTERS_CONDITIONS_BEGINS_WITH]: 'Počinje s',
67
+ [C.FILTERS_CONDITIONS_ENDS_WITH]: 'Završava s',
68
+ [C.FILTERS_CONDITIONS_CONTAINS]: 'Sadrži',
69
+ [C.FILTERS_CONDITIONS_NOT_CONTAIN]: 'Ne sadrži',
70
+ [C.FILTERS_CONDITIONS_GREATER_THAN]: 'Veće od',
71
+ [C.FILTERS_CONDITIONS_GREATER_THAN_OR_EQUAL]: 'Veće ili jednako od',
72
+ [C.FILTERS_CONDITIONS_LESS_THAN]: 'Manje od',
73
+ [C.FILTERS_CONDITIONS_LESS_THAN_OR_EQUAL]: 'Manje ili jednako od',
74
+ [C.FILTERS_CONDITIONS_BETWEEN]: 'Između',
75
+ [C.FILTERS_CONDITIONS_NOT_BETWEEN]: 'Nije između',
76
+ [C.FILTERS_CONDITIONS_AFTER]: 'Nakon',
77
+ [C.FILTERS_CONDITIONS_BEFORE]: 'Prije',
78
+ [C.FILTERS_CONDITIONS_TODAY]: 'Danas',
79
+ [C.FILTERS_CONDITIONS_TOMORROW]: 'Sutra',
80
+ [C.FILTERS_CONDITIONS_YESTERDAY]: 'Jučer',
81
+ [C.FILTERS_VALUES_BLANK_CELLS]: 'Prazna polja',
82
+ [C.FILTERS_DIVS_FILTER_BY_CONDITION]: 'Filtriraj po uvjetu',
83
+ [C.FILTERS_DIVS_FILTER_BY_VALUE]: 'Filtriraj po vrijednosti',
84
+ [C.FILTERS_LABELS_CONJUNCTION]: 'I',
85
+ [C.FILTERS_LABELS_DISJUNCTION]: 'Ili',
86
+ [C.FILTERS_BUTTONS_SELECT_ALL]: 'Odaberi sve',
87
+ [C.FILTERS_BUTTONS_CLEAR]: 'Očisti',
88
+ [C.FILTERS_BUTTONS_OK]: 'U redu',
89
+ [C.FILTERS_BUTTONS_CANCEL]: 'Odustani',
90
+ [C.FILTERS_BUTTONS_PLACEHOLDER_SEARCH]: 'Pretraži',
91
+ [C.FILTERS_BUTTONS_PLACEHOLDER_VALUE]: 'Vrijednost',
92
+ [C.FILTERS_BUTTONS_PLACEHOLDER_SECOND_VALUE]: 'Druga vrijednost',
93
+ [C.CHECKBOX_CHECKED]: 'Označeno',
94
+ [C.CHECKBOX_UNCHECKED]: 'Nije označeno'
95
+ };
96
+ var _default = exports.default = dictionary;