handsontable 11.0.0 → 12.0.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 (633) hide show
  1. package/3rdparty/walkontable/src/border.js +121 -99
  2. package/3rdparty/walkontable/src/border.mjs +122 -96
  3. package/3rdparty/walkontable/src/calculator/viewportColumns.js +1 -1
  4. package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +1 -1
  5. package/3rdparty/walkontable/src/calculator/viewportRows.js +1 -1
  6. package/3rdparty/walkontable/src/calculator/viewportRows.mjs +1 -1
  7. package/3rdparty/walkontable/src/cell/coords.js +60 -18
  8. package/3rdparty/walkontable/src/cell/coords.mjs +56 -18
  9. package/3rdparty/walkontable/src/cell/range.d.ts +10 -2
  10. package/3rdparty/walkontable/src/cell/range.js +279 -100
  11. package/3rdparty/walkontable/src/cell/range.mjs +274 -100
  12. package/3rdparty/walkontable/src/core/_base.js +452 -0
  13. package/3rdparty/walkontable/src/core/_base.mjs +440 -0
  14. package/3rdparty/walkontable/src/core/clone.js +97 -0
  15. package/3rdparty/walkontable/src/core/clone.mjs +80 -0
  16. package/3rdparty/walkontable/src/core/core.js +183 -0
  17. package/3rdparty/walkontable/src/core/core.mjs +160 -0
  18. package/3rdparty/walkontable/src/event.js +100 -67
  19. package/3rdparty/walkontable/src/event.mjs +100 -64
  20. package/3rdparty/walkontable/src/facade/core.js +251 -0
  21. package/3rdparty/walkontable/src/facade/core.mjs +243 -0
  22. package/3rdparty/walkontable/src/filter/column.js +1 -1
  23. package/3rdparty/walkontable/src/filter/column.mjs +1 -1
  24. package/3rdparty/walkontable/src/filter/row.js +1 -1
  25. package/3rdparty/walkontable/src/filter/row.mjs +1 -1
  26. package/3rdparty/walkontable/src/index.js +3 -47
  27. package/3rdparty/walkontable/src/index.mjs +3 -13
  28. package/3rdparty/walkontable/src/overlay/_base.js +125 -58
  29. package/3rdparty/walkontable/src/overlay/_base.mjs +126 -59
  30. package/3rdparty/walkontable/src/overlay/bottom.js +86 -76
  31. package/3rdparty/walkontable/src/overlay/bottom.mjs +86 -76
  32. package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.js → bottomInlineStartCorner.js} +35 -58
  33. package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +34 -57
  34. package/3rdparty/walkontable/src/overlay/constants.js +25 -9
  35. package/3rdparty/walkontable/src/overlay/constants.mjs +14 -4
  36. package/3rdparty/walkontable/src/overlay/index.js +10 -19
  37. package/3rdparty/walkontable/src/overlay/index.mjs +4 -5
  38. package/3rdparty/walkontable/src/overlay/{left.js → inlineStart.js} +102 -80
  39. package/3rdparty/walkontable/src/overlay/{left.mjs → inlineStart.mjs} +101 -79
  40. package/3rdparty/walkontable/src/overlay/top.js +84 -79
  41. package/3rdparty/walkontable/src/overlay/top.mjs +84 -79
  42. package/3rdparty/walkontable/src/overlay/{topLeftCorner.js → topInlineStartCorner.js} +56 -57
  43. package/3rdparty/walkontable/src/overlay/{topLeftCorner.mjs → topInlineStartCorner.mjs} +51 -52
  44. package/3rdparty/walkontable/src/overlays.js +226 -157
  45. package/3rdparty/walkontable/src/overlays.mjs +226 -156
  46. package/3rdparty/walkontable/src/renderer/_base.js +1 -1
  47. package/3rdparty/walkontable/src/renderer/_base.mjs +1 -1
  48. package/3rdparty/walkontable/src/renderer/cells.js +5 -4
  49. package/3rdparty/walkontable/src/renderer/cells.mjs +5 -4
  50. package/3rdparty/walkontable/src/renderer/colGroup.js +3 -3
  51. package/3rdparty/walkontable/src/renderer/colGroup.mjs +3 -3
  52. package/3rdparty/walkontable/src/renderer/columnHeaders.js +3 -3
  53. package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +3 -3
  54. package/3rdparty/walkontable/src/renderer/index.js +1 -1
  55. package/3rdparty/walkontable/src/renderer/index.mjs +1 -1
  56. package/3rdparty/walkontable/src/renderer/rowHeaders.js +3 -3
  57. package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +3 -3
  58. package/3rdparty/walkontable/src/renderer/rows.js +3 -3
  59. package/3rdparty/walkontable/src/renderer/rows.mjs +3 -3
  60. package/3rdparty/walkontable/src/renderer/table.js +1 -1
  61. package/3rdparty/walkontable/src/renderer/table.mjs +1 -1
  62. package/3rdparty/walkontable/src/scroll.js +61 -88
  63. package/3rdparty/walkontable/src/scroll.mjs +61 -88
  64. package/3rdparty/walkontable/src/selection.js +12 -16
  65. package/3rdparty/walkontable/src/selection.mjs +12 -14
  66. package/3rdparty/walkontable/src/settings.js +236 -127
  67. package/3rdparty/walkontable/src/settings.mjs +236 -126
  68. package/3rdparty/walkontable/src/table/bottom.js +21 -6
  69. package/3rdparty/walkontable/src/table/bottom.mjs +20 -6
  70. package/3rdparty/walkontable/src/table/{bottomLeftCorner.js → bottomInlineStartCorner.js} +31 -15
  71. package/3rdparty/walkontable/src/table/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +30 -15
  72. package/3rdparty/walkontable/src/table/{left.js → inlineStart.js} +27 -15
  73. package/3rdparty/walkontable/src/table/{left.mjs → inlineStart.mjs} +26 -15
  74. package/3rdparty/walkontable/src/table/master.js +23 -13
  75. package/3rdparty/walkontable/src/table/master.mjs +23 -13
  76. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +12 -6
  77. package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +12 -6
  78. package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +12 -6
  79. package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +12 -6
  80. package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.js → stickyColumnsStart.js} +13 -7
  81. package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.mjs → stickyColumnsStart.mjs} +13 -7
  82. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +11 -5
  83. package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +11 -5
  84. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +9 -3
  85. package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +9 -3
  86. package/3rdparty/walkontable/src/table/top.js +21 -6
  87. package/3rdparty/walkontable/src/table/top.mjs +20 -6
  88. package/3rdparty/walkontable/src/table/{topLeftCorner.js → topInlineStartCorner.js} +31 -15
  89. package/3rdparty/walkontable/src/table/{topLeftCorner.mjs → topInlineStartCorner.mjs} +30 -15
  90. package/3rdparty/walkontable/src/table.js +236 -141
  91. package/3rdparty/walkontable/src/table.mjs +232 -135
  92. package/3rdparty/walkontable/src/types.js +103 -0
  93. package/3rdparty/walkontable/src/types.mjs +102 -0
  94. package/3rdparty/walkontable/src/utils/column.js +23 -34
  95. package/3rdparty/walkontable/src/utils/column.mjs +23 -31
  96. package/3rdparty/walkontable/src/utils/nodesPool.js +1 -1
  97. package/3rdparty/walkontable/src/utils/nodesPool.mjs +1 -1
  98. package/3rdparty/walkontable/src/utils/orderView/sharedView.js +3 -3
  99. package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +3 -3
  100. package/3rdparty/walkontable/src/utils/orderView/view.js +1 -1
  101. package/3rdparty/walkontable/src/utils/orderView/view.mjs +1 -1
  102. package/3rdparty/walkontable/src/utils/orderView/viewSize.js +1 -1
  103. package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +1 -1
  104. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +1 -1
  105. package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +1 -1
  106. package/3rdparty/walkontable/src/utils/row.js +10 -5
  107. package/3rdparty/walkontable/src/utils/row.mjs +10 -5
  108. package/3rdparty/walkontable/src/viewport.js +78 -81
  109. package/3rdparty/walkontable/src/viewport.mjs +78 -78
  110. package/CHANGELOG.md +94 -17
  111. package/README.md +10 -7
  112. package/base.js +2 -2
  113. package/base.mjs +2 -2
  114. package/cellTypes/timeType/timeType.d.ts +6 -6
  115. package/cellTypes/timeType/timeType.js +4 -5
  116. package/cellTypes/timeType/timeType.mjs +4 -5
  117. package/core.d.ts +9 -3
  118. package/core.js +590 -157
  119. package/core.mjs +599 -169
  120. package/dataMap/dataMap.js +2 -2
  121. package/dataMap/dataMap.mjs +2 -2
  122. package/dataMap/index.js +8 -0
  123. package/dataMap/index.mjs +3 -1
  124. package/dataMap/metaManager/index.js +3 -3
  125. package/dataMap/metaManager/index.mjs +3 -3
  126. package/dataMap/metaManager/lazyFactoryMap.js +1 -1
  127. package/dataMap/metaManager/lazyFactoryMap.mjs +1 -1
  128. package/dataMap/metaManager/metaLayers/cellMeta.js +1 -1
  129. package/dataMap/metaManager/metaLayers/cellMeta.mjs +1 -1
  130. package/dataMap/metaManager/metaLayers/columnMeta.js +1 -1
  131. package/dataMap/metaManager/metaLayers/columnMeta.mjs +1 -1
  132. package/dataMap/metaManager/metaLayers/globalMeta.js +7 -3
  133. package/dataMap/metaManager/metaLayers/globalMeta.mjs +7 -3
  134. package/dataMap/metaManager/metaLayers/tableMeta.js +3 -3
  135. package/dataMap/metaManager/metaLayers/tableMeta.mjs +3 -3
  136. package/dataMap/metaManager/metaSchema.js +2931 -2676
  137. package/dataMap/metaManager/metaSchema.mjs +2931 -2676
  138. package/dataMap/metaManager/mods/dynamicCellMeta.js +1 -1
  139. package/dataMap/metaManager/mods/dynamicCellMeta.mjs +1 -1
  140. package/dataMap/metaManager/mods/extendMetaProperties.js +126 -0
  141. package/dataMap/metaManager/mods/extendMetaProperties.mjs +113 -0
  142. package/dataMap/replaceData.js +140 -0
  143. package/dataMap/replaceData.mjs +124 -0
  144. package/dataSource.js +1 -1
  145. package/dataSource.mjs +1 -1
  146. package/dist/README.md +2 -2
  147. package/dist/handsontable.css +424 -166
  148. package/dist/handsontable.full.css +559 -298
  149. package/dist/handsontable.full.js +47163 -41289
  150. package/dist/handsontable.full.min.css +8 -13
  151. package/dist/handsontable.full.min.js +143 -142
  152. package/dist/handsontable.js +28270 -24105
  153. package/dist/handsontable.min.css +8 -11
  154. package/dist/handsontable.min.js +3 -3
  155. package/dist/languages/all.js +69 -38
  156. package/dist/languages/all.min.js +1 -1
  157. package/dist/languages/ar-AR.js +167 -0
  158. package/dist/languages/ar-AR.min.js +1 -0
  159. package/dist/languages/de-CH.js +32 -33
  160. package/dist/languages/de-CH.min.js +1 -1
  161. package/dist/languages/de-DE.js +5 -6
  162. package/dist/languages/de-DE.min.js +1 -1
  163. package/dist/languages/en-US.js +5 -6
  164. package/dist/languages/en-US.min.js +1 -1
  165. package/dist/languages/es-MX.js +5 -6
  166. package/dist/languages/es-MX.min.js +1 -1
  167. package/dist/languages/fr-FR.js +5 -6
  168. package/dist/languages/fr-FR.min.js +1 -1
  169. package/dist/languages/it-IT.js +5 -6
  170. package/dist/languages/it-IT.min.js +1 -1
  171. package/dist/languages/ja-JP.js +5 -6
  172. package/dist/languages/ja-JP.min.js +1 -1
  173. package/dist/languages/ko-KR.js +37 -42
  174. package/dist/languages/ko-KR.min.js +1 -1
  175. package/dist/languages/lv-LV.js +4 -6
  176. package/dist/languages/lv-LV.min.js +1 -1
  177. package/dist/languages/nb-NO.js +4 -6
  178. package/dist/languages/nb-NO.min.js +1 -1
  179. package/dist/languages/nl-NL.js +4 -6
  180. package/dist/languages/nl-NL.min.js +1 -1
  181. package/dist/languages/pl-PL.js +4 -6
  182. package/dist/languages/pl-PL.min.js +1 -1
  183. package/dist/languages/pt-BR.js +4 -6
  184. package/dist/languages/pt-BR.min.js +1 -1
  185. package/dist/languages/ru-RU.js +4 -6
  186. package/dist/languages/ru-RU.min.js +1 -1
  187. package/dist/languages/zh-CN.js +4 -6
  188. package/dist/languages/zh-CN.min.js +1 -1
  189. package/dist/languages/zh-TW.js +25 -27
  190. package/dist/languages/zh-TW.min.js +1 -1
  191. package/editorManager.js +121 -268
  192. package/editorManager.mjs +129 -279
  193. package/editors/autocompleteEditor/autocompleteEditor.js +19 -17
  194. package/editors/autocompleteEditor/autocompleteEditor.mjs +19 -17
  195. package/editors/baseEditor/baseEditor.js +207 -36
  196. package/editors/baseEditor/baseEditor.mjs +202 -34
  197. package/editors/checkboxEditor/checkboxEditor.js +3 -3
  198. package/editors/checkboxEditor/checkboxEditor.mjs +3 -3
  199. package/editors/dateEditor/dateEditor.js +22 -9
  200. package/editors/dateEditor/dateEditor.mjs +23 -10
  201. package/editors/dropdownEditor/dropdownEditor.js +4 -4
  202. package/editors/dropdownEditor/dropdownEditor.mjs +4 -4
  203. package/editors/handsontableEditor/handsontableEditor.js +107 -56
  204. package/editors/handsontableEditor/handsontableEditor.mjs +107 -56
  205. package/editors/index.d.ts +3 -0
  206. package/editors/index.js +6 -0
  207. package/editors/index.mjs +3 -1
  208. package/editors/numericEditor/numericEditor.js +3 -3
  209. package/editors/numericEditor/numericEditor.mjs +3 -3
  210. package/editors/passwordEditor/passwordEditor.js +4 -4
  211. package/editors/passwordEditor/passwordEditor.mjs +4 -4
  212. package/editors/selectEditor/selectEditor.js +66 -111
  213. package/editors/selectEditor/selectEditor.mjs +67 -110
  214. package/editors/textEditor/caretPositioner.js +49 -0
  215. package/editors/textEditor/caretPositioner.mjs +42 -0
  216. package/editors/textEditor/textEditor.js +206 -182
  217. package/editors/textEditor/textEditor.mjs +200 -180
  218. package/editors/timeEditor/index.d.ts +1 -0
  219. package/editors/timeEditor/index.js +9 -0
  220. package/editors/timeEditor/index.mjs +1 -0
  221. package/editors/timeEditor/timeEditor.d.ts +7 -0
  222. package/editors/timeEditor/timeEditor.js +105 -0
  223. package/editors/timeEditor/timeEditor.mjs +84 -0
  224. package/eventManager.js +11 -5
  225. package/eventManager.mjs +11 -5
  226. package/helpers/data.js +1 -1
  227. package/helpers/data.mjs +1 -1
  228. package/helpers/dom/element.js +1 -1
  229. package/helpers/dom/element.mjs +1 -1
  230. package/helpers/feature.js +1 -1
  231. package/helpers/feature.mjs +1 -1
  232. package/helpers/mixed.js +3 -3
  233. package/helpers/mixed.mjs +3 -3
  234. package/helpers/number.js +4 -4
  235. package/helpers/number.mjs +4 -4
  236. package/helpers/object.js +1 -1
  237. package/helpers/object.mjs +1 -1
  238. package/i18n/languages/ar-AR.js +41 -0
  239. package/i18n/languages/ar-AR.mjs +17 -0
  240. package/i18n/languages/de-CH.js +1 -1
  241. package/i18n/languages/de-DE.js +1 -1
  242. package/i18n/languages/en-US.js +1 -1
  243. package/i18n/languages/es-MX.js +1 -1
  244. package/i18n/languages/fr-FR.js +1 -1
  245. package/i18n/languages/index.js +4 -0
  246. package/i18n/languages/index.mjs +2 -1
  247. package/i18n/languages/it-IT.js +1 -1
  248. package/i18n/languages/ja-JP.js +1 -1
  249. package/i18n/languages/ko-KR.js +1 -1
  250. package/i18n/languages/lv-LV.js +1 -1
  251. package/i18n/languages/nb-NO.js +1 -1
  252. package/i18n/languages/nl-NL.js +1 -1
  253. package/i18n/languages/pl-PL.js +1 -1
  254. package/i18n/languages/pt-BR.js +1 -1
  255. package/i18n/languages/ru-RU.js +1 -1
  256. package/i18n/languages/zh-CN.js +1 -1
  257. package/i18n/languages/zh-TW.js +1 -1
  258. package/i18n/registry.js +1 -1
  259. package/index.d.ts +4 -0
  260. package/index.js +1 -1
  261. package/languages/all.js +69 -38
  262. package/languages/ar-AR.js +167 -0
  263. package/languages/ar-AR.mjs +19 -0
  264. package/languages/de-CH.js +32 -33
  265. package/languages/de-DE.js +5 -6
  266. package/languages/en-US.js +5 -6
  267. package/languages/es-MX.js +5 -6
  268. package/languages/fr-FR.js +5 -6
  269. package/languages/index.js +69 -38
  270. package/languages/index.mjs +2 -1
  271. package/languages/it-IT.js +5 -6
  272. package/languages/ja-JP.js +5 -6
  273. package/languages/ko-KR.js +37 -42
  274. package/languages/lv-LV.js +4 -6
  275. package/languages/nb-NO.js +4 -6
  276. package/languages/nl-NL.js +4 -6
  277. package/languages/pl-PL.js +4 -6
  278. package/languages/pt-BR.js +4 -6
  279. package/languages/ru-RU.js +4 -6
  280. package/languages/zh-CN.js +4 -6
  281. package/languages/zh-TW.js +25 -27
  282. package/package.json +26 -8
  283. package/pluginHooks.d.ts +2 -0
  284. package/pluginHooks.js +58 -27
  285. package/pluginHooks.mjs +58 -27
  286. package/plugins/autoColumnSize/autoColumnSize.js +14 -9
  287. package/plugins/autoColumnSize/autoColumnSize.mjs +14 -9
  288. package/plugins/autoRowSize/autoRowSize.js +15 -10
  289. package/plugins/autoRowSize/autoRowSize.mjs +15 -10
  290. package/plugins/autofill/autofill.js +50 -34
  291. package/plugins/autofill/autofill.mjs +50 -33
  292. package/plugins/autofill/utils.js +10 -11
  293. package/plugins/autofill/utils.mjs +10 -10
  294. package/plugins/base/base.d.ts +8 -2
  295. package/plugins/base/base.js +68 -5
  296. package/plugins/base/base.mjs +67 -5
  297. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +4 -4
  298. package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +4 -4
  299. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +4 -4
  300. package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +4 -4
  301. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +4 -4
  302. package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +4 -4
  303. package/plugins/collapsibleColumns/collapsibleColumns.js +49 -30
  304. package/plugins/collapsibleColumns/collapsibleColumns.mjs +49 -30
  305. package/plugins/columnSorting/columnSorting.d.ts +1 -1
  306. package/plugins/columnSorting/columnSorting.js +10 -12
  307. package/plugins/columnSorting/columnSorting.mjs +10 -11
  308. package/plugins/columnSorting/columnStatesManager.js +3 -3
  309. package/plugins/columnSorting/columnStatesManager.mjs +3 -3
  310. package/plugins/columnSummary/columnSummary.js +4 -4
  311. package/plugins/columnSummary/columnSummary.mjs +4 -4
  312. package/plugins/columnSummary/endpoints.js +1 -1
  313. package/plugins/columnSummary/endpoints.mjs +1 -1
  314. package/plugins/comments/commentEditor.js +24 -4
  315. package/plugins/comments/commentEditor.mjs +25 -5
  316. package/plugins/comments/comments.js +63 -104
  317. package/plugins/comments/comments.mjs +63 -102
  318. package/plugins/comments/displaySwitch.js +1 -1
  319. package/plugins/comments/displaySwitch.mjs +1 -1
  320. package/plugins/contextMenu/commandExecutor.js +1 -1
  321. package/plugins/contextMenu/commandExecutor.mjs +1 -1
  322. package/plugins/contextMenu/contextMenu.js +11 -7
  323. package/plugins/contextMenu/contextMenu.mjs +11 -7
  324. package/plugins/contextMenu/cursor.js +1 -1
  325. package/plugins/contextMenu/cursor.mjs +1 -1
  326. package/plugins/contextMenu/itemsFactory.js +1 -1
  327. package/plugins/contextMenu/itemsFactory.mjs +1 -1
  328. package/plugins/contextMenu/menu.js +223 -111
  329. package/plugins/contextMenu/menu.mjs +220 -112
  330. package/plugins/contextMenu/predefinedItems/alignment.js +1 -1
  331. package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
  332. package/plugins/contextMenu/predefinedItems/columnLeft.js +13 -5
  333. package/plugins/contextMenu/predefinedItems/columnLeft.mjs +11 -4
  334. package/plugins/contextMenu/predefinedItems/columnRight.js +10 -10
  335. package/plugins/contextMenu/predefinedItems/columnRight.mjs +9 -9
  336. package/plugins/contextMenu/predefinedItems/readOnly.js +1 -1
  337. package/plugins/contextMenu/predefinedItems/redo.js +1 -1
  338. package/plugins/contextMenu/predefinedItems/removeColumn.js +1 -1
  339. package/plugins/contextMenu/predefinedItems/removeRow.js +1 -1
  340. package/plugins/contextMenu/predefinedItems/rowAbove.js +1 -1
  341. package/plugins/contextMenu/predefinedItems/rowBelow.js +1 -1
  342. package/plugins/contextMenu/predefinedItems/undo.js +1 -1
  343. package/plugins/contextMenu/predefinedItems.js +1 -1
  344. package/plugins/contextMenu/utils.js +2 -2
  345. package/plugins/contextMenu/utils.mjs +2 -2
  346. package/plugins/copyPaste/clipboardData.js +1 -1
  347. package/plugins/copyPaste/clipboardData.mjs +1 -1
  348. package/plugins/copyPaste/contextMenuItem/copy.js +1 -1
  349. package/plugins/copyPaste/contextMenuItem/cut.js +1 -1
  350. package/plugins/copyPaste/copyPaste.js +29 -19
  351. package/plugins/copyPaste/copyPaste.mjs +28 -19
  352. package/plugins/copyPaste/focusableElement.js +1 -1
  353. package/plugins/copyPaste/focusableElement.mjs +1 -1
  354. package/plugins/copyPaste/pasteEvent.js +6 -2
  355. package/plugins/copyPaste/pasteEvent.mjs +6 -2
  356. package/plugins/customBorders/contextMenuItem/bottom.js +1 -1
  357. package/plugins/customBorders/contextMenuItem/left.js +5 -4
  358. package/plugins/customBorders/contextMenuItem/left.mjs +4 -3
  359. package/plugins/customBorders/contextMenuItem/noBorders.js +1 -1
  360. package/plugins/customBorders/contextMenuItem/right.js +5 -4
  361. package/plugins/customBorders/contextMenuItem/right.mjs +4 -3
  362. package/plugins/customBorders/contextMenuItem/top.js +1 -1
  363. package/plugins/customBorders/customBorders.js +141 -85
  364. package/plugins/customBorders/customBorders.mjs +139 -82
  365. package/plugins/customBorders/utils.js +131 -27
  366. package/plugins/customBorders/utils.mjs +115 -27
  367. package/plugins/dragToScroll/dragToScroll.js +11 -6
  368. package/plugins/dragToScroll/dragToScroll.mjs +11 -6
  369. package/plugins/dropdownMenu/dropdownMenu.js +8 -7
  370. package/plugins/dropdownMenu/dropdownMenu.mjs +8 -7
  371. package/plugins/exportFile/dataProvider.js +1 -1
  372. package/plugins/exportFile/dataProvider.mjs +1 -1
  373. package/plugins/exportFile/exportFile.js +3 -3
  374. package/plugins/exportFile/exportFile.mjs +3 -3
  375. package/plugins/exportFile/types/_base.js +1 -1
  376. package/plugins/exportFile/types/_base.mjs +1 -1
  377. package/plugins/exportFile/types/csv.js +3 -3
  378. package/plugins/exportFile/types/csv.mjs +3 -3
  379. package/plugins/filters/component/_base.js +1 -1
  380. package/plugins/filters/component/_base.mjs +1 -1
  381. package/plugins/filters/component/actionBar.js +3 -3
  382. package/plugins/filters/component/actionBar.mjs +3 -3
  383. package/plugins/filters/component/condition.js +4 -4
  384. package/plugins/filters/component/condition.mjs +4 -4
  385. package/plugins/filters/component/operators.js +3 -3
  386. package/plugins/filters/component/operators.mjs +3 -3
  387. package/plugins/filters/component/value.js +4 -4
  388. package/plugins/filters/component/value.mjs +4 -4
  389. package/plugins/filters/condition/beginsWith.js +1 -1
  390. package/plugins/filters/condition/between.js +1 -1
  391. package/plugins/filters/condition/contains.js +1 -1
  392. package/plugins/filters/condition/date/after.js +1 -1
  393. package/plugins/filters/condition/date/before.js +1 -1
  394. package/plugins/filters/condition/date/today.js +1 -1
  395. package/plugins/filters/condition/date/tomorrow.js +1 -1
  396. package/plugins/filters/condition/date/yesterday.js +1 -1
  397. package/plugins/filters/condition/empty.js +1 -1
  398. package/plugins/filters/condition/endsWith.js +1 -1
  399. package/plugins/filters/condition/equal.js +1 -1
  400. package/plugins/filters/condition/greaterThan.js +1 -1
  401. package/plugins/filters/condition/greaterThanOrEqual.js +1 -1
  402. package/plugins/filters/condition/lessThan.js +1 -1
  403. package/plugins/filters/condition/lessThanOrEqual.js +1 -1
  404. package/plugins/filters/condition/none.js +1 -1
  405. package/plugins/filters/condition/notBetween.js +1 -1
  406. package/plugins/filters/condition/notContains.js +1 -1
  407. package/plugins/filters/condition/notEmpty.js +1 -1
  408. package/plugins/filters/condition/notEqual.js +1 -1
  409. package/plugins/filters/conditionCollection.js +1 -1
  410. package/plugins/filters/conditionCollection.mjs +1 -1
  411. package/plugins/filters/conditionUpdateObserver.js +1 -1
  412. package/plugins/filters/conditionUpdateObserver.mjs +1 -1
  413. package/plugins/filters/dataFilter.js +1 -1
  414. package/plugins/filters/dataFilter.mjs +1 -1
  415. package/plugins/filters/filters.js +12 -9
  416. package/plugins/filters/filters.mjs +12 -9
  417. package/plugins/filters/logicalOperations/conjunction.js +1 -1
  418. package/plugins/filters/logicalOperations/disjunction.js +1 -1
  419. package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +1 -1
  420. package/plugins/filters/ui/_base.js +2 -2
  421. package/plugins/filters/ui/_base.mjs +1 -1
  422. package/plugins/filters/ui/input.js +4 -4
  423. package/plugins/filters/ui/input.mjs +4 -4
  424. package/plugins/filters/ui/link.js +4 -4
  425. package/plugins/filters/ui/link.mjs +4 -4
  426. package/plugins/filters/ui/multipleSelect.js +19 -32
  427. package/plugins/filters/ui/multipleSelect.mjs +19 -32
  428. package/plugins/filters/ui/radioInput.js +4 -4
  429. package/plugins/filters/ui/radioInput.mjs +4 -4
  430. package/plugins/filters/ui/select.js +5 -5
  431. package/plugins/filters/ui/select.mjs +5 -5
  432. package/plugins/formulas/engine/register.js +1 -1
  433. package/plugins/formulas/engine/register.mjs +1 -1
  434. package/plugins/formulas/engine/settings.js +2 -2
  435. package/plugins/formulas/engine/settings.mjs +2 -2
  436. package/plugins/formulas/formulas.js +10 -10
  437. package/plugins/formulas/formulas.mjs +10 -10
  438. package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -1
  439. package/plugins/hiddenColumns/contextMenuItem/showColumn.js +3 -3
  440. package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +2 -2
  441. package/plugins/hiddenColumns/hiddenColumns.js +10 -5
  442. package/plugins/hiddenColumns/hiddenColumns.mjs +10 -5
  443. package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -1
  444. package/plugins/hiddenRows/contextMenuItem/showRow.js +3 -3
  445. package/plugins/hiddenRows/contextMenuItem/showRow.mjs +2 -2
  446. package/plugins/hiddenRows/hiddenRows.js +10 -5
  447. package/plugins/hiddenRows/hiddenRows.mjs +10 -5
  448. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +2 -2
  449. package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
  450. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +2 -2
  451. package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
  452. package/plugins/manualColumnFreeze/manualColumnFreeze.js +26 -13
  453. package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +26 -13
  454. package/plugins/manualColumnMove/manualColumnMove.js +73 -62
  455. package/plugins/manualColumnMove/manualColumnMove.mjs +74 -63
  456. package/plugins/manualColumnMove/ui/_base.js +26 -13
  457. package/plugins/manualColumnMove/ui/_base.mjs +25 -13
  458. package/plugins/manualColumnMove/ui/backlight.js +4 -4
  459. package/plugins/manualColumnMove/ui/backlight.mjs +4 -4
  460. package/plugins/manualColumnMove/ui/guideline.js +4 -4
  461. package/plugins/manualColumnMove/ui/guideline.mjs +4 -4
  462. package/plugins/manualColumnResize/manualColumnResize.js +38 -22
  463. package/plugins/manualColumnResize/manualColumnResize.mjs +38 -22
  464. package/plugins/manualRowMove/manualRowMove.js +27 -17
  465. package/plugins/manualRowMove/manualRowMove.mjs +27 -17
  466. package/plugins/manualRowMove/ui/_base.js +1 -1
  467. package/plugins/manualRowMove/ui/_base.mjs +1 -1
  468. package/plugins/manualRowMove/ui/backlight.js +4 -4
  469. package/plugins/manualRowMove/ui/backlight.mjs +4 -4
  470. package/plugins/manualRowMove/ui/guideline.js +4 -4
  471. package/plugins/manualRowMove/ui/guideline.mjs +4 -4
  472. package/plugins/manualRowResize/manualRowResize.js +35 -20
  473. package/plugins/manualRowResize/manualRowResize.mjs +35 -20
  474. package/plugins/mergeCells/calculations/autofill.js +7 -6
  475. package/plugins/mergeCells/calculations/autofill.mjs +7 -5
  476. package/plugins/mergeCells/calculations/selection.js +10 -5
  477. package/plugins/mergeCells/calculations/selection.mjs +10 -5
  478. package/plugins/mergeCells/cellCoords.js +17 -5
  479. package/plugins/mergeCells/cellCoords.mjs +17 -4
  480. package/plugins/mergeCells/cellsCollection.js +28 -21
  481. package/plugins/mergeCells/cellsCollection.mjs +28 -20
  482. package/plugins/mergeCells/contextMenuItem/toggleMerge.js +1 -1
  483. package/plugins/mergeCells/mergeCells.js +83 -50
  484. package/plugins/mergeCells/mergeCells.mjs +83 -48
  485. package/plugins/multiColumnSorting/multiColumnSorting.js +5 -7
  486. package/plugins/multiColumnSorting/multiColumnSorting.mjs +5 -6
  487. package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +52 -58
  488. package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +53 -58
  489. package/plugins/nestedHeaders/nestedHeaders.js +26 -19
  490. package/plugins/nestedHeaders/nestedHeaders.mjs +26 -19
  491. package/plugins/nestedHeaders/stateManager/headersTree.js +3 -3
  492. package/plugins/nestedHeaders/stateManager/headersTree.mjs +3 -3
  493. package/plugins/nestedHeaders/stateManager/index.js +3 -3
  494. package/plugins/nestedHeaders/stateManager/index.mjs +3 -3
  495. package/plugins/nestedHeaders/stateManager/sourceSettings.js +3 -3
  496. package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +3 -3
  497. package/plugins/nestedHeaders/utils/ghostTable.js +1 -1
  498. package/plugins/nestedHeaders/utils/ghostTable.mjs +1 -1
  499. package/plugins/nestedRows/data/dataManager.js +2 -2
  500. package/plugins/nestedRows/data/dataManager.mjs +2 -2
  501. package/plugins/nestedRows/nestedRows.js +11 -5
  502. package/plugins/nestedRows/nestedRows.mjs +11 -5
  503. package/plugins/nestedRows/ui/_base.js +6 -2
  504. package/plugins/nestedRows/ui/_base.mjs +6 -2
  505. package/plugins/nestedRows/ui/collapsing.js +3 -3
  506. package/plugins/nestedRows/ui/collapsing.mjs +3 -3
  507. package/plugins/nestedRows/ui/contextMenu.js +3 -3
  508. package/plugins/nestedRows/ui/contextMenu.mjs +3 -3
  509. package/plugins/nestedRows/ui/headers.js +3 -3
  510. package/plugins/nestedRows/ui/headers.mjs +3 -3
  511. package/plugins/nestedRows/utils/rowMoveController.js +3 -5
  512. package/plugins/nestedRows/utils/rowMoveController.mjs +3 -4
  513. package/plugins/persistentState/persistentState.js +10 -5
  514. package/plugins/persistentState/persistentState.mjs +10 -5
  515. package/plugins/persistentState/storage.js +1 -1
  516. package/plugins/persistentState/storage.mjs +1 -1
  517. package/plugins/search/search.js +10 -5
  518. package/plugins/search/search.mjs +10 -5
  519. package/plugins/touchScroll/touchScroll.js +32 -26
  520. package/plugins/touchScroll/touchScroll.mjs +32 -25
  521. package/plugins/trimRows/trimRows.js +10 -5
  522. package/plugins/trimRows/trimRows.mjs +10 -5
  523. package/plugins/undoRedo/index.js +1 -1
  524. package/plugins/undoRedo/undoRedo.js +54 -48
  525. package/plugins/undoRedo/undoRedo.mjs +54 -47
  526. package/renderers/autocompleteRenderer/autocompleteRenderer.js +1 -3
  527. package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +1 -2
  528. package/renderers/checkboxRenderer/checkboxRenderer.js +48 -43
  529. package/renderers/checkboxRenderer/checkboxRenderer.mjs +48 -41
  530. package/renderers/index.d.ts +4 -1
  531. package/renderers/index.js +6 -0
  532. package/renderers/index.mjs +3 -1
  533. package/renderers/numericRenderer/numericRenderer.js +1 -0
  534. package/renderers/numericRenderer/numericRenderer.mjs +1 -0
  535. package/renderers/timeRenderer/index.d.ts +1 -0
  536. package/renderers/timeRenderer/index.js +9 -0
  537. package/renderers/timeRenderer/index.mjs +1 -0
  538. package/renderers/timeRenderer/timeRenderer.d.ts +5 -0
  539. package/renderers/timeRenderer/timeRenderer.js +31 -0
  540. package/renderers/timeRenderer/timeRenderer.mjs +20 -0
  541. package/selection/highlight/highlight.js +3 -3
  542. package/selection/highlight/highlight.mjs +3 -3
  543. package/selection/highlight/types/activeHeader.js +2 -2
  544. package/selection/highlight/types/activeHeader.mjs +2 -2
  545. package/selection/highlight/types/area.js +2 -2
  546. package/selection/highlight/types/area.mjs +2 -2
  547. package/selection/highlight/types/cell.js +2 -2
  548. package/selection/highlight/types/cell.mjs +2 -2
  549. package/selection/highlight/types/customSelection.js +2 -2
  550. package/selection/highlight/types/customSelection.mjs +2 -2
  551. package/selection/highlight/types/fill.js +2 -2
  552. package/selection/highlight/types/fill.mjs +2 -2
  553. package/selection/highlight/types/header.js +2 -2
  554. package/selection/highlight/types/header.mjs +2 -2
  555. package/selection/highlight/types/index.js +2 -2
  556. package/selection/highlight/types/index.mjs +2 -2
  557. package/selection/highlight/visualSelection.js +17 -16
  558. package/selection/highlight/visualSelection.mjs +18 -17
  559. package/selection/mouseEventHandler.js +15 -10
  560. package/selection/mouseEventHandler.mjs +15 -9
  561. package/selection/range.js +5 -6
  562. package/selection/range.mjs +5 -6
  563. package/selection/selection.js +27 -20
  564. package/selection/selection.mjs +27 -18
  565. package/selection/transformation.js +5 -7
  566. package/selection/transformation.mjs +5 -6
  567. package/selection/utils.js +1 -1
  568. package/selection/utils.mjs +1 -1
  569. package/settings.d.ts +3 -1
  570. package/shortcuts/context.d.ts +20 -0
  571. package/shortcuts/context.js +296 -0
  572. package/shortcuts/context.mjs +268 -0
  573. package/shortcuts/index.d.ts +1 -0
  574. package/shortcuts/index.js +8 -0
  575. package/shortcuts/index.mjs +1 -0
  576. package/shortcuts/keyObserver.js +67 -0
  577. package/shortcuts/keyObserver.mjs +58 -0
  578. package/shortcuts/manager.d.ts +10 -0
  579. package/shortcuts/manager.js +183 -0
  580. package/shortcuts/manager.mjs +174 -0
  581. package/shortcuts/recorder.js +183 -0
  582. package/shortcuts/recorder.mjs +171 -0
  583. package/shortcuts/utils.js +77 -0
  584. package/shortcuts/utils.mjs +54 -0
  585. package/tableView.js +138 -80
  586. package/tableView.mjs +138 -70
  587. package/translations/changesObservable/observable.js +1 -1
  588. package/translations/changesObservable/observable.mjs +1 -1
  589. package/translations/changesObservable/observer.js +1 -2
  590. package/translations/changesObservable/observer.mjs +1 -2
  591. package/translations/indexMapper.d.ts +1 -0
  592. package/translations/indexMapper.js +25 -2
  593. package/translations/indexMapper.mjs +24 -2
  594. package/translations/mapCollections/aggregatedCollection.js +3 -3
  595. package/translations/mapCollections/aggregatedCollection.mjs +3 -3
  596. package/translations/mapCollections/mapCollection.js +1 -1
  597. package/translations/mapCollections/mapCollection.mjs +1 -1
  598. package/translations/maps/hidingMap.js +5 -3
  599. package/translations/maps/hidingMap.mjs +5 -3
  600. package/translations/maps/indexMap.js +3 -1
  601. package/translations/maps/indexMap.mjs +3 -1
  602. package/translations/maps/indexesSequence.js +6 -4
  603. package/translations/maps/indexesSequence.mjs +6 -4
  604. package/translations/maps/linkedPhysicalIndexToValueMap.js +6 -4
  605. package/translations/maps/linkedPhysicalIndexToValueMap.mjs +6 -4
  606. package/translations/maps/physicalIndexToValueMap.js +6 -4
  607. package/translations/maps/physicalIndexToValueMap.mjs +6 -4
  608. package/translations/maps/trimmingMap.js +5 -3
  609. package/translations/maps/trimmingMap.mjs +5 -3
  610. package/utils/dataStructures/linkedList.js +3 -3
  611. package/utils/dataStructures/linkedList.mjs +3 -3
  612. package/utils/dataStructures/queue.js +1 -1
  613. package/utils/dataStructures/queue.mjs +1 -1
  614. package/utils/dataStructures/stack.js +1 -1
  615. package/utils/dataStructures/stack.mjs +1 -1
  616. package/utils/dataStructures/tree.js +3 -3
  617. package/utils/dataStructures/tree.mjs +3 -3
  618. package/utils/dataStructures/uniqueMap.js +14 -1
  619. package/utils/dataStructures/uniqueMap.mjs +14 -1
  620. package/utils/dataStructures/uniqueSet.js +9 -0
  621. package/utils/dataStructures/uniqueSet.mjs +9 -0
  622. package/utils/ghostTable.js +14 -3
  623. package/utils/ghostTable.mjs +15 -4
  624. package/utils/interval.js +1 -1
  625. package/utils/interval.mjs +1 -1
  626. package/utils/samplesGenerator.js +1 -1
  627. package/utils/samplesGenerator.mjs +1 -1
  628. package/3rdparty/walkontable/src/core.js +0 -309
  629. package/3rdparty/walkontable/src/core.mjs +0 -293
  630. package/3rdparty/walkontable/src/overlay/registerer.js +0 -70
  631. package/3rdparty/walkontable/src/overlay/registerer.mjs +0 -57
  632. package/utils/keyStateObserver.js +0 -121
  633. package/utils/keyStateObserver.mjs +0 -103
