handsontable 11.1.0 → 12.1.0

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 (461) hide show
  1. package/3rdparty/walkontable/src/border.js +120 -98
  2. package/3rdparty/walkontable/src/border.mjs +120 -94
  3. package/3rdparty/walkontable/src/cell/coords.js +59 -17
  4. package/3rdparty/walkontable/src/cell/coords.mjs +55 -17
  5. package/3rdparty/walkontable/src/cell/range.d.ts +10 -2
  6. package/3rdparty/walkontable/src/cell/range.js +278 -99
  7. package/3rdparty/walkontable/src/cell/range.mjs +273 -99
  8. package/3rdparty/walkontable/src/core/_base.js +452 -0
  9. package/3rdparty/walkontable/src/core/_base.mjs +440 -0
  10. package/3rdparty/walkontable/src/core/clone.js +97 -0
  11. package/3rdparty/walkontable/src/core/clone.mjs +80 -0
  12. package/3rdparty/walkontable/src/core/core.js +183 -0
  13. package/3rdparty/walkontable/src/core/core.mjs +160 -0
  14. package/3rdparty/walkontable/src/event.js +99 -66
  15. package/3rdparty/walkontable/src/event.mjs +99 -63
  16. package/3rdparty/walkontable/src/facade/core.js +251 -0
  17. package/3rdparty/walkontable/src/facade/core.mjs +243 -0
  18. package/3rdparty/walkontable/src/index.js +2 -46
  19. package/3rdparty/walkontable/src/index.mjs +3 -13
  20. package/3rdparty/walkontable/src/overlay/_base.js +124 -57
  21. package/3rdparty/walkontable/src/overlay/_base.mjs +124 -57
  22. package/3rdparty/walkontable/src/overlay/bottom.js +96 -80
  23. package/3rdparty/walkontable/src/overlay/bottom.mjs +96 -80
  24. package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.js → bottomInlineStartCorner.js} +45 -62
  25. package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +44 -61
  26. package/3rdparty/walkontable/src/overlay/constants.js +25 -9
  27. package/3rdparty/walkontable/src/overlay/constants.mjs +14 -4
  28. package/3rdparty/walkontable/src/overlay/index.js +10 -19
  29. package/3rdparty/walkontable/src/overlay/index.mjs +4 -5
  30. package/3rdparty/walkontable/src/overlay/{left.js → inlineStart.js} +113 -82
  31. package/3rdparty/walkontable/src/overlay/{left.mjs → inlineStart.mjs} +112 -81
  32. package/3rdparty/walkontable/src/overlay/top.js +93 -68
  33. package/3rdparty/walkontable/src/overlay/top.mjs +93 -68
  34. package/3rdparty/walkontable/src/overlay/{topLeftCorner.js → topInlineStartCorner.js} +56 -57
  35. package/3rdparty/walkontable/src/overlay/{topLeftCorner.mjs → topInlineStartCorner.mjs} +51 -52
  36. package/3rdparty/walkontable/src/overlays.js +225 -156
  37. package/3rdparty/walkontable/src/overlays.mjs +224 -154
  38. package/3rdparty/walkontable/src/renderer/cells.js +4 -3
  39. package/3rdparty/walkontable/src/renderer/cells.mjs +4 -3
  40. package/3rdparty/walkontable/src/renderer/colGroup.js +2 -2
  41. package/3rdparty/walkontable/src/renderer/colGroup.mjs +2 -2
  42. package/3rdparty/walkontable/src/renderer/columnHeaders.js +2 -2
  43. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +2 -2
  44. package/3rdparty/walkontable/src/renderer/rowHeaders.js +2 -2
  45. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +2 -2
  46. package/3rdparty/walkontable/src/renderer/rows.js +2 -2
  47. package/3rdparty/walkontable/src/renderer/rows.mjs +2 -2
  48. package/3rdparty/walkontable/src/scroll.js +125 -104
  49. package/3rdparty/walkontable/src/scroll.mjs +124 -104
  50. package/3rdparty/walkontable/src/selection.js +10 -14
  51. package/3rdparty/walkontable/src/selection.mjs +10 -12
  52. package/3rdparty/walkontable/src/settings.js +235 -126
  53. package/3rdparty/walkontable/src/settings.mjs +235 -125
  54. package/3rdparty/walkontable/src/table/bottom.js +16 -5
  55. package/3rdparty/walkontable/src/table/bottom.mjs +15 -5
  56. package/3rdparty/walkontable/src/table/{bottomLeftCorner.js → bottomInlineStartCorner.js} +27 -15
  57. package/3rdparty/walkontable/src/table/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +26 -15
  58. package/3rdparty/walkontable/src/table/{left.js → inlineStart.js} +23 -15
  59. package/3rdparty/walkontable/src/table/{left.mjs → inlineStart.mjs} +22 -15
  60. package/3rdparty/walkontable/src/table/master.js +22 -12
  61. package/3rdparty/walkontable/src/table/master.mjs +22 -12
  62. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +12 -6
  63. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +12 -6
  64. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +12 -6
  65. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +12 -6
  66. package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.js → stickyColumnsStart.js} +13 -7
  67. package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.mjs → stickyColumnsStart.mjs} +13 -7
  68. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +11 -5
  69. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +11 -5
  70. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +9 -3
  71. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +9 -3
  72. package/3rdparty/walkontable/src/table/top.js +16 -5
  73. package/3rdparty/walkontable/src/table/top.mjs +15 -5
  74. package/3rdparty/walkontable/src/table/{topLeftCorner.js → topInlineStartCorner.js} +27 -15
  75. package/3rdparty/walkontable/src/table/{topLeftCorner.mjs → topInlineStartCorner.mjs} +26 -15
  76. package/3rdparty/walkontable/src/table.js +235 -140
  77. package/3rdparty/walkontable/src/table.mjs +231 -134
  78. package/3rdparty/walkontable/src/types.js +103 -0
  79. package/3rdparty/walkontable/src/types.mjs +102 -0
  80. package/3rdparty/walkontable/src/utils/column.js +22 -33
  81. package/3rdparty/walkontable/src/utils/column.mjs +22 -30
  82. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -2
  83. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +2 -2
  84. package/3rdparty/walkontable/src/utils/row.js +9 -4
  85. package/3rdparty/walkontable/src/utils/row.mjs +9 -4
  86. package/3rdparty/walkontable/src/viewport.js +89 -100
  87. package/3rdparty/walkontable/src/viewport.mjs +89 -97
  88. package/CHANGELOG.md +92 -0
  89. package/LICENSE.txt +1 -1
  90. package/README.md +0 -1
  91. package/base.js +2 -2
  92. package/base.mjs +2 -2
  93. package/cellTypes/timeType/timeType.d.ts +6 -6
  94. package/cellTypes/timeType/timeType.js +4 -5
  95. package/cellTypes/timeType/timeType.mjs +4 -5
  96. package/core.d.ts +6 -1
  97. package/core.js +508 -80
  98. package/core.mjs +517 -92
  99. package/dataMap/index.js +4 -0
  100. package/dataMap/index.mjs +2 -1
  101. package/dataMap/metaManager/index.js +2 -2
  102. package/dataMap/metaManager/index.mjs +2 -2
  103. package/dataMap/metaManager/metaLayers/globalMeta.js +4 -0
  104. package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -0
  105. package/dataMap/metaManager/metaLayers/tableMeta.js +2 -2
  106. package/dataMap/metaManager/metaLayers/tableMeta.mjs +2 -2
  107. package/dataMap/metaManager/metaSchema.js +282 -187
  108. package/dataMap/metaManager/metaSchema.mjs +282 -187
  109. package/dataMap/metaManager/mods/extendMetaProperties.js +126 -0
  110. package/dataMap/metaManager/mods/extendMetaProperties.mjs +113 -0
  111. package/dataMap/replaceData.js +3 -17
  112. package/dataMap/replaceData.mjs +3 -17
  113. package/dist/handsontable.css +268 -92
  114. package/dist/handsontable.full.css +269 -103
  115. package/dist/handsontable.full.js +41990 -35658
  116. package/dist/handsontable.full.min.css +9 -9
  117. package/dist/handsontable.full.min.js +144 -144
  118. package/dist/handsontable.js +29561 -25597
  119. package/dist/handsontable.min.css +8 -8
  120. package/dist/handsontable.min.js +4 -4
  121. package/dist/languages/all.js +131 -34
  122. package/dist/languages/all.min.js +1 -1
  123. package/dist/languages/ar-AR.js +167 -0
  124. package/dist/languages/ar-AR.min.js +1 -0
  125. package/dist/languages/cs-CZ.js +167 -0
  126. package/dist/languages/cs-CZ.min.js +1 -0
  127. package/dist/languages/de-CH.js +31 -29
  128. package/dist/languages/de-CH.min.js +1 -1
  129. package/dist/languages/de-DE.js +4 -2
  130. package/dist/languages/de-DE.min.js +1 -1
  131. package/dist/languages/en-US.js +4 -2
  132. package/dist/languages/en-US.min.js +1 -1
  133. package/dist/languages/es-MX.js +4 -2
  134. package/dist/languages/es-MX.min.js +1 -1
  135. package/dist/languages/fr-FR.js +4 -2
  136. package/dist/languages/fr-FR.min.js +1 -1
  137. package/dist/languages/it-IT.js +4 -2
  138. package/dist/languages/it-IT.min.js +1 -1
  139. package/dist/languages/ja-JP.js +36 -38
  140. package/dist/languages/ja-JP.min.js +1 -1
  141. package/dist/languages/ko-KR.js +36 -39
  142. package/dist/languages/ko-KR.min.js +1 -1
  143. package/dist/languages/lv-LV.js +2 -2
  144. package/dist/languages/lv-LV.min.js +1 -1
  145. package/dist/languages/nb-NO.js +2 -2
  146. package/dist/languages/nb-NO.min.js +1 -1
  147. package/dist/languages/nl-NL.js +2 -2
  148. package/dist/languages/nl-NL.min.js +1 -1
  149. package/dist/languages/pl-PL.js +2 -2
  150. package/dist/languages/pl-PL.min.js +1 -1
  151. package/dist/languages/pt-BR.js +2 -2
  152. package/dist/languages/pt-BR.min.js +1 -1
  153. package/dist/languages/ru-RU.js +2 -2
  154. package/dist/languages/ru-RU.min.js +1 -1
  155. package/dist/languages/sr-SP.js +171 -0
  156. package/dist/languages/sr-SP.min.js +1 -0
  157. package/dist/languages/zh-CN.js +24 -24
  158. package/dist/languages/zh-CN.min.js +1 -1
  159. package/dist/languages/zh-TW.js +24 -24
  160. package/dist/languages/zh-TW.min.js +1 -1
  161. package/editorManager.js +120 -267
  162. package/editorManager.mjs +128 -278
  163. package/editors/autocompleteEditor/autocompleteEditor.js +22 -25
  164. package/editors/autocompleteEditor/autocompleteEditor.mjs +22 -25
  165. package/editors/baseEditor/baseEditor.js +205 -34
  166. package/editors/baseEditor/baseEditor.mjs +200 -32
  167. package/editors/checkboxEditor/checkboxEditor.js +2 -2
  168. package/editors/checkboxEditor/checkboxEditor.mjs +2 -2
  169. package/editors/dateEditor/dateEditor.js +21 -8
  170. package/editors/dateEditor/dateEditor.mjs +22 -9
  171. package/editors/dropdownEditor/dropdownEditor.js +3 -3
  172. package/editors/dropdownEditor/dropdownEditor.mjs +3 -3
  173. package/editors/handsontableEditor/handsontableEditor.js +106 -55
  174. package/editors/handsontableEditor/handsontableEditor.mjs +106 -55
  175. package/editors/index.d.ts +3 -0
  176. package/editors/index.js +6 -0
  177. package/editors/index.mjs +3 -1
  178. package/editors/numericEditor/numericEditor.js +2 -2
  179. package/editors/numericEditor/numericEditor.mjs +2 -2
  180. package/editors/passwordEditor/passwordEditor.js +3 -3
  181. package/editors/passwordEditor/passwordEditor.mjs +3 -3
  182. package/editors/selectEditor/selectEditor.js +65 -110
  183. package/editors/selectEditor/selectEditor.mjs +66 -109
  184. package/editors/textEditor/caretPositioner.js +49 -0
  185. package/editors/textEditor/caretPositioner.mjs +42 -0
  186. package/editors/textEditor/textEditor.js +205 -181
  187. package/editors/textEditor/textEditor.mjs +199 -179
  188. package/editors/timeEditor/index.d.ts +1 -0
  189. package/editors/timeEditor/index.js +9 -0
  190. package/editors/timeEditor/index.mjs +1 -0
  191. package/editors/timeEditor/timeEditor.d.ts +7 -0
  192. package/editors/timeEditor/timeEditor.js +105 -0
  193. package/editors/timeEditor/timeEditor.mjs +84 -0
  194. package/eventManager.js +4 -2
  195. package/eventManager.mjs +4 -2
  196. package/helpers/mixed.js +2 -2
  197. package/helpers/mixed.mjs +2 -2
  198. package/i18n/languages/ar-AR.js +41 -0
  199. package/i18n/languages/ar-AR.mjs +17 -0
  200. package/i18n/languages/cs-CZ.js +40 -0
  201. package/i18n/languages/cs-CZ.mjs +16 -0
  202. package/i18n/languages/index.js +12 -0
  203. package/i18n/languages/index.mjs +4 -1
  204. package/i18n/languages/sr-SP.js +40 -0
  205. package/i18n/languages/sr-SP.mjs +16 -0
  206. package/index.d.ts +4 -0
  207. package/languages/all.js +131 -34
  208. package/languages/ar-AR.js +167 -0
  209. package/languages/ar-AR.mjs +19 -0
  210. package/languages/cs-CZ.js +167 -0
  211. package/languages/cs-CZ.mjs +18 -0
  212. package/languages/de-CH.js +31 -29
  213. package/languages/de-DE.js +4 -2
  214. package/languages/en-US.js +4 -2
  215. package/languages/es-MX.js +4 -2
  216. package/languages/fr-FR.js +4 -2
  217. package/languages/index.js +131 -34
  218. package/languages/index.mjs +4 -1
  219. package/languages/it-IT.js +4 -2
  220. package/languages/ja-JP.js +36 -38
  221. package/languages/ko-KR.js +36 -39
  222. package/languages/lv-LV.js +2 -2
  223. package/languages/nb-NO.js +2 -2
  224. package/languages/nl-NL.js +2 -2
  225. package/languages/pl-PL.js +2 -2
  226. package/languages/pt-BR.js +2 -2
  227. package/languages/ru-RU.js +2 -2
  228. package/languages/sr-SP.js +171 -0
  229. package/languages/sr-SP.mjs +18 -0
  230. package/languages/zh-CN.js +24 -24
  231. package/languages/zh-TW.js +24 -24
  232. package/package.json +44 -4
  233. package/pluginHooks.js +49 -13
  234. package/pluginHooks.mjs +49 -13
  235. package/plugins/autoColumnSize/autoColumnSize.js +15 -10
  236. package/plugins/autoColumnSize/autoColumnSize.mjs +15 -10
  237. package/plugins/autoRowSize/autoRowSize.js +14 -9
  238. package/plugins/autoRowSize/autoRowSize.mjs +14 -9
  239. package/plugins/autofill/autofill.js +49 -33
  240. package/plugins/autofill/autofill.mjs +49 -32
  241. package/plugins/autofill/utils.js +10 -11
  242. package/plugins/autofill/utils.mjs +10 -10
  243. package/plugins/base/base.d.ts +8 -2
  244. package/plugins/base/base.js +67 -4
  245. package/plugins/base/base.mjs +66 -4
  246. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +3 -3
  247. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +3 -3
  248. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +3 -3
  249. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +3 -3
  250. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +3 -3
  251. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +3 -3
  252. package/plugins/collapsibleColumns/collapsibleColumns.js +27 -9
  253. package/plugins/collapsibleColumns/collapsibleColumns.mjs +27 -9
  254. package/plugins/columnSorting/columnSorting.js +5 -7
  255. package/plugins/columnSorting/columnSorting.mjs +5 -6
  256. package/plugins/columnSummary/columnSummary.js +3 -3
  257. package/plugins/columnSummary/columnSummary.mjs +3 -3
  258. package/plugins/comments/commentEditor.js +18 -2
  259. package/plugins/comments/commentEditor.mjs +19 -3
  260. package/plugins/comments/comments.js +57 -46
  261. package/plugins/comments/comments.mjs +58 -46
  262. package/plugins/contextMenu/contextMenu.js +10 -6
  263. package/plugins/contextMenu/contextMenu.mjs +10 -6
  264. package/plugins/contextMenu/menu.js +222 -110
  265. package/plugins/contextMenu/menu.mjs +219 -111
  266. package/plugins/contextMenu/predefinedItems/columnLeft.js +12 -4
  267. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +11 -4
  268. package/plugins/contextMenu/predefinedItems/columnRight.js +9 -9
  269. package/plugins/contextMenu/predefinedItems/columnRight.mjs +9 -9
  270. package/plugins/contextMenu/utils.js +2 -2
  271. package/plugins/contextMenu/utils.mjs +2 -2
  272. package/plugins/copyPaste/copyPaste.js +31 -21
  273. package/plugins/copyPaste/copyPaste.mjs +30 -21
  274. package/plugins/customBorders/contextMenuItem/left.js +4 -3
  275. package/plugins/customBorders/contextMenuItem/left.mjs +4 -3
  276. package/plugins/customBorders/contextMenuItem/right.js +4 -3
  277. package/plugins/customBorders/contextMenuItem/right.mjs +4 -3
  278. package/plugins/customBorders/customBorders.js +144 -87
  279. package/plugins/customBorders/customBorders.mjs +143 -85
  280. package/plugins/customBorders/utils.js +131 -27
  281. package/plugins/customBorders/utils.mjs +115 -27
  282. package/plugins/dragToScroll/dragToScroll.js +10 -5
  283. package/plugins/dragToScroll/dragToScroll.mjs +10 -5
  284. package/plugins/dropdownMenu/dropdownMenu.js +9 -7
  285. package/plugins/dropdownMenu/dropdownMenu.mjs +9 -7
  286. package/plugins/exportFile/exportFile.js +2 -2
  287. package/plugins/exportFile/exportFile.mjs +2 -2
  288. package/plugins/exportFile/types/csv.js +2 -2
  289. package/plugins/exportFile/types/csv.mjs +2 -2
  290. package/plugins/filters/component/actionBar.js +2 -2
  291. package/plugins/filters/component/actionBar.mjs +2 -2
  292. package/plugins/filters/component/condition.js +3 -3
  293. package/plugins/filters/component/condition.mjs +3 -3
  294. package/plugins/filters/component/operators.js +2 -2
  295. package/plugins/filters/component/operators.mjs +2 -2
  296. package/plugins/filters/component/value.js +3 -3
  297. package/plugins/filters/component/value.mjs +3 -3
  298. package/plugins/filters/filters.js +11 -8
  299. package/plugins/filters/filters.mjs +11 -8
  300. package/plugins/filters/ui/input.js +3 -3
  301. package/plugins/filters/ui/input.mjs +3 -3
  302. package/plugins/filters/ui/link.js +3 -3
  303. package/plugins/filters/ui/link.mjs +3 -3
  304. package/plugins/filters/ui/multipleSelect.js +18 -31
  305. package/plugins/filters/ui/multipleSelect.mjs +18 -31
  306. package/plugins/filters/ui/radioInput.js +3 -3
  307. package/plugins/filters/ui/radioInput.mjs +3 -3
  308. package/plugins/filters/ui/select.js +4 -4
  309. package/plugins/filters/ui/select.mjs +4 -4
  310. package/plugins/formulas/formulas.js +14 -9
  311. package/plugins/formulas/formulas.mjs +14 -9
  312. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +2 -4
  313. package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +2 -4
  314. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +5 -5
  315. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +5 -5
  316. package/plugins/hiddenColumns/hiddenColumns.js +9 -4
  317. package/plugins/hiddenColumns/hiddenColumns.mjs +9 -4
  318. package/plugins/hiddenRows/contextMenuItem/hideRow.js +2 -4
  319. package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +2 -4
  320. package/plugins/hiddenRows/contextMenuItem/showRow.js +5 -5
  321. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +5 -5
  322. package/plugins/hiddenRows/hiddenRows.js +9 -4
  323. package/plugins/hiddenRows/hiddenRows.mjs +9 -4
  324. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
  325. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  326. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
  327. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  328. package/plugins/manualColumnFreeze/manualColumnFreeze.js +54 -15
  329. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +49 -15
  330. package/plugins/manualColumnMove/manualColumnMove.js +70 -70
  331. package/plugins/manualColumnMove/manualColumnMove.mjs +71 -71
  332. package/plugins/manualColumnMove/ui/_base.js +25 -12
  333. package/plugins/manualColumnMove/ui/_base.mjs +24 -12
  334. package/plugins/manualColumnMove/ui/backlight.js +3 -3
  335. package/plugins/manualColumnMove/ui/backlight.mjs +3 -3
  336. package/plugins/manualColumnMove/ui/guideline.js +3 -3
  337. package/plugins/manualColumnMove/ui/guideline.mjs +3 -3
  338. package/plugins/manualColumnResize/manualColumnResize.js +37 -21
  339. package/plugins/manualColumnResize/manualColumnResize.mjs +37 -21
  340. package/plugins/manualRowMove/manualRowMove.js +26 -34
  341. package/plugins/manualRowMove/manualRowMove.mjs +26 -34
  342. package/plugins/manualRowMove/ui/backlight.js +3 -3
  343. package/plugins/manualRowMove/ui/backlight.mjs +3 -3
  344. package/plugins/manualRowMove/ui/guideline.js +3 -3
  345. package/plugins/manualRowMove/ui/guideline.mjs +3 -3
  346. package/plugins/manualRowResize/manualRowResize.js +34 -19
  347. package/plugins/manualRowResize/manualRowResize.mjs +34 -19
  348. package/plugins/mergeCells/calculations/autofill.js +6 -5
  349. package/plugins/mergeCells/calculations/autofill.mjs +6 -4
  350. package/plugins/mergeCells/calculations/selection.js +9 -4
  351. package/plugins/mergeCells/calculations/selection.mjs +9 -4
  352. package/plugins/mergeCells/cellCoords.js +16 -4
  353. package/plugins/mergeCells/cellCoords.mjs +16 -3
  354. package/plugins/mergeCells/cellsCollection.js +30 -23
  355. package/plugins/mergeCells/cellsCollection.mjs +30 -22
  356. package/plugins/mergeCells/mergeCells.js +94 -61
  357. package/plugins/mergeCells/mergeCells.mjs +94 -59
  358. package/plugins/multiColumnSorting/multiColumnSorting.js +4 -6
  359. package/plugins/multiColumnSorting/multiColumnSorting.mjs +4 -5
  360. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +51 -57
  361. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +52 -57
  362. package/plugins/nestedHeaders/nestedHeaders.js +31 -20
  363. package/plugins/nestedHeaders/nestedHeaders.mjs +31 -20
  364. package/plugins/nestedHeaders/stateManager/utils.js +3 -4
  365. package/plugins/nestedHeaders/stateManager/utils.mjs +3 -4
  366. package/plugins/nestedHeaders/utils/ghostTable.js +114 -75
  367. package/plugins/nestedHeaders/utils/ghostTable.mjs +114 -74
  368. package/plugins/nestedRows/nestedRows.js +9 -4
  369. package/plugins/nestedRows/nestedRows.mjs +9 -4
  370. package/plugins/nestedRows/ui/collapsing.js +2 -2
  371. package/plugins/nestedRows/ui/collapsing.mjs +2 -2
  372. package/plugins/nestedRows/ui/contextMenu.js +2 -2
  373. package/plugins/nestedRows/ui/contextMenu.mjs +2 -2
  374. package/plugins/nestedRows/ui/headers.js +2 -2
  375. package/plugins/nestedRows/ui/headers.mjs +2 -2
  376. package/plugins/nestedRows/utils/rowMoveController.js +2 -4
  377. package/plugins/nestedRows/utils/rowMoveController.mjs +2 -3
  378. package/plugins/persistentState/persistentState.js +9 -4
  379. package/plugins/persistentState/persistentState.mjs +9 -4
  380. package/plugins/search/search.js +9 -4
  381. package/plugins/search/search.mjs +9 -4
  382. package/plugins/touchScroll/touchScroll.js +27 -21
  383. package/plugins/touchScroll/touchScroll.mjs +27 -21
  384. package/plugins/trimRows/trimRows.js +9 -4
  385. package/plugins/trimRows/trimRows.mjs +9 -4
  386. package/plugins/undoRedo/undoRedo.js +53 -47
  387. package/plugins/undoRedo/undoRedo.mjs +53 -46
  388. package/renderers/autocompleteRenderer/autocompleteRenderer.js +1 -3
  389. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +1 -2
  390. package/renderers/checkboxRenderer/checkboxRenderer.js +48 -43
  391. package/renderers/checkboxRenderer/checkboxRenderer.mjs +48 -41
  392. package/renderers/index.d.ts +4 -1
  393. package/renderers/index.js +6 -0
  394. package/renderers/index.mjs +3 -1
  395. package/renderers/numericRenderer/numericRenderer.js +1 -0
  396. package/renderers/numericRenderer/numericRenderer.mjs +1 -0
  397. package/renderers/timeRenderer/index.d.ts +1 -0
  398. package/renderers/timeRenderer/index.js +9 -0
  399. package/renderers/timeRenderer/index.mjs +1 -0
  400. package/renderers/timeRenderer/timeRenderer.d.ts +5 -0
  401. package/renderers/timeRenderer/timeRenderer.js +31 -0
  402. package/renderers/timeRenderer/timeRenderer.mjs +20 -0
  403. package/selection/highlight/visualSelection.js +94 -220
  404. package/selection/highlight/visualSelection.mjs +91 -213
  405. package/selection/mouseEventHandler.js +15 -10
  406. package/selection/mouseEventHandler.mjs +15 -9
  407. package/selection/range.js +4 -5
  408. package/selection/range.mjs +4 -5
  409. package/selection/selection.js +35 -22
  410. package/selection/selection.mjs +35 -20
  411. package/selection/transformation.js +4 -6
  412. package/selection/transformation.mjs +4 -5
  413. package/settings.d.ts +3 -1
  414. package/shortcuts/context.d.ts +20 -0
  415. package/shortcuts/context.js +296 -0
  416. package/shortcuts/context.mjs +268 -0
  417. package/shortcuts/index.d.ts +1 -0
  418. package/shortcuts/index.js +8 -0
  419. package/shortcuts/index.mjs +1 -0
  420. package/shortcuts/keyObserver.js +67 -0
  421. package/shortcuts/keyObserver.mjs +58 -0
  422. package/shortcuts/manager.d.ts +10 -0
  423. package/shortcuts/manager.js +185 -0
  424. package/shortcuts/manager.mjs +176 -0
  425. package/shortcuts/recorder.js +192 -0
  426. package/shortcuts/recorder.mjs +180 -0
  427. package/shortcuts/utils.js +77 -0
  428. package/shortcuts/utils.mjs +54 -0
  429. package/tableView.js +164 -84
  430. package/tableView.mjs +164 -74
  431. package/translations/changesObservable/observer.js +0 -1
  432. package/translations/changesObservable/observer.mjs +0 -1
  433. package/translations/indexMapper.d.ts +3 -1
  434. package/translations/indexMapper.js +89 -11
  435. package/translations/indexMapper.mjs +91 -20
  436. package/translations/mapCollections/aggregatedCollection.js +2 -2
  437. package/translations/mapCollections/aggregatedCollection.mjs +2 -2
  438. package/translations/maps/hidingMap.js +4 -2
  439. package/translations/maps/hidingMap.mjs +4 -2
  440. package/translations/maps/indexMap.js +2 -0
  441. package/translations/maps/indexMap.mjs +2 -0
  442. package/translations/maps/indexesSequence.js +5 -3
  443. package/translations/maps/indexesSequence.mjs +5 -3
  444. package/translations/maps/linkedPhysicalIndexToValueMap.js +5 -3
  445. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +5 -3
  446. package/translations/maps/physicalIndexToValueMap.js +5 -3
  447. package/translations/maps/physicalIndexToValueMap.mjs +5 -3
  448. package/translations/maps/trimmingMap.js +4 -2
  449. package/translations/maps/trimmingMap.mjs +4 -2
  450. package/utils/dataStructures/uniqueMap.js +14 -1
  451. package/utils/dataStructures/uniqueMap.mjs +14 -1
  452. package/utils/dataStructures/uniqueSet.js +9 -0
  453. package/utils/dataStructures/uniqueSet.mjs +9 -0
  454. package/utils/ghostTable.js +1 -1
  455. package/utils/ghostTable.mjs +1 -1
  456. package/3rdparty/walkontable/src/core.js +0 -309
  457. package/3rdparty/walkontable/src/core.mjs +0 -293
  458. package/3rdparty/walkontable/src/overlay/registerer.js +0 -70
  459. package/3rdparty/walkontable/src/overlay/registerer.mjs +0 -57
  460. package/utils/keyStateObserver.js +0 -121
  461. package/utils/keyStateObserver.mjs +0 -103
