@a-type/ui 0.6.23 → 0.6.24
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/hooks/useLongPress.d.ts +1 -1
- package/dist/cjs/hooks/useLongPress.js +5 -1
- package/dist/cjs/hooks/useLongPress.js.map +1 -1
- package/dist/esm/hooks/useLongPress.d.ts +1 -1
- package/dist/esm/hooks/useLongPress.js +5 -1
- package/dist/esm/hooks/useLongPress.js.map +1 -1
- package/package.json +1 -1
- package/src/hooks/useLongPress.ts +7 -4
|
@@ -9,7 +9,7 @@ export declare function useLongPress({ onActivate, onDurationReached, duration,
|
|
|
9
9
|
}): {
|
|
10
10
|
ref: import("react").MutableRefObject<any>;
|
|
11
11
|
timeoutRef: import("react").MutableRefObject<NodeJS.Timeout | null>;
|
|
12
|
-
state: "holding" | "idle" | "failed" | "pending";
|
|
12
|
+
state: "holding" | "candidate" | "idle" | "failed" | "pending";
|
|
13
13
|
props: {
|
|
14
14
|
onContextMenu: typeof preventDefault;
|
|
15
15
|
style: {
|
|
@@ -97,6 +97,10 @@ function useLongPress({ onActivate, onDurationReached, duration = 2000, delay =
|
|
|
97
97
|
// cancel if moved too far
|
|
98
98
|
setState('idle');
|
|
99
99
|
}
|
|
100
|
+
else if (gestureDuration >= duration + delay) {
|
|
101
|
+
// not yet confirmed, but meets criteria
|
|
102
|
+
setState('candidate');
|
|
103
|
+
}
|
|
100
104
|
}
|
|
101
105
|
});
|
|
102
106
|
const onDurationReachedStable = (0, useStableCallback_js_1.useStableCallback)(onDurationReached);
|
|
@@ -109,7 +113,7 @@ function useLongPress({ onActivate, onDurationReached, duration = 2000, delay =
|
|
|
109
113
|
clearTimeout(timeout);
|
|
110
114
|
};
|
|
111
115
|
}
|
|
112
|
-
else if (state === '
|
|
116
|
+
else if (state === 'candidate') {
|
|
113
117
|
onDurationReachedStable();
|
|
114
118
|
}
|
|
115
119
|
}, [state, onDurationReachedStable]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLongPress.js","sourceRoot":"","sources":["../../../src/hooks/useLongPress.ts"],"names":[],"mappings":";;;AAAA,8CAA6C;AAC7C,iCAA6D;AAC7D,iEAA2D;AAC3D,iEAA2D;AAC3D,yCAA+C;AAE/C;;;;;GAKG;AAEH,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,SAAgB,YAAY,CAAC,EAC5B,UAAU,EACV,iBAAiB,EACjB,QAAQ,GAAG,IAAI,EACf,KAAK,GAAG,GAAG,GAMX;IACA,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,gBAAQ,EAC/C,UAAU,CACV,CAAC;IACF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,
|
|
1
|
+
{"version":3,"file":"useLongPress.js","sourceRoot":"","sources":["../../../src/hooks/useLongPress.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ export declare function useLongPress({ onActivate, onDurationReached, duration,
|
|
|
9
9
|
}): {
|
|
10
10
|
ref: import("react").MutableRefObject<any>;
|
|
11
11
|
timeoutRef: import("react").MutableRefObject<NodeJS.Timeout | null>;
|
|
12
|
-
state: "holding" | "idle" | "failed" | "pending";
|
|
12
|
+
state: "holding" | "candidate" | "idle" | "failed" | "pending";
|
|
13
13
|
props: {
|
|
14
14
|
onContextMenu: typeof preventDefault;
|
|
15
15
|
style: {
|
|
@@ -94,6 +94,10 @@ export function useLongPress({ onActivate, onDurationReached, duration = 2000, d
|
|
|
94
94
|
// cancel if moved too far
|
|
95
95
|
setState('idle');
|
|
96
96
|
}
|
|
97
|
+
else if (gestureDuration >= duration + delay) {
|
|
98
|
+
// not yet confirmed, but meets criteria
|
|
99
|
+
setState('candidate');
|
|
100
|
+
}
|
|
97
101
|
}
|
|
98
102
|
});
|
|
99
103
|
const onDurationReachedStable = useStableCallback(onDurationReached);
|
|
@@ -106,7 +110,7 @@ export function useLongPress({ onActivate, onDurationReached, duration = 2000, d
|
|
|
106
110
|
clearTimeout(timeout);
|
|
107
111
|
};
|
|
108
112
|
}
|
|
109
|
-
else if (state === '
|
|
113
|
+
else if (state === 'candidate') {
|
|
110
114
|
onDurationReachedStable();
|
|
111
115
|
}
|
|
112
116
|
}, [state, onDurationReachedStable]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLongPress.js","sourceRoot":"","sources":["../../../src/hooks/useLongPress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C;;;;;GAKG;AAEH,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,MAAM,UAAU,YAAY,CAAC,EAC5B,UAAU,EACV,iBAAiB,EACjB,QAAQ,GAAG,IAAI,EACf,KAAK,GAAG,GAAG,GAMX;IACA,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAC/C,UAAU,CACV,CAAC;IACF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"useLongPress.js","sourceRoot":"","sources":["../../../src/hooks/useLongPress.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -28,9 +28,9 @@ export function useLongPress({
|
|
|
28
28
|
const [gestureState, setGestureState] = useState<'released' | 'pressed'>(
|
|
29
29
|
'released',
|
|
30
30
|
);
|
|
31
|
-
const [state, setState] = useState<
|
|
32
|
-
'idle'
|
|
33
|
-
);
|
|
31
|
+
const [state, setState] = useState<
|
|
32
|
+
'holding' | 'candidate' | 'idle' | 'failed' | 'pending'
|
|
33
|
+
>('idle');
|
|
34
34
|
const timeoutRef = useRef<NodeJS.Timeout | null>(null);
|
|
35
35
|
const ref = useRef<any>(null);
|
|
36
36
|
|
|
@@ -116,6 +116,9 @@ export function useLongPress({
|
|
|
116
116
|
} else if (distance > CANCEL_DISTANCE) {
|
|
117
117
|
// cancel if moved too far
|
|
118
118
|
setState('idle');
|
|
119
|
+
} else if (gestureDuration >= duration + delay) {
|
|
120
|
+
// not yet confirmed, but meets criteria
|
|
121
|
+
setState('candidate');
|
|
119
122
|
}
|
|
120
123
|
}
|
|
121
124
|
});
|
|
@@ -129,7 +132,7 @@ export function useLongPress({
|
|
|
129
132
|
return () => {
|
|
130
133
|
clearTimeout(timeout);
|
|
131
134
|
};
|
|
132
|
-
} else if (state === '
|
|
135
|
+
} else if (state === 'candidate') {
|
|
133
136
|
onDurationReachedStable();
|
|
134
137
|
}
|
|
135
138
|
}, [state, onDurationReachedStable]);
|