@@ -25,8 +25,8 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 11.0.0
29
- * Release date: 17/11/2021 (built at 17/11/2021 10:59:45)
28
+ * Version: 12.0.0
29
+ * Release date: 28/04/2022 (built at 28/04/2022 12:45:25)
30
30
  */
31
31
  /**
32
32
  * Fix for bootstrap styles
@@ -81,10 +81,10 @@
81
81
  .col-lg-1.handsontable, .col-lg-10.handsontable, .col-lg-11.handsontable, .col-lg-12.handsontable,
82
82
  .col-lg-2.handsontable, .col-lg-3.handsontable, .col-lg-4.handsontable, .col-lg-5.handsontable, .col-lg-6.handsontable, .col-lg-7.handsontable, .col-lg-8.handsontable, .col-lg-9.handsontable,
83
83
  .col-md-1.handsontable, .col-md-10.handsontable, .col-md-11.handsontable, .col-md-12.handsontable,
84
- .col-md-2.handsontable, .col-md-3.handsontable, .col-md-4.handsontable, .col-md-5.handsontable, .col-md-6.handsontable, .col-md-7.handsontable, .col-md-8.handsontable, .col-md-9.handsontable
85
- .col-sm-1.handsontable, .col-sm-10.handsontable, .col-sm-11.handsontable, .col-sm-12.handsontable,
86
- .col-sm-2.handsontable, .col-sm-3.handsontable, .col-sm-4.handsontable, .col-sm-5.handsontable, .col-sm-6.handsontable, .col-sm-7.handsontable, .col-sm-8.handsontable, .col-sm-9.handsontable
87
- .col-xs-1.handsontable, .col-xs-10.handsontable, .col-xs-11.handsontable, .col-xs-12.handsontable,
84
+ .col-md-2.handsontable, .col-md-3.handsontable, .col-md-4.handsontable, .col-md-5.handsontable, .col-md-6.handsontable, .col-md-7.handsontable, .col-md-8.handsontable, .col-md-9.handsontable .col-sm-1.handsontable,
85
+ .col-sm-10.handsontable, .col-sm-11.handsontable, .col-sm-12.handsontable,
86
+ .col-sm-2.handsontable, .col-sm-3.handsontable, .col-sm-4.handsontable, .col-sm-5.handsontable, .col-sm-6.handsontable, .col-sm-7.handsontable, .col-sm-8.handsontable, .col-sm-9.handsontable .col-xs-1.handsontable,
87
+ .col-xs-10.handsontable, .col-xs-11.handsontable, .col-xs-12.handsontable,
88
88
  .col-xs-2.handsontable, .col-xs-3.handsontable, .col-xs-4.handsontable, .col-xs-5.handsontable, .col-xs-6.handsontable, .col-xs-7.handsontable, .col-xs-8.handsontable, .col-xs-9.handsontable {
89
89
  padding-left: 0;
90
90
  padding-right: 0;
@@ -93,7 +93,6 @@
93
93
  .handsontable .table-striped > tbody > tr:nth-of-type(even) {
94
94
  background-color: #FFF;
95
95
  }
96
-
97
96
  .handsontable {
98
97
  position: relative;
99
98
  }
@@ -112,7 +111,8 @@
112
111
 
113
112
  .handsontable .wtSpreader {
114
113
  position: relative;
115
- width: 0; /*must be 0, otherwise blank space appears in scroll demo after scrolling max to the right */
114
+ /*must be 0, otherwise blank space appears in scroll demo after scrolling max to the right */
115
+ width: 0;
116
116
  height: auto;
