@hanzogui/sheet 7.0.0 → 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/LICENSE +40 -19
- package/dist/cjs/GestureDetectorWrapper.cjs +54 -0
- package/dist/cjs/GestureDetectorWrapper.native.js +58 -0
- package/dist/cjs/GestureDetectorWrapper.native.js.map +1 -0
- package/dist/cjs/GestureSheetContext.cjs +54 -0
- package/dist/cjs/GestureSheetContext.native.js +58 -0
- package/dist/cjs/GestureSheetContext.native.js.map +1 -0
- package/dist/cjs/Sheet.cjs +119 -0
- package/dist/cjs/Sheet.native.js +122 -0
- package/dist/cjs/Sheet.native.js.map +1 -0
- package/dist/cjs/SheetContext.cjs +34 -0
- package/dist/cjs/SheetContext.native.js +37 -0
- package/dist/cjs/SheetContext.native.js.map +1 -0
- package/dist/cjs/SheetController.cjs +73 -0
- package/dist/cjs/SheetController.native.js +79 -0
- package/dist/cjs/SheetController.native.js.map +1 -0
- package/dist/cjs/SheetImplementationCustom.cjs +589 -0
- package/dist/cjs/SheetImplementationCustom.native.js +615 -0
- package/dist/cjs/SheetImplementationCustom.native.js.map +1 -0
- package/dist/cjs/SheetScrollView.cjs +216 -0
- package/dist/cjs/SheetScrollView.native.js +223 -0
- package/dist/cjs/SheetScrollView.native.js.map +1 -0
- package/dist/cjs/constants.cjs +34 -0
- package/dist/cjs/constants.native.js +37 -0
- package/dist/cjs/constants.native.js.map +1 -0
- package/dist/cjs/contexts.cjs +44 -0
- package/dist/cjs/contexts.native.js +47 -0
- package/dist/cjs/contexts.native.js.map +1 -0
- package/dist/cjs/controller.cjs +31 -0
- package/dist/cjs/controller.native.js +34 -0
- package/dist/cjs/controller.native.js.map +1 -0
- package/dist/cjs/createSheet.cjs +190 -0
- package/dist/cjs/createSheet.native.js +200 -0
- package/dist/cjs/createSheet.native.js.map +1 -0
- package/dist/cjs/gestureState.cjs +41 -0
- package/dist/cjs/gestureState.native.js +44 -0
- package/dist/cjs/gestureState.native.js.map +1 -0
- package/dist/cjs/helpers.cjs +35 -0
- package/dist/cjs/helpers.native.js +39 -0
- package/dist/cjs/helpers.native.js.map +1 -0
- package/dist/cjs/index.cjs +30 -0
- package/dist/cjs/index.native.js +33 -0
- package/dist/cjs/index.native.js.map +1 -0
- package/dist/cjs/nativeSheet.cjs +96 -0
- package/dist/cjs/nativeSheet.native.js +106 -0
- package/dist/cjs/nativeSheet.native.js.map +1 -0
- package/dist/cjs/setupGestureHandler.cjs +52 -0
- package/dist/cjs/setupGestureHandler.native.js +55 -0
- package/dist/cjs/setupGestureHandler.native.js.map +1 -0
- package/dist/cjs/types.cjs +18 -0
- package/dist/cjs/types.native.js +21 -0
- package/dist/cjs/types.native.js.map +1 -0
- package/dist/cjs/useGestureHandlerPan.cjs +206 -0
- package/dist/cjs/useGestureHandlerPan.native.js +213 -0
- package/dist/cjs/useGestureHandlerPan.native.js.map +1 -0
- package/dist/cjs/useKeyboardControllerSheet.cjs +40 -0
- package/dist/cjs/useKeyboardControllerSheet.native.js +132 -0
- package/dist/cjs/useKeyboardControllerSheet.native.js.map +1 -0
- package/dist/cjs/useSheet.cjs +29 -0
- package/dist/cjs/useSheet.native.js +34 -0
- package/dist/cjs/useSheet.native.js.map +1 -0
- package/dist/cjs/useSheetController.cjs +52 -0
- package/dist/cjs/useSheetController.native.js +55 -0
- package/dist/cjs/useSheetController.native.js.map +1 -0
- package/dist/cjs/useSheetOffscreenSize.cjs +63 -0
- package/dist/cjs/useSheetOffscreenSize.native.js +70 -0
- package/dist/cjs/useSheetOffscreenSize.native.js.map +1 -0
- package/dist/cjs/useSheetOpenState.cjs +52 -0
- package/dist/cjs/useSheetOpenState.native.js +58 -0
- package/dist/cjs/useSheetOpenState.native.js.map +1 -0
- package/dist/cjs/useSheetProviderProps.cjs +181 -0
- package/dist/cjs/useSheetProviderProps.native.js +196 -0
- package/dist/cjs/useSheetProviderProps.native.js.map +1 -0
- package/dist/cjs/useSheetScrollViewGestures.cjs +166 -0
- package/dist/cjs/useSheetScrollViewGestures.native.js +159 -0
- package/dist/cjs/useSheetScrollViewGestures.native.js.map +1 -0
- package/dist/esm/GestureDetectorWrapper.mjs +29 -0
- package/dist/esm/GestureDetectorWrapper.mjs.map +1 -0
- package/dist/esm/GestureDetectorWrapper.native.js +30 -0
- package/dist/esm/GestureDetectorWrapper.native.js.map +1 -0
- package/dist/esm/GestureSheetContext.mjs +28 -0
- package/dist/esm/GestureSheetContext.mjs.map +1 -0
- package/dist/esm/GestureSheetContext.native.js +29 -0
- package/dist/esm/GestureSheetContext.native.js.map +1 -0
- package/dist/esm/Sheet.mjs +89 -0
- package/dist/esm/Sheet.mjs.map +1 -0
- package/dist/esm/Sheet.native.js +89 -0
- package/dist/esm/Sheet.native.js.map +1 -0
- package/dist/esm/SheetContext.mjs +6 -0
- package/dist/esm/SheetContext.mjs.map +1 -0
- package/dist/esm/SheetContext.native.js +6 -0
- package/dist/esm/SheetContext.native.js.map +1 -0
- package/dist/esm/SheetController.mjs +37 -0
- package/dist/esm/SheetController.mjs.map +1 -0
- package/dist/esm/SheetController.native.js +40 -0
- package/dist/esm/SheetController.native.js.map +1 -0
- package/dist/esm/SheetImplementationCustom.mjs +552 -0
- package/dist/esm/SheetImplementationCustom.mjs.map +1 -0
- package/dist/esm/SheetImplementationCustom.native.js +572 -0
- package/dist/esm/SheetImplementationCustom.native.js.map +1 -0
- package/dist/esm/SheetScrollView.mjs +180 -0
- package/dist/esm/SheetScrollView.mjs.map +1 -0
- package/dist/esm/SheetScrollView.native.js +184 -0
- package/dist/esm/SheetScrollView.native.js.map +1 -0
- package/dist/esm/constants.mjs +6 -0
- package/dist/esm/constants.mjs.map +1 -0
- package/dist/esm/constants.native.js +6 -0
- package/dist/esm/constants.native.js.map +1 -0
- package/dist/esm/contexts.mjs +7 -0
- package/dist/esm/contexts.mjs.map +1 -0
- package/dist/esm/contexts.native.js +7 -0
- package/dist/esm/contexts.native.js.map +1 -0
- package/dist/esm/controller.mjs +4 -0
- package/dist/esm/controller.mjs.map +1 -0
- package/dist/esm/controller.native.js +4 -0
- package/dist/esm/controller.native.js.map +1 -0
- package/dist/esm/createSheet.mjs +165 -0
- package/dist/esm/createSheet.mjs.map +1 -0
- package/dist/esm/createSheet.native.js +172 -0
- package/dist/esm/createSheet.native.js.map +1 -0
- package/dist/esm/gestureState.mjs +13 -0
- package/dist/esm/gestureState.mjs.map +1 -0
- package/dist/esm/gestureState.native.js +13 -0
- package/dist/esm/gestureState.native.js.map +1 -0
- package/dist/esm/helpers.mjs +10 -0
- package/dist/esm/helpers.mjs.map +1 -0
- package/dist/esm/helpers.native.js +11 -0
- package/dist/esm/helpers.native.js.map +1 -0
- package/dist/esm/index.js +12 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/index.mjs +12 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/index.native.js +12 -0
- package/dist/esm/index.native.js.map +1 -0
- package/dist/esm/nativeSheet.mjs +70 -0
- package/dist/esm/nativeSheet.mjs.map +1 -0
- package/dist/esm/nativeSheet.native.js +77 -0
- package/dist/esm/nativeSheet.native.js.map +1 -0
- package/dist/esm/setupGestureHandler.mjs +26 -0
- package/dist/esm/setupGestureHandler.mjs.map +1 -0
- package/dist/esm/setupGestureHandler.native.js +26 -0
- package/dist/esm/setupGestureHandler.native.js.map +1 -0
- package/dist/esm/types.mjs +2 -0
- package/dist/esm/types.mjs.map +1 -0
- package/dist/esm/types.native.js +2 -0
- package/dist/esm/types.native.js.map +1 -0
- package/dist/esm/useGestureHandlerPan.mjs +181 -0
- package/dist/esm/useGestureHandlerPan.mjs.map +1 -0
- package/dist/esm/useGestureHandlerPan.native.js +185 -0
- package/dist/esm/useGestureHandlerPan.native.js.map +1 -0
- package/dist/esm/useKeyboardControllerSheet.mjs +15 -0
- package/dist/esm/useKeyboardControllerSheet.mjs.map +1 -0
- package/dist/esm/useKeyboardControllerSheet.native.js +104 -0
- package/dist/esm/useKeyboardControllerSheet.native.js.map +1 -0
- package/dist/esm/useSheet.mjs +4 -0
- package/dist/esm/useSheet.mjs.map +1 -0
- package/dist/esm/useSheet.native.js +6 -0
- package/dist/esm/useSheet.native.js.map +1 -0
- package/dist/esm/useSheetController.mjs +15 -0
- package/dist/esm/useSheetController.mjs.map +1 -0
- package/dist/esm/useSheetController.native.js +15 -0
- package/dist/esm/useSheetController.native.js.map +1 -0
- package/dist/esm/useSheetOffscreenSize.mjs +38 -0
- package/dist/esm/useSheetOffscreenSize.mjs.map +1 -0
- package/dist/esm/useSheetOffscreenSize.native.js +42 -0
- package/dist/esm/useSheetOffscreenSize.native.js.map +1 -0
- package/dist/esm/useSheetOpenState.mjs +27 -0
- package/dist/esm/useSheetOpenState.mjs.map +1 -0
- package/dist/esm/useSheetOpenState.native.js +30 -0
- package/dist/esm/useSheetOpenState.native.js.map +1 -0
- package/dist/esm/useSheetProviderProps.mjs +145 -0
- package/dist/esm/useSheetProviderProps.mjs.map +1 -0
- package/dist/esm/useSheetProviderProps.native.js +157 -0
- package/dist/esm/useSheetProviderProps.native.js.map +1 -0
- package/dist/esm/useSheetScrollViewGestures.mjs +141 -0
- package/dist/esm/useSheetScrollViewGestures.mjs.map +1 -0
- package/dist/esm/useSheetScrollViewGestures.native.js +131 -0
- package/dist/esm/useSheetScrollViewGestures.native.js.map +1 -0
- package/dist/jsx/GestureDetectorWrapper.mjs +29 -0
- package/dist/jsx/GestureDetectorWrapper.mjs.map +1 -0
- package/dist/jsx/GestureDetectorWrapper.native.js +58 -0
- package/dist/jsx/GestureDetectorWrapper.native.js.map +1 -0
- package/dist/jsx/GestureSheetContext.mjs +28 -0
- package/dist/jsx/GestureSheetContext.mjs.map +1 -0
- package/dist/jsx/GestureSheetContext.native.js +58 -0
- package/dist/jsx/GestureSheetContext.native.js.map +1 -0
- package/dist/jsx/Sheet.mjs +89 -0
- package/dist/jsx/Sheet.mjs.map +1 -0
- package/dist/jsx/Sheet.native.js +122 -0
- package/dist/jsx/Sheet.native.js.map +1 -0
- package/dist/jsx/SheetContext.mjs +6 -0
- package/dist/jsx/SheetContext.mjs.map +1 -0
- package/dist/jsx/SheetContext.native.js +37 -0
- package/dist/jsx/SheetContext.native.js.map +1 -0
- package/dist/jsx/SheetController.mjs +37 -0
- package/dist/jsx/SheetController.mjs.map +1 -0
- package/dist/jsx/SheetController.native.js +79 -0
- package/dist/jsx/SheetController.native.js.map +1 -0
- package/dist/jsx/SheetImplementationCustom.mjs +552 -0
- package/dist/jsx/SheetImplementationCustom.mjs.map +1 -0
- package/dist/jsx/SheetImplementationCustom.native.js +615 -0
- package/dist/jsx/SheetImplementationCustom.native.js.map +1 -0
- package/dist/jsx/SheetScrollView.mjs +180 -0
- package/dist/jsx/SheetScrollView.mjs.map +1 -0
- package/dist/jsx/SheetScrollView.native.js +223 -0
- package/dist/jsx/SheetScrollView.native.js.map +1 -0
- package/dist/jsx/constants.mjs +6 -0
- package/dist/jsx/constants.mjs.map +1 -0
- package/dist/jsx/constants.native.js +37 -0
- package/dist/jsx/constants.native.js.map +1 -0
- package/dist/jsx/contexts.mjs +7 -0
- package/dist/jsx/contexts.mjs.map +1 -0
- package/dist/jsx/contexts.native.js +47 -0
- package/dist/jsx/contexts.native.js.map +1 -0
- package/dist/jsx/controller.mjs +4 -0
- package/dist/jsx/controller.mjs.map +1 -0
- package/dist/jsx/controller.native.js +34 -0
- package/dist/jsx/controller.native.js.map +1 -0
- package/dist/jsx/createSheet.mjs +165 -0
- package/dist/jsx/createSheet.mjs.map +1 -0
- package/dist/jsx/createSheet.native.js +200 -0
- package/dist/jsx/createSheet.native.js.map +1 -0
- package/dist/jsx/gestureState.mjs +13 -0
- package/dist/jsx/gestureState.mjs.map +1 -0
- package/dist/jsx/gestureState.native.js +44 -0
- package/dist/jsx/gestureState.native.js.map +1 -0
- package/dist/jsx/helpers.mjs +10 -0
- package/dist/jsx/helpers.mjs.map +1 -0
- package/dist/jsx/helpers.native.js +39 -0
- package/dist/jsx/helpers.native.js.map +1 -0
- package/dist/jsx/index.js +12 -0
- package/dist/jsx/index.js.map +1 -0
- package/dist/jsx/index.mjs +12 -0
- package/dist/jsx/index.mjs.map +1 -0
- package/dist/jsx/index.native.js +33 -0
- package/dist/jsx/index.native.js.map +1 -0
- package/dist/jsx/nativeSheet.mjs +70 -0
- package/dist/jsx/nativeSheet.mjs.map +1 -0
- package/dist/jsx/nativeSheet.native.js +106 -0
- package/dist/jsx/nativeSheet.native.js.map +1 -0
- package/dist/jsx/setupGestureHandler.mjs +26 -0
- package/dist/jsx/setupGestureHandler.mjs.map +1 -0
- package/dist/jsx/setupGestureHandler.native.js +55 -0
- package/dist/jsx/setupGestureHandler.native.js.map +1 -0
- package/dist/jsx/types.mjs +2 -0
- package/dist/jsx/types.mjs.map +1 -0
- package/dist/jsx/types.native.js +21 -0
- package/dist/jsx/types.native.js.map +1 -0
- package/dist/jsx/useGestureHandlerPan.mjs +181 -0
- package/dist/jsx/useGestureHandlerPan.mjs.map +1 -0
- package/dist/jsx/useGestureHandlerPan.native.js +213 -0
- package/dist/jsx/useGestureHandlerPan.native.js.map +1 -0
- package/dist/jsx/useKeyboardControllerSheet.mjs +15 -0
- package/dist/jsx/useKeyboardControllerSheet.mjs.map +1 -0
- package/dist/jsx/useKeyboardControllerSheet.native.js +132 -0
- package/dist/jsx/useKeyboardControllerSheet.native.js.map +1 -0
- package/dist/jsx/useSheet.mjs +4 -0
- package/dist/jsx/useSheet.mjs.map +1 -0
- package/dist/jsx/useSheet.native.js +34 -0
- package/dist/jsx/useSheet.native.js.map +1 -0
- package/dist/jsx/useSheetController.mjs +15 -0
- package/dist/jsx/useSheetController.mjs.map +1 -0
- package/dist/jsx/useSheetController.native.js +55 -0
- package/dist/jsx/useSheetController.native.js.map +1 -0
- package/dist/jsx/useSheetOffscreenSize.mjs +38 -0
- package/dist/jsx/useSheetOffscreenSize.mjs.map +1 -0
- package/dist/jsx/useSheetOffscreenSize.native.js +70 -0
- package/dist/jsx/useSheetOffscreenSize.native.js.map +1 -0
- package/dist/jsx/useSheetOpenState.mjs +27 -0
- package/dist/jsx/useSheetOpenState.mjs.map +1 -0
- package/dist/jsx/useSheetOpenState.native.js +58 -0
- package/dist/jsx/useSheetOpenState.native.js.map +1 -0
- package/dist/jsx/useSheetProviderProps.mjs +145 -0
- package/dist/jsx/useSheetProviderProps.mjs.map +1 -0
- package/dist/jsx/useSheetProviderProps.native.js +196 -0
- package/dist/jsx/useSheetProviderProps.native.js.map +1 -0
- package/dist/jsx/useSheetScrollViewGestures.mjs +141 -0
- package/dist/jsx/useSheetScrollViewGestures.mjs.map +1 -0
- package/dist/jsx/useSheetScrollViewGestures.native.js +159 -0
- package/dist/jsx/useSheetScrollViewGestures.native.js.map +1 -0
- package/package.json +36 -26
- package/src/Sheet.tsx +3 -3
- package/src/SheetImplementationCustom.tsx +5 -5
- package/src/createSheet.tsx +9 -9
- package/src/setupGestureHandler.ts +2 -2
- package/src/useSheetProviderProps.tsx +4 -4
- package/types/GestureDetectorWrapper.d.ts +1 -1
- package/types/GestureDetectorWrapper.d.ts.map +1 -0
- package/types/GestureSheetContext.d.ts +1 -1
- package/types/GestureSheetContext.d.ts.map +1 -0
- package/types/Sheet.d.ts +15 -15
- package/types/Sheet.d.ts.map +1 -0
- package/types/SheetContext.d.ts +4 -4
- package/types/SheetContext.d.ts.map +1 -0
- package/types/SheetController.d.ts +2 -1
- package/types/SheetController.d.ts.map +1 -0
- package/types/SheetImplementationCustom.d.ts.map +1 -0
- package/types/SheetScrollView.d.ts +1 -1
- package/types/SheetScrollView.d.ts.map +1 -0
- package/types/constants.d.ts.map +1 -0
- package/types/contexts.d.ts.map +1 -0
- package/types/controller.d.ts.map +1 -0
- package/types/createSheet.d.ts +11 -11
- package/types/createSheet.d.ts.map +1 -0
- package/types/gestureState.d.ts.map +1 -0
- package/types/helpers.d.ts.map +1 -0
- package/types/index.d.ts.map +1 -0
- package/types/nativeSheet.d.ts.map +1 -0
- package/types/setupGestureHandler.d.ts.map +1 -0
- package/types/types.d.ts.map +1 -0
- package/types/useGestureHandlerPan.d.ts.map +1 -0
- package/types/useKeyboardControllerSheet.d.ts.map +1 -0
- package/types/useKeyboardControllerSheet.native.d.ts.map +1 -0
- package/types/useSheet.d.ts.map +1 -0
- package/types/useSheetController.d.ts.map +1 -0
- package/types/useSheetOffscreenSize.d.ts.map +1 -0
- package/types/useSheetOpenState.d.ts.map +1 -0
- package/types/useSheetProviderProps.d.ts +3 -3
- package/types/useSheetProviderProps.d.ts.map +1 -0
- package/types/useSheetScrollViewGestures.d.ts.map +1 -0
- package/types/useSheetScrollViewGestures.native.d.ts.map +1 -0
- package/controller/index.cjs +0 -2
- package/controller/index.d.ts +0 -5
- package/controller/index.js +0 -2
- package/controller/index.native.cjs +0 -2
- package/controller/index.native.js +0 -2
- package/next.md +0 -78
- package/setup-gesture-handler/index.cjs +0 -2
- package/setup-gesture-handler/index.js +0 -2
- package/setup-gesture-handler/index.native.cjs +0 -2
- package/setup-gesture-handler/index.native.js +0 -2
- package/tsconfig.json +0 -56
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
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 __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var useSheetOffscreenSize_exports = {};
|
|
26
|
+
__export(useSheetOffscreenSize_exports, {
|
|
27
|
+
useSheetOffscreenSize: () => useSheetOffscreenSize
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(useSheetOffscreenSize_exports);
|
|
30
|
+
var useSheetOffscreenSize = function (param) {
|
|
31
|
+
var {
|
|
32
|
+
snapPoints,
|
|
33
|
+
position,
|
|
34
|
+
screenSize,
|
|
35
|
+
frameSize,
|
|
36
|
+
snapPointsMode
|
|
37
|
+
} = param;
|
|
38
|
+
if (snapPointsMode === "fit") {
|
|
39
|
+
return 0;
|
|
40
|
+
}
|
|
41
|
+
if (snapPointsMode === "constant") {
|
|
42
|
+
var maxSize = Number(snapPoints[0]);
|
|
43
|
+
var _snapPoints_position;
|
|
44
|
+
var currentSize = Number((_snapPoints_position = snapPoints[position]) !== null && _snapPoints_position !== void 0 ? _snapPoints_position : 0);
|
|
45
|
+
var offscreenSize = maxSize - currentSize;
|
|
46
|
+
return offscreenSize;
|
|
47
|
+
}
|
|
48
|
+
if (snapPointsMode === "percent") {
|
|
49
|
+
var maxPercentOpened = Number(snapPoints[0]) / 100;
|
|
50
|
+
var _snapPoints_position1;
|
|
51
|
+
var percentOpened = Number((_snapPoints_position1 = snapPoints[position]) !== null && _snapPoints_position1 !== void 0 ? _snapPoints_position1 : 0) / 100;
|
|
52
|
+
var percentHidden = maxPercentOpened - percentOpened;
|
|
53
|
+
var offscreenSize1 = percentHidden * screenSize;
|
|
54
|
+
return offscreenSize1;
|
|
55
|
+
}
|
|
56
|
+
var maxSnapPoint = snapPoints[0];
|
|
57
|
+
if (maxSnapPoint === "fit") {
|
|
58
|
+
return 0;
|
|
59
|
+
}
|
|
60
|
+
var maxSize1 = typeof maxSnapPoint === "string" ? Number(maxSnapPoint.slice(0, -1)) / 100 * screenSize : maxSnapPoint;
|
|
61
|
+
var _snapPoints_position2;
|
|
62
|
+
var currentSnapPoint = (_snapPoints_position2 = snapPoints[position]) !== null && _snapPoints_position2 !== void 0 ? _snapPoints_position2 : 0;
|
|
63
|
+
var currentSize1 = typeof currentSnapPoint === "string" ? Number(currentSnapPoint.slice(0, -1)) / 100 * screenSize : currentSnapPoint;
|
|
64
|
+
var offscreenSize2 = maxSize1 - currentSize1;
|
|
65
|
+
if (Number.isNaN(offscreenSize2)) {
|
|
66
|
+
return 0;
|
|
67
|
+
}
|
|
68
|
+
return offscreenSize2;
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=useSheetOffscreenSize.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useSheetOffscreenSize_exports","__export","useSheetOffscreenSize","module","exports","param","snapPoints","position","screenSize","frameSize","snapPointsMode","maxSize","Number","_snapPoints_position","currentSize","offscreenSize","maxPercentOpened","_snapPoints_position1","percentOpened","percentHidden","offscreenSize1","maxSnapPoint","maxSize1","slice","_snapPoints_position2","currentSnapPoint","currentSize1","offscreenSize2","isNaN"],"sources":["../../src/useSheetOffscreenSize.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,6BAAA;AAAAC,QAAA,CAAAD,6BAAA;EAAAE,qBAAA,EAAAA,CAAA,KAAAA;AAAA;AAEOC,MAAM,CAAAC,OAAA,GAAAT,YAAA,CAAwBK,6BAAC;AAAA,IACpCE,qBAAA,YAAAA,CAAAG,KAAA;EACA;IAAAC,UAAA;IAAAC,QAAA;IAAAC,UAAA;IAAAC,SAAA;IAAAC;EAAA,IAAAL,KAAA;EACA,IAAAK,cAAA;IACA;EACA;EACF,IAAyBA,cAAA;IACvB,IAAIC,OAAA,GAAAC,MAAA,CAAmBN,UAAO;IAC5B,IAAAO,oBAAO;IACT,IAAAC,WAAA,GAAAF,MAAA,EAAAC,oBAAA,GAAAP,UAAA,CAAAC,QAAA,eAAAM,oBAAA,cAAAA,oBAAA;IAEA,IAAIE,aAAA,GAAAJ,OAAmB,GAAAG,WAAY;IACjC,OAAMC,aAAU;EAChB;EACA,IAAAL,cAAM,cAAgB;IACtB,IAAAM,gBAAO,GAAAJ,MAAA,CAAAN,UAAA;IACT,IAAAW,qBAAA;IAEA,IAAIC,aAAA,GAAAN,MAAmB,EAAAK,qBAAW,GAAAX,UAAA,CAAAC,QAAA,eAAAU,qBAAA,cAAAA,qBAAA;IAChC,IAAAE,aAAM,GAAAH,gBAA0B,GAAAE,aAAiB;IACjD,IAAAE,cAAM,GAAAD,aAAuB,GAAAX,UAAW;IACxC,OAAMY,cAAA;EACN;EACA,IAAAC,YAAO,GAAAf,UAAA;EACT,IAAAe,YAAA;IAGA,OAAM;EACN;EACE,IAAAC,QAAO,UAAAD,YAAA,gBAAAT,MAAA,CAAAS,YAAA,CAAAE,KAAA,iBAAAf,UAAA,GAAAa,YAAA;EACT,IAAAG,qBAAA;EAEA,IAAAC,gBACE,GAAO,CAAAD,qBAAiB,GAAAlB,UACZ,CAAAC,QAAA,OAAa,IAAM,IAAKiB,qBAAY,KAC5C,SAAAA,qBAAA;EACN,IAAAE,YAAM,UAAmBD,gBAAW,KAAQ,QAAK,GAAAb,MAAA,CAAAa,gBAAA,CAAAF,KAAA,iBAAAf,UAAA,GAAAiB,gBAAA;EACjD,IAAAE,cAAM,GACJL,QAAO,GAAAI,YAAA;EAGT,IAAAd,MAAM,CAAAgB,KAAA,CAAAD,cAAgB,CAAU;IAChC,OAAI;EACF;EACF,OAAAA,cAAA;AACA","ignoreList":[]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all) __defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: true
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
14
|
+
get: () => from[key],
|
|
15
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
+
value: true
|
|
22
|
+
}), mod);
|
|
23
|
+
var useSheetOpenState_exports = {};
|
|
24
|
+
__export(useSheetOpenState_exports, {
|
|
25
|
+
useSheetOpenState: () => useSheetOpenState
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(useSheetOpenState_exports);
|
|
28
|
+
var import_use_controllable_state = require("@hanzogui/use-controllable-state");
|
|
29
|
+
var import_useSheetController = require("./useSheetController.cjs");
|
|
30
|
+
const useSheetOpenState = props => {
|
|
31
|
+
const {
|
|
32
|
+
isHidden,
|
|
33
|
+
controller
|
|
34
|
+
} = (0, import_useSheetController.useSheetController)();
|
|
35
|
+
const onOpenChangeInternal = val => {
|
|
36
|
+
controller?.onOpenChange?.(val);
|
|
37
|
+
props.onOpenChange?.(val);
|
|
38
|
+
};
|
|
39
|
+
const propVal = props.preferAdaptParentOpenState ? controller?.open ?? props.open : props.open ?? controller?.open;
|
|
40
|
+
const [open, setOpen] = (0, import_use_controllable_state.useControllableState)({
|
|
41
|
+
prop: propVal,
|
|
42
|
+
defaultProp: props.defaultOpen ?? false,
|
|
43
|
+
onChange: onOpenChangeInternal,
|
|
44
|
+
strategy: "most-recent-wins"
|
|
45
|
+
});
|
|
46
|
+
return {
|
|
47
|
+
open,
|
|
48
|
+
setOpen,
|
|
49
|
+
isHidden,
|
|
50
|
+
controller
|
|
51
|
+
};
|
|
52
|
+
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
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 __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var useSheetOpenState_exports = {};
|
|
26
|
+
__export(useSheetOpenState_exports, {
|
|
27
|
+
useSheetOpenState: () => useSheetOpenState
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(useSheetOpenState_exports);
|
|
30
|
+
var import_use_controllable_state = require("@hanzogui/use-controllable-state");
|
|
31
|
+
var import_useSheetController = require("./useSheetController.native.js");
|
|
32
|
+
var useSheetOpenState = function (props) {
|
|
33
|
+
var {
|
|
34
|
+
isHidden,
|
|
35
|
+
controller
|
|
36
|
+
} = (0, import_useSheetController.useSheetController)();
|
|
37
|
+
var onOpenChangeInternal = function (val) {
|
|
38
|
+
var _controller_onOpenChange, _props_onOpenChange;
|
|
39
|
+
controller === null || controller === void 0 ? void 0 : (_controller_onOpenChange = controller.onOpenChange) === null || _controller_onOpenChange === void 0 ? void 0 : _controller_onOpenChange.call(controller, val);
|
|
40
|
+
(_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(props, val);
|
|
41
|
+
};
|
|
42
|
+
var _controller_open, _props_open;
|
|
43
|
+
var propVal = props.preferAdaptParentOpenState ? (_controller_open = controller === null || controller === void 0 ? void 0 : controller.open) !== null && _controller_open !== void 0 ? _controller_open : props.open : (_props_open = props.open) !== null && _props_open !== void 0 ? _props_open : controller === null || controller === void 0 ? void 0 : controller.open;
|
|
44
|
+
var _props_defaultOpen;
|
|
45
|
+
var [open, setOpen] = (0, import_use_controllable_state.useControllableState)({
|
|
46
|
+
prop: propVal,
|
|
47
|
+
defaultProp: (_props_defaultOpen = props.defaultOpen) !== null && _props_defaultOpen !== void 0 ? _props_defaultOpen : false,
|
|
48
|
+
onChange: onOpenChangeInternal,
|
|
49
|
+
strategy: "most-recent-wins"
|
|
50
|
+
});
|
|
51
|
+
return {
|
|
52
|
+
open,
|
|
53
|
+
setOpen,
|
|
54
|
+
isHidden,
|
|
55
|
+
controller
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=useSheetOpenState.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useSheetOpenState_exports","__export","useSheetOpenState","module","exports","import_use_controllable_state","require","import_useSheetController","props","isHidden","controller","useSheetController","onOpenChangeInternal","val","_controller_onOpenChange","_props_onOpenChange","onOpenChange","call","_controller_open","_props_open","propVal","preferAdaptParentOpenState","open","_props_defaultOpen","setOpen","useControllableState","prop","defaultProp","defaultOpen","onChange","strategy"],"sources":["../../src/useSheetOpenState.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,yBAAA;AAAAC,QAAA,CAAAD,yBAAA;EAAAE,iBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAAA,CAAAK,yBAAqC;AAGrC,IAAAK,6BAAmC,GAAAC,OAAA;AAE5B,IAAAC,yBAA2B,GAAAD,OAAsB;AACtD,IAAAJ,iBAAkB,YAAAA,CAAWM,KAAA,EAAI;EAEjC;IAAMC,QAAA;IAAAC;EAAA,IAAwB,IAAAH,yBAAiB,CAAAI,kBAAA;EAC7C,IAAAC,oBAAY,YAAAA,CAAkBC,GAAA;IAC9B,IAAAC,wBAAwB,EAAAC,mBAAA;IAC1BL,UAAA,aAAAA,UAAA,wBAAAI,wBAAA,GAAAJ,UAAA,CAAAM,YAAA,cAAAF,wBAAA,uBAAAA,wBAAA,CAAAG,IAAA,CAAAP,UAAA,EAAAG,GAAA;IAEA,CAAAE,mBAAsB,GAAAP,KAAA,CAAAQ,YAAA,UACjB,IAAAD,mBAAoB,KAAM,KAC1B,IAAM,SAAQA,mBAAY,CAAAE,IAAA,CAAAT,KAAA,EAAAK,GAAA;EAE/B;EAA6C,IAC3CK,gBAAM,EAAAC,WAAA;EAAA,IACNC,OAAA,GAAAZ,KAAa,CAAAa,0BAAqB,IAAAH,gBAAA,GAAAR,UAAA,aAAAA,UAAA,uBAAAA,UAAA,CAAAY,IAAA,cAAAJ,gBAAA,cAAAA,gBAAA,GAAAV,KAAA,CAAAc,IAAA,IAAAH,WAAA,GAAAX,KAAA,CAAAc,IAAA,cAAAH,WAAA,cAAAA,WAAA,GAAAT,UAAA,aAAAA,UAAA,uBAAAA,UAAA,CAAAY,IAAA;EAAA,IAClCC,kBAAU;EAAA,IACV,CAAAD,IAAA,EAAAE,OAAU,QAAAnB,6BAAA,CAAAoB,oBAAA;IACXC,IAAA,EAAAN,OAAA;IAEDO,WAAO,GAAAJ,kBAAA,GAAAf,KAAA,CAAAoB,WAAA,cAAAL,kBAAA,cAAAA,kBAAA;IACLM,QAAA,EAAAjB,oBAAA;IACAkB,QAAA;EAAA,EACA;EAAA,OACA;IACFR,IAAA;IACFE,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,181 @@
|
|
|
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 useSheetProviderProps_exports = {};
|
|
35
|
+
__export(useSheetProviderProps_exports, {
|
|
36
|
+
useSheetProviderProps: () => useSheetProviderProps
|
|
37
|
+
});
|
|
38
|
+
module.exports = __toCommonJS(useSheetProviderProps_exports);
|
|
39
|
+
var import_react = __toESM(require("react"), 1);
|
|
40
|
+
var import_core = require("@hanzogui/core");
|
|
41
|
+
var import_use_constant = require("@hanzogui/use-constant");
|
|
42
|
+
var import_use_controllable_state = require("@hanzogui/use-controllable-state");
|
|
43
|
+
function useSheetProviderProps(props, state, options = {}) {
|
|
44
|
+
const handleRef = import_react.default.useRef(null);
|
|
45
|
+
const contentRef = import_react.default.useRef(null);
|
|
46
|
+
const [frameSize, setFrameSize] = import_react.default.useState(0);
|
|
47
|
+
const [maxContentSize, setMaxContentSize] = import_react.default.useState(0);
|
|
48
|
+
const snapPointsMode = props.snapPointsMode ?? "percent";
|
|
49
|
+
const snapPointsProp = props.snapPoints ?? (snapPointsMode === "percent" ? [80] : snapPointsMode === "constant" ? [256] : ["fit"]);
|
|
50
|
+
const hasFit = snapPointsProp[0] === "fit";
|
|
51
|
+
const snapPoints = import_react.default.useMemo(() => props.dismissOnSnapToBottom ? [...snapPointsProp, 0] : snapPointsProp, [JSON.stringify(snapPointsProp), props.dismissOnSnapToBottom]);
|
|
52
|
+
const [position_, setPositionImmediate] = (0, import_use_controllable_state.useControllableState)({
|
|
53
|
+
prop: props.position,
|
|
54
|
+
defaultProp: props.defaultPosition || (state.open ? 0 : -1),
|
|
55
|
+
onChange: props.onPositionChange,
|
|
56
|
+
strategy: "most-recent-wins"
|
|
57
|
+
});
|
|
58
|
+
const position = state.open === false ? -1 : position_;
|
|
59
|
+
const {
|
|
60
|
+
open
|
|
61
|
+
} = state;
|
|
62
|
+
const setPosition = import_react.default.useCallback(next => {
|
|
63
|
+
if (props.dismissOnSnapToBottom && next === snapPoints.length - 1) {
|
|
64
|
+
state.setOpen(false);
|
|
65
|
+
} else {
|
|
66
|
+
setPositionImmediate(next);
|
|
67
|
+
}
|
|
68
|
+
}, [props.dismissOnSnapToBottom, snapPoints.length, setPositionImmediate, state.setOpen]);
|
|
69
|
+
if (process.env.NODE_ENV === "development") {
|
|
70
|
+
if (snapPointsMode === "mixed" && snapPoints.some(p => {
|
|
71
|
+
if (typeof p === "string") {
|
|
72
|
+
if (p === "fit") {
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
if (p.endsWith("%")) {
|
|
76
|
+
const n = Number(p.slice(0, -1));
|
|
77
|
+
return n < 0 || n > 100;
|
|
78
|
+
}
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
return typeof p !== "number" || p < 0;
|
|
82
|
+
})) {
|
|
83
|
+
console.warn('\u26A0\uFE0F Invalid snapPoint given, snapPoints must be positive numeric values, string percentages between 0-100%, or "fit" when snapPointsMode is mixed');
|
|
84
|
+
}
|
|
85
|
+
if (snapPointsMode === "mixed" && snapPoints.indexOf("fit") > 0) {
|
|
86
|
+
console.warn('\u26A0\uFE0F Invalid snapPoint given, "fit" must be the first/largest snap point when snapPointsMode is mixed');
|
|
87
|
+
}
|
|
88
|
+
if (snapPointsMode === "fit" && (snapPoints.length !== (props.dismissOnSnapToBottom ? 2 : 1) || snapPoints[0] !== "fit")) {
|
|
89
|
+
console.warn("\u26A0\uFE0F Invalid snapPoint given, there are no snap points when snapPointsMode is fit");
|
|
90
|
+
}
|
|
91
|
+
if (snapPointsMode === "constant" && snapPoints.some(p => typeof p !== "number" || p < 0)) {
|
|
92
|
+
console.warn("\u26A0\uFE0F Invalid snapPoint given, snapPoints must be positive numeric values when snapPointsMode is constant");
|
|
93
|
+
}
|
|
94
|
+
if (snapPointsMode === "percent" && snapPoints.some(p => typeof p !== "number" || p < 0 || p > 100)) {
|
|
95
|
+
console.warn("\u26A0\uFE0F Invalid snapPoint given, snapPoints must be numeric values between 0 and 100 when snapPointsMode is percent");
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
if (open && props.dismissOnSnapToBottom && position === snapPoints.length - 1) {
|
|
99
|
+
setPositionImmediate(0);
|
|
100
|
+
}
|
|
101
|
+
const shouldSetPositionOpen = open && position < 0;
|
|
102
|
+
import_react.default.useEffect(() => {
|
|
103
|
+
if (shouldSetPositionOpen) {
|
|
104
|
+
setPosition(0);
|
|
105
|
+
}
|
|
106
|
+
}, [setPosition, shouldSetPositionOpen]);
|
|
107
|
+
const {
|
|
108
|
+
animationDriver
|
|
109
|
+
} = (0, import_core.useConfiguration)();
|
|
110
|
+
if (!animationDriver) {
|
|
111
|
+
throw new Error(process.env.NODE_ENV === "production" ? `\u274C 008` : "Must set animations in gui.config.ts");
|
|
112
|
+
}
|
|
113
|
+
const scrollBridge = (0, import_use_constant.useConstant)(() => {
|
|
114
|
+
const parentDragListeners = /* @__PURE__ */new Set();
|
|
115
|
+
const bridge = {
|
|
116
|
+
hasScrollableContent: false,
|
|
117
|
+
enabled: false,
|
|
118
|
+
y: 0,
|
|
119
|
+
paneY: 0,
|
|
120
|
+
paneMinY: 0,
|
|
121
|
+
scrollStartY: -1,
|
|
122
|
+
drag: () => {},
|
|
123
|
+
release: () => {},
|
|
124
|
+
scrollLock: false,
|
|
125
|
+
isParentDragging: false,
|
|
126
|
+
onParentDragging: cb => {
|
|
127
|
+
parentDragListeners.add(cb);
|
|
128
|
+
return () => {
|
|
129
|
+
parentDragListeners.delete(cb);
|
|
130
|
+
};
|
|
131
|
+
},
|
|
132
|
+
setParentDragging: val => {
|
|
133
|
+
if (val !== bridge.isParentDragging) {
|
|
134
|
+
bridge.isParentDragging = val;
|
|
135
|
+
parentDragListeners.forEach(cb => cb(val));
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
return bridge;
|
|
140
|
+
});
|
|
141
|
+
let disableRemoveScroll;
|
|
142
|
+
if (props.disableRemoveScroll !== void 0) {
|
|
143
|
+
disableRemoveScroll = props.disableRemoveScroll || !open || !props.modal;
|
|
144
|
+
} else if (props.forceRemoveScrollEnabled !== void 0) {
|
|
145
|
+
if (process.env.NODE_ENV === "development") {
|
|
146
|
+
console.warn("[Sheet] forceRemoveScrollEnabled is deprecated. Use disableRemoveScroll instead.");
|
|
147
|
+
}
|
|
148
|
+
disableRemoveScroll = !props.forceRemoveScrollEnabled;
|
|
149
|
+
} else {
|
|
150
|
+
disableRemoveScroll = !open || !props.modal;
|
|
151
|
+
}
|
|
152
|
+
const maxSnapPoint = snapPoints[0];
|
|
153
|
+
const screenSize = snapPointsMode === "percent" ? frameSize / ((typeof maxSnapPoint === "number" ? maxSnapPoint : 100) / 100) : maxContentSize;
|
|
154
|
+
const providerProps = {
|
|
155
|
+
screenSize,
|
|
156
|
+
maxSnapPoint,
|
|
157
|
+
disableRemoveScroll,
|
|
158
|
+
scrollBridge,
|
|
159
|
+
modal: !!props.modal,
|
|
160
|
+
open: state.open,
|
|
161
|
+
setOpen: state.setOpen,
|
|
162
|
+
hidden: !!state.isHidden,
|
|
163
|
+
contentRef,
|
|
164
|
+
handleRef,
|
|
165
|
+
frameSize,
|
|
166
|
+
setFrameSize,
|
|
167
|
+
dismissOnOverlayPress: props.dismissOnOverlayPress ?? true,
|
|
168
|
+
dismissOnSnapToBottom: props.dismissOnSnapToBottom ?? false,
|
|
169
|
+
onOverlayComponent: options.onOverlayComponent,
|
|
170
|
+
scope: props.__scopeSheet,
|
|
171
|
+
hasFit,
|
|
172
|
+
position,
|
|
173
|
+
snapPoints,
|
|
174
|
+
snapPointsMode,
|
|
175
|
+
setMaxContentSize,
|
|
176
|
+
setPosition,
|
|
177
|
+
setPositionImmediate,
|
|
178
|
+
onlyShowFrame: false
|
|
179
|
+
};
|
|
180
|
+
return providerProps;
|
|
181
|
+
}
|
|
@@ -0,0 +1,196 @@
|
|
|
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 useSheetProviderProps_exports = {};
|
|
37
|
+
__export(useSheetProviderProps_exports, {
|
|
38
|
+
useSheetProviderProps: () => useSheetProviderProps
|
|
39
|
+
});
|
|
40
|
+
module.exports = __toCommonJS(useSheetProviderProps_exports);
|
|
41
|
+
var import_react = __toESM(require("react"), 1);
|
|
42
|
+
var import_core = require("@hanzogui/core");
|
|
43
|
+
var import_use_constant = require("@hanzogui/use-constant");
|
|
44
|
+
var import_use_controllable_state = require("@hanzogui/use-controllable-state");
|
|
45
|
+
function useSheetProviderProps(props, state) {
|
|
46
|
+
var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
|
|
47
|
+
var handleRef = import_react.default.useRef(null);
|
|
48
|
+
var contentRef = import_react.default.useRef(null);
|
|
49
|
+
var [frameSize, setFrameSize] = import_react.default.useState(0);
|
|
50
|
+
var [maxContentSize, setMaxContentSize] = import_react.default.useState(0);
|
|
51
|
+
var _props_snapPointsMode;
|
|
52
|
+
var snapPointsMode = (_props_snapPointsMode = props.snapPointsMode) !== null && _props_snapPointsMode !== void 0 ? _props_snapPointsMode : "percent";
|
|
53
|
+
var _props_snapPoints;
|
|
54
|
+
var snapPointsProp = (_props_snapPoints = props.snapPoints) !== null && _props_snapPoints !== void 0 ? _props_snapPoints : snapPointsMode === "percent" ? [80] : snapPointsMode === "constant" ? [256] : ["fit"];
|
|
55
|
+
var hasFit = snapPointsProp[0] === "fit";
|
|
56
|
+
var snapPoints = import_react.default.useMemo(function () {
|
|
57
|
+
return props.dismissOnSnapToBottom ? [...snapPointsProp, 0] : snapPointsProp;
|
|
58
|
+
}, [JSON.stringify(snapPointsProp), props.dismissOnSnapToBottom]);
|
|
59
|
+
var [position_, setPositionImmediate] = (0, import_use_controllable_state.useControllableState)({
|
|
60
|
+
prop: props.position,
|
|
61
|
+
defaultProp: props.defaultPosition || (state.open ? 0 : -1),
|
|
62
|
+
onChange: props.onPositionChange,
|
|
63
|
+
strategy: "most-recent-wins"
|
|
64
|
+
});
|
|
65
|
+
var position = state.open === false ? -1 : position_;
|
|
66
|
+
var {
|
|
67
|
+
open
|
|
68
|
+
} = state;
|
|
69
|
+
var setPosition = import_react.default.useCallback(function (next) {
|
|
70
|
+
if (props.dismissOnSnapToBottom && next === snapPoints.length - 1) {
|
|
71
|
+
state.setOpen(false);
|
|
72
|
+
} else {
|
|
73
|
+
setPositionImmediate(next);
|
|
74
|
+
}
|
|
75
|
+
}, [props.dismissOnSnapToBottom, snapPoints.length, setPositionImmediate, state.setOpen]);
|
|
76
|
+
if (process.env.NODE_ENV === "development") {
|
|
77
|
+
if (snapPointsMode === "mixed" && snapPoints.some(function (p) {
|
|
78
|
+
if (typeof p === "string") {
|
|
79
|
+
if (p === "fit") {
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
if (p.endsWith("%")) {
|
|
83
|
+
var n = Number(p.slice(0, -1));
|
|
84
|
+
return n < 0 || n > 100;
|
|
85
|
+
}
|
|
86
|
+
return true;
|
|
87
|
+
}
|
|
88
|
+
return typeof p !== "number" || p < 0;
|
|
89
|
+
})) {
|
|
90
|
+
console.warn('\u26A0\uFE0F Invalid snapPoint given, snapPoints must be positive numeric values, string percentages between 0-100%, or "fit" when snapPointsMode is mixed');
|
|
91
|
+
}
|
|
92
|
+
if (snapPointsMode === "mixed" && snapPoints.indexOf("fit") > 0) {
|
|
93
|
+
console.warn('\u26A0\uFE0F Invalid snapPoint given, "fit" must be the first/largest snap point when snapPointsMode is mixed');
|
|
94
|
+
}
|
|
95
|
+
if (snapPointsMode === "fit" && (snapPoints.length !== (props.dismissOnSnapToBottom ? 2 : 1) || snapPoints[0] !== "fit")) {
|
|
96
|
+
console.warn("\u26A0\uFE0F Invalid snapPoint given, there are no snap points when snapPointsMode is fit");
|
|
97
|
+
}
|
|
98
|
+
if (snapPointsMode === "constant" && snapPoints.some(function (p) {
|
|
99
|
+
return typeof p !== "number" || p < 0;
|
|
100
|
+
})) {
|
|
101
|
+
console.warn("\u26A0\uFE0F Invalid snapPoint given, snapPoints must be positive numeric values when snapPointsMode is constant");
|
|
102
|
+
}
|
|
103
|
+
if (snapPointsMode === "percent" && snapPoints.some(function (p) {
|
|
104
|
+
return typeof p !== "number" || p < 0 || p > 100;
|
|
105
|
+
})) {
|
|
106
|
+
console.warn("\u26A0\uFE0F Invalid snapPoint given, snapPoints must be numeric values between 0 and 100 when snapPointsMode is percent");
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
if (open && props.dismissOnSnapToBottom && position === snapPoints.length - 1) {
|
|
110
|
+
setPositionImmediate(0);
|
|
111
|
+
}
|
|
112
|
+
var shouldSetPositionOpen = open && position < 0;
|
|
113
|
+
import_react.default.useEffect(function () {
|
|
114
|
+
if (shouldSetPositionOpen) {
|
|
115
|
+
setPosition(0);
|
|
116
|
+
}
|
|
117
|
+
}, [setPosition, shouldSetPositionOpen]);
|
|
118
|
+
var {
|
|
119
|
+
animationDriver
|
|
120
|
+
} = (0, import_core.useConfiguration)();
|
|
121
|
+
if (!animationDriver) {
|
|
122
|
+
throw new Error(process.env.NODE_ENV === "production" ? `\u274C 008` : "Must set animations in gui.config.ts");
|
|
123
|
+
}
|
|
124
|
+
var scrollBridge = (0, import_use_constant.useConstant)(function () {
|
|
125
|
+
var parentDragListeners = /* @__PURE__ */new Set();
|
|
126
|
+
var bridge = {
|
|
127
|
+
hasScrollableContent: false,
|
|
128
|
+
enabled: false,
|
|
129
|
+
y: 0,
|
|
130
|
+
paneY: 0,
|
|
131
|
+
paneMinY: 0,
|
|
132
|
+
scrollStartY: -1,
|
|
133
|
+
drag: function () {},
|
|
134
|
+
release: function () {},
|
|
135
|
+
scrollLock: false,
|
|
136
|
+
isParentDragging: false,
|
|
137
|
+
onParentDragging: function (cb) {
|
|
138
|
+
parentDragListeners.add(cb);
|
|
139
|
+
return function () {
|
|
140
|
+
parentDragListeners.delete(cb);
|
|
141
|
+
};
|
|
142
|
+
},
|
|
143
|
+
setParentDragging: function (val) {
|
|
144
|
+
if (val !== bridge.isParentDragging) {
|
|
145
|
+
bridge.isParentDragging = val;
|
|
146
|
+
parentDragListeners.forEach(function (cb) {
|
|
147
|
+
return cb(val);
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
return bridge;
|
|
153
|
+
});
|
|
154
|
+
var disableRemoveScroll;
|
|
155
|
+
if (props.disableRemoveScroll !== void 0) {
|
|
156
|
+
disableRemoveScroll = props.disableRemoveScroll || !open || !props.modal;
|
|
157
|
+
} else if (props.forceRemoveScrollEnabled !== void 0) {
|
|
158
|
+
if (process.env.NODE_ENV === "development") {
|
|
159
|
+
console.warn("[Sheet] forceRemoveScrollEnabled is deprecated. Use disableRemoveScroll instead.");
|
|
160
|
+
}
|
|
161
|
+
disableRemoveScroll = !props.forceRemoveScrollEnabled;
|
|
162
|
+
} else {
|
|
163
|
+
disableRemoveScroll = !open || !props.modal;
|
|
164
|
+
}
|
|
165
|
+
var maxSnapPoint = snapPoints[0];
|
|
166
|
+
var screenSize = snapPointsMode === "percent" ? frameSize / ((typeof maxSnapPoint === "number" ? maxSnapPoint : 100) / 100) : maxContentSize;
|
|
167
|
+
var _props_dismissOnOverlayPress, _props_dismissOnSnapToBottom;
|
|
168
|
+
var providerProps = {
|
|
169
|
+
screenSize,
|
|
170
|
+
maxSnapPoint,
|
|
171
|
+
disableRemoveScroll,
|
|
172
|
+
scrollBridge,
|
|
173
|
+
modal: !!props.modal,
|
|
174
|
+
open: state.open,
|
|
175
|
+
setOpen: state.setOpen,
|
|
176
|
+
hidden: !!state.isHidden,
|
|
177
|
+
contentRef,
|
|
178
|
+
handleRef,
|
|
179
|
+
frameSize,
|
|
180
|
+
setFrameSize,
|
|
181
|
+
dismissOnOverlayPress: (_props_dismissOnOverlayPress = props.dismissOnOverlayPress) !== null && _props_dismissOnOverlayPress !== void 0 ? _props_dismissOnOverlayPress : true,
|
|
182
|
+
dismissOnSnapToBottom: (_props_dismissOnSnapToBottom = props.dismissOnSnapToBottom) !== null && _props_dismissOnSnapToBottom !== void 0 ? _props_dismissOnSnapToBottom : false,
|
|
183
|
+
onOverlayComponent: options.onOverlayComponent,
|
|
184
|
+
scope: props.__scopeSheet,
|
|
185
|
+
hasFit,
|
|
186
|
+
position,
|
|
187
|
+
snapPoints,
|
|
188
|
+
snapPointsMode,
|
|
189
|
+
setMaxContentSize,
|
|
190
|
+
setPosition,
|
|
191
|
+
setPositionImmediate,
|
|
192
|
+
onlyShowFrame: false
|
|
193
|
+
};
|
|
194
|
+
return providerProps;
|
|
195
|
+
}
|
|
196
|
+
//# sourceMappingURL=useSheetProviderProps.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useSheetProviderProps_exports","__export","useSheetProviderProps","module","exports","import_react","__toESM","require","import_core","import_use_constant","import_use_controllable_state","props","state","options","arguments","length","handleRef","default","useRef","contentRef","frameSize","setFrameSize","useState","maxContentSize","setMaxContentSize","_props_snapPointsMode","snapPointsMode","_props_snapPoints","snapPointsProp","snapPoints","hasFit","useMemo","dismissOnSnapToBottom","JSON","stringify","position_","setPositionImmediate","useControllableState","prop","position","defaultProp","defaultPosition","open","onChange","onPositionChange","strategy","setPosition","useCallback","next","setOpen","process","env","NODE_ENV","some","p","endsWith","n","Number","slice","console","warn","indexOf","shouldSetPositionOpen","useEffect","animationDriver","useConfiguration","Error","scrollBridge","useConstant","parentDragListeners","Set","bridge","hasScrollableContent","enabled","y","paneY","paneMinY","scrollStartY","drag","release","scrollLock","isParentDragging","onParentDragging","cb","add","delete","setParentDragging","val","forEach","disableRemoveScroll","modal","forceRemoveScrollEnabled","maxSnapPoint","screenSize","_props_dismissOnOverlayPress","_props_dismissOnSnapToBottom","providerProps","hidden","isHidden","dismissOnOverlayPress"],"sources":["../../src/useSheetProviderProps.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|