@@ -7,13 +7,30 @@ exports.createDefaultHtBorder = createDefaultHtBorder;
7
7
  exports.createEmptyBorders = createEmptyBorders;
8
8
  exports.createId = createId;
9
9
  exports.createSingleEmptyBorder = createSingleEmptyBorder;
10
+ exports.denormalizeBorder = denormalizeBorder;
10
11
  exports.extendDefaultBorder = extendDefaultBorder;
12
+ exports.hasLeftRightTypeOptions = hasLeftRightTypeOptions;
13
+ exports.hasStartEndTypeOptions = hasStartEndTypeOptions;
11
14
  exports.markSelected = markSelected;
15
+ exports.normalizeBorder = normalizeBorder;
16
+ exports.toInlinePropName = toInlinePropName;
12
17
 
13
18
  require("core-js/modules/es.array.concat.js");
14
19
 
20
+ require("core-js/modules/es.object.to-string.js");
21
+
22
+ require("core-js/modules/es.array.iterator.js");
23
+
24
+ require("core-js/modules/es.map.js");
25
+
26
+ require("core-js/modules/es.string.iterator.js");
27
+
28
+ require("core-js/modules/web.dom-collections.iterator.js");
29
+
15
30
  var _object = require("../../helpers/object");
16
31
 
32
+ var _mixed = require("../../helpers/mixed");
33
+
17
34
  var _array = require("../../helpers/array");