117
117
  }
118
118
 
@@ -143,7 +143,8 @@
143
143
  -moz-user-select: none;
144
144
  -o-user-select: none;
145
145
  -ms-user-select: none;
146
- user-select: none; */ /* no browser supports unprefixed version */
146
+ user-select: none; // no browser supports unprefixed version
147
+ */
147
148
  border-spacing: 0;
148
149
  margin: 0;
149
150
  border-width: 0;
@@ -182,30 +183,67 @@
182
183
  white-space: pre-wrap;
183
184
  }
184
185
 
186
+ [dir=rtl].handsontable th, [dir=rtl].handsontable td {
187
+ border-right-width: 0;
188
+ border-left: 1px solid #ccc;
189
+ }
190
+
185
191
  .handsontable th:last-child {
186
192
  /*Foundation framework fix*/
193
+ border-left: none;
187
194
  border-right: 1px solid #ccc;
188
195
  border-bottom: 1px solid #ccc;
189
196
  }
190
197
 
198
+ [dir=rtl].handsontable th:last-child {
199
+ /*Foundation framework fix*/
200
+ border-right: none;
201
+ border-left: 1px solid #ccc;
202
+ }
203
+
191
204
  .handsontable th:first-child,
192
205
  .handsontable th:nth-child(2),
193
206
  .handsontable td:first-of-type {
194
207
  border-left: 1px solid #ccc;
195
208
  }
