handsontable 0.0.0-next-0879a9d-20240620 → 0.0.0-next-e7a9560-20240626

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of handsontable might be problematic. Click here for more details.

@@ -2,4 +2,5 @@ export function stopImmediatePropagation(event: Event): void;
2
2
  export function isImmediatePropagationStopped(event: Event): boolean;
3
3
  export function isRightClick(event: Event): boolean;
4
4
  export function isLeftClick(event: Event): boolean;
5
+ export function isTouchEvent(event: Event): boolean;
5
6
  export function offsetRelativeTo(event: Event, untilElement: HTMLElement | undefined): { x: number, y: number };
@@ -4,6 +4,7 @@ exports.__esModule = true;
4
4
  exports.isImmediatePropagationStopped = isImmediatePropagationStopped;
5
5
  exports.isLeftClick = isLeftClick;
6
6
  exports.isRightClick = isRightClick;
7
+ exports.isTouchEvent = isTouchEvent;
7
8
  exports.offsetRelativeTo = offsetRelativeTo;
8
9
  exports.stopImmediatePropagation = stopImmediatePropagation;
9
10
  /**
@@ -46,6 +47,16 @@ function isLeftClick(event) {
46
47
  return event.button === 0;
47
48
  }
48
49
 
50
+ /**
51
+ * Check if the provided event is a touch event.
52
+ *
53
+ * @param {Event} event The event object.
54
+ * @returns {boolean}
55
+ */
56
+ function isTouchEvent(event) {
57
+ return event instanceof TouchEvent;
58
+ }
59
+
49
60
  /**
50
61
  * Calculates the event offset until reaching the element defined by `relativeElement` argument.
51
62
  *
@@ -38,6 +38,16 @@ export function isLeftClick(event) {
38
38
  return event.button === 0;
39
39
  }
40
40
 
41
+ /**
42
+ * Check if the provided event is a touch event.
43
+ *
44
+ * @param {Event} event The event object.
45
+ * @returns {boolean}
46
+ */
47
+ export function isTouchEvent(event) {
48
+ return event instanceof TouchEvent;
49
+ }
50
+
41
51
  /**
42
52
  * Calculates the event offset until reaching the element defined by `relativeElement` argument.
43
53
  *
package/helpers/mixed.js CHANGED
@@ -134,7 +134,7 @@ const domMessages = {
134
134
  function _injectProductInfo(key, element) {
135
135
  const hasValidType = !isEmpty(key);
136
136
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
137
- const hotVersion = "0.0.0-next-0879a9d-20240620";
137
+ const hotVersion = "0.0.0-next-e7a9560-20240626";
138
138
  let keyValidityDate;
139
139
  let consoleMessageState = 'invalid';
140
140
  let domMessageState = 'invalid';
package/helpers/mixed.mjs CHANGED
@@ -124,7 +124,7 @@ const domMessages = {
124
124
  export function _injectProductInfo(key, element) {
125
125
  const hasValidType = !isEmpty(key);
126
126
  const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
127
- const hotVersion = "0.0.0-next-0879a9d-20240620";
127
+ const hotVersion = "0.0.0-next-e7a9560-20240626";
128
128
  let keyValidityDate;
129
129
  let consoleMessageState = 'invalid';
130
130
  let domMessageState = 'invalid';
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "url": "https://github.com/handsontable/handsontable/issues"
11
11
  },
12
12
  "author": "Handsoncode <hello@handsontable.com>",
13
- "version": "0.0.0-next-0879a9d-20240620",
13
+ "version": "0.0.0-next-e7a9560-20240626",
14
14
  "main": "index",
15
15
  "module": "index.mjs",
16
16
  "jsnext:main": "index.mjs",
@@ -153,6 +153,7 @@ class Menu {
153
153
  let frame = this.hot.rootWindow;
154
154
  while (frame) {
155
155
  this.eventManager.addEventListener(frame.document, 'mousedown', event => this.onDocumentMouseDown(event));
156
+ this.eventManager.addEventListener(frame.document, 'touchstart', event => this.onDocumentMouseDown(event));
156
157
  this.eventManager.addEventListener(frame.document, 'contextmenu', event => this.onDocumentContextMenu(event));
157
158
  frame = (0, _element.getParentWindow)(frame);
158
159
  }
@@ -149,6 +149,7 @@ export class Menu {
149
149
  let frame = this.hot.rootWindow;
150
150
  while (frame) {
151
151
  this.eventManager.addEventListener(frame.document, 'mousedown', event => this.onDocumentMouseDown(event));
152
+ this.eventManager.addEventListener(frame.document, 'touchstart', event => this.onDocumentMouseDown(event));
152
153
  this.eventManager.addEventListener(frame.document, 'contextmenu', event => this.onDocumentContextMenu(event));
153
154
  frame = getParentWindow(frame);
154
155
  }
@@ -679,7 +679,7 @@ function _onAfterOnCellMouseDown(event, coords) {
679
679
  } else {
680
680
  columnsToSelect.push(columnIndex, columnIndex + origColspan - 1, coords.row);
681
681
  }
682
- } else if ((0, _event.isLeftClick)(event) || (0, _event.isRightClick)(event) && allowRightClickSelection) {
682
+ } else if ((0, _event.isLeftClick)(event) || (0, _event.isRightClick)(event) && allowRightClickSelection || (0, _event.isTouchEvent)(event)) {
683
683
  columnsToSelect.push(columnIndex, columnIndex + origColspan - 1, coords.row);
684
684
  }
685
685
 
@@ -12,7 +12,7 @@ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.h
12
12
  import { addClass, removeClass } from "../../helpers/dom/element.mjs";
13
13
  import { isNumeric, clamp } from "../../helpers/number.mjs";
14
14
  import { toSingleLine } from "../../helpers/templateLiteralTag.mjs";
15
- import { isLeftClick, isRightClick } from "../../helpers/dom/event.mjs";
15
+ import { isLeftClick, isRightClick, isTouchEvent } from "../../helpers/dom/event.mjs";
16
16
  import { warn } from "../../helpers/console.mjs";
17
17
  import { ACTIVE_HEADER_TYPE, HEADER_TYPE } from "../../selection/index.mjs";
18
18
  import { BasePlugin } from "../base/index.mjs";
@@ -674,7 +674,7 @@ function _onAfterOnCellMouseDown(event, coords) {
674
674
  } else {
675
675
  columnsToSelect.push(columnIndex, columnIndex + origColspan - 1, coords.row);
676
676
  }
677
- } else if (isLeftClick(event) || isRightClick(event) && allowRightClickSelection) {
677
+ } else if (isLeftClick(event) || isRightClick(event) && allowRightClickSelection || isTouchEvent(event)) {
678
678
  columnsToSelect.push(columnIndex, columnIndex + origColspan - 1, coords.row);
679
679
  }
680
680