18
35
 
19
36
  /**
@@ -65,13 +82,59 @@ function createDefaultHtBorder() {
65
82
  cornerVisible: false
66
83
  };
67
84
  }
85
+ /**
86
+ * Normalizes the border object to be compatible with the Border API from the Walkontable.
87
+ * The function translates the "left"/"right" properties to "start"/"end" prop names.
88
+ *
89
+ * @param {object} border The configuration object of the border.
90
+ * @returns {object}
91
+ */
92
+
93
+
94
+ function normalizeBorder(border) {
95
+ if ((0, _mixed.isDefined)(border.start) || (0, _mixed.isDefined)(border.left)) {
96
+ var _border$start;
97
+
98
+ border.start = (_border$start = border.start) !== null && _border$start !== void 0 ? _border$start : border.left;
99
+ }
100
+
101
+ if ((0, _mixed.isDefined)(border.end) || (0, _mixed.isDefined)(border.right)) {
102
+ var _border$end;
103
+
104
+ border.end = (_border$end = border.end) !== null && _border$end !== void 0 ? _border$end : border.right;
105
+ }
106
+
107
+ delete border.left;
108
+ delete border.right;
109
+ return border;
110
+ }
111
+ /**
112
+ * Denormalizes the border object to be backward compatible with the previous version of the CustomBorders
113
+ * plugin API. The function extends the border configuration object for the backward compatible "left"/"right"
114
+ * properties.
115
+ *
116
+ * @param {object} border The configuration object of the border.
117
+ * @returns {object}
118
+ */
119
+
120
+
121
+ function denormalizeBorder(border) {
122
+ if ((0, _mixed.isDefined)(border.start)) {
123
+ border.left = border.start;
124
+ }
125
+
126
+ if ((0, _mixed.isDefined)(border.end)) {
127
+ border.right = border.end;
128
+ }
129
+
130
+ return border;
131
+ }
68
132
  /**
69
133
  * Prepare empty border for each cell with all custom borders hidden.
70
134
  *
71
135
  * @param {number} row Visual row index.
72
136
  * @param {number} col Visual column index.
73
- * @returns {object} Returns border configuration containing visual indexes. Example of an object defining it:
74
- * `{{id: *, border: *, row: *, col: *, top: {hide: boolean}, right: {hide: boolean}, bottom: {hide: boolean}, left: {hide: boolean}}}`.
137
+ * @returns {{id: string, border: any, row: number, col: number, top: {hide: boolean}, bottom: {hide: boolean}, start: {hide: boolean}, end: {hide: boolean}}} Returns border configuration containing visual indexes.
75
138
  */
