@tamagui/react-native-use-responder-events 2.0.0-rc.9 → 2.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.
- package/dist/cjs/ResponderSystem.cjs +293 -152
- package/dist/cjs/ResponderSystem.native.js +312 -170
- package/dist/cjs/ResponderSystem.native.js.map +1 -1
- package/dist/cjs/ResponderTouchHistoryStore.cjs +97 -30
- package/dist/cjs/ResponderTouchHistoryStore.native.js +144 -68
- package/dist/cjs/ResponderTouchHistoryStore.native.js.map +1 -1
- package/dist/cjs/createResponderEvent.cjs +66 -52
- package/dist/cjs/createResponderEvent.native.js +51 -39
- package/dist/cjs/createResponderEvent.native.js.map +1 -1
- package/dist/cjs/index.cjs +7 -5
- package/dist/cjs/index.native.js +7 -5
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/types.cjs +26 -24
- package/dist/cjs/types.native.js +26 -24
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/useResponderEvents.cjs +49 -37
- package/dist/cjs/useResponderEvents.native.js +53 -42
- package/dist/cjs/useResponderEvents.native.js.map +1 -1
- package/dist/cjs/utils.cjs +101 -58
- package/dist/cjs/utils.native.js +104 -57
- package/dist/cjs/utils.native.js.map +1 -1
- package/dist/esm/ResponderSystem.mjs +276 -137
- package/dist/esm/ResponderSystem.mjs.map +1 -1
- package/dist/esm/ResponderSystem.native.js +295 -155
- package/dist/esm/ResponderSystem.native.js.map +1 -1
- package/dist/esm/ResponderTouchHistoryStore.mjs +85 -20
- package/dist/esm/ResponderTouchHistoryStore.mjs.map +1 -1
- package/dist/esm/ResponderTouchHistoryStore.native.js +132 -58
- package/dist/esm/ResponderTouchHistoryStore.native.js.map +1 -1
- package/dist/esm/createResponderEvent.mjs +54 -42
- package/dist/esm/createResponderEvent.mjs.map +1 -1
- package/dist/esm/createResponderEvent.native.js +38 -28
- package/dist/esm/createResponderEvent.native.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -6
- package/dist/esm/types.mjs +14 -14
- package/dist/esm/types.mjs.map +1 -1
- package/dist/esm/types.native.js +14 -14
- package/dist/esm/types.native.js.map +1 -1
- package/dist/esm/useResponderEvents.mjs +21 -11
- package/dist/esm/useResponderEvents.mjs.map +1 -1
- package/dist/esm/useResponderEvents.native.js +25 -16
- package/dist/esm/useResponderEvents.native.js.map +1 -1
- package/dist/esm/utils.mjs +89 -48
- package/dist/esm/utils.mjs.map +1 -1
- package/dist/esm/utils.native.js +92 -47
- package/dist/esm/utils.native.js.map +1 -1
- package/package.json +4 -3
- package/dist/cjs/ResponderSystem.js +0 -205
- package/dist/cjs/ResponderSystem.js.map +0 -6
- package/dist/cjs/ResponderTouchHistoryStore.js +0 -117
- package/dist/cjs/ResponderTouchHistoryStore.js.map +0 -6
- package/dist/cjs/createResponderEvent.js +0 -121
- package/dist/cjs/createResponderEvent.js.map +0 -6
- package/dist/cjs/index.js +0 -15
- package/dist/cjs/index.js.map +0 -6
- package/dist/cjs/types.js +0 -58
- package/dist/cjs/types.js.map +0 -6
- package/dist/cjs/useResponderEvents.js +0 -81
- package/dist/cjs/useResponderEvents.js.map +0 -6
- package/dist/cjs/utils.js +0 -102
- package/dist/cjs/utils.js.map +0 -6
- package/dist/esm/ResponderSystem.js +0 -207
- package/dist/esm/ResponderSystem.js.map +0 -6
- package/dist/esm/ResponderTouchHistoryStore.js +0 -101
- package/dist/esm/ResponderTouchHistoryStore.js.map +0 -6
- package/dist/esm/createResponderEvent.js +0 -105
- package/dist/esm/createResponderEvent.js.map +0 -6
- package/dist/esm/types.js +0 -42
- package/dist/esm/types.js.map +0 -6
- package/dist/esm/useResponderEvents.js +0 -59
- package/dist/esm/useResponderEvents.js.map +0 -6
- package/dist/esm/utils.js +0 -86
- package/dist/esm/utils.js.map +0 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getBoundingClientRect","emptyFunction","emptyObject","emptyArray","normalizeIdentifier","identifier","createResponderEvent","domEvent","responderTouchHistoryStore","rect","propagationWasStopped","changedTouches","touches","domEventChangedTouches","domEventType","type","metaKey","shiftKey","force","clientX","clientY","pageX","pageY","preventDefault","bind","timestamp","timeStamp","normalizeTouches","touches2","Array","prototype","slice","call","map","touch","locationX","locationY","target","emulatedTouches","responderEvent","bubbles","cancelable","currentTarget","defaultPrevented","dispatchConfig","eventPhase","isDefaultPrevented","isPropagationStopped","isTrusted","nativeEvent","altKey","ctrlKey","persist","stopPropagation","touchHistory","x","left","y","top"],"sources":["../../src/createResponderEvent.ts"],"sourcesContent":[null],"mappings":"AAUA,SAASA,qBAAA,QAA6B;AA2BtC,MAAMC,aAAA,GAAgBA,CAAA,KAAM,CAAC;
|
|
1
|
+
{"version":3,"names":["getBoundingClientRect","emptyFunction","emptyObject","emptyArray","normalizeIdentifier","identifier","createResponderEvent","domEvent","responderTouchHistoryStore","rect","propagationWasStopped","changedTouches","touches","domEventChangedTouches","domEventType","type","metaKey","shiftKey","force","clientX","clientY","pageX","pageY","preventDefault","bind","timestamp","timeStamp","normalizeTouches","touches2","Array","prototype","slice","call","map","touch","locationX","locationY","target","emulatedTouches","responderEvent","bubbles","cancelable","currentTarget","defaultPrevented","dispatchConfig","eventPhase","isDefaultPrevented","isPropagationStopped","isTrusted","nativeEvent","altKey","ctrlKey","persist","stopPropagation","touchHistory","x","left","y","top"],"sources":["../../src/createResponderEvent.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
import { getBoundingClientRect } from "./utils.native.js";
|
|
2
|
-
var emptyFunction = function () {}
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
var emptyFunction = function () {};
|
|
3
|
+
var emptyObject = {};
|
|
4
|
+
var emptyArray = [];
|
|
5
5
|
function normalizeIdentifier(identifier) {
|
|
6
6
|
return identifier > 20 ? identifier % 20 : identifier;
|
|
7
7
|
}
|
|
8
8
|
function createResponderEvent(domEvent, responderTouchHistoryStore) {
|
|
9
|
-
var rect
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
9
|
+
var rect;
|
|
10
|
+
var propagationWasStopped = false;
|
|
11
|
+
var changedTouches;
|
|
12
|
+
var touches;
|
|
13
|
+
var domEventChangedTouches = domEvent.changedTouches;
|
|
14
|
+
var domEventType = domEvent.type;
|
|
15
|
+
var metaKey = domEvent.metaKey === true;
|
|
16
|
+
var shiftKey = domEvent.shiftKey === true;
|
|
17
|
+
var force = (domEventChangedTouches === null || domEventChangedTouches === void 0 ? void 0 : domEventChangedTouches[0].force) || 0;
|
|
18
|
+
var identifier = normalizeIdentifier((domEventChangedTouches === null || domEventChangedTouches === void 0 ? void 0 : domEventChangedTouches[0].identifier) || 0);
|
|
19
|
+
var clientX = (domEventChangedTouches === null || domEventChangedTouches === void 0 ? void 0 : domEventChangedTouches[0].clientX) || domEvent.clientX;
|
|
20
|
+
var clientY = (domEventChangedTouches === null || domEventChangedTouches === void 0 ? void 0 : domEventChangedTouches[0].clientY) || domEvent.clientY;
|
|
21
|
+
var pageX = (domEventChangedTouches === null || domEventChangedTouches === void 0 ? void 0 : domEventChangedTouches[0].pageX) || domEvent.pageX;
|
|
22
|
+
var pageY = (domEventChangedTouches === null || domEventChangedTouches === void 0 ? void 0 : domEventChangedTouches[0].pageY) || domEvent.pageY;
|
|
23
|
+
var preventDefault = typeof domEvent.preventDefault === "function" ? domEvent.preventDefault.bind(domEvent) : emptyFunction;
|
|
24
|
+
var timestamp = domEvent.timeStamp;
|
|
25
25
|
function normalizeTouches(touches2) {
|
|
26
26
|
return Array.prototype.slice.call(touches2).map(function (touch) {
|
|
27
27
|
return {
|
|
@@ -40,7 +40,10 @@ function createResponderEvent(domEvent, responderTouchHistoryStore) {
|
|
|
40
40
|
};
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
|
-
if (domEventChangedTouches != null)
|
|
43
|
+
if (domEventChangedTouches != null) {
|
|
44
|
+
changedTouches = normalizeTouches(domEventChangedTouches);
|
|
45
|
+
touches = normalizeTouches(domEvent.touches);
|
|
46
|
+
} else {
|
|
44
47
|
var emulatedTouches = [{
|
|
45
48
|
force,
|
|
46
49
|
identifier,
|
|
@@ -55,11 +58,12 @@ function createResponderEvent(domEvent, responderTouchHistoryStore) {
|
|
|
55
58
|
target: domEvent.target,
|
|
56
59
|
timestamp
|
|
57
60
|
}];
|
|
58
|
-
changedTouches = emulatedTouches
|
|
61
|
+
changedTouches = emulatedTouches;
|
|
62
|
+
touches = domEventType === "mouseup" || domEventType === "dragstart" ? emptyArray : emulatedTouches;
|
|
59
63
|
}
|
|
60
64
|
var responderEvent = {
|
|
61
|
-
bubbles:
|
|
62
|
-
cancelable:
|
|
65
|
+
bubbles: true,
|
|
66
|
+
cancelable: true,
|
|
63
67
|
// `currentTarget` is set before dispatch
|
|
64
68
|
currentTarget: null,
|
|
65
69
|
defaultPrevented: domEvent.defaultPrevented,
|
|
@@ -73,8 +77,8 @@ function createResponderEvent(domEvent, responderTouchHistoryStore) {
|
|
|
73
77
|
},
|
|
74
78
|
isTrusted: domEvent.isTrusted,
|
|
75
79
|
nativeEvent: {
|
|
76
|
-
altKey:
|
|
77
|
-
ctrlKey:
|
|
80
|
+
altKey: false,
|
|
81
|
+
ctrlKey: false,
|
|
78
82
|
metaKey,
|
|
79
83
|
shiftKey,
|
|
80
84
|
changedTouches,
|
|
@@ -96,17 +100,23 @@ function createResponderEvent(domEvent, responderTouchHistoryStore) {
|
|
|
96
100
|
persist: emptyFunction,
|
|
97
101
|
preventDefault,
|
|
98
102
|
stopPropagation() {
|
|
99
|
-
propagationWasStopped =
|
|
103
|
+
propagationWasStopped = true;
|
|
100
104
|
},
|
|
101
105
|
target: domEvent.target,
|
|
102
106
|
timeStamp: timestamp,
|
|
103
107
|
touchHistory: responderTouchHistoryStore.touchHistory
|
|
104
108
|
};
|
|
105
109
|
function locationX(x) {
|
|
106
|
-
|
|
110
|
+
rect = rect || getBoundingClientRect(responderEvent.currentTarget);
|
|
111
|
+
if (rect) {
|
|
112
|
+
return x - rect.left;
|
|
113
|
+
}
|
|
107
114
|
}
|
|
108
115
|
function locationY(y) {
|
|
109
|
-
|
|
116
|
+
rect = rect || getBoundingClientRect(responderEvent.currentTarget);
|
|
117
|
+
if (rect) {
|
|
118
|
+
return y - rect.top;
|
|
119
|
+
}
|
|
110
120
|
}
|
|
111
121
|
return responderEvent;
|
|
112
122
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getBoundingClientRect","emptyFunction","emptyObject","emptyArray","normalizeIdentifier","identifier","createResponderEvent","domEvent","responderTouchHistoryStore","rect","propagationWasStopped","changedTouches","touches","domEventChangedTouches","domEventType","type","metaKey","shiftKey","force","clientX","clientY","pageX","pageY","preventDefault","bind","timestamp","timeStamp","normalizeTouches","touches2","Array","prototype","slice","call","map","touch","locationX","locationY","target","emulatedTouches","responderEvent","bubbles","cancelable","currentTarget","defaultPrevented","dispatchConfig","eventPhase","isDefaultPrevented","isPropagationStopped","isTrusted","nativeEvent","altKey","ctrlKey","persist","stopPropagation","touchHistory","x","left","y","top"],"sources":["../../src/createResponderEvent.ts"],"sourcesContent":[null],"mappings":"AAUA,SAASA,qBAAA,QAA6B;AA2BtC,IAAAC,aAAM,YAAAA,CAAA,EAAsB,CAAC;
|
|
1
|
+
{"version":3,"names":["getBoundingClientRect","emptyFunction","emptyObject","emptyArray","normalizeIdentifier","identifier","createResponderEvent","domEvent","responderTouchHistoryStore","rect","propagationWasStopped","changedTouches","touches","domEventChangedTouches","domEventType","type","metaKey","shiftKey","force","clientX","clientY","pageX","pageY","preventDefault","bind","timestamp","timeStamp","normalizeTouches","touches2","Array","prototype","slice","call","map","touch","locationX","locationY","target","emulatedTouches","responderEvent","bubbles","cancelable","currentTarget","defaultPrevented","dispatchConfig","eventPhase","isDefaultPrevented","isPropagationStopped","isTrusted","nativeEvent","altKey","ctrlKey","persist","stopPropagation","touchHistory","x","left","y","top"],"sources":["../../src/createResponderEvent.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from "./useResponderEvents";
|
|
1
|
+
export * from "./useResponderEvents.mjs";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
package/dist/esm/types.mjs
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
const BLUR = "blur"
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
const BLUR = "blur";
|
|
2
|
+
const CONTEXT_MENU = "contextmenu";
|
|
3
|
+
const FOCUS_OUT = "focusout";
|
|
4
|
+
const MOUSE_DOWN = "mousedown";
|
|
5
|
+
const MOUSE_MOVE = "mousemove";
|
|
6
|
+
const MOUSE_UP = "mouseup";
|
|
7
|
+
const MOUSE_CANCEL = "dragstart";
|
|
8
|
+
const TOUCH_START = "touchstart";
|
|
9
|
+
const TOUCH_MOVE = "touchmove";
|
|
10
|
+
const TOUCH_END = "touchend";
|
|
11
|
+
const TOUCH_CANCEL = "touchcancel";
|
|
12
|
+
const SCROLL = "scroll";
|
|
13
|
+
const SELECT = "select";
|
|
14
|
+
const SELECTION_CHANGE = "selectionchange";
|
|
15
15
|
function isStartish(eventType) {
|
|
16
16
|
return eventType === TOUCH_START || eventType === MOUSE_DOWN;
|
|
17
17
|
}
|
package/dist/esm/types.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BLUR","CONTEXT_MENU","FOCUS_OUT","MOUSE_DOWN","MOUSE_MOVE","MOUSE_UP","MOUSE_CANCEL","TOUCH_START","TOUCH_MOVE","TOUCH_END","TOUCH_CANCEL","SCROLL","SELECT","SELECTION_CHANGE","isStartish","eventType","isMoveish","isEndish","isCancelish","isScroll","isSelectionChange"],"sources":["../../src/types.ts"],"sourcesContent":[null],"mappings":"AAwCO,MAAMA,IAAA,GAAO;
|
|
1
|
+
{"version":3,"names":["BLUR","CONTEXT_MENU","FOCUS_OUT","MOUSE_DOWN","MOUSE_MOVE","MOUSE_UP","MOUSE_CANCEL","TOUCH_START","TOUCH_MOVE","TOUCH_END","TOUCH_CANCEL","SCROLL","SELECT","SELECTION_CHANGE","isStartish","eventType","isMoveish","isEndish","isCancelish","isScroll","isSelectionChange"],"sources":["../../src/types.ts"],"sourcesContent":[null],"mappings":"AAwCO,MAAMA,IAAA,GAAO;AACb,MAAMC,YAAA,GAAe;AACrB,MAAMC,SAAA,GAAY;AAClB,MAAMC,UAAA,GAAa;AACnB,MAAMC,UAAA,GAAa;AACnB,MAAMC,QAAA,GAAW;AACjB,MAAMC,YAAA,GAAe;AACrB,MAAMC,WAAA,GAAc;AACpB,MAAMC,UAAA,GAAa;AACnB,MAAMC,SAAA,GAAY;AAClB,MAAMC,YAAA,GAAe;AACrB,MAAMC,MAAA,GAAS;AACf,MAAMC,MAAA,GAAS;AACf,MAAMC,gBAAA,GAAmB;AAEzB,SAASC,WAAWC,SAAA,EAA6B;EACtD,OAAOA,SAAA,KAAcR,WAAA,IAAeQ,SAAA,KAAcZ,UAAA;AACpD;AAEO,SAASa,UAAUD,SAAA,EAA6B;EACrD,OAAOA,SAAA,KAAcP,UAAA,IAAcO,SAAA,KAAcX,UAAA;AACnD;AAEO,SAASa,SAASF,SAAA,EAA6B;EACpD,OAAOA,SAAA,KAAcN,SAAA,IAAaM,SAAA,KAAcV,QAAA,IAAYa,WAAA,CAAYH,SAAS;AACnF;AAEO,SAASG,YAAYH,SAAA,EAA6B;EACvD,OAAOA,SAAA,KAAcL,YAAA,IAAgBK,SAAA,KAAcT,YAAA;AACrD;AAEO,SAASa,SAASJ,SAAA,EAA6B;EACpD,OAAOA,SAAA,KAAcJ,MAAA;AACvB;AAEO,SAASS,kBAAkBL,SAAA,EAA6B;EAC7D,OAAOA,SAAA,KAAcH,MAAA,IAAUG,SAAA,KAAcF,gBAAA;AAC/C","ignoreList":[]}
|
package/dist/esm/types.native.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
var BLUR = "blur"
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
var BLUR = "blur";
|
|
2
|
+
var CONTEXT_MENU = "contextmenu";
|
|
3
|
+
var FOCUS_OUT = "focusout";
|
|
4
|
+
var MOUSE_DOWN = "mousedown";
|
|
5
|
+
var MOUSE_MOVE = "mousemove";
|
|
6
|
+
var MOUSE_UP = "mouseup";
|
|
7
|
+
var MOUSE_CANCEL = "dragstart";
|
|
8
|
+
var TOUCH_START = "touchstart";
|
|
9
|
+
var TOUCH_MOVE = "touchmove";
|
|
10
|
+
var TOUCH_END = "touchend";
|
|
11
|
+
var TOUCH_CANCEL = "touchcancel";
|
|
12
|
+
var SCROLL = "scroll";
|
|
13
|
+
var SELECT = "select";
|
|
14
|
+
var SELECTION_CHANGE = "selectionchange";
|
|
15
15
|
function isStartish(eventType) {
|
|
16
16
|
return eventType === TOUCH_START || eventType === MOUSE_DOWN;
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BLUR","CONTEXT_MENU","FOCUS_OUT","MOUSE_DOWN","MOUSE_MOVE","MOUSE_UP","MOUSE_CANCEL","TOUCH_START","TOUCH_MOVE","TOUCH_END","TOUCH_CANCEL","SCROLL","SELECT","SELECTION_CHANGE","isStartish","eventType","isMoveish","isEndish","isCancelish","isScroll","isSelectionChange"],"sources":["../../src/types.ts"],"sourcesContent":[null],"mappings":"AAwCO,IAAAA,IAAM,SAAO;
|
|
1
|
+
{"version":3,"names":["BLUR","CONTEXT_MENU","FOCUS_OUT","MOUSE_DOWN","MOUSE_MOVE","MOUSE_UP","MOUSE_CANCEL","TOUCH_START","TOUCH_MOVE","TOUCH_END","TOUCH_CANCEL","SCROLL","SELECT","SELECTION_CHANGE","isStartish","eventType","isMoveish","isEndish","isCancelish","isScroll","isSelectionChange"],"sources":["../../src/types.ts"],"sourcesContent":[null],"mappings":"AAwCO,IAAAA,IAAM,SAAO;AACb,IAAAC,YAAM,gBAAe;AACrB,IAAAC,SAAM,aAAY;AAClB,IAAAC,UAAM,cAAa;AACnB,IAAAC,UAAM,cAAa;AACnB,IAAAC,QAAM,YAAW;AACjB,IAAAC,YAAM,cAAe;AACrB,IAAAC,WAAM,eAAc;AACpB,IAAAC,UAAM,cAAa;AACnB,IAAAC,SAAM,aAAY;AAClB,IAAAC,YAAM,gBAAe;AACrB,IAAAC,MAAM,WAAS;AACf,IAAAC,MAAM,WAAS;AACf,IAAAC,gBAAM,oBAAmB;AAEzB,SAASC,WAAWC,SAAA,EAA6B;EACtD,OAAOA,SAAA,KAAcR,WAAA,IAAeQ,SAAA,KAAcZ,UAAA;AACpD;AAEO,SAASa,UAAUD,SAAA,EAA6B;EACrD,OAAOA,SAAA,KAAcP,UAAA,IAAcO,SAAA,KAAcX,UAAA;AACnD;AAEO,SAASa,SAASF,SAAA,EAA6B;EACpD,OAAOA,SAAA,KAAcN,SAAA,IAAaM,SAAA,KAAcV,QAAA,IAAYa,WAAA,CAAYH,SAAS;AACnF;AAEO,SAASG,YAAYH,SAAA,EAA6B;EACvD,OAAOA,SAAA,KAAcL,YAAA,IAAgBK,SAAA,KAAcT,YAAA;AACrD;AAEO,SAASa,SAASJ,SAAA,EAA6B;EACpD,OAAOA,SAAA,KAAcJ,MAAA;AACvB;AAEO,SAASS,kBAAkBL,SAAA,EAA6B;EAC7D,OAAOA,SAAA,KAAcH,MAAA,IAAUG,SAAA,KAAcF,gBAAA;AAC/C","ignoreList":[]}
|
|
@@ -1,22 +1,32 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import * as ResponderSystem from "./ResponderSystem.mjs";
|
|
3
3
|
export * from "./utils.mjs";
|
|
4
|
-
const emptyObject = {}
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
const emptyObject = {};
|
|
5
|
+
const Attached = /* @__PURE__ */new WeakMap();
|
|
6
|
+
const Ids = /* @__PURE__ */new WeakMap();
|
|
7
7
|
function useResponderEvents(hostRef, configIn = emptyObject) {
|
|
8
|
-
const config = getResponderConfigIfDefined(configIn)
|
|
9
|
-
|
|
8
|
+
const config = getResponderConfigIfDefined(configIn);
|
|
9
|
+
const node = hostRef?.current?.host || hostRef?.current;
|
|
10
10
|
React.useEffect(() => {
|
|
11
11
|
if (config === emptyObject) return;
|
|
12
|
-
ResponderSystem.attachListeners()
|
|
12
|
+
ResponderSystem.attachListeners();
|
|
13
|
+
if (!Ids.has(hostRef)) {
|
|
14
|
+
Ids.set(hostRef, `${Math.random()}`);
|
|
15
|
+
}
|
|
13
16
|
const id = Ids.get(hostRef);
|
|
14
|
-
|
|
15
|
-
|
|
17
|
+
ResponderSystem.addNode(id, node, config);
|
|
18
|
+
Attached.set(hostRef, true);
|
|
19
|
+
return () => {
|
|
20
|
+
ResponderSystem.removeNode(node);
|
|
21
|
+
Attached.set(hostRef, false);
|
|
16
22
|
};
|
|
17
|
-
}, [config, hostRef])
|
|
18
|
-
|
|
19
|
-
|
|
23
|
+
}, [config, hostRef]);
|
|
24
|
+
if (process.env.NODE_ENV === "development") {
|
|
25
|
+
React.useDebugValue({
|
|
26
|
+
isResponder: node === ResponderSystem.getResponderNode()
|
|
27
|
+
});
|
|
28
|
+
React.useDebugValue(config);
|
|
29
|
+
}
|
|
20
30
|
}
|
|
21
31
|
function getResponderConfigIfDefined({
|
|
22
32
|
onMoveShouldSetResponder,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","ResponderSystem","emptyObject","Attached","WeakMap","Ids","useResponderEvents","hostRef","configIn","config","getResponderConfigIfDefined","node","current","host","useEffect","attachListeners","has","set","Math","random","id","get","addNode","removeNode","process","env","NODE_ENV","useDebugValue","isResponder","getResponderNode","onMoveShouldSetResponder","onMoveShouldSetResponderCapture","onResponderEnd","onResponderGrant","onResponderMove","onResponderReject","onResponderRelease","onResponderStart","onResponderTerminate","onResponderTerminationRequest","onScrollShouldSetResponder","onScrollShouldSetResponderCapture","onSelectionChangeShouldSetResponder","onSelectionChangeShouldSetResponderCapture","onStartShouldSetResponder","onStartShouldSetResponderCapture"],"sources":["../../src/useResponderEvents.ts"],"sourcesContent":[null],"mappings":"AAMA,YAAYA,KAAA,MAAW;AAEvB,YAAYC,eAAA,MAAqB;AAEjC,cAAc;AAEd,MAAMC,WAAA,GAAc,CAAC;
|
|
1
|
+
{"version":3,"names":["React","ResponderSystem","emptyObject","Attached","WeakMap","Ids","useResponderEvents","hostRef","configIn","config","getResponderConfigIfDefined","node","current","host","useEffect","attachListeners","has","set","Math","random","id","get","addNode","removeNode","process","env","NODE_ENV","useDebugValue","isResponder","getResponderNode","onMoveShouldSetResponder","onMoveShouldSetResponderCapture","onResponderEnd","onResponderGrant","onResponderMove","onResponderReject","onResponderRelease","onResponderStart","onResponderTerminate","onResponderTerminationRequest","onScrollShouldSetResponder","onScrollShouldSetResponderCapture","onSelectionChangeShouldSetResponder","onSelectionChangeShouldSetResponderCapture","onStartShouldSetResponder","onStartShouldSetResponderCapture"],"sources":["../../src/useResponderEvents.ts"],"sourcesContent":[null],"mappings":"AAMA,YAAYA,KAAA,MAAW;AAEvB,YAAYC,eAAA,MAAqB;AAEjC,cAAc;AAEd,MAAMC,WAAA,GAAc,CAAC;AAErB,MAAMC,QAAA,GAAW,mBAAIC,OAAA,CAAsB;AAC3C,MAAMC,GAAA,GAAM,mBAAID,OAAA,CAAqB;AAE9B,SAASE,mBACdC,OAAA,EACAC,QAAA,GAA4CN,WAAA,EAC5C;EACA,MAAMO,MAAA,GAASC,2BAAA,CAA4BF,QAAQ;EAEnD,MAAMG,IAAA,GAAOJ,OAAA,EAASK,OAAA,EAASC,IAAA,IAAQN,OAAA,EAASK,OAAA;EAGhDZ,KAAA,CAAMc,SAAA,CAAU,MAAM;IACpB,IAAIL,MAAA,KAAWP,WAAA,EAAa;IAE5BD,eAAA,CAAgBc,eAAA,CAAgB;IAEhC,IAAI,CAACV,GAAA,CAAIW,GAAA,CAAIT,OAAO,GAAG;MACrBF,GAAA,CAAIY,GAAA,CAAIV,OAAA,EAAS,GAAGW,IAAA,CAAKC,MAAA,CAAO,CAAC,EAAE;IACrC;IACA,MAAMC,EAAA,GAAKf,GAAA,CAAIgB,GAAA,CAAId,OAAO;IAE1BN,eAAA,CAAgBqB,OAAA,CAAQF,EAAA,EAAIT,IAAA,EAAMF,MAAM;IACxCN,QAAA,CAASc,GAAA,CAAIV,OAAA,EAAS,IAAI;IAE1B,OAAO,MAAM;MACXN,eAAA,CAAgBsB,UAAA,CAAWZ,IAAI;MAC/BR,QAAA,CAASc,GAAA,CAAIV,OAAA,EAAS,KAAK;IAC7B;EACF,GAAG,CAACE,MAAA,EAAQF,OAAO,CAAC;EAEpB,IAAIiB,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,eAAe;IAC1C1B,KAAA,CAAM2B,aAAA,CAAc;MAClBC,WAAA,EAAajB,IAAA,KAASV,eAAA,CAAgB4B,gBAAA,CAAiB;IACzD,CAAC;IACD7B,KAAA,CAAM2B,aAAA,CAAclB,MAAM;EAC5B;AACF;AAEO,SAASC,4BAA4B;EAC1CoB,wBAAA;EACAC,+BAAA;EACAC,cAAA;EACAC,gBAAA;EACAC,eAAA;EACAC,iBAAA;EACAC,kBAAA;EACAC,gBAAA;EACAC,oBAAA;EACAC,6BAAA;EACAC,0BAAA;EACAC,iCAAA;EACAC,mCAAA;EACAC,0CAAA;EACAC,yBAAA;EACAC;AACF,GAAqE;EACnE,OAAOf,wBAAA,IACLC,+BAAA,IACAC,cAAA,IACAC,gBAAA,IACAC,eAAA,IACAC,iBAAA,IACAC,kBAAA,IACAC,gBAAA,IACAC,oBAAA,IACAC,6BAAA,IACAC,0BAAA,IACAC,iCAAA,IACAC,mCAAA,IACAC,0CAAA,IACAC,yBAAA,IACAC,gCAAA,GACE;IACEf,wBAAA;IACAC,+BAAA;IACAC,cAAA;IACAC,gBAAA;IACAC,eAAA;IACAC,iBAAA;IACAC,kBAAA;IACAC,gBAAA;IACAC,oBAAA;IACAC,6BAAA;IACAC,0BAAA;IACAC,iCAAA;IACAC,mCAAA;IACAC,0CAAA;IACAC,yBAAA;IACAC;EACF,IACA3C,WAAA;AACN","ignoreList":[]}
|
|
@@ -1,25 +1,34 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import * as ResponderSystem from "./ResponderSystem.native.js";
|
|
3
3
|
export * from "./utils.native.js";
|
|
4
|
-
var emptyObject = {}
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
var emptyObject = {};
|
|
5
|
+
var Attached = /* @__PURE__ */new WeakMap();
|
|
6
|
+
var Ids = /* @__PURE__ */new WeakMap();
|
|
7
7
|
function useResponderEvents(hostRef) {
|
|
8
|
-
var configIn = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : emptyObject
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
var configIn = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : emptyObject;
|
|
9
|
+
var _hostRef_current;
|
|
10
|
+
var config = getResponderConfigIfDefined(configIn);
|
|
11
|
+
var node = (hostRef === null || hostRef === void 0 ? void 0 : (_hostRef_current = hostRef.current) === null || _hostRef_current === void 0 ? void 0 : _hostRef_current.host) || (hostRef === null || hostRef === void 0 ? void 0 : hostRef.current);
|
|
12
12
|
React.useEffect(function () {
|
|
13
|
-
if (config
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
ResponderSystem.removeNode(node), Attached.set(hostRef, !1);
|
|
18
|
-
};
|
|
13
|
+
if (config === emptyObject) return;
|
|
14
|
+
ResponderSystem.attachListeners();
|
|
15
|
+
if (!Ids.has(hostRef)) {
|
|
16
|
+
Ids.set(hostRef, `${Math.random()}`);
|
|
19
17
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
var id = Ids.get(hostRef);
|
|
19
|
+
ResponderSystem.addNode(id, node, config);
|
|
20
|
+
Attached.set(hostRef, true);
|
|
21
|
+
return function () {
|
|
22
|
+
ResponderSystem.removeNode(node);
|
|
23
|
+
Attached.set(hostRef, false);
|
|
24
|
+
};
|
|
25
|
+
}, [config, hostRef]);
|
|
26
|
+
if (process.env.NODE_ENV === "development") {
|
|
27
|
+
React.useDebugValue({
|
|
28
|
+
isResponder: node === ResponderSystem.getResponderNode()
|
|
29
|
+
});
|
|
30
|
+
React.useDebugValue(config);
|
|
31
|
+
}
|
|
23
32
|
}
|
|
24
33
|
function getResponderConfigIfDefined(param) {
|
|
25
34
|
var {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","ResponderSystem","emptyObject","Attached","WeakMap","Ids","useResponderEvents","hostRef","configIn","arguments","length","_hostRef_current","config","getResponderConfigIfDefined","node","current","host","useEffect","attachListeners","has","set","Math","random","id","get","addNode","removeNode","process","env","NODE_ENV","useDebugValue","isResponder","getResponderNode","param","onMoveShouldSetResponder","onMoveShouldSetResponderCapture","onResponderEnd","onResponderGrant","onResponderMove","onResponderReject","onResponderRelease","onResponderStart","onResponderTerminate","onResponderTerminationRequest","onScrollShouldSetResponder","onScrollShouldSetResponderCapture","onSelectionChangeShouldSetResponder","onSelectionChangeShouldSetResponderCapture","onStartShouldSetResponder","onStartShouldSetResponderCapture"],"sources":["../../src/useResponderEvents.ts"],"sourcesContent":[null],"mappings":"AAMA,YAAYA,KAAA,MAAW;AAEvB,YAAYC,eAAA,MAAqB;AAEjC,cAAc;AAEd,IAAAC,WAAM,KAAc;
|
|
1
|
+
{"version":3,"names":["React","ResponderSystem","emptyObject","Attached","WeakMap","Ids","useResponderEvents","hostRef","configIn","arguments","length","_hostRef_current","config","getResponderConfigIfDefined","node","current","host","useEffect","attachListeners","has","set","Math","random","id","get","addNode","removeNode","process","env","NODE_ENV","useDebugValue","isResponder","getResponderNode","param","onMoveShouldSetResponder","onMoveShouldSetResponderCapture","onResponderEnd","onResponderGrant","onResponderMove","onResponderReject","onResponderRelease","onResponderStart","onResponderTerminate","onResponderTerminationRequest","onScrollShouldSetResponder","onScrollShouldSetResponderCapture","onSelectionChangeShouldSetResponder","onSelectionChangeShouldSetResponderCapture","onStartShouldSetResponder","onStartShouldSetResponderCapture"],"sources":["../../src/useResponderEvents.ts"],"sourcesContent":[null],"mappings":"AAMA,YAAYA,KAAA,MAAW;AAEvB,YAAYC,eAAA,MAAqB;AAEjC,cAAc;AAEd,IAAAC,WAAM,KAAc;AAEpB,IAAAC,QAAM,kBAAW,IAAAC,OAAI;AACrB,IAAAC,GAAM,kBAAM,IAAAD,OAAI;AAET,SAASE,mBACdC,OAAA,EACA;EAEA,IAAAC,QAAM,GAASC,SAAA,CAAAC,MAAA,QAAAD,SAA4B,GAAQ,cAAAA,SAAA,MAAAP,WAAA;EAEnD,IAAAS,gBAAa;EAGb,IAAAC,MAAM,GAAAC,2BAAgB,CAAAL,QAAA;EACpB,IAAAM,IAAI,IAAAP,OAAW,aAAaA,OAAA,wBAAAI,gBAAA,GAAAJ,OAAA,CAAAQ,OAAA,cAAAJ,gBAAA,uBAAAA,gBAAA,CAAAK,IAAA,MAAAT,OAAA,aAAAA,OAAA,uBAAAA,OAAA,CAAAQ,OAAA;EAE5Bf,KAAA,CAAAiB,SAAA,aAAgB;IAEhB,IAAIL,MAAK,KAAIV,WAAU;IACrBD,eAAQ,CAAAiB,eAAiB;IAC3B,KAAAb,GAAA,CAAAc,GAAA,CAAAZ,OAAA;MACAF,GAAA,CAAMe,GAAA,CAAAb,OAAS,EAAI,GAAAc,IAAO,CAAAC,MAAA;IAE1B;IACA,IAAAC,EAAA,GAASlB,GAAA,CAAImB,GAAA,CAAAjB,OAAS;IAEtBN,eAAa,CAAAwB,OAAA,CAAAF,EAAA,EAAAT,IAAA,EAAAF,MAAA;IACXT,QAAA,CAAAiB,GAAA,CAAAb,OAAgB;IAChB,mBAAa;MACfN,eAAA,CAAAyB,UAAA,CAAAZ,IAAA;MACEX,QAAQ,CAAAiB,GAAA,CAAAb,OAAQ;IAEpB;EACE,IAAoBK,MAClB,EACFL,OAAC,CACD;EACF,IAAAoB,OAAA,CAAAC,GAAA,CAAAC,QAAA;IACF7B,KAAA,CAAA8B,aAAA;MAEOC,WAAS,EAAAjB,IAAA,KAAAb,eAA4B,CAAA+B,gBAAA;IAC1C;IACAhC,KAAA,CAAA8B,aAAA,CAAAlB,MAAA;EACA;AAAA;AACA,SACAC,4BAAAoB,KAAA;EACA;IAAAC,wBAAA;IAAAC,+BAAA;IAAAC,cAAA;IAAAC,gBAAA;IAAAC,eAAA;IAAAC,iBAAA;IAAAC,kBAAA;IAAAC,gBAAA;IAAAC,oBAAA;IAAAC,6BAAA;IAAAC,0BAAA;IAAAC,iCAAA;IAAAC,mCAAA;IAAAC,0CAAA;IAAAC,yBAAA;IAAAC;EAAA,IAAAhB,KAAA;EACA,OAAAC,wBAAA,IAAAC,+BAAA,IAAAC,cAAA,IAAAC,gBAAA,IAAAC,eAAA,IAAAC,iBAAA,IAAAC,kBAAA,IAAAC,gBAAA,IAAAC,oBAAA,IAAAC,6BAAA,IAAAC,0BAAA,IAAAC,iCAAA,IAAAC,mCAAA,IAAAC,0CAAA,IAAAC,yBAAA,IAAAC,gCAAA;IACAf,wBAAA;IACAC,+BAAA;IACAC,cAAA;IACAC,gBAAA;IACAC,eAAA;IACAC,iBAAA;IACAC,kBAAA;IACAC,gBAAA;IACAC,oBAAA;IACmEC,6BAAA;IACnEC,0BAAO;IAiBDC,iCAAA;IACAC,mCAAA;IACAC,0CAAA;IACAC,yBAAA;IACAC;EAAA,IACA/C,WAAA;AAAA;AACA,SACAW,2BACA,EAAAP,kBACA","ignoreList":[]}
|
package/dist/esm/utils.mjs
CHANGED
|
@@ -1,34 +1,50 @@
|
|
|
1
|
-
const keyName = "__reactResponderId"
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
const keyName = "__reactResponderId";
|
|
2
|
+
const canUseDOM = !!(typeof window !== "undefined" && window.document && window.document.createElement);
|
|
3
|
+
const getBoundingClientRect = node => {
|
|
4
|
+
if (!node) return;
|
|
5
|
+
if (node.nodeType !== 1) return;
|
|
6
|
+
if (node.getBoundingClientRect) {
|
|
7
|
+
return node.getBoundingClientRect();
|
|
8
|
+
}
|
|
9
|
+
};
|
|
6
10
|
function getEventPath(domEvent) {
|
|
7
11
|
if (domEvent.type === "selectionchange") {
|
|
8
12
|
const target = window.getSelection()?.anchorNode;
|
|
9
13
|
return composedPathFallback(target);
|
|
10
14
|
}
|
|
11
|
-
|
|
15
|
+
const path = domEvent.composedPath != null ? domEvent.composedPath() : composedPathFallback(domEvent.target);
|
|
16
|
+
return path;
|
|
12
17
|
}
|
|
13
18
|
function composedPathFallback(target) {
|
|
14
19
|
const path = [];
|
|
15
|
-
|
|
20
|
+
while (target != null && target !== document.body) {
|
|
21
|
+
path.push(target);
|
|
22
|
+
target = target.parentNode;
|
|
23
|
+
}
|
|
16
24
|
return path;
|
|
17
25
|
}
|
|
18
26
|
function getResponderId(node) {
|
|
19
|
-
|
|
27
|
+
if (node != null) {
|
|
28
|
+
return node[keyName];
|
|
29
|
+
}
|
|
30
|
+
return null;
|
|
20
31
|
}
|
|
21
32
|
function setResponderId(node, id) {
|
|
22
|
-
node != null
|
|
33
|
+
if (node != null) {
|
|
34
|
+
node[keyName] = id;
|
|
35
|
+
}
|
|
23
36
|
}
|
|
24
37
|
function getResponderPaths(domEvent) {
|
|
25
|
-
const idPath = []
|
|
26
|
-
|
|
27
|
-
|
|
38
|
+
const idPath = [];
|
|
39
|
+
const nodePath = [];
|
|
40
|
+
const eventPath = getEventPath(domEvent);
|
|
28
41
|
for (let i = 0; i < eventPath.length; i++) {
|
|
29
|
-
const node = eventPath[i]
|
|
30
|
-
|
|
31
|
-
id != null
|
|
42
|
+
const node = eventPath[i];
|
|
43
|
+
const id = getResponderId(node);
|
|
44
|
+
if (id != null) {
|
|
45
|
+
idPath.push(id);
|
|
46
|
+
nodePath.push(node);
|
|
47
|
+
}
|
|
32
48
|
}
|
|
33
49
|
return {
|
|
34
50
|
idPath,
|
|
@@ -36,60 +52,85 @@ function getResponderPaths(domEvent) {
|
|
|
36
52
|
};
|
|
37
53
|
}
|
|
38
54
|
function getLowestCommonAncestor(pathA, pathB) {
|
|
39
|
-
let pathALength = pathA.length
|
|
40
|
-
|
|
55
|
+
let pathALength = pathA.length;
|
|
56
|
+
let pathBLength = pathB.length;
|
|
41
57
|
if (
|
|
42
58
|
// If either path is empty
|
|
43
59
|
pathALength === 0 || pathBLength === 0 ||
|
|
44
60
|
// If the last elements aren't the same there can't be a common ancestor
|
|
45
61
|
// that is connected to the responder system
|
|
46
|
-
pathA[pathALength - 1] !== pathB[pathBLength - 1])
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
62
|
+
pathA[pathALength - 1] !== pathB[pathBLength - 1]) {
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
let itemA = pathA[0];
|
|
66
|
+
let indexA = 0;
|
|
67
|
+
let itemB = pathB[0];
|
|
68
|
+
let indexB = 0;
|
|
69
|
+
if (pathALength - pathBLength > 0) {
|
|
70
|
+
indexA = pathALength - pathBLength;
|
|
71
|
+
itemA = pathA[indexA];
|
|
72
|
+
pathALength = pathBLength;
|
|
73
|
+
}
|
|
74
|
+
if (pathBLength - pathALength > 0) {
|
|
75
|
+
indexB = pathBLength - pathALength;
|
|
76
|
+
itemB = pathB[indexB];
|
|
77
|
+
pathBLength = pathALength;
|
|
78
|
+
}
|
|
52
79
|
let depth = pathALength;
|
|
53
|
-
|
|
54
|
-
if (itemA === itemB)
|
|
55
|
-
|
|
80
|
+
while (depth--) {
|
|
81
|
+
if (itemA === itemB) {
|
|
82
|
+
return itemA;
|
|
83
|
+
}
|
|
84
|
+
itemA = pathA[indexA++];
|
|
85
|
+
itemB = pathB[indexB++];
|
|
56
86
|
}
|
|
57
87
|
return null;
|
|
58
88
|
}
|
|
59
89
|
function hasTargetTouches(target, touches) {
|
|
60
|
-
if (!touches || touches.length === 0)
|
|
90
|
+
if (!touches || touches.length === 0) {
|
|
91
|
+
return false;
|
|
92
|
+
}
|
|
61
93
|
for (let i = 0; i < touches.length; i++) {
|
|
62
94
|
const node = touches[i].target;
|
|
63
|
-
if (node != null
|
|
95
|
+
if (node != null) {
|
|
96
|
+
if (target.contains(node)) {
|
|
97
|
+
return true;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
64
100
|
}
|
|
65
|
-
return
|
|
101
|
+
return false;
|
|
66
102
|
}
|
|
67
103
|
function hasValidSelection(domEvent) {
|
|
68
|
-
|
|
104
|
+
if (domEvent.type === "selectionchange") {
|
|
105
|
+
return isSelectionValid();
|
|
106
|
+
}
|
|
107
|
+
return domEvent.type === "select";
|
|
69
108
|
}
|
|
70
109
|
function isPrimaryPointerDown(domEvent) {
|
|
71
110
|
const {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
111
|
+
altKey,
|
|
112
|
+
button,
|
|
113
|
+
buttons,
|
|
114
|
+
ctrlKey,
|
|
115
|
+
type
|
|
116
|
+
} = domEvent;
|
|
117
|
+
const isTouch = type === "touchstart" || type === "touchmove";
|
|
118
|
+
const isPrimaryMouseDown = type === "mousedown" && (button === 0 || buttons === 1);
|
|
119
|
+
const isPrimaryMouseMove = type === "mousemove" && buttons === 1;
|
|
120
|
+
const noModifiers = altKey === false && ctrlKey === false;
|
|
121
|
+
if (isTouch || isPrimaryMouseDown && noModifiers || isPrimaryMouseMove && noModifiers) {
|
|
122
|
+
return true;
|
|
123
|
+
}
|
|
124
|
+
return false;
|
|
83
125
|
}
|
|
84
126
|
function isSelectionValid() {
|
|
85
127
|
const selection = window.getSelection();
|
|
86
|
-
if (!selection) return
|
|
87
|
-
const string = selection.toString()
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
return string.length >= 1 && string !==
|
|
92
|
-
` && !!isTextNode;
|
|
128
|
+
if (!selection) return false;
|
|
129
|
+
const string = selection.toString();
|
|
130
|
+
const anchorNode = selection.anchorNode;
|
|
131
|
+
const focusNode = selection.focusNode;
|
|
132
|
+
const isTextNode = anchorNode && anchorNode.nodeType === window.Node.TEXT_NODE || focusNode && focusNode.nodeType === window.Node.TEXT_NODE;
|
|
133
|
+
return string.length >= 1 && string !== "\n" && !!isTextNode;
|
|
93
134
|
}
|
|
94
135
|
export { canUseDOM, getBoundingClientRect, getLowestCommonAncestor, getResponderPaths, hasTargetTouches, hasValidSelection, isPrimaryPointerDown, isSelectionValid, setResponderId };
|
|
95
136
|
//# sourceMappingURL=utils.mjs.map
|