196
209
 
210
+ [dir=rtl].handsontable th:first-child, [dir=rtl].handsontable th:nth-child(2), [dir=rtl].handsontable td:first-of-type {
211
+ border-right: 1px solid #ccc;
212
+ }
213
+
214
+ /* It removes double right border from first column header when row headers are disabled */
215
+ .handsontable .ht_clone_top th:nth-child(2) {
216
+ border-left-width: 0;
217
+ border-right: 1px solid #ccc;
218
+ }
219
+
220
+ [dir=rtl].handsontable .ht_clone_top th:nth-child(2) {
221
+ border-right-width: 0;
222
+ border-left: 1px solid #ccc;
223
+ }
224
+
197
225
  .handsontable.htRowHeaders thead tr th:nth-child(2) {
198
226
  border-left: 1px solid #ccc;
199
227
  }
200
228
 
229
+ [dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2) {
230
+ border-right: 1px solid #ccc;
231
+ }
232
+
201
233
  .handsontable tr:first-child th,
202
234
  .handsontable tr:first-child td {
203
235
  border-top: 1px solid #ccc;
204
236
  }
205
237
 
206
- .ht_master:not(.innerBorderLeft):not(.emptyColumns) ~ .handsontable tbody tr th,
207
- .ht_master:not(.innerBorderLeft):not(.emptyColumns) ~ .handsontable:not(.ht_clone_top) thead tr th:first-child {
238
+ .ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable tbody tr th,
239
+ .ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable:not(.ht_clone_top) thead tr th:first-child {
208
240
  border-right-width: 0;
241
+ border-left: 1px solid #ccc;
242
+ }
243
+
244
+ [dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable tbody tr th, [dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable:not(.ht_clone_top) thead tr th:first-child {
245
+ border-left-width: 0;
246
+ border-right: 1px solid #ccc;
209
247
  }
210
248
 
211
249
  /*
@@ -234,6 +272,7 @@ innerBorderBottom - Property controlled by bottom overlay
234
272
  .handsontable th.active {
235
273
  background-color: #ccc;
236
274
  }
275
+
237
276
  .handsontable thead th .relative {
238
277
  padding: 2px 4px;
239
278
  }
@@ -248,6 +287,7 @@ innerBorderBottom - Property controlled by bottom overlay
248
287
  position: absolute;
249
288
  font-size: 0;
250
289
  }
290
+
251
291
  .handsontable .wtBorder.hidden {
252
292
  display: none !important;
253
293
  }
@@ -256,15 +296,16 @@ innerBorderBottom - Property controlled by bottom overlay
256
296
  .handsontable .wtBorder.current {
257
297
  z-index: 10;
258
298
  }
299
+
259
300
  .handsontable .wtBorder.area {
260
301
  z-index: 8;
261
302
  }
303
+
262
304
  .handsontable .wtBorder.fill {
263
305
  z-index: 6;
264
306
  }
265
307
 
266
308
  /* fill handle */
267
-
268
309
  .handsontable .wtBorder.corner {
269
310
  font-size: 0;
270
311
  cursor: crosshair;
@@ -274,11 +315,7 @@ innerBorderBottom - Property controlled by bottom overlay
274
315
  z-index: 100;
275
316
  }
276
317
 
277
- .ht_clone_right {
278
- z-index: 110;
279
- }
280
-
281
- .ht_clone_left {
318
+ .ht_clone_inline_start {
282
319
  z-index: 120;
283
320
  }
284
321
 
@@ -286,11 +323,7 @@ innerBorderBottom - Property controlled by bottom overlay
286
323
  z-index: 130;
287
324
  }
288
325
 
289
- .ht_clone_bottom_right_corner {
290
- z-index: 140;
291
- }
292
-
293
- .ht_clone_bottom_left_corner {
326
+ .ht_clone_bottom_inline_start_corner {
294
327
  z-index: 150;
295
328
  }
296
329
 
@@ -298,25 +331,10 @@ innerBorderBottom - Property controlled by bottom overlay
298
331
  z-index: 160;
299
332
  }
300
333
 
301
- .ht_clone_top_right_corner {
302
- z-index: 170;
303
- }
304
-
305
- .ht_clone_top_left_corner {
334
+ .ht_clone_top_inline_start_corner {
306
335
  z-index: 180;
307
336
  }
308
337
 
309
- /*
310
- Cell borders
311
- */
312
- .handsontable tbody tr th:nth-last-child(2) {
313
- border-right: 1px solid #ccc;
314
- }
315
-
316
- .ht_clone_top_left_corner thead tr th:nth-last-child(2) {
317
- border-right: 1px solid #ccc;
318
- }
319
-
320
338
  .handsontable col.hidden {
321
339
  width: 0 !important;
322
340
  }
@@ -328,7 +346,7 @@ innerBorderBottom - Property controlled by bottom overlay
328
346
  }
329
347
 
330
348
  .ht_master,
331
- .ht_clone_left,
349
+ .ht_clone_inline_start,
332
350
  .ht_clone_top,
333
351
  .ht_clone_bottom {
334
352
  overflow: hidden;
@@ -340,16 +358,16 @@ innerBorderBottom - Property controlled by bottom overlay
340
358
 
341
359
  .handsontable .ht_master thead,
342
360
  .handsontable .ht_master tr th,
343
- .handsontable .ht_clone_left thead {
361
+ .handsontable .ht_clone_inline_start thead {
344
362
  visibility: hidden;
345
363
  }
346
364
 
347
365
  .ht_clone_top .wtHolder,
348
- .ht_clone_left .wtHolder,
366
+ .ht_clone_inline_start .wtHolder,
349
367
  .ht_clone_bottom .wtHolder {
350
368
  overflow: hidden;
351
369
  }
352
-
370
+ @charset "UTF-8";
353
371
  .handsontable {
354
372
  touch-action: manipulation;
355
373
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Helvetica Neue", Arial, sans-serif;
@@ -370,7 +388,8 @@ innerBorderBottom - Property controlled by bottom overlay
370
388
  }
371
389
 
372
390
  .handsontable td.htInvalid {
373
- background-color: #ff4c42 !important; /*gives priority over td.area selection background*/
391
+ /*gives priority over td.area selection background*/
392
+ background-color: #ff4c42 !important;
374
393
  }
375
394
 
376
395
  .handsontable td.htNoWrap {
@@ -392,7 +411,6 @@ innerBorderBottom - Property controlled by bottom overlay
392
411
  }
393
412
 
394
413
  /* plugins */
395
-
396
414
  /* row + column resizer*/
397
415
  .handsontable .manualColumnResizer {
398
416
  position: absolute;
@@ -421,13 +439,23 @@ innerBorderBottom - Property controlled by bottom overlay
421
439
 
422
440
  .handsontable .manualColumnResizerGuide {
423
441
  position: absolute;
424
- right: 0;
442
+ right: unset;
425
443
  top: 0;
426
444
  background-color: #34a9db;
427
445
  display: none;
428
446
  width: 0;
429
447
  border-right: 1px dashed #777;
448
+ border-left: none;
430
449
  margin-left: 5px;
450
+ margin-right: unset;
451
+ }
452
+
453
+ [dir=rtl].handsontable .manualColumnResizerGuide {
454
+ left: unset;
455
+ border-left: 1px dashed #777;
456
+ border-right: none;
457
+ margin-right: 5px;
458
+ margin-left: unset;
431
459
  }
432
460
 
433
461
  .handsontable .manualRowResizerGuide {
@@ -454,18 +482,22 @@ innerBorderBottom - Property controlled by bottom overlay
454
482
  .handsontable .columnSorting.sortAction:hover {
455
483
  text-decoration: underline;
456
484
  cursor: pointer;
457
- }/* Arrow position */
485
+ }
486
+
487
+ /* Arrow position */
458
488
  .handsontable span.colHeader.columnSorting::before {
459
489
  /* Centering start */
460
490
  top: 50%;
461
- margin-top: -6px; /* One extra pixel for purpose of proper positioning of sorting arrow, when `font-size` set to default */
491
+ /* One extra pixel for purpose of proper positioning of sorting arrow, when `font-size` set to default */
492
+ margin-top: -6px;
462
493
  /* Centering end */
463
-
464
- padding-left: 8px; /* For purpose of continuous mouse over experience, when moving between the `span` and the `::before` elements */
494
+ /* For purpose of continuous mouse over experience, when moving between the `span` and the `::before` elements */
495
+ padding-left: 8px;
496
+ padding-right: 0;
465
497
  position: absolute;
466
498
  right: -9px;
467
-
468
- content: '';
499
+ left: unset;
500
+ content: "";
469
501
  height: 10px;
470
502
  width: 5px;
471
503
  background-size: contain;
@@ -473,6 +505,16 @@ innerBorderBottom - Property controlled by bottom overlay
473
505
  background-position-x: right;
474
506
  }
475
507
 
508
+ [dir=rtl].handsontable span.colHeader.columnSorting::before {
509
+ /* Centering end */
510
+ /* For purpose of continuous mouse over experience, when moving between the `span` and the `::before` elements */
511
+ padding-right: 8px;
512
+ padding-left: 0;
513
+ left: -9px;
514
+ right: unset;
515
+ background-position-x: left;
516
+ }
517
+
476
518
  .handsontable span.colHeader.columnSorting.ascending::before {
477
519
  /* arrow up; 20 x 40 px, scaled to 5 x 10 px; base64 size: 0.3kB */
478
520
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFNJREFUeAHtzjkSgCAUBNHPgsoy97+ulGXRqJE5L+xkxoYt2UdsLb5bqFINz+aLuuLn5rIu2RkO3fZpWENimNgiw6iBYRTPMLJjGFxQZ1hxxb/xBI1qC8k39CdKAAAAAElFTkSuQmCC");
@@ -484,7 +526,7 @@ innerBorderBottom - Property controlled by bottom overlay
484
526
  }
485
527
 
486
528
  .htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled)::after {
487
- content: '*';
529
+ content: "*";
488
530
  display: inline-block;
489
531
  position: relative;
490
532
  /* The multi-line header and header with longer text need more padding to not hide arrow,
@@ -511,51 +553,58 @@ innerBorderBottom - Property controlled by bottom overlay
511
553
  .handsontable td.area-5:before,
512
554
  .handsontable td.area-6:before,
513
555
  .handsontable td.area-7:before {
514
- content: '';
556
+ content: "";
515
557
  position: absolute;
516
558
  top: 0;
517
559
  left: 0;
518
560
  right: 0;
519
561
  bottom: 0;
520
- bottom: -100%\9; /* Fix for IE9 to spread the ":before" pseudo element to 100% height of the parent element */
562
+ /* Fix for IE9 to spread the ":before" pseudo element to 100% height of the parent element */
563
+ bottom: -100% \9 ;
521
564
  background: #005eff;
522
565
  }
523
566
 
524
567
  /* Fix for IE10 and IE11 to spread the ":before" pseudo element to 100% height of the parent element */
525
568
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
526
569
  .handsontable td.area:before,
527
- .handsontable td.area-1:before,
528
- .handsontable td.area-2:before,
529
- .handsontable td.area-3:before,
530
- .handsontable td.area-4:before,
531
- .handsontable td.area-5:before,
532
- .handsontable td.area-6:before,
533
- .handsontable td.area-7:before {
570
+ .handsontable td.area-1:before,
571
+ .handsontable td.area-2:before,
572
+ .handsontable td.area-3:before,
573
+ .handsontable td.area-4:before,
574
+ .handsontable td.area-5:before,
575
+ .handsontable td.area-6:before,
576
+ .handsontable td.area-7:before {
534
577
  bottom: -100%;
535
578
  }
536
579
  }
537
-
538
580
  .handsontable td.area:before {
539
581
  opacity: 0.1;
540
582
  }
583
+
541
584
  .handsontable td.area-1:before {
542
585
  opacity: 0.2;
543
586
  }
587
+
544
588
  .handsontable td.area-2:before {
545
589
  opacity: 0.27;
546
590
  }
591
+
547
592
  .handsontable td.area-3:before {
548
593
  opacity: 0.35;
549
594
  }
595
+
550
596
  .handsontable td.area-4:before {
551
597
  opacity: 0.41;
552
598
  }
599
+
553
600
  .handsontable td.area-5:before {
554
601
  opacity: 0.47;
555
602
  }
603
+
556
604
  .handsontable td.area-6:before {
557
605
  opacity: 0.54;
558
606
  }
607
+
559
608
  .handsontable td.area-7:before {
560
609
  opacity: 0.58;
561
610
  }
@@ -612,7 +661,6 @@ innerBorderBottom - Property controlled by bottom overlay
612
661
  /*
613
662
  TextRenderer readOnly cell
614
663
  */
615
-
616
664
  .handsontable .htDimmed {
617
665
  color: #777;
618
666
  }
@@ -621,47 +669,63 @@ TextRenderer readOnly cell
621
669
  position: relative;
622
670
  }
623
671
 
624
- .handsontable .htSubmenu :after{
625
- content: '\25B6';
672
+ .handsontable .htSubmenu :after {
673
+ content: "▶";
626
674
  color: #777;
627
675
  position: absolute;
628
676
  right: 5px;
629
677
  font-size: 9px;
630
678
  }
631
679
 
680
+ [dir=rtl].handsontable .htSubmenu :after {
681
+ content: "";
682
+ }
683
+
684
+ [dir=rtl].handsontable .htSubmenu :before {
685
+ content: "◀";
686
+ color: #777;
687
+ position: absolute;
688
+ left: 5px;
689
+ font-size: 9px;
690
+ }
632
691
 
633
692
  /*
634
693
  TextRenderer horizontal alignment
635
694
  */
636
- .handsontable .htLeft{
695
+ .handsontable .htLeft {
637
696
  text-align: left;
638
697
  }
639
- .handsontable .htCenter{
698
+
699
+ .handsontable .htCenter {
640
700
  text-align: center;
641
701
  }
642
- .handsontable .htRight{
702
+
703
+ .handsontable .htRight {
643
704
  text-align: right;
644
705
  }
645
- .handsontable .htJustify{
706
+
707
+ .handsontable .htJustify {
646
708
  text-align: justify;
647
709
  }
710
+
648
711
  /*
649
712
  TextRenderer vertical alignment
650
713
  */
651
- .handsontable .htTop{
714
+ .handsontable .htTop {
652
715
  vertical-align: top;
653
716
  }
654
- .handsontable .htMiddle{
717
+
718
+ .handsontable .htMiddle {
655
719
  vertical-align: middle;
656
720
  }
657
- .handsontable .htBottom{
721
+
722
+ .handsontable .htBottom {
658
723
  vertical-align: bottom;
659
724
  }
660
725
 
661
726
  /*
662
727
  TextRenderer placeholder value
663
728
  */
664
-
665
729
  .handsontable .htPlaceholder {
666
730
  color: #999;
667
731
  }
@@ -669,7 +733,6 @@ TextRenderer placeholder value
669
733
  /**
670
734
  * Handsontable listbox theme
671
735
  */
672
-
673
736
  .handsontable.listbox {
674
737
  margin: 0;
675
738
  }
@@ -685,7 +748,7 @@ TextRenderer placeholder value
685
748
  .handsontable.listbox tr:last-child th,
686
749
  .handsontable.listbox tr:first-child td,
687
750
  .handsontable.listbox td {
688
- border-color: transparent;
751
+ border-color: transparent !important;
689
752
  }
690
753
 
691
754
  .handsontable.listbox th,
@@ -722,10 +785,11 @@ TextRenderer placeholder value
722
785
  color: #583707;
723
786
  }
724
787
 
725
- .collapsibleIndicator {
788
+ .handsontable .collapsibleIndicator {
726
789
  position: absolute;
727
790
  top: 50%;
728
- transform: translate(0% ,-50%);
791
+ transform: translate(0%, -50%);
792
+ left: unset;
729
793
  right: 5px;
730
794
  border: 1px solid #A6A6A6;
731
795
  line-height: 8px;
@@ -735,19 +799,22 @@ TextRenderer placeholder value
735
799
  width: 10px;
736
800
  height: 10px;
737
801
  cursor: pointer;
738
- -webkit-box-shadow: 0 0 0 6px rgba(238,238,238,1);
739
- -moz-box-shadow: 0 0 0 6px rgba(238,238,238,1);
740
- box-shadow: 0 0 0 6px rgba(238,238,238,1);
802
+ -webkit-box-shadow: 0 0 0 6px rgb(238, 238, 238);
803
+ -moz-box-shadow: 0 0 0 6px rgb(238, 238, 238);
804
+ box-shadow: 0 0 0 6px rgb(238, 238, 238);
741
805
  background: #eee;
742
806
  text-align: center;
743
807
  }
744
808
 
809
+ [dir=rtl].handsontable .collapsibleIndicator {
810
+ right: unset;
811
+ left: 5px;
812
+ }
745
813
  /*
746
814
 
747
815
  Handsontable Mobile Text Editor stylesheet
748
816
 
749
817
  */
750
-
751
818
  .handsontable.mobile,
752
819
  .handsontable.mobile .wtHolder {
753
820
  -webkit-touch-callout: none;
@@ -756,7 +823,7 @@ TextRenderer placeholder value
756
823
  -moz-user-select: none;
757
824
  -ms-user-select: none;
758
825
  user-select: none;
759
- -webkit-tap-highlight-color: rgba(0,0,0,0);
826
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
760
827
  -webkit-overflow-scrolling: touch;
761
828
  }
762
829
 
@@ -767,16 +834,16 @@ TextRenderer placeholder value
767
834
  -webkit-appearance: none;
768
835
  }
769
836
 
770
- .topLeftSelectionHandle:not(.ht_master .topLeftSelectionHandle),
771
- .topLeftSelectionHandle-HitArea:not(.ht_master .topLeftSelectionHandle-HitArea) {
837
+ .topSelectionHandle:not(.ht_master .topSelectionHandle),
838
+ .topSelectionHandle-HitArea:not(.ht_master .topSelectionHandle-HitArea) {
772
839
  z-index: 9999;
773
840
  }
774
841
 
775
842
  /* Initial left/top coordinates - overwritten when actual position is set */
776
- .topLeftSelectionHandle,
777
- .topLeftSelectionHandle-HitArea,
778
- .bottomRightSelectionHandle,
779
- .bottomRightSelectionHandle-HitArea {
843
+ .topSelectionHandle,
844
+ .topSelectionHandle-HitArea,
845
+ .bottomSelectionHandle,
846
+ .bottomSelectionHandle-HitArea {
780
847
  left: -10000px;
781
848
  top: -10000px;
782
849
  }
@@ -794,23 +861,20 @@ TextRenderer placeholder value
794
861
  animation-fill-mode: forwards;
795
862
  -webkit-animation-fill-mode: forwards;
796
863
  }
797
-
798
864
  @charset "UTF-8";
799
-
800
865
  /*!
801
866
  * Pikaday
802
867
  * Copyright © 2014 David Bushell | BSD & MIT license | https://dbushell.com/
803
868
  */
804
-
805
869
  .pika-single {
806
- z-index: 9999;
807
- display: block;
808
- position: relative;
809
- color: #333;
810
- background: #fff;
811
- border: 1px solid #ccc;
812
- border-bottom-color: #bbb;
813
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
870
+ z-index: 9999;
871
+ display: block;
872
+ position: relative;
873
+ color: #333;
874
+ background: #fff;
875
+ border: 1px solid #ccc;
876
+ border-bottom-color: #bbb;
877
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
814
878
  }
815
879
 
816
880
  /*
@@ -819,226 +883,230 @@ http://nicolasgallagher.com/micro-clearfix-hack/
819
883
  */
820
884
  .pika-single:before,
821
885
  .pika-single:after {
822
- content: " ";
823
- display: table;
886
+ content: " ";
887
+ display: table;
888
+ }
889
+
890
+ .pika-single:after {
891
+ clear: both;
892
+ }
893
+
894
+ .pika-single {
895
+ *zoom: 1;
824
896
  }
825
- .pika-single:after { clear: both }
826
- .pika-single { *zoom: 1 }
827
897
 
828
898
  .pika-single.is-hidden {
829
- display: none;
899
+ display: none;
830
900
  }
831
901
 
832
902
  .pika-single.is-bound {
833
- position: absolute;
834
- box-shadow: 0 5px 15px -5px rgba(0,0,0,.5);
903
+ position: absolute;
904
+ box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.5);
835
905
  }
836
906
 
837
907
  .pika-lendar {
838
- float: left;
839
- width: 240px;
840
- margin: 8px;
908
+ float: left;
909
+ width: 240px;
910
+ margin: 8px;
841
911
  }
842
912
 
843
913
  .pika-title {
844
- position: relative;
845
- text-align: center;
914
+ position: relative;
915
+ text-align: center;
846
916
  }
847
917
 
848
918
  .pika-label {
849
- display: inline-block;
850
- *display: inline;
851
- position: relative;
852
- z-index: 9999;
853
- overflow: hidden;
854
- margin: 0;
855
- padding: 5px 3px;
856
- font-size: 14px;
857
- line-height: 20px;
858
- font-weight: bold;
859
- background-color: #fff;
919
+ display: inline-block;
920
+ *display: inline;
921
+ position: relative;
922
+ z-index: 9999;
923
+ overflow: hidden;
924
+ margin: 0;
925
+ padding: 5px 3px;
926
+ font-size: 14px;
927
+ line-height: 20px;
928
+ font-weight: bold;
929
+ background-color: #fff;
860
930
  }
931
+
861
932
  .pika-title select {
862
- cursor: pointer;
863
- position: absolute;
864
- z-index: 9998;
865
- margin: 0;
866
- left: 0;
867
- top: 5px;
868
- filter: alpha(opacity=0);
869
- opacity: 0;
933
+ cursor: pointer;
934
+ position: absolute;
935
+ z-index: 9998;
936
+ margin: 0;
937
+ left: 0;
938
+ top: 5px;
939
+ filter: alpha(opacity=0);
940
+ opacity: 0;
870
941
  }
871
942
 
872
943
  .pika-prev,
873
944
  .pika-next {
874
- display: block;
875
- cursor: pointer;
876
- position: relative;
877
- outline: none;
878
- border: 0;
879
- padding: 0;
880
- width: 20px;
881
- height: 30px;
882
- /* hide text using text-indent trick, using width value (it's enough) */
883
- text-indent: 20px;
884
- white-space: nowrap;
885
- overflow: hidden;
886
- background-color: transparent;
887
- background-position: center center;
888
- background-repeat: no-repeat;
889
- background-size: 75% 75%;
890
- opacity: .5;
891
- *position: absolute;
892
- *top: 0;
945
+ display: block;
946
+ cursor: pointer;
947
+ position: relative;
948
+ outline: none;
949
+ border: 0;
950
+ padding: 0;
951
+ width: 20px;
952
+ height: 30px;
953
+ /* hide text using text-indent trick, using width value (it's enough) */
954
+ text-indent: 20px;
955
+ white-space: nowrap;
956
+ overflow: hidden;
957
+ background-color: transparent;
958
+ background-position: center center;
959
+ background-repeat: no-repeat;
960
+ background-size: 75% 75%;
961
+ opacity: 0.5;
962
+ *position: absolute;
963
+ *top: 0;
893
964
  }
894
965
 
895
966
  .pika-prev:hover,
896
967
  .pika-next:hover {
897
- opacity: 1;
968
+ opacity: 1;
898
969
  }
899
970
 
900
971
  .pika-prev,
901
972
  .is-rtl .pika-next {
902
- float: left;
903
- background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==');
904
- *left: 0;
973
+ float: left;
974
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==");
975
+ *left: 0;
905
976
  }
906
977
 
907
978
  .pika-next,
908
979
  .is-rtl .pika-prev {
909
- float: right;
910
- background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=');
911
- *right: 0;
980
+ float: right;
981
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=");
982
+ *right: 0;
912
983
  }
913
984
 
914
985
  .pika-prev.is-disabled,
915
986
  .pika-next.is-disabled {
916
- cursor: default;
917
- opacity: .2;
987
+ cursor: default;
988
+ opacity: 0.2;
918
989
  }
919
990
 
920
991
  .pika-select {
921
- display: inline-block;
922
- *display: inline;
992
+ display: inline-block;
993
+ *display: inline;
923
994
  }
924
995
 
925
996
  .pika-table {
926
- width: 100%;
927
- border-collapse: collapse;
928
- border-spacing: 0;
929
- border: 0;
997
+ width: 100%;
998
+ border-collapse: collapse;
999
+ border-spacing: 0;
1000
+ border: 0;
930
1001
  }
931
1002
 
932
1003
  .pika-table th,
933
1004
  .pika-table td {
934
- width: 14.285714285714286%;
935
- padding: 0;
1005
+ width: 14.2857142857%;
1006
+ padding: 0;
936
1007
  }
937
1008
 
938
1009
  .pika-table th {
939
- color: #999;
940
- font-size: 12px;
941
- line-height: 25px;
942
- font-weight: bold;
943
- text-align: center;
1010
+ color: #999;
1011
+ font-size: 12px;
1012
+ line-height: 25px;
1013
+ font-weight: bold;
1014
+ text-align: center;
944
1015
  }
945
1016
 
946
1017
  .pika-button {
947
- cursor: pointer;
948
- display: block;
949
- box-sizing: border-box;
950
- -moz-box-sizing: border-box;
951
- outline: none;
952
- border: 0;
953
- margin: 0;
954
- width: 100%;
955
- padding: 5px;
956
- color: #666;
957
- font-size: 12px;
958
- line-height: 15px;
959
- text-align: right;
960
- background: #f5f5f5;
1018
+ cursor: pointer;
1019
+ display: block;
1020
+ box-sizing: border-box;
1021
+ -moz-box-sizing: border-box;
1022
+ outline: none;
1023
+ border: 0;
1024
+ margin: 0;
1025
+ width: 100%;
1026
+ padding: 5px;
1027
+ color: #666;
1028
+ font-size: 12px;
1029
+ line-height: 15px;
1030
+ text-align: right;
1031
+ background: #f5f5f5;
961
1032
  }
962
1033
 
963
1034
  .pika-week {
964
- font-size: 11px;
965
- color: #999;
1035
+ font-size: 11px;
1036
+ color: #999;
966
1037
  }
967
1038
 
968
1039
  .is-today .pika-button {
969
- color: #33aaff;
970
- font-weight: bold;
1040
+ color: #33aaff;
1041
+ font-weight: bold;
971
1042
  }
972
1043
 
973
1044
  .is-selected .pika-button,
974
1045
  .has-event .pika-button {
975
- color: #fff;
976
- font-weight: bold;
977
- background: #33aaff;
978
- box-shadow: inset 0 1px 3px #178fe5;
979
- border-radius: 3px;
1046
+ color: #fff;
1047
+ font-weight: bold;
1048
+ background: #33aaff;
1049
+ box-shadow: inset 0 1px 3px #178fe5;
1050
+ border-radius: 3px;
980
1051
  }
981
1052
 
982
1053
  .has-event .pika-button {
983
- background: #005da9;
984
- box-shadow: inset 0 1px 3px #0076c9;
1054
+ background: #005da9;
1055
+ box-shadow: inset 0 1px 3px #0076c9;
985
1056
  }
986
1057
 
987
1058
  .is-disabled .pika-button,
988
1059
  .is-inrange .pika-button {
989
- background: #D5E9F7;
1060
+ background: #D5E9F7;
990
1061
  }
991
1062
 
992
1063
  .is-startrange .pika-button {
993
- color: #fff;
994
- background: #6CB31D;
995
- box-shadow: none;
996
- border-radius: 3px;
1064
+ color: #fff;
1065
+ background: #6CB31D;
1066
+ box-shadow: none;
1067
+ border-radius: 3px;
997
1068
  }
998
1069
 
999
1070
  .is-endrange .pika-button {
1000
- color: #fff;
1001
- background: #33aaff;
1002
- box-shadow: none;
1003
- border-radius: 3px;
1071
+ color: #fff;
1072
+ background: #33aaff;
1073
+ box-shadow: none;
1074
+ border-radius: 3px;
1004
1075
  }
1005
1076
 
1006
1077
  .is-disabled .pika-button {
1007
- pointer-events: none;
1008
- cursor: default;
1009
- color: #999;
1010
- opacity: .3;
1078
+ pointer-events: none;
1079
+ cursor: default;
1080
+ color: #999;
1081
+ opacity: 0.3;
1011
1082
  }
1012
1083
 
1013
1084
  .is-outside-current-month .pika-button {
1014
- color: #999;
1015
- opacity: .3;
1085
+ color: #999;
1086
+ opacity: 0.3;
1016
1087
  }
1017
1088
 
1018
1089
  .is-selection-disabled {
1019
- pointer-events: none;
1020
- cursor: default;
1090
+ pointer-events: none;
1091
+ cursor: default;
1021
1092
  }
1022
1093
 
1023
1094
  .pika-button:hover,
1024
1095
  .pika-row.pick-whole-week:hover .pika-button {
1025
- color: #fff;
1026
- background: #ff8000;
1027
- box-shadow: none;
1028
- border-radius: 3px;
1096
+ color: #fff;
1097
+ background: #ff8000;
1098
+ box-shadow: none;
1099
+ border-radius: 3px;
1029
1100
  }
1030
1101
 
1031
1102
  /* styling for abbr */
1032
1103
  .pika-table abbr {
1033
- border-bottom: none;
1034
- cursor: help;
1104
+ border-bottom: none;
1105
+ cursor: help;
1035
1106
  }
1036
-
1037
-
1038
1107
  /*
1039
1108
  AutocompleteRenderer down arrow
1040
1109
  */
1041
-
1042
1110
  .handsontable .htAutocompleteArrow {
1043
1111
  float: right;
1044
1112
  font-size: 10px;
@@ -1048,6 +1116,10 @@ AutocompleteRenderer down arrow
1048
1116
  text-align: center;
1049
1117
  }
1050
1118
 
1119
+ [dir=rtl].handsontable .htAutocompleteArrow {
1120
+ float: left;
1121
+ }
1122
+
1051
1123
  .handsontable td .htAutocompleteArrow:hover {
1052
1124
  color: #777;
1053
1125
  }
@@ -1055,16 +1127,17 @@ AutocompleteRenderer down arrow
1055
1127
  .handsontable td.area .htAutocompleteArrow {
1056
1128
  color: #d3d3d3;
1057
1129
  }
1058
-
1059
1130
  /*
1060
1131
  CheckboxRenderer
1061
1132
  */
1062
1133
  .handsontable .htCheckboxRendererInput {
1063
1134
  display: inline-block;
1064
1135
  }
1136
+
1065
1137
  .handsontable .htCheckboxRendererInput.noValue {
1066
1138
  opacity: 0.5;
1067
1139
  }
1140
+
1068
1141
  .handsontable .htCheckboxRendererLabel {
1069
1142
  font-size: inherit;
1070
1143
  vertical-align: middle;
@@ -1075,33 +1148,42 @@ CheckboxRenderer
1075
1148
  .handsontable .htCheckboxRendererLabel.fullWidth {
1076
1149
  width: 100%;
1077
1150
  }
1078
-
1079
- .htCommentCell {
1151
+ .handsontable .htCommentCell {
1080
1152
  position: relative;
1081
1153
  }
1082
1154
 
1083
- .htCommentCell:after {
1084
- content: '';
1155
+ .handsontable .htCommentCell:after {
1156
+ content: "";
1085
1157
  position: absolute;
1086
1158
  top: 0;
1087
1159
  right: 0;
1160
+ left: unset;
1088
1161
  border-left: 6px solid transparent;
1162
+ border-right: none;
1089
1163
  border-top: 6px solid black;
1090
1164
  }
1091
1165
 
1092
- .htComments {
1166
+ [dir=rtl].handsontable .htCommentCell:after {
1167
+ left: 0;
1168
+ right: unset;
1169
+ border-right: 6px solid transparent;
1170
+ border-left: none;
1171
+ }
1172
+
1173
+ .htCommentsContainer .htComments {
1093
1174
  display: none;
1094
1175
  z-index: 1059;
1095
1176
  position: absolute;
1096
1177
  }
1097
1178
 
1098
- .htCommentTextArea {
1179
+ .htCommentsContainer .htCommentTextArea {
1099
1180
  box-shadow: rgba(0, 0, 0, 0.117647) 0 1px 3px, rgba(0, 0, 0, 0.239216) 0 1px 2px;
1100
1181
  -webkit-box-sizing: border-box;
1101
1182
  -moz-box-sizing: border-box;
1102
1183
  box-sizing: border-box;
1103
1184
  border: none;
1104
1185
  border-left: 3px solid #ccc;
1186
+ border-right: none;
1105
1187
  background-color: #fff;
1106
1188
  width: 215px;
1107
1189
  height: 90px;
@@ -1111,33 +1193,53 @@ CheckboxRenderer
1111
1193
  -webkit-appearance: none;
1112
1194
  }
1113
1195
 
1114
- .htCommentTextArea:focus {
1196
+ [dir=rtl].htCommentsContainer .htCommentTextArea {
1197
+ border-right: 3px solid #ccc;
1198
+ border-left: none;
1199
+ }
1200
+
1201
+ .htCommentsContainer .htCommentTextArea:focus {
1115
1202
  box-shadow: rgba(0, 0, 0, 0.117647) 0 1px 3px, rgba(0, 0, 0, 0.239216) 0 1px 2px, inset 0 0 0 1px #5292f7;
1116
1203
  border-left: 3px solid #5292f7;
1204
+ border-right: none;
1117
1205
  }
1118
1206
 
1207
+ [dir=rtl].htCommentsContainer .htCommentTextArea:focus {
1208
+ border-right: 3px solid #5292f7;
1209
+ border-left: none;
1210
+ }
1119
1211
  /*!
1120
1212
  * Handsontable ContextMenu
1121
1213
  */
1122
-
1123
1214
  .htContextMenu:not(.htGhostTable) {
1124
1215
  display: none;
1125
1216
  position: absolute;
1126
- z-index: 1060; /* needs to be higher than 1050 - z-index for Twitter Bootstrap modal (#1569) */
1217
+ /* needs to be higher than 1050 - z-index for Twitter Bootstrap modal (#1569) */
1218
+ z-index: 1060;
1127
1219
  }
1128
1220
 
1129
1221
  .htContextMenu .ht_clone_top,
1130
- .htContextMenu .ht_clone_left,
1131
- .htContextMenu .ht_clone_corner {
1222
+ .htContextMenu .ht_clone_bottom,
1223
+ .htContextMenu .ht_clone_inline_start,
1224
+ .htContextMenu .ht_clone_top_inline_start_corner,
1225
+ .htContextMenu .ht_clone_bottom_inline_start_corner {
1132
1226
  display: none;
1133
1227
  }
1134
1228
 
1135
1229
  .htContextMenu .ht_master table.htCore {
1136
- border: 1px solid #ccc;
1230
+ border-color: #ccc;
1231
+ border-style: solid;
1232
+ border-top-width: 1px;
1137
1233
  border-bottom-width: 2px;
1234
+ border-left-width: 1px;
1138
1235
  border-right-width: 2px;
1139
1236
  }
1140
1237
 
1238
+ [dir=rtl].htContextMenu .ht_master table.htCore {
1239
+ border-right-width: 1px;
1240
+ border-left-width: 2px;
1241
+ }
1242
+
1141
1243
  .htContextMenu .wtBorder {
1142
1244
  visibility: hidden;
1143
1245
  }
@@ -1153,7 +1255,15 @@ CheckboxRenderer
1153
1255
  }
1154
1256
 
1155
1257
  .htContextMenu table tbody tr td:first-child {
1156
- border: 0;
1258
+ border-top-width: 0;
1259
+ border-bottom-width: 0;
1260
+ border-left-width: 0;
1261
+ border-right-width: 0;
1262
+ }
1263
+
1264
+ [dir=rtl].htContextMenu table tbody tr td:first-child {
1265
+ border-right-width: 0;
1266
+ border-left-width: 0;
1157
1267
  }
1158
1268
 
1159
1269
  .htContextMenu table tbody tr td.htDimmed {
@@ -1202,7 +1312,6 @@ CheckboxRenderer
1202
1312
  .htContextMenu .ht_master .wtHolder {
1203
1313
  overflow: hidden;
1204
1314
  }
1205
-
1206
1315
  textarea.HandsontableCopyPaste {
1207
1316
  position: fixed !important;
1208
1317
  top: 0 !important;
@@ -1211,7 +1320,7 @@ textarea.HandsontableCopyPaste {
1211
1320
  opacity: 0;
1212
1321
  outline: 0 none !important;
1213
1322
  }
1214
-
1323
+ @charset "UTF-8";
1215
1324
  /*!
1216
1325
  * Handsontable DropdownMenu
1217
1326
  */
@@ -1226,8 +1335,13 @@ textarea.HandsontableCopyPaste {
1226
1335
  margin: 3px 1px 0 5px;
1227
1336
  float: right;
1228
1337
  }
1338
+
1339
+ [dir=rtl].handsontable .changeType {
1340
+ float: left;
1341
+ }
1342
+
1229
1343
  .handsontable .changeType:before {
1230
- content: '\25BC\ ';
1344
+ content: "▼ ";
1231
1345
  }
1232
1346
 
1233
1347
  .handsontable .changeType:hover {
@@ -1239,21 +1353,32 @@ textarea.HandsontableCopyPaste {
1239
1353
  .htDropdownMenu:not(.htGhostTable) {
1240
1354
  display: none;
1241
1355
  position: absolute;
1242
- z-index: 1060; /* needs to be higher than 1050 - z-index for Twitter Bootstrap modal (#1569) */
1356
+ /* needs to be higher than 1050 - z-index for Twitter Bootstrap modal (#1569) */
1357
+ z-index: 1060;
1243
1358
  }
1244
1359
 
1245
1360
  .htDropdownMenu .ht_clone_top,
1246
- .htDropdownMenu .ht_clone_left,
1247
- .htDropdownMenu .ht_clone_corner {
1361
+ .htDropdownMenu .ht_clone_bottom,
1362
+ .htDropdownMenu .ht_clone_inline_start,
1363
+ .htDropdownMenu .ht_clone_top_inline_start_corner,
1364
+ .htDropdownMenu .ht_clone_bottom_inline_start_corner {
1248
1365
  display: none;
1249
1366
  }
1250
1367
 
1251
1368
  .htDropdownMenu table.htCore {
1252
- border: 1px solid #bbb;
1369
+ border-color: #ccc;
1370
+ border-style: solid;
1371
+ border-top-width: 1px;
1253
1372
  border-bottom-width: 2px;
1373
+ border-left-width: 1px;
1254
1374
  border-right-width: 2px;
1255
1375
  }
1256
1376
 
1377
+ [dir=rtl].htDropdownMenu table.htCore {
1378
+ border-right-width: 1px;
1379
+ border-left-width: 2px;
1380
+ }
1381
+
1257
1382
  .htDropdownMenu .wtBorder {
1258
1383
  visibility: hidden;
1259
1384
  }
@@ -1269,7 +1394,15 @@ textarea.HandsontableCopyPaste {
1269
1394
  }
1270
1395
 
1271
1396
  .htDropdownMenu table tbody tr td:first-child {
1272
- border: 0;
1397
+ border-top-width: 0;
1398
+ border-right-width: 0;
1399
+ border-bottom-width: 0;
1400
+ border-left-width: 0;
1401
+ }
1402
+
1403
+ [dir=rtl].htDropdownMenu table tbody tr td:first-child {
1404
+ border-left-width: 0;
1405
+ border-right-width: 0;
1273
1406
  }
1274
1407
 
1275
1408
  .htDropdownMenu table tbody tr td.htDimmed {
@@ -1317,11 +1450,10 @@ textarea.HandsontableCopyPaste {
1317
1450
  .htDropdownMenu .ht_master .wtHolder {
1318
1451
  overflow: hidden;
1319
1452
  }
1320
-
1453
+ @charset "UTF-8";
1321
1454
  /*!
1322
1455
  * Handsontable Filters
1323
1456
  */
1324
-
1325
1457
  /* Conditions menu */
1326
1458
  .htFiltersConditionsMenu:not(.htGhostTable) {
1327
1459
  display: none;
@@ -1330,7 +1462,7 @@ textarea.HandsontableCopyPaste {
1330
1462
  }
1331
1463
 
1332
1464
  .htFiltersConditionsMenu .ht_clone_top,
1333
- .htFiltersConditionsMenu .ht_clone_left,
1465
+ .htFiltersConditionsMenu .ht_clone_inline_start,
1334
1466
  .htFiltersConditionsMenu .ht_clone_corner {
1335
1467
  display: none;
1336
1468
  }
@@ -1356,7 +1488,15 @@ textarea.HandsontableCopyPaste {
1356
1488
  }
1357
1489
 
1358
1490
  .htFiltersConditionsMenu table tbody tr td:first-child {
1359
- border: 0;
1491
+ border-top-width: 0;
1492
+ border-right-width: 0;
1493
+ border-bottom-width: 0;
1494
+ border-left-width: 0;
1495
+ }
1496
+
1497
+ [dir=rtl].htFiltersConditionsMenu table tbody tr td:first-child {
1498
+ border-left-width: 0;
1499
+ border-right-width: 0;
1360
1500
  }
1361
1501
 
1362
1502
  .htFiltersConditionsMenu table tbody tr td.htDimmed {
@@ -1427,6 +1567,7 @@ textarea.HandsontableCopyPaste {
1427
1567
  .handsontable .htFiltersMenuCondition.border {
1428
1568
  border-bottom: 1px dotted #ccc !important;
1429
1569
  }
1570
+
1430
1571
  .handsontable .htFiltersMenuCondition .htUIInput {
1431
1572
  padding: 0 0 5px 0;
1432
1573
  }
@@ -1435,9 +1576,11 @@ textarea.HandsontableCopyPaste {
1435
1576
  .handsontable .htFiltersMenuValue {
1436
1577
  border-bottom: 1px dotted #ccc !important;
1437
1578
  }
1579
+
1438
1580
  .handsontable .htFiltersMenuValue .htUIMultipleSelectSearch {
1439
1581
  padding: 0;
1440
1582
  }
1583
+
1441
1584
  .handsontable .htFiltersMenuCondition .htUIInput input,
1442
1585
  .handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input {
1443
1586
  font-family: inherit;
@@ -1458,9 +1601,15 @@ textarea.HandsontableCopyPaste {
1458
1601
  }
1459
1602
 
1460
1603
  .handsontable .htUISelectAll {
1604
+ margin-left: 0;
1461
1605
  margin-right: 10px;
1462
1606
  }
1463
1607
 
1608
+ [dir=rtl].handsontable .htUISelectAll {
1609
+ margin-right: 0;
1610
+ margin-left: 10px;
1611
+ }
1612
+
1464
1613
  .handsontable .htUIClearAll, .handsontable .htUISelectAll {
1465
1614
  display: inline-block;
1466
1615
  }
@@ -1473,12 +1622,24 @@ textarea.HandsontableCopyPaste {
1473
1622
  text-align: right;
1474
1623
  }
1475
1624
 
1625
+ [dir=rtl].handsontable .htUISelectionControls {
1626
+ text-align: left;
1627
+ }
1628
+
1476
1629
  .handsontable .htCheckboxRendererInput {
1477
- margin: 0 5px 0 0;
1630
+ margin-top: 0;
1631
+ margin-right: 5px;
1632
+ margin-bottom: 0;
1633
+ margin-left: 0;
1478
1634
  vertical-align: middle;
1479
1635
  height: 1em;
1480
1636
  }
1481
1637
 
1638
+ [dir=rtl].handsontable .htCheckboxRendererInput {
1639
+ margin-left: 5px;
1640
+ margin-right: 0;
1641
+ }
1642
+
1482
1643
  /* UI elements */
1483
1644
  /* Input */
1484
1645
  .handsontable .htUIInput {
@@ -1486,13 +1647,16 @@ textarea.HandsontableCopyPaste {
1486
1647
  position: relative;
1487
1648
  text-align: center;
1488
1649
  }
1650
+
1489
1651
  .handsontable .htUIInput input {
1490
1652
  border-radius: 2px;
1491
1653
  border: 1px solid #d2d1d1;
1492
1654
  }
1655
+
1493
1656
  .handsontable .htUIInput input:focus {
1494
1657
  outline: 0;
1495
1658
  }
1659
+
1496
1660
  .handsontable .htUIInputIcon {
1497
1661
  position: absolute;
1498
1662
  }
@@ -1502,6 +1666,7 @@ textarea.HandsontableCopyPaste {
1502
1666
  cursor: pointer;
1503
1667
  display: inline-block;
1504
1668
  }
1669
+
1505
1670
  .handsontable .htUIInput.htUIButton input {
1506
1671
  background-color: #eee;
1507
1672
  color: #000;
@@ -1512,19 +1677,27 @@ textarea.HandsontableCopyPaste {
1512
1677
  height: 19px;
1513
1678
  min-width: 64px;
1514
1679
  }
1680
+
1515
1681
  .handsontable .htUIInput.htUIButton input:hover {
1516
1682
  border-color: #b9b9b9;
1517
1683
  }
1518
1684
 
1519
1685
  .handsontable .htUIInput.htUIButtonOK {
1686
+ margin-left: 0;
1520
1687
  margin-right: 10px;
1521
1688
  }
1522
1689
 
1690
+ [dir=rtl].handsontable .htUIInput.htUIButtonOK {
1691
+ margin-right: 0;
1692
+ margin-left: 10px;
1693
+ }
1694
+
1523
1695
  .handsontable .htUIInput.htUIButtonOK input {
1524
1696
  background-color: #0f9d58;
1525
1697
  border-color: #18804e;
1526
1698
  color: #fff;
1527
1699
  }
1700
+
1528
1701
  .handsontable .htUIInput.htUIButtonOK input:hover {
1529
1702
  border-color: #1a6f46;
1530
1703
  }
@@ -1535,6 +1708,7 @@ textarea.HandsontableCopyPaste {
1535
1708
  margin-bottom: 7px;
1536
1709
  position: relative;
1537
1710
  }
1711
+
1538
1712
  .handsontable .htUISelectCaption {
1539
1713
  background-color: #e8e8e8;
1540
1714
  border-radius: 2px;
@@ -1547,19 +1721,22 @@ textarea.HandsontableCopyPaste {
1547
1721
  white-space: nowrap;
1548
1722
  overflow: hidden;
1549
1723
  }
1724
+
1550
1725
  .handsontable .htUISelectCaption:hover {
1551
1726
  background-color: #e8e8e8;
1552
1727
  border: 1px solid #b9b9b9;
1553
1728
  }
1729
+
1554
1730
  .handsontable .htUISelectDropdown:after {
1555
- content: '\25B2';
1731
+ content: "▲";
1556
1732
  font-size: 7px;
1557
1733
  position: absolute;
1558
1734
  right: 10px;
1559
1735
  top: 0;
1560
1736
  }
1737
+
1561
1738
  .handsontable .htUISelectDropdown:before {
1562
- content: '\25BC';
1739
+ content: "▼";
1563
1740
  font-size: 7px;
1564
1741
  position: absolute;
1565
1742
  right: 10px;
@@ -1570,6 +1747,7 @@ textarea.HandsontableCopyPaste {
1570
1747
  .handsontable .htUIMultipleSelect .handsontable .htCore {
1571
1748
  border: none;
1572
1749
  }
1750
+
1573
1751
  .handsontable .htUIMultipleSelect .handsontable .htCore td:hover {
1574
1752
  background-color: #F5F5F5;
1575
1753
  }
@@ -1582,18 +1760,30 @@ textarea.HandsontableCopyPaste {
1582
1760
 
1583
1761
  .handsontable .htUIRadio {
1584
1762
  display: inline-block;
1763
+ margin-left: 0;
1585
1764
  margin-right: 5px;
1586
1765
  height: 100%;
1587
1766
  }
1588
1767
 
1768
+ [dir=rtl].handsontable .htUIRadio {
1769
+ margin-right: 0;
1770
+ margin-left: 5px;
1771
+ }
1772
+
1589
1773
  .handsontable .htUIRadio:last-child {
1590
1774
  margin-right: 0;
1591
1775
  }
1592
1776
 
1593
1777
  .handsontable .htUIRadio > input[type=radio] {
1778
+ margin-left: 0;
1594
1779
  margin-right: 0.5ex;
1595
1780
  }
1596
1781
 
1782
+ [dir=rtl].handsontable .htUIRadio > input[type=radio] {
1783
+ margin-right: 0;
1784
+ margin-left: 0.5ex;
1785
+ }
1786
+
1597
1787
  .handsontable .htUIRadio label {
1598
1788
  vertical-align: middle;
1599
1789
  }
@@ -1601,7 +1791,7 @@ textarea.HandsontableCopyPaste {
1601
1791
  .handsontable .htFiltersMenuOperators {
1602
1792
  padding-bottom: 5px;
1603
1793
  }
1604
-
1794
+ @charset "UTF-8";
1605
1795
  /*
1606
1796
  * Handsontable HiddenColumns
1607
1797
  */
@@ -1621,15 +1811,33 @@ textarea.HandsontableCopyPaste {
1621
1811
  .handsontable th.afterHiddenColumn {
1622
1812
  position: relative;
1623
1813
  }
1814
+
1624
1815
  .handsontable th.beforeHiddenColumn::after {
1625
1816
  right: 1px;
1626
- content: '\25C0';
1817
+ content: "◀";
1818
+ /* left arrow */
1627
1819
  }
1820
+
1821
+ [dir=rtl].handsontable th.beforeHiddenColumn::after {
1822
+ right: initial;
1823
+ left: 1px;
1824
+ content: "▶";
1825
+ /* right arrow */
1826
+ }
1827
+
1628
1828
  .handsontable th.afterHiddenColumn::before {
1629
1829
  left: 1px;
1630
- content: '\25B6';
1830
+ content: "▶";
1831
+ /* right arrow */
1631
1832
  }
1632
1833
 
1834
+ [dir=rtl].handsontable th.afterHiddenColumn::before {
1835
+ right: 1px;
1836
+ left: initial;
1837
+ content: "◀";
1838
+ /* left arrow */
1839
+ }
1840
+ @charset "UTF-8";
1633
1841
  /*!
1634
1842
  * Handsontable HiddenRows
1635
1843
  */
@@ -1648,37 +1856,39 @@ textarea.HandsontableCopyPaste {
1648
1856
  }
1649
1857
 
1650
1858
  .handsontable th.beforeHiddenRow::before {
1651
- content: '\25B2';
1859
+ content: "▲";
1652
1860
  bottom: 2px;
1653
1861
  }
1654
1862
 
1655
1863
  .handsontable th.afterHiddenRow::after {
1656
- content: '\25BC';
1864
+ content: "▼";
1657
1865
  top: 2px;
1658
1866
  }
1867
+
1659
1868
  .handsontable.ht__selection--rows tbody th.beforeHiddenRow.ht__highlight:before,
1660
1869
  .handsontable.ht__selection--rows tbody th.afterHiddenRow.ht__highlight:after {
1661
1870
  color: #eee;
1662
1871
  }
1872
+
1663
1873
  .handsontable td.afterHiddenRow.firstVisibleRow,
1664
1874
  .handsontable th.afterHiddenRow.firstVisibleRow {
1665
1875
  border-top: 1px solid #CCC;
1666
1876
  }
1667
-
1668
- .htRowHeaders .ht_master.innerBorderLeft ~ .ht_clone_top_left_corner th:nth-child(2),
1669
- .htRowHeaders .ht_master.innerBorderLeft ~ .ht_clone_left td:first-of-type {
1877
+ .htRowHeaders .ht_master.innerBorderInlineStart ~ .ht_clone_top_inline_start_corner th:nth-child(2),
1878
+ .htRowHeaders .ht_master.innerBorderInlineStart ~ .ht_clone_inline_start td:first-of-type {
1670
1879
  border-left: 0 none;
1671
1880
  }
1672
-
1673
1881
  .handsontable .wtHider {
1674
1882
  position: relative;
1675
1883
  }
1884
+
1676
1885
  .handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight {
1677
1886
  cursor: move;
1678
1887
  cursor: -moz-grab;
1679
1888
  cursor: -webkit-grab;
1680
1889
  cursor: grab;
1681
1890
  }
1891
+
1682
1892
  .handsontable.ht__manualColumnMove.on-moving--columns,
1683
1893
  .handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight {
1684
1894
  cursor: move;
@@ -1686,22 +1896,27 @@ textarea.HandsontableCopyPaste {
1686
1896
  cursor: -webkit-grabbing;
1687
1897
  cursor: grabbing;
1688
1898
  }
1899
+
1689
1900
  .handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer {
1690
1901
  display: none;
1691
1902
  }
1903
+
1692
1904
  .handsontable .ht__manualColumnMove--guideline,
1693
1905
  .handsontable .ht__manualColumnMove--backlight {
1694
1906
  position: absolute;
1695
1907
  height: 100%;
1696
1908
  display: none;
1697
1909
  }
1910
+
1698
1911
  .handsontable .ht__manualColumnMove--guideline {
1699
1912
  background: #757575;
1700
1913
  width: 2px;
1701
1914
  top: 0;
1702
- margin-left: -1px;
1915
+ margin-inline-start: -1px;
1916
+ margin-inline-end: 0;
1703
1917
  z-index: 205;
1704
1918
  }
1919
+
1705
1920
  .handsontable .ht__manualColumnMove--backlight {
1706
1921
  background: #343434;
1707
1922
  background: rgba(52, 52, 52, 0.25);
@@ -1709,20 +1924,22 @@ textarea.HandsontableCopyPaste {
1709
1924
  z-index: 205;
1710
1925
  pointer-events: none;
1711
1926
  }
1927
+
1712
1928
  .handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline,
1713
1929
  .handsontable.on-moving--columns .ht__manualColumnMove--backlight {
1714
1930
  display: block;
1715
1931
  }
1716
-
1717
1932
  .handsontable .wtHider {
1718
1933
  position: relative;
1719
1934
  }
1935
+
1720
1936
  .handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight {
1721
1937
  cursor: move;
1722
1938
  cursor: -moz-grab;
1723
1939
  cursor: -webkit-grab;
1724
1940
  cursor: grab;
1725
1941
  }
1942
+
1726
1943
  .handsontable.ht__manualRowMove.on-moving--rows,
1727
1944
  .handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight {
1728
1945
  cursor: move;
@@ -1730,15 +1947,18 @@ textarea.HandsontableCopyPaste {
1730
1947
  cursor: -webkit-grabbing;
1731
1948
  cursor: grabbing;
1732
1949
  }
1950
+
1733
1951
  .handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer {
1734
1952
  display: none;
1735
1953
  }
1954
+
1736
1955
  .handsontable .ht__manualRowMove--guideline,
1737
1956
  .handsontable .ht__manualRowMove--backlight {
1738
1957
  position: absolute;
1739
1958
  width: 100%;
1740
1959
  display: none;
1741
1960
  }
1961
+
1742
1962
  .handsontable .ht__manualRowMove--guideline {
1743
1963
  background: #757575;
1744
1964
  height: 2px;
@@ -1746,6 +1966,7 @@ textarea.HandsontableCopyPaste {
1746
1966
  margin-top: -1px;
1747
1967
  z-index: 205;
1748
1968
  }
1969
+
1749
1970
  .handsontable .ht__manualRowMove--backlight {
1750
1971
  background: #343434;
1751
1972
  background: rgba(52, 52, 52, 0.25);
@@ -1753,66 +1974,76 @@ textarea.HandsontableCopyPaste {
1753
1974
  z-index: 205;
1754
1975
  pointer-events: none;
1755
1976
  }
1977
+
1756
1978
  .handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline,
1757
1979
  .handsontable.on-moving--rows .ht__manualRowMove--backlight {
1758
1980
  display: block;
1759
1981
  }
1760
-
1761
- .handsontable tbody td[rowspan][class*="area"][class*="highlight"]:not([class*="fullySelectedMergedCell"]):before {
1982
+ .handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell]):before {
1762
1983
  opacity: 0;
1763
1984
  }
1764
1985
 
1765
- .handsontable tbody td[rowspan][class*="area"][class*="highlight"][class*="fullySelectedMergedCell-multiple"]:before {
1986
+ .handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]:before {
1766
1987
  opacity: 0.1;
1767
1988
  }
1768
1989
 
1769
- .handsontable tbody td[rowspan][class*="area"][class*="highlight"][class*="fullySelectedMergedCell-0"]:before {
1990
+ .handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before {
1770
1991
  opacity: 0.1;
1771
1992
  }
1772
1993
 
1773
- .handsontable tbody td[rowspan][class*="area"][class*="highlight"][class*="fullySelectedMergedCell-1"]:before {
1994
+ .handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before {
1774
1995
  opacity: 0.2;
1775
1996
  }
1776
1997
 
1777
- .handsontable tbody td[rowspan][class*="area"][class*="highlight"][class*="fullySelectedMergedCell-2"]:before {
1998
+ .handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before {
1778
1999
  opacity: 0.27;
1779
2000
  }
1780
2001
 
1781
- .handsontable tbody td[rowspan][class*="area"][class*="highlight"][class*="fullySelectedMergedCell-3"]:before {
2002
+ .handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before {
1782
2003
  opacity: 0.35;
1783
2004
  }
1784
2005
 
1785
- .handsontable tbody td[rowspan][class*="area"][class*="highlight"][class*="fullySelectedMergedCell-4"]:before {
2006
+ .handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before {
1786
2007
  opacity: 0.41;
1787
2008
  }
1788
2009
 
1789
- .handsontable tbody td[rowspan][class*="area"][class*="highlight"][class*="fullySelectedMergedCell-5"]:before {
2010
+ .handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before {
1790
2011
  opacity: 0.47;
1791
2012
  }
1792
2013
 
1793
- .handsontable tbody td[rowspan][class*="area"][class*="highlight"][class*="fullySelectedMergedCell-6"]:before {
2014
+ .handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before {
1794
2015
  opacity: 0.54;
1795
2016
  }
1796
2017
 
1797
- .handsontable tbody td[rowspan][class*="area"][class*="highlight"][class*="fullySelectedMergedCell-7"]:before {
2018
+ .handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before {
1798
2019
  opacity: 0.58;
1799
2020
  }
1800
-
1801
2021
  /* Column's number position */
1802
2022
  .handsontable span.colHeader.columnSorting::after {
1803
2023
  /* Centering start */
1804
2024
  top: 50%;
1805
- margin-top: -2px; /* Two extra pixels (-2 instead of -4) for purpose of proper positioning of numeric indicators, when `font-size` set to default */
2025
+ /* Two extra pixels (-2 instead of -4) for purpose of proper positioning of numeric indicators, when `font-size` set to default */
2026
+ margin-top: -2px;
1806
2027
  /* Centering end */
1807
-
1808
2028
  position: absolute;
1809
2029
  right: -15px;
1810
- padding-left: 5px; ; /* For purpose of continuous mouse over experience, when moving between the `::before` and the `::after` elements */
1811
-
2030
+ left: unset;
2031
+ /* For purpose of continuous mouse over experience, when moving between the `::before` and the `::after` elements */
2032
+ padding-left: 5px;
2033
+ padding-right: unset;
1812
2034
  font-size: 8px;
1813
2035
  height: 8px;
1814
2036
  line-height: 1.1;
1815
- text-decoration: underline; /* Workaround for IE9 - IE11 */
2037
+ /* Workaround for IE9 - IE11 */
2038
+ text-decoration: underline;
2039
+ }
2040
+
2041
+ [dir=rtl].handsontable span.colHeader.columnSorting::after {
2042
+ left: -15px;
2043
+ right: unset;
2044
+ /* For purpose of continuous mouse over experience, when moving between the `::before` and the `::after` elements */
2045
+ padding-right: 5px;
2046
+ padding-left: unset;
1816
2047
  }
1817
2048
 
1818
2049
  /* Workaround for IE9 - IE11, https://stackoverflow.com/a/21902566, https://stackoverflow.com/a/32120247 */
@@ -1821,62 +2052,78 @@ textarea.HandsontableCopyPaste {
1821
2052
  }
1822
2053
 
1823
2054
  /* We support up to 7 numeric indicators, describing order of column in sorted columns queue */
1824
- .handsontable span.colHeader.columnSorting[class^="sort-"]::after,
2055
+ .handsontable span.colHeader.columnSorting[class^=sort-]::after,
1825
2056
  .handsontable span.colHeader.columnSorting[class*=" sort-"]::after {
1826
- content: "+"
2057
+ content: "+";
1827
2058
  }
1828
2059
 
1829
2060
  .handsontable span.colHeader.columnSorting.sort-1::after {
1830
- content: '1';
2061
+ content: "1";
1831
2062
  }
1832
2063
 
1833
2064
  .handsontable span.colHeader.columnSorting.sort-2::after {
1834
- content: '2';
2065
+ content: "2";
1835
2066
  }
1836
2067
 
1837
2068
  .handsontable span.colHeader.columnSorting.sort-3::after {
1838
- content: '3';
2069
+ content: "3";
1839
2070
  }
1840
2071
 
1841
2072
  .handsontable span.colHeader.columnSorting.sort-4::after {
1842
- content: '4';
2073
+ content: "4";
1843
2074
  }
1844
2075
 
1845
2076
  .handsontable span.colHeader.columnSorting.sort-5::after {
1846
- content: '5';
2077
+ content: "5";
1847
2078
  }
1848
2079
 
1849
2080
  .handsontable span.colHeader.columnSorting.sort-6::after {
1850
- content: '6';
2081
+ content: "6";
1851
2082
  }
1852
2083
 
1853
2084
  .handsontable span.colHeader.columnSorting.sort-7::after {
1854
- content: '7';
2085
+ content: "7";
1855
2086
  }
1856
2087
 
1857
2088
  /* Drop-down menu widens header by 5 pixels, sort sequence numbers won't overlap the icon; mainly for the IE9+ */
1858
2089
  .htGhostTable th div button.changeType + span.colHeader.columnSorting:not(.indicatorDisabled) {
1859
2090
  padding-right: 5px;
1860
2091
  }
1861
-
1862
2092
  .handsontable thead th.hiddenHeader:not(:first-of-type) {
1863
2093
  display: none;
1864
2094
  }
1865
-
2095
+ @charset "UTF-8";
1866
2096
  .handsontable th.ht_nestingLevels {
1867
2097
  text-align: left;
1868
2098
  padding-left: 7px;
1869
2099
  }
1870
2100
 
2101
+ [dir=rtl].handsontable th.ht_nestingLevels {
2102
+ text-align: right;
2103
+ padding-right: 7px;
2104
+ }
2105
+
1871
2106
  .handsontable th div.ht_nestingLevels {
1872
2107
  display: inline-block;
1873
2108
  position: absolute;
1874
2109
  left: 11px;
2110
+ right: unset;
2111
+ }
2112
+
2113
+ [dir=rtl].handsontable th div.ht_nestingLevels {
2114
+ right: 11px;
2115
+ left: unset;
1875
2116
  }
1876
2117
 
1877
- .handsontable.innerBorderLeft th div.ht_nestingLevels,
1878
- .handsontable.innerBorderLeft ~ .handsontable th div.ht_nestingLevels {
2118
+ .handsontable.innerBorderInlineStart th div.ht_nestingLevels,
2119
+ .handsontable.innerBorderInlineStart ~ .handsontable th div.ht_nestingLevels {
1879
2120
  right: 10px;
2121
+ left: unset;
2122
+ }
2123
+
2124
+ [dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingLevels, [dir=rtl].handsontable.innerBorderInlineStart ~ .handsontable th div.ht_nestingLevels {
2125
+ left: 10px;
2126
+ right: unset;
1880
2127
  }
1881
2128
 
1882
2129
  .handsontable th span.ht_nestingLevel {
@@ -1890,32 +2137,46 @@ textarea.HandsontableCopyPaste {
1890
2137
  float: left;
1891
2138
  }
1892
2139
 
2140
+ [dir=rtl].handsontable th span.ht_nestingLevel_empty {
2141
+ float: right;
2142
+ }
2143
+
1893
2144
  .handsontable th span.ht_nestingLevel::after {
1894
- content: "\2510";
2145
+ content: "";
1895
2146
  font-size: 9px;
1896
2147
  display: inline-block;
1897
2148
  position: relative;
1898
2149
  bottom: 3px;
1899
2150
  }
1900
2151
 
1901
-
1902
2152
  .handsontable th div.ht_nestingButton {
1903
2153
  display: inline-block;
1904
2154
  position: absolute;
1905
2155
  right: -2px;
2156
+ left: unset;
1906
2157
  cursor: pointer;
1907
2158
  }
1908
2159
 
2160
+ [dir=rtl].handsontable th div.ht_nestingButton {
2161
+ left: -2px;
2162
+ right: unset;
2163
+ }
2164
+
1909
2165
  .handsontable th div.ht_nestingButton.ht_nestingExpand::after {
1910
- content: "\002B";
2166
+ content: "+";
1911
2167
  }
1912
2168
 
1913
2169
  .handsontable th div.ht_nestingButton.ht_nestingCollapse::after {
1914
- content: "\002D";
2170
+ content: "-";
1915
2171
  }
1916
2172
 
1917
- .handsontable.innerBorderLeft th div.ht_nestingButton,
1918
- .handsontable.innerBorderLeft ~ .handsontable th div.ht_nestingButton {
2173
+ .handsontable.innerBorderInlineStart th div.ht_nestingButton,
2174
+ .handsontable.innerBorderInlineStart ~ .handsontable th div.ht_nestingButton {
1919
2175
  right: 0;
2176
+ left: unset;
1920
2177
  }
1921
2178
 
2179
+ [dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingButton, [dir=rtl].handsontable.innerBorderInlineStart ~ .handsontable th div.ht_nestingButton {
2180
+ left: 0;
2181
+ right: unset;
2182
+ }