76
139
 
77
140
 
@@ -82,9 +145,9 @@ function createEmptyBorders(row, col) {
82
145
  row: row,
83
146
  col: col,
84
147
  top: createSingleEmptyBorder(),
85
- right: createSingleEmptyBorder(),
86
148
  bottom: createSingleEmptyBorder(),
87
- left: createSingleEmptyBorder()
149
+ start: createSingleEmptyBorder(),
150
+ end: createSingleEmptyBorder()
88
151
  };
89
152
  }
90
153
  /**
@@ -95,11 +158,11 @@ function createEmptyBorders(row, col) {
95
158
 
96
159
 
97
160
  function extendDefaultBorder(defaultBorder, customBorder) {
98
- if ((0, _object.hasOwnProperty)(customBorder, 'border')) {
161
+ if ((0, _object.hasOwnProperty)(customBorder, 'border') && customBorder.border) {
99
162
  defaultBorder.border = customBorder.border;
100
163
  }
101
164
 
102
- if ((0, _object.hasOwnProperty)(customBorder, 'top')) {
165
+ if ((0, _object.hasOwnProperty)(customBorder, 'top') && (0, _mixed.isDefined)(customBorder.top)) {
103
166
  if (customBorder.top) {
104
167
  if (!(0, _object.isObject)(customBorder.top)) {
105
168
  customBorder.top = createDefaultCustomBorder();
@@ -112,20 +175,7 @@ function extendDefaultBorder(defaultBorder, customBorder) {
112
175
  }
113
176
  }
114
177
 
115
- if ((0, _object.hasOwnProperty)(customBorder, 'right')) {
116
- if (customBorder.right) {
117
- if (!(0, _object.isObject)(customBorder.right)) {
118
- customBorder.right = createDefaultCustomBorder();
119
- }
120
-
121
- defaultBorder.right = customBorder.right;
122
- } else {
123
- customBorder.right = createSingleEmptyBorder();
124
- defaultBorder.right = customBorder.right;
125
- }
126
- }
127
-
128
- if ((0, _object.hasOwnProperty)(customBorder, 'bottom')) {
178
+ if ((0, _object.hasOwnProperty)(customBorder, 'bottom') && (0, _mixed.isDefined)(customBorder.bottom)) {
129
179
  if (customBorder.bottom) {
130
180
  if (!(0, _object.isObject)(customBorder.bottom)) {
131
181
  customBorder.bottom = createDefaultCustomBorder();
@@ -138,16 +188,29 @@ function extendDefaultBorder(defaultBorder, customBorder) {
138
188
  }
139
189
  }
140
190
 
141
- if ((0, _object.hasOwnProperty)(customBorder, 'left')) {
142
- if (customBorder.left) {
143
- if (!(0, _object.isObject)(customBorder.left)) {
144
- customBorder.left = createDefaultCustomBorder();
191
+ if ((0, _object.hasOwnProperty)(customBorder, 'start') && (0, _mixed.isDefined)(customBorder.start)) {
192
+ if (customBorder.start) {
193
+ if (!(0, _object.isObject)(customBorder.start)) {
194
+ customBorder.start = createDefaultCustomBorder();
195
+ }
196
+
197
+ defaultBorder.start = customBorder.start;
198
+ } else {
199
+ customBorder.start = createSingleEmptyBorder();
200
+ defaultBorder.start = customBorder.start;
201
+ }
202
+ }
203
+
204
+ if ((0, _object.hasOwnProperty)(customBorder, 'end') && (0, _mixed.isDefined)(customBorder.end)) {
205
+ if (customBorder.end) {
206
+ if (!(0, _object.isObject)(customBorder.end)) {
207
+ customBorder.end = createDefaultCustomBorder();
145
208
  }
146
209
 
147
- defaultBorder.left = customBorder.left;
210
+ defaultBorder.end = customBorder.end;
148
211
  } else {
149
- customBorder.left = createSingleEmptyBorder();
150
- defaultBorder.left = customBorder.left;
212
+ customBorder.end = createSingleEmptyBorder();
213
+ defaultBorder.end = customBorder.end;
151
214
  }
152
215
  }
153
216
 
@@ -197,4 +260,45 @@ function checkSelectionBorders(hot, direction) {
197
260
 
198
261
  function markSelected(label) {
199
262
  return "<span class=\"selected\">".concat(String.fromCharCode(10003), "</span>").concat(label); // workaround for https://github.com/handsontable/handsontable/issues/1946
263
+ }
264
+ /**
265
+ * Checks if in the borders config there are defined "left" or "right" border properties.
266
+ *
267
+ * @param {object[]} borders The custom border plugin's options.
268
+ * @returns {boolean}
269
+ */
270
+
271
+
272
+ function hasLeftRightTypeOptions(borders) {
273
+ return borders.some(function (border) {
274
+ return (0, _mixed.isDefined)(border.left) || (0, _mixed.isDefined)(border.right);
275
+ });
276
+ }
277
+ /**
278
+ * Checks if in the borders config there are defined "start" or "end" border properties.
279
+ *
280
+ * @param {object[]} borders The custom border plugin's options.
281
+ * @returns {boolean}
282
+ */
283
+
284
+
285
+ function hasStartEndTypeOptions(borders) {
286
+ return borders.some(function (border) {
287
+ return (0, _mixed.isDefined)(border.start) || (0, _mixed.isDefined)(border.end);
288
+ });
289
+ }
290
+
291
+ var physicalToInlinePropNames = new Map([['left', 'start'], ['right', 'end']]);
292
+ /**
293
+ * Translates the physical horizontal direction to logical ones. If not known property name is
294
+ * passed it will be returned without modification.
295
+ *
296
+ * @param {string} propName The physical direction property name ("left" or "right").
297
+ * @returns {string}
298
+ */
299
+
300
+ function toInlinePropName(propName) {
301
+ var _physicalToInlineProp;
302
+
303
+ return (_physicalToInlineProp = physicalToInlinePropNames.get(propName)) !== null && _physicalToInlineProp !== void 0 ? _physicalToInlineProp : propName;
200
304
  }
