@hanzogui/toast 3.0.2 → 7.3.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/Toast.cjs +149 -141
- package/dist/cjs/Toast.native.js +149 -142
- package/dist/cjs/Toast.native.js.map +1 -1
- package/dist/cjs/ToastAnnounce.cjs +81 -75
- package/dist/cjs/ToastAnnounce.native.js +86 -80
- package/dist/cjs/ToastAnnounce.native.js.map +1 -1
- package/dist/cjs/ToastComposable.cjs +933 -0
- package/dist/cjs/ToastComposable.native.js +1025 -0
- package/dist/cjs/ToastComposable.native.js.map +1 -0
- package/dist/cjs/ToastImperative.cjs +99 -80
- package/dist/cjs/ToastImperative.native.js +104 -96
- package/dist/cjs/ToastImperative.native.js.map +1 -1
- package/dist/cjs/ToastImpl.cjs +303 -241
- package/dist/cjs/ToastImpl.native.js +311 -273
- package/dist/cjs/ToastImpl.native.js.map +1 -1
- package/dist/cjs/ToastItemFrame.cjs +143 -0
- package/dist/cjs/ToastItemFrame.native.js +148 -0
- package/dist/cjs/ToastItemFrame.native.js.map +1 -0
- package/dist/cjs/ToastPortal.cjs +23 -18
- package/dist/cjs/ToastPortal.native.js +27 -22
- package/dist/cjs/ToastPortal.native.js.map +1 -1
- package/dist/cjs/ToastProvider.cjs +103 -99
- package/dist/cjs/ToastProvider.native.js +108 -106
- package/dist/cjs/ToastProvider.native.js.map +1 -1
- package/dist/cjs/ToastState.cjs +311 -0
- package/dist/cjs/ToastState.native.js +324 -0
- package/dist/cjs/ToastState.native.js.map +1 -0
- package/dist/cjs/ToastViewport.cjs +276 -235
- package/dist/cjs/ToastViewport.native.js +302 -274
- package/dist/cjs/ToastViewport.native.js.map +1 -1
- package/dist/cjs/Toaster.cjs +87 -0
- package/dist/cjs/Toaster.native.js +91 -0
- package/dist/cjs/Toaster.native.js.map +1 -0
- package/dist/cjs/constants.cjs +14 -12
- package/dist/cjs/constants.native.js +14 -12
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/cjs/createNativeToast.cjs +43 -35
- package/dist/cjs/createNativeToast.native.js +42 -30
- package/dist/cjs/createNativeToast.native.js.map +1 -1
- package/dist/cjs/dispatchNativeToast.cjs +47 -0
- package/dist/cjs/dispatchNativeToast.native.js +52 -0
- package/dist/cjs/dispatchNativeToast.native.js.map +1 -0
- 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 +7 -5
- package/dist/cjs/types.native.js +7 -5
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/useAnimatedDragGesture.cjs +214 -0
- package/dist/cjs/useAnimatedDragGesture.native.js +224 -0
- package/dist/cjs/useAnimatedDragGesture.native.js.map +1 -0
- package/dist/cjs/useReducedMotion.cjs +74 -0
- package/dist/cjs/useReducedMotion.native.js +83 -0
- package/dist/cjs/useReducedMotion.native.js.map +1 -0
- package/dist/cjs/useToastAnimations.cjs +294 -0
- package/dist/cjs/useToastAnimations.native.js +304 -0
- package/dist/cjs/useToastAnimations.native.js.map +1 -0
- package/dist/cjs/v2.cjs +36 -0
- package/dist/cjs/v2.native.js +39 -0
- package/dist/cjs/v2.native.js.map +1 -0
- package/dist/esm/Toast.mjs +112 -106
- package/dist/esm/Toast.mjs.map +1 -1
- package/dist/esm/Toast.native.js +112 -107
- package/dist/esm/Toast.native.js.map +1 -1
- package/dist/esm/ToastAnnounce.mjs +46 -42
- package/dist/esm/ToastAnnounce.mjs.map +1 -1
- package/dist/esm/ToastAnnounce.native.js +52 -48
- package/dist/esm/ToastAnnounce.native.js.map +1 -1
- package/dist/esm/ToastComposable.mjs +895 -0
- package/dist/esm/ToastComposable.mjs.map +1 -0
- package/dist/esm/ToastComposable.native.js +984 -0
- package/dist/esm/ToastComposable.native.js.map +1 -0
- package/dist/esm/ToastImperative.mjs +71 -54
- package/dist/esm/ToastImperative.mjs.map +1 -1
- package/dist/esm/ToastImperative.native.js +76 -70
- package/dist/esm/ToastImperative.native.js.map +1 -1
- package/dist/esm/ToastImpl.mjs +261 -201
- package/dist/esm/ToastImpl.mjs.map +1 -1
- package/dist/esm/ToastImpl.native.js +270 -234
- package/dist/esm/ToastImpl.native.js.map +1 -1
- package/dist/esm/ToastItemFrame.mjs +114 -0
- package/dist/esm/ToastItemFrame.mjs.map +1 -0
- package/dist/esm/ToastItemFrame.native.js +116 -0
- package/dist/esm/ToastItemFrame.native.js.map +1 -0
- package/dist/esm/ToastPortal.mjs +8 -5
- package/dist/esm/ToastPortal.mjs.map +1 -1
- package/dist/esm/ToastPortal.native.js +12 -9
- package/dist/esm/ToastPortal.native.js.map +1 -1
- package/dist/esm/ToastProvider.mjs +71 -69
- package/dist/esm/ToastProvider.mjs.map +1 -1
- package/dist/esm/ToastProvider.native.js +77 -77
- package/dist/esm/ToastProvider.native.js.map +1 -1
- package/dist/esm/ToastState.mjs +285 -0
- package/dist/esm/ToastState.mjs.map +1 -0
- package/dist/esm/ToastState.native.js +295 -0
- package/dist/esm/ToastState.native.js.map +1 -0
- package/dist/esm/ToastViewport.mjs +238 -199
- package/dist/esm/ToastViewport.mjs.map +1 -1
- package/dist/esm/ToastViewport.native.js +265 -239
- package/dist/esm/ToastViewport.native.js.map +1 -1
- package/dist/esm/Toaster.mjs +51 -0
- package/dist/esm/Toaster.mjs.map +1 -0
- package/dist/esm/Toaster.native.js +52 -0
- package/dist/esm/Toaster.native.js.map +1 -0
- package/dist/esm/constants.mjs +2 -2
- package/dist/esm/constants.mjs.map +1 -1
- package/dist/esm/constants.native.js +2 -2
- package/dist/esm/constants.native.js.map +1 -1
- package/dist/esm/createNativeToast.mjs +29 -24
- package/dist/esm/createNativeToast.mjs.map +1 -1
- package/dist/esm/createNativeToast.native.js +27 -18
- package/dist/esm/createNativeToast.native.js.map +1 -1
- package/dist/esm/dispatchNativeToast.mjs +22 -0
- package/dist/esm/dispatchNativeToast.mjs.map +1 -0
- package/dist/esm/dispatchNativeToast.native.js +24 -0
- package/dist/esm/dispatchNativeToast.native.js.map +1 -0
- package/dist/esm/useAnimatedDragGesture.mjs +178 -0
- package/dist/esm/useAnimatedDragGesture.mjs.map +1 -0
- package/dist/esm/useAnimatedDragGesture.native.js +185 -0
- package/dist/esm/useAnimatedDragGesture.native.js.map +1 -0
- package/dist/esm/useReducedMotion.mjs +38 -0
- package/dist/esm/useReducedMotion.mjs.map +1 -0
- package/dist/esm/useReducedMotion.native.js +44 -0
- package/dist/esm/useReducedMotion.native.js.map +1 -0
- package/dist/esm/useToastAnimations.mjs +258 -0
- package/dist/esm/useToastAnimations.mjs.map +1 -0
- package/dist/esm/useToastAnimations.native.js +265 -0
- package/dist/esm/useToastAnimations.native.js.map +1 -0
- package/dist/esm/v2.mjs +6 -0
- package/dist/esm/v2.mjs.map +1 -0
- package/dist/esm/v2.native.js +6 -0
- package/dist/esm/v2.native.js.map +1 -0
- package/dist/jsx/Toast.mjs +112 -106
- package/dist/jsx/Toast.mjs.map +1 -1
- package/dist/jsx/Toast.native.js +149 -142
- package/dist/jsx/Toast.native.js.map +1 -1
- package/dist/jsx/ToastAnnounce.mjs +46 -42
- package/dist/jsx/ToastAnnounce.mjs.map +1 -1
- package/dist/jsx/ToastAnnounce.native.js +86 -80
- package/dist/jsx/ToastAnnounce.native.js.map +1 -1
- package/dist/jsx/ToastComposable.mjs +895 -0
- package/dist/jsx/ToastComposable.mjs.map +1 -0
- package/dist/jsx/ToastComposable.native.js +1025 -0
- package/dist/jsx/ToastComposable.native.js.map +1 -0
- package/dist/jsx/ToastImperative.mjs +71 -54
- package/dist/jsx/ToastImperative.mjs.map +1 -1
- package/dist/jsx/ToastImperative.native.js +104 -96
- package/dist/jsx/ToastImperative.native.js.map +1 -1
- package/dist/jsx/ToastImpl.mjs +261 -201
- package/dist/jsx/ToastImpl.mjs.map +1 -1
- package/dist/jsx/ToastImpl.native.js +311 -273
- package/dist/jsx/ToastImpl.native.js.map +1 -1
- package/dist/jsx/ToastItemFrame.mjs +114 -0
- package/dist/jsx/ToastItemFrame.mjs.map +1 -0
- package/dist/jsx/ToastItemFrame.native.js +148 -0
- package/dist/jsx/ToastItemFrame.native.js.map +1 -0
- package/dist/jsx/ToastPortal.mjs +8 -5
- package/dist/jsx/ToastPortal.mjs.map +1 -1
- package/dist/jsx/ToastPortal.native.js +27 -22
- package/dist/jsx/ToastPortal.native.js.map +1 -1
- package/dist/jsx/ToastProvider.mjs +71 -69
- package/dist/jsx/ToastProvider.mjs.map +1 -1
- package/dist/jsx/ToastProvider.native.js +108 -106
- package/dist/jsx/ToastProvider.native.js.map +1 -1
- package/dist/jsx/ToastState.mjs +285 -0
- package/dist/jsx/ToastState.mjs.map +1 -0
- package/dist/jsx/ToastState.native.js +324 -0
- package/dist/jsx/ToastState.native.js.map +1 -0
- package/dist/jsx/ToastViewport.mjs +238 -199
- package/dist/jsx/ToastViewport.mjs.map +1 -1
- package/dist/jsx/ToastViewport.native.js +302 -274
- package/dist/jsx/ToastViewport.native.js.map +1 -1
- package/dist/jsx/Toaster.mjs +51 -0
- package/dist/jsx/Toaster.mjs.map +1 -0
- package/dist/jsx/Toaster.native.js +91 -0
- package/dist/jsx/Toaster.native.js.map +1 -0
- package/dist/jsx/constants.mjs +2 -2
- package/dist/jsx/constants.mjs.map +1 -1
- package/dist/jsx/constants.native.js +14 -12
- package/dist/jsx/constants.native.js.map +1 -1
- package/dist/jsx/createNativeToast.mjs +29 -24
- package/dist/jsx/createNativeToast.mjs.map +1 -1
- package/dist/jsx/createNativeToast.native.js +42 -30
- package/dist/jsx/createNativeToast.native.js.map +1 -1
- package/dist/jsx/dispatchNativeToast.mjs +22 -0
- package/dist/jsx/dispatchNativeToast.mjs.map +1 -0
- package/dist/jsx/dispatchNativeToast.native.js +52 -0
- package/dist/jsx/dispatchNativeToast.native.js.map +1 -0
- package/dist/jsx/index.native.js +7 -5
- package/dist/jsx/types.native.js +7 -5
- package/dist/jsx/useAnimatedDragGesture.mjs +178 -0
- package/dist/jsx/useAnimatedDragGesture.mjs.map +1 -0
- package/dist/jsx/useAnimatedDragGesture.native.js +224 -0
- package/dist/jsx/useAnimatedDragGesture.native.js.map +1 -0
- package/dist/jsx/useReducedMotion.mjs +38 -0
- package/dist/jsx/useReducedMotion.mjs.map +1 -0
- package/dist/jsx/useReducedMotion.native.js +83 -0
- package/dist/jsx/useReducedMotion.native.js.map +1 -0
- package/dist/jsx/useToastAnimations.mjs +258 -0
- package/dist/jsx/useToastAnimations.mjs.map +1 -0
- package/dist/jsx/useToastAnimations.native.js +304 -0
- package/dist/jsx/useToastAnimations.native.js.map +1 -0
- package/dist/jsx/v2.mjs +6 -0
- package/dist/jsx/v2.mjs.map +1 -0
- package/dist/jsx/v2.native.js +39 -0
- package/dist/jsx/v2.native.js.map +1 -0
- package/package.json +43 -24
- package/src/Toast.tsx +2 -2
- package/src/ToastComposable.tsx +1380 -0
- package/src/ToastImpl.tsx +15 -3
- package/src/ToastItemFrame.tsx +136 -0
- package/src/ToastPortal.tsx +2 -2
- package/src/ToastProvider.tsx +8 -1
- package/src/ToastState.ts +398 -0
- package/src/ToastViewport.tsx +6 -5
- package/src/Toaster.tsx +181 -0
- package/src/createNativeToast.native.tsx +4 -0
- package/src/createNativeToast.tsx +18 -24
- package/src/dispatchNativeToast.ts +43 -0
- package/src/useAnimatedDragGesture.native.ts +255 -0
- package/src/useAnimatedDragGesture.ts +319 -0
- package/src/useReducedMotion.ts +59 -0
- package/src/useToastAnimations.ts +377 -0
- package/src/v2.ts +31 -0
- package/types/Toast.d.ts +34 -34
- package/types/Toast.d.ts.map +1 -0
- package/types/ToastAnnounce.d.ts +4 -4
- package/types/ToastAnnounce.d.ts.map +1 -0
- package/types/ToastComposable.d.ts +199 -0
- package/types/ToastComposable.d.ts.map +1 -0
- package/types/ToastImperative.d.ts +3 -3
- package/types/ToastImperative.d.ts.map +1 -0
- package/types/ToastImpl.d.ts +11 -11
- package/types/ToastImpl.d.ts.map +1 -0
- package/types/ToastItemFrame.d.ts +25 -0
- package/types/ToastItemFrame.d.ts.map +1 -0
- package/types/ToastPortal.d.ts +1 -1
- package/types/ToastPortal.d.ts.map +1 -0
- package/types/ToastProvider.d.ts +4 -4
- package/types/ToastProvider.d.ts.map +1 -0
- package/types/ToastState.d.ts +179 -0
- package/types/ToastState.d.ts.map +1 -0
- package/types/ToastViewport.d.ts +10 -10
- package/types/ToastViewport.d.ts.map +1 -0
- package/types/Toaster.d.ts +112 -0
- package/types/Toaster.d.ts.map +1 -0
- package/types/constants.d.ts.map +1 -0
- package/types/createNativeToast.d.ts +5 -0
- package/types/createNativeToast.d.ts.map +1 -0
- package/types/createNativeToast.native.d.ts +1 -0
- package/types/createNativeToast.native.d.ts.map +1 -0
- package/types/dispatchNativeToast.d.ts +12 -0
- package/types/dispatchNativeToast.d.ts.map +1 -0
- package/types/index.d.ts.map +1 -0
- package/types/types.d.ts.map +1 -0
- package/types/useAnimatedDragGesture.d.ts +33 -0
- package/types/useAnimatedDragGesture.d.ts.map +1 -0
- package/types/useAnimatedDragGesture.native.d.ts +33 -0
- package/types/useAnimatedDragGesture.native.d.ts.map +1 -0
- package/types/useReducedMotion.d.ts +6 -0
- package/types/useReducedMotion.d.ts.map +1 -0
- package/types/useToastAnimations.d.ts +50 -0
- package/types/useToastAnimations.d.ts.map +1 -0
- package/types/v2.d.ts +10 -0
- package/types/v2.d.ts.map +1 -0
- package/v2/index.cjs +2 -0
- package/v2/index.js +2 -0
- package/v2/index.native.cjs +2 -0
- package/v2/index.native.js +2 -0
- package/LICENSE +0 -21
package/dist/cjs/index.cjs
CHANGED
|
@@ -3,15 +3,17 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
5
|
var __copyProps = (to, from, except, desc) => {
|
|
6
|
-
|
|
6
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
7
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
7
8
|
get: () => from[key],
|
|
8
9
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
9
10
|
});
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
13
15
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
14
|
-
value:
|
|
16
|
+
value: true
|
|
15
17
|
}), mod);
|
|
16
18
|
var index_exports = {};
|
|
17
19
|
module.exports = __toCommonJS(index_exports);
|
package/dist/cjs/index.native.js
CHANGED
|
@@ -5,15 +5,17 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __copyProps = (to, from, except, desc) => {
|
|
8
|
-
|
|
8
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
9
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
9
10
|
get: () => from[key],
|
|
10
11
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
11
12
|
});
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
}
|
|
14
|
+
return to;
|
|
15
|
+
};
|
|
16
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
15
17
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
16
|
-
value:
|
|
18
|
+
value: true
|
|
17
19
|
}), mod);
|
|
18
20
|
var index_exports = {};
|
|
19
21
|
module.exports = __toCommonJS(index_exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","index_exports","module","exports"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","index_exports","module","exports"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,aAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAP,YAAc,CAAAK,aAAA","ignoreList":[]}
|
package/dist/cjs/types.cjs
CHANGED
|
@@ -3,14 +3,16 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
5
|
var __copyProps = (to, from, except, desc) => {
|
|
6
|
-
if (from && typeof from
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
7
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
8
|
+
get: () => from[key],
|
|
9
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
10
|
+
});
|
|
11
|
+
}
|
|
10
12
|
return to;
|
|
11
13
|
};
|
|
12
14
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
13
|
-
value:
|
|
15
|
+
value: true
|
|
14
16
|
}), mod);
|
|
15
17
|
var types_exports = {};
|
|
16
18
|
module.exports = __toCommonJS(types_exports);
|
package/dist/cjs/types.native.js
CHANGED
|
@@ -5,14 +5,16 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __copyProps = (to, from, except, desc) => {
|
|
8
|
-
if (from && typeof from
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
9
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
10
|
+
get: () => from[key],
|
|
11
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
12
|
+
});
|
|
13
|
+
}
|
|
12
14
|
return to;
|
|
13
15
|
};
|
|
14
16
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
15
|
-
value:
|
|
17
|
+
value: true
|
|
16
18
|
}), mod);
|
|
17
19
|
var types_exports = {};
|
|
18
20
|
module.exports = __toCommonJS(types_exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","types_exports"],"sources":["../../src/types.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","types_exports"],"sources":["../../src/types.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,aAAA","ignoreList":[]}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
23
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
24
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
25
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
26
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
27
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
28
|
+
value: mod,
|
|
29
|
+
enumerable: true
|
|
30
|
+
}) : target, mod));
|
|
31
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
32
|
+
value: true
|
|
33
|
+
}), mod);
|
|
34
|
+
var useAnimatedDragGesture_exports = {};
|
|
35
|
+
__export(useAnimatedDragGesture_exports, {
|
|
36
|
+
useAnimatedDragGesture: () => useAnimatedDragGesture
|
|
37
|
+
});
|
|
38
|
+
module.exports = __toCommonJS(useAnimatedDragGesture_exports);
|
|
39
|
+
var React = __toESM(require("react"), 1);
|
|
40
|
+
const VELOCITY_THRESHOLD = 0.11;
|
|
41
|
+
function resisted(delta, maxResist = 25) {
|
|
42
|
+
if (delta >= 0) return delta;
|
|
43
|
+
const pastBoundary = Math.abs(delta);
|
|
44
|
+
const resistedDistance = Math.sqrt(pastBoundary) * 2;
|
|
45
|
+
return -Math.min(resistedDistance, maxResist);
|
|
46
|
+
}
|
|
47
|
+
const EXIT_DRAG_CAP = 80;
|
|
48
|
+
function cappedExit(delta) {
|
|
49
|
+
if (Math.abs(delta) <= EXIT_DRAG_CAP) return delta;
|
|
50
|
+
const sign = delta > 0 ? 1 : -1;
|
|
51
|
+
const overshoot = Math.abs(delta) - EXIT_DRAG_CAP;
|
|
52
|
+
return sign * (EXIT_DRAG_CAP + Math.sqrt(overshoot) * 2);
|
|
53
|
+
}
|
|
54
|
+
function useAnimatedDragGesture(options) {
|
|
55
|
+
const {
|
|
56
|
+
direction,
|
|
57
|
+
threshold,
|
|
58
|
+
disabled,
|
|
59
|
+
expanded,
|
|
60
|
+
onDragMove,
|
|
61
|
+
onDragStart,
|
|
62
|
+
onDismiss,
|
|
63
|
+
onCancel
|
|
64
|
+
} = options;
|
|
65
|
+
const [isDragging, setIsDragging] = React.useState(false);
|
|
66
|
+
const dragStartRef = React.useRef(null);
|
|
67
|
+
const lockedDirectionRef = React.useRef(null);
|
|
68
|
+
const captureElementRef = React.useRef(null);
|
|
69
|
+
const isHorizontal = direction === "left" || direction === "right" || direction === "horizontal";
|
|
70
|
+
const isVertical = direction === "up" || direction === "down" || direction === "vertical";
|
|
71
|
+
const preventSelectRef = React.useRef(null);
|
|
72
|
+
function startPreventingSelection() {
|
|
73
|
+
if (typeof document === "undefined") return;
|
|
74
|
+
window.getSelection()?.removeAllRanges();
|
|
75
|
+
const handler = e => e.preventDefault();
|
|
76
|
+
preventSelectRef.current = handler;
|
|
77
|
+
document.addEventListener("selectstart", handler, true);
|
|
78
|
+
}
|
|
79
|
+
function stopPreventingSelection() {
|
|
80
|
+
if (preventSelectRef.current) {
|
|
81
|
+
document.removeEventListener("selectstart", preventSelectRef.current, true);
|
|
82
|
+
preventSelectRef.current = null;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
const cleanup = React.useCallback(() => {
|
|
86
|
+
dragStartRef.current = null;
|
|
87
|
+
lockedDirectionRef.current = null;
|
|
88
|
+
setIsDragging(false);
|
|
89
|
+
stopPreventingSelection();
|
|
90
|
+
}, []);
|
|
91
|
+
React.useEffect(() => {
|
|
92
|
+
return () => {
|
|
93
|
+
if (dragStartRef.current) {
|
|
94
|
+
if (captureElementRef.current && dragStartRef.current.pointerId) {
|
|
95
|
+
try {
|
|
96
|
+
captureElementRef.current.releasePointerCapture(dragStartRef.current.pointerId);
|
|
97
|
+
} catch {}
|
|
98
|
+
}
|
|
99
|
+
cleanup();
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
}, [cleanup]);
|
|
103
|
+
const handlePointerDown = React.useCallback(event => {
|
|
104
|
+
if (disabled) return;
|
|
105
|
+
if (event.button !== 0) return;
|
|
106
|
+
const target = event.target;
|
|
107
|
+
if (target.closest('button, a, input, textarea, select, [role="button"]')) {
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
const hasSelection = (window.getSelection()?.toString().length ?? 0) > 0;
|
|
111
|
+
if (hasSelection) return;
|
|
112
|
+
const captureElement = event.currentTarget;
|
|
113
|
+
captureElementRef.current = captureElement;
|
|
114
|
+
captureElement.setPointerCapture(event.pointerId);
|
|
115
|
+
dragStartRef.current = {
|
|
116
|
+
startX: event.clientX,
|
|
117
|
+
startY: event.clientY,
|
|
118
|
+
startTime: Date.now(),
|
|
119
|
+
pointerId: event.pointerId
|
|
120
|
+
};
|
|
121
|
+
startPreventingSelection();
|
|
122
|
+
setIsDragging(true);
|
|
123
|
+
onDragStart?.();
|
|
124
|
+
}, [disabled, onDragStart]);
|
|
125
|
+
const handlePointerMove = React.useCallback(event => {
|
|
126
|
+
if (!dragStartRef.current || disabled) return;
|
|
127
|
+
const deltaX = event.clientX - dragStartRef.current.startX;
|
|
128
|
+
const deltaY = event.clientY - dragStartRef.current.startY;
|
|
129
|
+
if (!lockedDirectionRef.current && (Math.abs(deltaX) > 1 || Math.abs(deltaY) > 1)) {
|
|
130
|
+
lockedDirectionRef.current = Math.abs(deltaX) > Math.abs(deltaY) ? "x" : "y";
|
|
131
|
+
}
|
|
132
|
+
let offsetX = 0;
|
|
133
|
+
let offsetY = 0;
|
|
134
|
+
if (direction === "right") {
|
|
135
|
+
offsetX = deltaX > 0 ? cappedExit(deltaX) : resisted(deltaX);
|
|
136
|
+
} else if (direction === "left") {
|
|
137
|
+
offsetX = deltaX < 0 ? cappedExit(deltaX) : -resisted(-deltaX);
|
|
138
|
+
} else if (direction === "down") {
|
|
139
|
+
offsetY = deltaY > 0 ? cappedExit(deltaY) : resisted(deltaY);
|
|
140
|
+
} else if (direction === "up") {
|
|
141
|
+
offsetY = deltaY < 0 ? cappedExit(deltaY) : -resisted(-deltaY);
|
|
142
|
+
} else if (direction === "horizontal") {
|
|
143
|
+
offsetX = cappedExit(deltaX);
|
|
144
|
+
} else if (direction === "vertical") {
|
|
145
|
+
offsetY = cappedExit(deltaY);
|
|
146
|
+
}
|
|
147
|
+
onDragMove(offsetX, offsetY);
|
|
148
|
+
}, [disabled, direction, expanded, isHorizontal, isVertical, onDragMove]);
|
|
149
|
+
const handlePointerUp = React.useCallback(event => {
|
|
150
|
+
if (!dragStartRef.current || disabled) return;
|
|
151
|
+
const deltaX = event.clientX - dragStartRef.current.startX;
|
|
152
|
+
const deltaY = event.clientY - dragStartRef.current.startY;
|
|
153
|
+
const timeTaken = Date.now() - dragStartRef.current.startTime;
|
|
154
|
+
const velocityX = Math.abs(deltaX) / timeTaken;
|
|
155
|
+
const velocityY = Math.abs(deltaY) / timeTaken;
|
|
156
|
+
const lockedDirection = lockedDirectionRef.current;
|
|
157
|
+
const isLockedToWrongAxis = lockedDirection === "y" && isHorizontal || lockedDirection === "x" && isVertical;
|
|
158
|
+
const relevantDelta = isHorizontal ? deltaX : deltaY;
|
|
159
|
+
const relevantVelocity = isHorizontal ? velocityX : velocityY;
|
|
160
|
+
const passedThreshold = Math.abs(relevantDelta) >= threshold;
|
|
161
|
+
const hasVelocity = relevantVelocity > VELOCITY_THRESHOLD;
|
|
162
|
+
let exitDirection = null;
|
|
163
|
+
if (!isLockedToWrongAxis) {
|
|
164
|
+
if (direction === "right" && deltaX > 0) exitDirection = "right";else if (direction === "left" && deltaX < 0) exitDirection = "left";else if (direction === "horizontal") {
|
|
165
|
+
if (Math.abs(deltaX) > Math.abs(deltaY)) {
|
|
166
|
+
exitDirection = deltaX > 0 ? "right" : "left";
|
|
167
|
+
}
|
|
168
|
+
} else if (direction === "down" && deltaY > 0) exitDirection = "down";else if (direction === "up" && deltaY < 0) exitDirection = "up";else if (direction === "vertical") {
|
|
169
|
+
if (Math.abs(deltaY) > Math.abs(deltaX)) {
|
|
170
|
+
exitDirection = deltaY > 0 ? "down" : "up";
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
const shouldDismiss = exitDirection && (passedThreshold || hasVelocity);
|
|
175
|
+
if (captureElementRef.current) {
|
|
176
|
+
try {
|
|
177
|
+
captureElementRef.current.releasePointerCapture(event.pointerId);
|
|
178
|
+
} catch {}
|
|
179
|
+
}
|
|
180
|
+
cleanup();
|
|
181
|
+
if (shouldDismiss && exitDirection) {
|
|
182
|
+
onDismiss(exitDirection, relevantVelocity);
|
|
183
|
+
} else {
|
|
184
|
+
onCancel();
|
|
185
|
+
}
|
|
186
|
+
}, [disabled, direction, threshold, isHorizontal, isVertical, onDismiss, onCancel, cleanup]);
|
|
187
|
+
const handlePointerCancel = React.useCallback(event => {
|
|
188
|
+
if (captureElementRef.current) {
|
|
189
|
+
try {
|
|
190
|
+
captureElementRef.current.releasePointerCapture(event.pointerId);
|
|
191
|
+
} catch {}
|
|
192
|
+
}
|
|
193
|
+
cleanup();
|
|
194
|
+
onCancel();
|
|
195
|
+
}, [onCancel, cleanup]);
|
|
196
|
+
const handleLostPointerCapture = React.useCallback(() => {
|
|
197
|
+
if (dragStartRef.current) {
|
|
198
|
+
cleanup();
|
|
199
|
+
onCancel();
|
|
200
|
+
}
|
|
201
|
+
}, [onCancel, cleanup]);
|
|
202
|
+
const gestureHandlers = {
|
|
203
|
+
onPointerDown: handlePointerDown,
|
|
204
|
+
onPointerMove: handlePointerMove,
|
|
205
|
+
onPointerUp: handlePointerUp,
|
|
206
|
+
onPointerCancel: handlePointerCancel,
|
|
207
|
+
onLostPointerCapture: handleLostPointerCapture
|
|
208
|
+
};
|
|
209
|
+
return {
|
|
210
|
+
isDragging,
|
|
211
|
+
gestureHandlers,
|
|
212
|
+
gesture: null
|
|
213
|
+
};
|
|
214
|
+
}
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __export = (target, all) => {
|
|
10
|
+
for (var name in all) __defProp(target, name, {
|
|
11
|
+
get: all[name],
|
|
12
|
+
enumerable: true
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
var __copyProps = (to, from, except, desc) => {
|
|
16
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
17
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
18
|
+
get: () => from[key],
|
|
19
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
return to;
|
|
23
|
+
};
|
|
24
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
25
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
26
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
27
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
28
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
29
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
30
|
+
value: mod,
|
|
31
|
+
enumerable: true
|
|
32
|
+
}) : target, mod));
|
|
33
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
34
|
+
value: true
|
|
35
|
+
}), mod);
|
|
36
|
+
var useAnimatedDragGesture_native_exports = {};
|
|
37
|
+
__export(useAnimatedDragGesture_native_exports, {
|
|
38
|
+
useAnimatedDragGesture: () => useAnimatedDragGesture
|
|
39
|
+
});
|
|
40
|
+
module.exports = __toCommonJS(useAnimatedDragGesture_native_exports);
|
|
41
|
+
var import_native = require("@hanzogui/native");
|
|
42
|
+
var React = __toESM(require("react"), 1);
|
|
43
|
+
var import_react_native = require("react-native");
|
|
44
|
+
var VELOCITY_THRESHOLD = 0.11;
|
|
45
|
+
var GESTURE_GRANT_THRESHOLD = 10;
|
|
46
|
+
function resisted(delta) {
|
|
47
|
+
var maxResist = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 25;
|
|
48
|
+
if (delta >= 0) return delta;
|
|
49
|
+
var pastBoundary = Math.abs(delta);
|
|
50
|
+
var resistedDistance = Math.sqrt(pastBoundary) * 2;
|
|
51
|
+
return -Math.min(resistedDistance, maxResist);
|
|
52
|
+
}
|
|
53
|
+
var EXIT_DRAG_CAP = 80;
|
|
54
|
+
function cappedExit(delta) {
|
|
55
|
+
if (Math.abs(delta) <= EXIT_DRAG_CAP) return delta;
|
|
56
|
+
var sign = delta > 0 ? 1 : -1;
|
|
57
|
+
var overshoot = Math.abs(delta) - EXIT_DRAG_CAP;
|
|
58
|
+
return sign * (EXIT_DRAG_CAP + Math.sqrt(overshoot) * 2);
|
|
59
|
+
}
|
|
60
|
+
function computeOffset(direction, dx, dy) {
|
|
61
|
+
var offsetX = 0;
|
|
62
|
+
var offsetY = 0;
|
|
63
|
+
if (direction === "right") {
|
|
64
|
+
offsetX = dx > 0 ? cappedExit(dx) : resisted(dx);
|
|
65
|
+
} else if (direction === "left") {
|
|
66
|
+
offsetX = dx < 0 ? cappedExit(dx) : -resisted(-dx);
|
|
67
|
+
} else if (direction === "down") {
|
|
68
|
+
offsetY = dy > 0 ? cappedExit(dy) : resisted(dy);
|
|
69
|
+
} else if (direction === "up") {
|
|
70
|
+
offsetY = dy < 0 ? cappedExit(dy) : -resisted(-dy);
|
|
71
|
+
} else if (direction === "horizontal") {
|
|
72
|
+
offsetX = cappedExit(dx);
|
|
73
|
+
} else if (direction === "vertical") {
|
|
74
|
+
offsetY = cappedExit(dy);
|
|
75
|
+
}
|
|
76
|
+
return {
|
|
77
|
+
offsetX,
|
|
78
|
+
offsetY
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
function computeExitDirection(direction, dx, dy) {
|
|
82
|
+
if (direction === "right" && dx > 0) return "right";
|
|
83
|
+
if (direction === "left" && dx < 0) return "left";
|
|
84
|
+
if (direction === "horizontal") {
|
|
85
|
+
if (Math.abs(dx) > Math.abs(dy)) return dx > 0 ? "right" : "left";
|
|
86
|
+
}
|
|
87
|
+
if (direction === "down" && dy > 0) return "down";
|
|
88
|
+
if (direction === "up" && dy < 0) return "up";
|
|
89
|
+
if (direction === "vertical") {
|
|
90
|
+
if (Math.abs(dy) > Math.abs(dx)) return dy > 0 ? "down" : "up";
|
|
91
|
+
}
|
|
92
|
+
return null;
|
|
93
|
+
}
|
|
94
|
+
function shouldGrantGestureMove(dir, dx, dy) {
|
|
95
|
+
var absDx = Math.abs(dx);
|
|
96
|
+
var absDy = Math.abs(dy);
|
|
97
|
+
if ((dir === "horizontal" || dir === "left" || dir === "right") && absDx > GESTURE_GRANT_THRESHOLD && absDx > absDy) {
|
|
98
|
+
return true;
|
|
99
|
+
}
|
|
100
|
+
if ((dir === "vertical" || dir === "up" || dir === "down") && absDy > GESTURE_GRANT_THRESHOLD && absDy > absDx) {
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
105
|
+
function useAnimatedDragGesture(options) {
|
|
106
|
+
var {
|
|
107
|
+
direction,
|
|
108
|
+
threshold,
|
|
109
|
+
disabled
|
|
110
|
+
} = options;
|
|
111
|
+
var [isDragging, setIsDragging] = React.useState(false);
|
|
112
|
+
var isHorizontal = direction === "left" || direction === "right" || direction === "horizontal";
|
|
113
|
+
var gestureRef = React.useRef(null);
|
|
114
|
+
var onDragMoveRef = React.useRef(options.onDragMove);
|
|
115
|
+
var onDragStartRef = React.useRef(options.onDragStart);
|
|
116
|
+
var onDismissRef = React.useRef(options.onDismiss);
|
|
117
|
+
var onCancelRef = React.useRef(options.onCancel);
|
|
118
|
+
onDragMoveRef.current = options.onDragMove;
|
|
119
|
+
onDragStartRef.current = options.onDragStart;
|
|
120
|
+
onDismissRef.current = options.onDismiss;
|
|
121
|
+
onCancelRef.current = options.onCancel;
|
|
122
|
+
var rnghEnabled = (0, import_native.getGestureHandler)().isEnabled;
|
|
123
|
+
var gesture = React.useMemo(function () {
|
|
124
|
+
if (!rnghEnabled || disabled) return null;
|
|
125
|
+
var {
|
|
126
|
+
Gesture
|
|
127
|
+
} = (0, import_native.getGestureHandler)().state;
|
|
128
|
+
if (!Gesture) return null;
|
|
129
|
+
var pan = Gesture.Pan().withRef(gestureRef).shouldCancelWhenOutside(false).runOnJS(true);
|
|
130
|
+
if (isHorizontal) {
|
|
131
|
+
pan.activeOffsetX([-10, 10]);
|
|
132
|
+
pan.failOffsetY([-20, 20]);
|
|
133
|
+
} else {
|
|
134
|
+
pan.activeOffsetY([-10, 10]);
|
|
135
|
+
pan.failOffsetX([-20, 20]);
|
|
136
|
+
}
|
|
137
|
+
pan.onStart(function () {
|
|
138
|
+
var _onDragStartRef_current;
|
|
139
|
+
setIsDragging(true);
|
|
140
|
+
(_onDragStartRef_current = onDragStartRef.current) === null || _onDragStartRef_current === void 0 ? void 0 : _onDragStartRef_current.call(onDragStartRef);
|
|
141
|
+
}).onChange(function (event) {
|
|
142
|
+
var {
|
|
143
|
+
offsetX,
|
|
144
|
+
offsetY
|
|
145
|
+
} = computeOffset(direction, event.translationX, event.translationY);
|
|
146
|
+
onDragMoveRef.current(offsetX, offsetY);
|
|
147
|
+
}).onEnd(function (event) {
|
|
148
|
+
var dx = event.translationX;
|
|
149
|
+
var dy = event.translationY;
|
|
150
|
+
var relevantDelta = isHorizontal ? dx : dy;
|
|
151
|
+
var relevantVelocity = isHorizontal ? Math.abs(event.velocityX / 1e3) : Math.abs(event.velocityY / 1e3);
|
|
152
|
+
var passedThreshold = Math.abs(relevantDelta) >= threshold;
|
|
153
|
+
var hasVelocity = relevantVelocity > VELOCITY_THRESHOLD;
|
|
154
|
+
var exitDirection = computeExitDirection(direction, dx, dy);
|
|
155
|
+
var shouldDismiss = exitDirection && (passedThreshold || hasVelocity);
|
|
156
|
+
setIsDragging(false);
|
|
157
|
+
if (shouldDismiss && exitDirection) {
|
|
158
|
+
onDismissRef.current(exitDirection, relevantVelocity);
|
|
159
|
+
} else {
|
|
160
|
+
onCancelRef.current();
|
|
161
|
+
}
|
|
162
|
+
}).onFinalize(function () {
|
|
163
|
+
setIsDragging(false);
|
|
164
|
+
});
|
|
165
|
+
return pan;
|
|
166
|
+
}, [disabled, direction, threshold, isHorizontal, rnghEnabled]);
|
|
167
|
+
var panResponder = React.useMemo(function () {
|
|
168
|
+
if (rnghEnabled || disabled) return null;
|
|
169
|
+
return import_react_native.PanResponder.create({
|
|
170
|
+
onMoveShouldSetPanResponder: function (_e, g) {
|
|
171
|
+
return shouldGrantGestureMove(direction, g.dx, g.dy);
|
|
172
|
+
},
|
|
173
|
+
onMoveShouldSetPanResponderCapture: function (_e, g) {
|
|
174
|
+
return shouldGrantGestureMove(direction, g.dx, g.dy);
|
|
175
|
+
},
|
|
176
|
+
onPanResponderTerminationRequest: function () {
|
|
177
|
+
return false;
|
|
178
|
+
},
|
|
179
|
+
onPanResponderGrant: function () {
|
|
180
|
+
var _onDragStartRef_current;
|
|
181
|
+
setIsDragging(true);
|
|
182
|
+
(_onDragStartRef_current = onDragStartRef.current) === null || _onDragStartRef_current === void 0 ? void 0 : _onDragStartRef_current.call(onDragStartRef);
|
|
183
|
+
},
|
|
184
|
+
onPanResponderMove: function (_e, g) {
|
|
185
|
+
var {
|
|
186
|
+
offsetX,
|
|
187
|
+
offsetY
|
|
188
|
+
} = computeOffset(direction, g.dx, g.dy);
|
|
189
|
+
onDragMoveRef.current(offsetX, offsetY);
|
|
190
|
+
},
|
|
191
|
+
onPanResponderRelease: function (_e, g) {
|
|
192
|
+
var {
|
|
193
|
+
dx,
|
|
194
|
+
dy,
|
|
195
|
+
vx,
|
|
196
|
+
vy
|
|
197
|
+
} = g;
|
|
198
|
+
var relevantDelta = isHorizontal ? dx : dy;
|
|
199
|
+
var relevantVelocity = isHorizontal ? Math.abs(vx) : Math.abs(vy);
|
|
200
|
+
var passedThreshold = Math.abs(relevantDelta) >= threshold;
|
|
201
|
+
var hasVelocity = relevantVelocity > VELOCITY_THRESHOLD;
|
|
202
|
+
var exitDirection = computeExitDirection(direction, dx, dy);
|
|
203
|
+
var shouldDismiss = exitDirection && (passedThreshold || hasVelocity);
|
|
204
|
+
setIsDragging(false);
|
|
205
|
+
if (shouldDismiss && exitDirection) {
|
|
206
|
+
onDismissRef.current(exitDirection, relevantVelocity);
|
|
207
|
+
} else {
|
|
208
|
+
onCancelRef.current();
|
|
209
|
+
}
|
|
210
|
+
},
|
|
211
|
+
onPanResponderTerminate: function () {
|
|
212
|
+
setIsDragging(false);
|
|
213
|
+
onCancelRef.current();
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
}, [disabled, direction, threshold, isHorizontal, rnghEnabled]);
|
|
217
|
+
var _panResponder_panHandlers;
|
|
218
|
+
return {
|
|
219
|
+
isDragging,
|
|
220
|
+
gestureHandlers: (_panResponder_panHandlers = panResponder === null || panResponder === void 0 ? void 0 : panResponder.panHandlers) !== null && _panResponder_panHandlers !== void 0 ? _panResponder_panHandlers : {},
|
|
221
|
+
gesture
|
|
222
|
+
};
|
|
223
|
+
}
|
|
224
|
+
//# sourceMappingURL=useAnimatedDragGesture.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useAnimatedDragGesture_native_exports","__export","useAnimatedDragGesture","module","exports","__toCommonJS","import_native","require","React","__toESM","import_react_native","VELOCITY_THRESHOLD","GESTURE_GRANT_THRESHOLD","resisted","delta","maxResist","arguments","length","pastBoundary","Math","abs","resistedDistance","sqrt","min","EXIT_DRAG_CAP","cappedExit","sign","overshoot","computeOffset","direction","dx","dy","offsetX","offsetY","computeExitDirection","shouldGrantGestureMove","dir","absDx","absDy","options","threshold","disabled","isDragging","setIsDragging","useState","isHorizontal","gestureRef","useRef","onDragMoveRef","onDragMove","onDragStartRef","onDragStart","onDismissRef","onDismiss","onCancelRef","onCancel","current","rnghEnabled","getGestureHandler","isEnabled","gesture","useMemo","Gesture","state","pan","Pan","withRef","shouldCancelWhenOutside","runOnJS","activeOffsetX","failOffsetY","activeOffsetY","failOffsetX","onStart","_onDragStartRef_current","call","onChange","event","translationX","translationY","onEnd","relevantDelta","relevantVelocity","velocityX","velocityY","passedThreshold","hasVelocity","exitDirection","shouldDismiss","onFinalize","panResponder","PanResponder","create","onMoveShouldSetPanResponder","_e","g","onMoveShouldSetPanResponderCapture","onPanResponderTerminationRequest","onPanResponderGrant","onPanResponderMove","onPanResponderRelease","vx","vy","onPanResponderTerminate","_panResponder_panHandlers","gestureHandlers","panHandlers"],"sources":["../../src/useAnimatedDragGesture.native.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
23
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
24
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
25
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
26
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
27
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
28
|
+
value: mod,
|
|
29
|
+
enumerable: true
|
|
30
|
+
}) : target, mod));
|
|
31
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
32
|
+
value: true
|
|
33
|
+
}), mod);
|
|
34
|
+
var useReducedMotion_exports = {};
|
|
35
|
+
__export(useReducedMotion_exports, {
|
|
36
|
+
useReducedMotion: () => useReducedMotion
|
|
37
|
+
});
|
|
38
|
+
module.exports = __toCommonJS(useReducedMotion_exports);
|
|
39
|
+
var import_constants = require("@hanzogui/constants");
|
|
40
|
+
var React = __toESM(require("react"), 1);
|
|
41
|
+
let cachedResult = null;
|
|
42
|
+
function getReducedMotion() {
|
|
43
|
+
if (cachedResult !== null) return cachedResult;
|
|
44
|
+
if (!import_constants.isWeb) {
|
|
45
|
+
cachedResult = false;
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
if (typeof window === "undefined") {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
cachedResult = window.matchMedia?.("(prefers-reduced-motion: reduce)")?.matches ?? false;
|
|
52
|
+
return cachedResult;
|
|
53
|
+
}
|
|
54
|
+
function useReducedMotion(forceReducedMotion) {
|
|
55
|
+
const [reducedMotion, setReducedMotion] = React.useState(() => forceReducedMotion ?? getReducedMotion());
|
|
56
|
+
React.useEffect(() => {
|
|
57
|
+
if (forceReducedMotion !== void 0) {
|
|
58
|
+
setReducedMotion(forceReducedMotion);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
if (!import_constants.isWeb || typeof window === "undefined") return;
|
|
62
|
+
const mediaQuery = window.matchMedia?.("(prefers-reduced-motion: reduce)");
|
|
63
|
+
if (!mediaQuery) return;
|
|
64
|
+
const handleChange = e => {
|
|
65
|
+
cachedResult = e.matches;
|
|
66
|
+
setReducedMotion(e.matches);
|
|
67
|
+
};
|
|
68
|
+
mediaQuery.addEventListener?.("change", handleChange);
|
|
69
|
+
return () => {
|
|
70
|
+
mediaQuery.removeEventListener?.("change", handleChange);
|
|
71
|
+
};
|
|
72
|
+
}, [forceReducedMotion]);
|
|
73
|
+
return reducedMotion;
|
|
74
|
+
}
|