@@ -1,5 +1,11 @@
1
1
  import "core-js/modules/es.array.concat.js";
2
+ import "core-js/modules/es.object.to-string.js";
3
+ import "core-js/modules/es.array.iterator.js";
4
+ import "core-js/modules/es.map.js";
5
+ import "core-js/modules/es.string.iterator.js";
6
+ import "core-js/modules/web.dom-collections.iterator.js";
2
7
  import { hasOwnProperty, isObject } from "../../helpers/object.mjs";
8
+ import { isDefined } from "../../helpers/mixed.mjs";
3
9
  import { arrayEach } from "../../helpers/array.mjs";
4
10
  /**
5
11
  * Create separated id for borders for each cell.
@@ -48,13 +54,57 @@ export function createDefaultHtBorder() {
48
54
  cornerVisible: false
49
55
  };
50
56
  }
57
+ /**
58
+ * Normalizes the border object to be compatible with the Border API from the Walkontable.
59
+ * The function translates the "left"/"right" properties to "start"/"end" prop names.
60
+ *
61
+ * @param {object} border The configuration object of the border.
62
+ * @returns {object}
63
+ */
64
+
65
+ export function normalizeBorder(border) {
66
+ if (isDefined(border.start) || isDefined(border.left)) {
67
+ var _border$start;
68
+
69
+ border.start = (_border$start = border.start) !== null && _border$start !== void 0 ? _border$start : border.left;
70
+ }
71
+
72
+ if (isDefined(border.end) || isDefined(border.right)) {
73
+ var _border$end;
74
+
75
+ border.end = (_border$end = border.end) !== null && _border$end !== void 0 ? _border$end : border.right;
76
+ }
77
+
78
+ delete border.left;
79
+ delete border.right;
80
+ return border;
81
+ }
82
+ /**
83
+ * Denormalizes the border object to be backward compatible with the previous version of the CustomBorders
84
+ * plugin API. The function extends the border configuration object for the backward compatible "left"/"right"
85
+ * properties.
86
+ *
87
+ * @param {object} border The configuration object of the border.
88
+ * @returns {object}
89
+ */
90
+
91
+ export function denormalizeBorder(border) {
92
+ if (isDefined(border.start)) {
93
+ border.left = border.start;
94
+ }
95
+
96
+ if (isDefined(border.end)) {
97
+ border.right = border.end;
98
+ }
99
+
100
+ return border;
101
+ }
51
102
  /**
52
103
  * Prepare empty border for each cell with all custom borders hidden.
53
104
  *
54
105
  * @param {number} row Visual row index.
55
106
  * @param {number} col Visual column index.
56
- * @returns {object} Returns border configuration containing visual indexes. Example of an object defining it:
57
- * `{{id: *, border: *, row: *, col: *, top: {hide: boolean}, right: {hide: boolean}, bottom: {hide: boolean}, left: {hide: boolean}}}`.
107
+ * @returns {{id: string, border: any, row: number, col: number, top: {hide: boolean}, bottom: {hide: boolean}, start: {hide: boolean}, end: {hide: boolean}}} Returns border configuration containing visual indexes.
58
108
  */
59
109
 
60
110
  export function createEmptyBorders(row, col) {
@@ -64,9 +114,9 @@ export function createEmptyBorders(row, col) {
64
114
  row: row,
65
115
  col: col,
66
116
  top: createSingleEmptyBorder(),
67
- right: createSingleEmptyBorder(),
68
117
  bottom: createSingleEmptyBorder(),
69
- left: createSingleEmptyBorder()
118
+ start: createSingleEmptyBorder(),
119
+ end: createSingleEmptyBorder()
70
120
  };
71
121
  }
72
122
  /**
@@ -76,11 +126,11 @@ export function createEmptyBorders(row, col) {
76
126
  */
77
127
 
78
128
  export function extendDefaultBorder(defaultBorder, customBorder) {
79
- if (hasOwnProperty(customBorder, 'border')) {
129
+ if (hasOwnProperty(customBorder, 'border') && customBorder.border) {
80
130
  defaultBorder.border = customBorder.border;
81
131
  }
82
132
 
83
- if (hasOwnProperty(customBorder, 'top')) {
133
+ if (hasOwnProperty(customBorder, 'top') && isDefined(customBorder.top)) {
84
134
  if (customBorder.top) {
85
135
  if (!isObject(customBorder.top)) {
86
136
  customBorder.top = createDefaultCustomBorder();
@@ -93,20 +143,7 @@ export function extendDefaultBorder(defaultBorder, customBorder) {
93
143
  }
94
144
  }
95
145
 
96
- if (hasOwnProperty(customBorder, 'right')) {
97
- if (customBorder.right) {
98
- if (!isObject(customBorder.right)) {
99
- customBorder.right = createDefaultCustomBorder();
100
- }
101
-
102
- defaultBorder.right = customBorder.right;
103
- } else {
104
- customBorder.right = createSingleEmptyBorder();
105
- defaultBorder.right = customBorder.right;
106
- }
107
- }
108
-
109
- if (hasOwnProperty(customBorder, 'bottom')) {
146
+ if (hasOwnProperty(customBorder, 'bottom') && isDefined(customBorder.bottom)) {
110
147
  if (customBorder.bottom) {
111
148
  if (!isObject(customBorder.bottom)) {
112
149
  customBorder.bottom = createDefaultCustomBorder();
@@ -119,16 +156,29 @@ export function extendDefaultBorder(defaultBorder, customBorder) {
119
156
  }
120
157
  }
121
158
 
122
- if (hasOwnProperty(customBorder, 'left')) {
123
- if (customBorder.left) {
124
- if (!isObject(customBorder.left)) {
125
- customBorder.left = createDefaultCustomBorder();
159
+ if (hasOwnProperty(customBorder, 'start') && isDefined(customBorder.start)) {
160
+ if (customBorder.start) {
161
+ if (!isObject(customBorder.start)) {
162
+ customBorder.start = createDefaultCustomBorder();
126
163
  }
127
164
 
128
- defaultBorder.left = customBorder.left;
165
+ defaultBorder.start = customBorder.start;
129
166
  } else {
130
- customBorder.left = createSingleEmptyBorder();
131
- defaultBorder.left = customBorder.left;
167
+ customBorder.start = createSingleEmptyBorder();
168
+ defaultBorder.start = customBorder.start;
169
+ }
170
+ }
171
+
172
+ if (hasOwnProperty(customBorder, 'end') && isDefined(customBorder.end)) {
173
+ if (customBorder.end) {
174
+ if (!isObject(customBorder.end)) {
175
+ customBorder.end = createDefaultCustomBorder();
176
+ }
177
+
178
+ defaultBorder.end = customBorder.end;
179
+ } else {
180
+ customBorder.end = createSingleEmptyBorder();
181
+ defaultBorder.end = customBorder.end;
132
182
  }
133
183
  }
134
184
 
@@ -176,4 +226,42 @@ export function checkSelectionBorders(hot, direction) {
176
226
 
177
227
  export function markSelected(label) {
178
228
  return "<span class=\"selected\">".concat(String.fromCharCode(10003), "</span>").concat(label); // workaround for https://github.com/handsontable/handsontable/issues/1946
229
+ }
230
+ /**
231
+ * Checks if in the borders config there are defined "left" or "right" border properties.
232
+ *
233
+ * @param {object[]} borders The custom border plugin's options.
234
+ * @returns {boolean}
235
+ */
236
+
237
+ export function hasLeftRightTypeOptions(borders) {
238
+ return borders.some(function (border) {
239
+ return isDefined(border.left) || isDefined(border.right);
240
+ });
241
+ }
242
+ /**
243
+ * Checks if in the borders config there are defined "start" or "end" border properties.
244
+ *
245
+ * @param {object[]} borders The custom border plugin's options.
246
+ * @returns {boolean}
247
+ */
248
+
249
+ export function hasStartEndTypeOptions(borders) {
250
+ return borders.some(function (border) {
251
+ return isDefined(border.start) || isDefined(border.end);
252
+ });
253
+ }
254
+ var physicalToInlinePropNames = new Map([['left', 'start'], ['right', 'end']]);
255
+ /**
256
+ * Translates the physical horizontal direction to logical ones. If not known property name is
257
+ * passed it will be returned without modification.
258
+ *
259
+ * @param {string} propName The physical direction property name ("left" or "right").
260
+ * @returns {string}
261
+ */
262
+
263
+ export function toInlinePropName(propName) {
264
+ var _physicalToInlineProp;
265
+
266
+ return (_physicalToInlineProp = physicalToInlinePropNames.get(propName)) !== null && _physicalToInlineProp !== void 0 ? _physicalToInlineProp : propName;
179
267
  }
@@ -45,13 +45,13 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
45
45
 
46
46
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
47
47
 
48
- function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
48
+ function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
49
49
 
50
50
  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
51
51
 
52
52
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
53
53
 
54
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
54
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
55
55
 
56
56
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
57
57
 
@@ -61,11 +61,13 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
61
61
 
62
62
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
63
63
 
64
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
64
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
65
65
 
66
66
  var PLUGIN_KEY = 'dragToScroll';
67
67
  exports.PLUGIN_KEY = PLUGIN_KEY;
68
68
  var PLUGIN_PRIORITY = 100;
69
+ /* eslint-disable jsdoc/require-description-complete-sentence */
70
+
69
71
  /**
70
72
  * @description
71
73
  * Plugin used to scroll Handsontable by selecting a cell and dragging outside of the visible viewport.
@@ -159,7 +161,10 @@ var DragToScroll = /*#__PURE__*/function (_BasePlugin) {
159
161
  _get(_getPrototypeOf(DragToScroll.prototype), "enablePlugin", this).call(this);
160
162
  }
161
163
  /**
162
- * Updates the plugin state. This method is executed when {@link Core#updateSettings} is invoked.
164
+ * Updates the plugin's state.
165
+ *
166
+ * This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
167
+ * - [`dragToScroll`](@/api/options.md#dragtoscroll)
163
168
  */
164
169
 
165
170
  }, {
@@ -321,7 +326,7 @@ var DragToScroll = /*#__PURE__*/function (_BasePlugin) {
321
326
  return;
322
327
  }
323
328
 
324
- var scrollHandler = this.hot.view.wt.wtTable.holder; // native scroll
329
+ var scrollHandler = this.hot.view._wt.wtTable.holder; // native scroll
325
330
 
326
331
  if (scrollHandler === this.hot.rootWindow) {
327
332
  // not much we can do currently
@@ -19,13 +19,13 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
19
19
 
20
20
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
21
21
 
22
- function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
22
+ function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
23
23
 
24
24
  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
25
25
 
26
26
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
27
27
 
28
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
28
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
29
29
 
30
30
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
31
31
 
@@ -35,7 +35,7 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
35
35
 
36
36
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
37
37
 
38
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
38
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
39
39
 
40
40
  import { BasePlugin } from "../base/index.mjs";
41
41
  import EventManager from "../../eventManager.mjs";
@@ -43,6 +43,8 @@ import { isRightClick } from "../../helpers/dom/event.mjs";
43
43
  import { getParentWindow } from "../../helpers/dom/element.mjs";
44
44
  export var PLUGIN_KEY = 'dragToScroll';
45
45
  export var PLUGIN_PRIORITY = 100;
46
+ /* eslint-disable jsdoc/require-description-complete-sentence */
47
+
46
48
  /**
47
49
  * @description
48
50
  * Plugin used to scroll Handsontable by selecting a cell and dragging outside of the visible viewport.
@@ -134,7 +136,10 @@ export var DragToScroll = /*#__PURE__*/function (_BasePlugin) {
134
136
  _get(_getPrototypeOf(DragToScroll.prototype), "enablePlugin", this).call(this);
135
137
  }
136
138
  /**
137
- * Updates the plugin state. This method is executed when {@link Core#updateSettings} is invoked.
139
+ * Updates the plugin's state.
140
+ *
141
+ * This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
142
+ * - [`dragToScroll`](@/api/options.md#dragtoscroll)
138
143
  */
139
144
 
140
145
  }, {
@@ -296,7 +301,7 @@ export var DragToScroll = /*#__PURE__*/function (_BasePlugin) {
296
301
  return;
297
302
  }
298
303
 
299
- var scrollHandler = this.hot.view.wt.wtTable.holder; // native scroll
304
+ var scrollHandler = this.hot.view._wt.wtTable.holder; // native scroll
300
305
 
301
306
  if (scrollHandler === this.hot.rootWindow) {
302
307
  // not much we can do currently
@@ -59,13 +59,13 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
59
59
 
60
60
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
61
61
 
62
- function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
62
+ function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
63
63
 
64
64
  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
65
65
 
66
66
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
67
67
 
68
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
68
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
69
69
 
70
70
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
71
71
 
@@ -75,7 +75,7 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
75
75
 
76
76
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
77
77
 
78
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
78
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
79
79
 
80
80
  _pluginHooks.default.getSingleton().register('afterDropdownMenuDefaultOptions');
81
81
 
@@ -131,8 +131,6 @@ var BUTTON_CLASS_NAME = 'changeType';
131
131
  * ```
132
132
  */
133
133
 
134
- /* eslint-enable jsdoc/require-description-complete-sentence */
135
-
136
134
  var DropdownMenu = /*#__PURE__*/function (_BasePlugin) {
137
135
  _inherits(DropdownMenu, _BasePlugin);
138
136
 
@@ -275,7 +273,10 @@ var DropdownMenu = /*#__PURE__*/function (_BasePlugin) {
275
273
  });
276
274
  }
277
275
  /**
278
- * Updates the plugin state. This method is executed when {@link Core#updateSettings} is invoked.
276
+ * Updates the plugin's state.
277
+ *
278
+ * This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
279
+ * - [`dropdownMenu`](@/api/options.md#dropdownmenu)
279
280
  */
280
281
 
281
282
  }, {
@@ -491,7 +492,8 @@ var DropdownMenu = /*#__PURE__*/function (_BasePlugin) {
491
492
  }
492
493
 
493
494
  var button = this.hot.rootDocument.createElement('button');
494
- button.className = BUTTON_CLASS_NAME; // prevent page reload on button click
495
+ button.className = BUTTON_CLASS_NAME;
496
+ button.type = 'button'; // prevent page reload on button click
495
497
 
496
498
  button.onclick = function () {
497
499
  return false;
@@ -21,13 +21,13 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
21
21
 
22
22
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
23
23
 
24
- function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
24
+ function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
25
25
 
26
26
  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
27
27
 
28
28
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
29
29
 
30
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
30
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
31
31
 
32
32
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
33
33
 
@@ -37,7 +37,7 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
37
37
 
38
38
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
39
39
 
40
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
40
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
41
41
 
42
42
  import { BasePlugin } from "../base/index.mjs";
43
43
  import { arrayEach } from "../../helpers/array.mjs";
@@ -95,8 +95,6 @@ var BUTTON_CLASS_NAME = 'changeType';
95
95
  * ```
96
96
  */
97
97
 
98
- /* eslint-enable jsdoc/require-description-complete-sentence */
99
-
100
98
  export var DropdownMenu = /*#__PURE__*/function (_BasePlugin) {
101
99
  _inherits(DropdownMenu, _BasePlugin);
102
100
 
@@ -239,7 +237,10 @@ export var DropdownMenu = /*#__PURE__*/function (_BasePlugin) {
239
237
  });
240
238
  }
241
239
  /**
242
- * Updates the plugin state. This method is executed when {@link Core#updateSettings} is invoked.
240
+ * Updates the plugin's state.
241
+ *
242
+ * This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
243
+ * - [`dropdownMenu`](@/api/options.md#dropdownmenu)
243
244
  */
244
245
 
245
246
  }, {
@@ -455,7 +456,8 @@ export var DropdownMenu = /*#__PURE__*/function (_BasePlugin) {
455
456
  }
456
457
 
457
458
  var button = this.hot.rootDocument.createElement('button');
458
- button.className = BUTTON_CLASS_NAME; // prevent page reload on button click
459
+ button.className = BUTTON_CLASS_NAME;
460
+ button.type = 'button'; // prevent page reload on button click
459
461
 
460
462
  button.onclick = function () {
461
463
  return false;
@@ -53,7 +53,7 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
53
53
 
54
54
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
55
55
 
56
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
56
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
57
57
 
58
58
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
59
59
 
@@ -63,7 +63,7 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
63
63
 
64
64
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
65
65
 
66
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
66
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
67
67
 
68
68
  var PLUGIN_KEY = 'exportFile';
69
69
  exports.PLUGIN_KEY = PLUGIN_KEY;