@tamagui/sheet 1.112.0 → 1.112.1

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.
Files changed (53) hide show
  1. package/dist/cjs/Sheet.cjs +122 -0
  2. package/dist/cjs/Sheet.cjs.map +6 -0
  3. package/dist/cjs/SheetContext.cjs +32 -0
  4. package/dist/cjs/SheetContext.cjs.map +6 -0
  5. package/dist/cjs/SheetController.cjs +57 -0
  6. package/dist/cjs/SheetController.cjs.map +6 -0
  7. package/dist/cjs/SheetImplementationCustom.cjs +365 -0
  8. package/dist/cjs/SheetImplementationCustom.cjs.map +6 -0
  9. package/dist/cjs/SheetScrollView.cjs +92 -0
  10. package/dist/cjs/SheetScrollView.cjs.map +6 -0
  11. package/dist/cjs/constants.cjs +36 -0
  12. package/dist/cjs/constants.cjs.map +6 -0
  13. package/dist/cjs/contexts.cjs +42 -0
  14. package/dist/cjs/contexts.cjs.map +6 -0
  15. package/dist/cjs/createSheet.cjs +166 -0
  16. package/dist/cjs/createSheet.cjs.map +6 -0
  17. package/dist/cjs/helpers.cjs +33 -0
  18. package/dist/cjs/helpers.cjs.map +6 -0
  19. package/dist/cjs/index.cjs +28 -0
  20. package/dist/cjs/index.cjs.map +6 -0
  21. package/dist/cjs/nativeSheet.cjs +75 -0
  22. package/dist/cjs/nativeSheet.cjs.map +6 -0
  23. package/dist/cjs/types.cjs +16 -0
  24. package/dist/cjs/types.cjs.map +6 -0
  25. package/dist/cjs/useSheet.cjs +27 -0
  26. package/dist/cjs/useSheet.cjs.map +6 -0
  27. package/dist/cjs/useSheetController.cjs +50 -0
  28. package/dist/cjs/useSheetController.cjs.map +6 -0
  29. package/dist/cjs/useSheetOffscreenSize.cjs +51 -0
  30. package/dist/cjs/useSheetOffscreenSize.cjs.map +6 -0
  31. package/dist/cjs/useSheetOpenState.cjs +49 -0
  32. package/dist/cjs/useSheetOpenState.cjs.map +6 -0
  33. package/dist/cjs/useSheetProviderProps.cjs +121 -0
  34. package/dist/cjs/useSheetProviderProps.cjs.map +6 -0
  35. package/dist/cjs/useSheetProviderProps.js +3 -1
  36. package/dist/cjs/useSheetProviderProps.js.map +1 -1
  37. package/dist/cjs/useSheetProviderProps.native.js +1 -1
  38. package/dist/cjs/useSheetProviderProps.native.js.map +1 -1
  39. package/dist/esm/useSheetProviderProps.js +3 -1
  40. package/dist/esm/useSheetProviderProps.js.map +1 -1
  41. package/dist/esm/useSheetProviderProps.mjs +1 -1
  42. package/dist/esm/useSheetProviderProps.mjs.map +1 -1
  43. package/dist/esm/useSheetProviderProps.native.js +1 -1
  44. package/dist/esm/useSheetProviderProps.native.js.map +1 -1
  45. package/dist/jsx/useSheetProviderProps.js +3 -1
  46. package/dist/jsx/useSheetProviderProps.js.map +1 -1
  47. package/dist/jsx/useSheetProviderProps.mjs +1 -1
  48. package/dist/jsx/useSheetProviderProps.mjs.map +1 -1
  49. package/dist/jsx/useSheetProviderProps.native.js +1 -1
  50. package/dist/jsx/useSheetProviderProps.native.js.map +1 -1
  51. package/package.json +16 -16
  52. package/src/useSheetProviderProps.tsx +5 -1
  53. package/types/useSheetProviderProps.d.ts.map +1 -1
@@ -0,0 +1,122 @@
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: !0
9
+ });
10
+ },
11
+ __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
13
+ get: () => from[key],
14
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
+ });
16
+ return to;
17
+ },
18
+ __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
19
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
20
+ value: !0
21
+ }), mod);
22
+ var Sheet_exports = {};
23
+ __export(Sheet_exports, {
24
+ Frame: () => Frame,
25
+ Handle: () => Handle,
26
+ Overlay: () => Overlay,
27
+ Sheet: () => Sheet,
28
+ SheetHandleFrame: () => SheetHandleFrame,
29
+ SheetOverlayFrame: () => SheetOverlayFrame,
30
+ createSheetScope: () => import_SheetContext.createSheetScope
31
+ });
32
+ module.exports = __toCommonJS(Sheet_exports);
33
+ var import_core = require("@tamagui/core"),
34
+ import_stacks = require("@tamagui/stacks"),
35
+ import_constants = require("./constants.cjs"),
36
+ import_createSheet = require("./createSheet.cjs"),
37
+ import_SheetContext = require("./SheetContext.cjs");
38
+ __reExport(Sheet_exports, require("./types.cjs"), module.exports);
39
+ const Handle = (0, import_core.styled)(import_stacks.XStack, {
40
+ name: import_constants.SHEET_HANDLE_NAME,
41
+ variants: {
42
+ open: {
43
+ true: {
44
+ pointerEvents: "auto"
45
+ },
46
+ false: {
47
+ opacity: 0,
48
+ pointerEvents: "none"
49
+ }
50
+ },
51
+ unstyled: {
52
+ false: {
53
+ height: 10,
54
+ borderRadius: 100,
55
+ backgroundColor: "$background",
56
+ zIndex: 10,
57
+ marginHorizontal: "35%",
58
+ marginBottom: "$2",
59
+ opacity: 0.5,
60
+ hoverStyle: {
61
+ opacity: 0.7
62
+ }
63
+ }
64
+ }
65
+ },
66
+ defaultVariants: {
67
+ unstyled: process.env.TAMAGUI_HEADLESS === "1"
68
+ }
69
+ }),
70
+ Overlay = (0, import_core.styled)(import_stacks.ThemeableStack, {
71
+ name: import_constants.SHEET_OVERLAY_NAME,
72
+ variants: {
73
+ open: {
74
+ true: {
75
+ opacity: 1,
76
+ pointerEvents: "auto"
77
+ },
78
+ false: {
79
+ opacity: 0,
80
+ pointerEvents: "none"
81
+ }
82
+ },
83
+ unstyled: {
84
+ false: {
85
+ fullscreen: !0,
86
+ position: "absolute",
87
+ backgrounded: !0,
88
+ zIndex: 99999,
89
+ pointerEvents: "auto"
90
+ }
91
+ }
92
+ },
93
+ defaultVariants: {
94
+ unstyled: process.env.TAMAGUI_HEADLESS === "1"
95
+ }
96
+ }),
97
+ Frame = (0, import_core.styled)(import_stacks.YStack, {
98
+ name: import_constants.SHEET_NAME,
99
+ variants: {
100
+ unstyled: {
101
+ false: {
102
+ flex: 1,
103
+ backgroundColor: "$background",
104
+ borderTopLeftRadius: "$true",
105
+ borderTopRightRadius: "$true",
106
+ width: "100%",
107
+ maxHeight: "100%",
108
+ overflow: "hidden"
109
+ }
110
+ }
111
+ },
112
+ defaultVariants: {
113
+ unstyled: process.env.TAMAGUI_HEADLESS === "1"
114
+ }
115
+ }),
116
+ Sheet = (0, import_createSheet.createSheet)({
117
+ Frame,
118
+ Handle,
119
+ Overlay
120
+ }),
121
+ SheetOverlayFrame = Overlay,
122
+ SheetHandleFrame = Handle;
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/Sheet.tsx"],
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAuB,0BACvB,gBAA+C,4BAE/C,mBAAkE,wBAClE,qBAA4B,0BAE5B,sBAAiC;AACjC,0BAAc,oBAPd;AAaO,MAAM,aAAS,oBAAO,sBAAQ;AAAA,EACnC,MAAM;AAAA,EAEN,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,MAAM;AAAA,QACJ,eAAe;AAAA,MACjB;AAAA,MACA,OAAO;AAAA,QACL,SAAS;AAAA,QACT,eAAe;AAAA,MACjB;AAAA,IACF;AAAA,IAEA,UAAU;AAAA,MACR,OAAO;AAAA,QACL,QAAQ;AAAA,QACR,cAAc;AAAA,QACd,iBAAiB;AAAA,QACjB,QAAQ;AAAA,QACR,kBAAkB;AAAA,QAClB,cAAc;AAAA,QACd,SAAS;AAAA,QAET,YAAY;AAAA,UACV,SAAS;AAAA,QACX;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU,QAAQ,IAAI,qBAAqB;AAAA,EAC7C;AACF,CAAC,GAMY,cAAU,oBAAO,8BAAgB;AAAA,EAC5C,MAAM;AAAA,EAEN,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,eAAe;AAAA,MACjB;AAAA,MACA,OAAO;AAAA,QACL,SAAS;AAAA,QACT,eAAe;AAAA,MACjB;AAAA,IACF;AAAA,IAEA,UAAU;AAAA,MACR,OAAO;AAAA,QACL,YAAY;AAAA,QACZ,UAAU;AAAA,QACV,cAAc;AAAA,QACd,QAAQ;AAAA,QACR,eAAe;AAAA,MACjB;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU,QAAQ,IAAI,qBAAqB;AAAA,EAC7C;AACF,CAAC,GAMY,YAAQ,oBAAO,sBAAQ;AAAA,EAClC,MAAM;AAAA,EAEN,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,MAAM;AAAA,QACN,iBAAiB;AAAA,QACjB,qBAAqB;AAAA,QACrB,sBAAsB;AAAA,QACtB,OAAO;AAAA,QACP,WAAW;AAAA,QACX,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU,QAAQ,IAAI,qBAAqB;AAAA,EAC7C;AACF,CAAC,GAEY,YAAQ,gCAAY;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AACF,CAAC,GAGY,oBAAoB,SAGpB,mBAAmB;",
5
+ "names": []
6
+ }
@@ -0,0 +1,32 @@
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: !0
9
+ });
10
+ },
11
+ __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
13
+ get: () => from[key],
14
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
+ });
16
+ return to;
17
+ };
18
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
+ value: !0
20
+ }), mod);
21
+ var SheetContext_exports = {};
22
+ __export(SheetContext_exports, {
23
+ SheetProvider: () => SheetProvider,
24
+ createSheetContext: () => createSheetContext,
25
+ createSheetScope: () => createSheetScope,
26
+ useSheetContext: () => useSheetContext
27
+ });
28
+ module.exports = __toCommonJS(SheetContext_exports);
29
+ var import_create_context = require("@tamagui/create-context"),
30
+ import_constants = require("./constants.cjs");
31
+ const [createSheetContext, createSheetScope] = (0, import_create_context.createContextScope)(import_constants.SHEET_NAME),
32
+ [SheetProvider, useSheetContext] = createSheetContext(import_constants.SHEET_NAME, {});
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/SheetContext.tsx"],
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAAmC,oCAEnC,mBAA2B;AAGpB,MAAM,CAAC,oBAAoB,gBAAgB,QAAI,0CAAmB,2BAAU,GAEtE,CAAC,eAAe,eAAe,IAAI;AAAA,EAC9C;AAAA,EACA,CAAC;AACH;",
5
+ "names": []
6
+ }
@@ -0,0 +1,57 @@
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
+ __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: !0
11
+ });
12
+ },
13
+ __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
15
+ get: () => from[key],
16
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
+ });
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
+ value: mod,
27
+ enumerable: !0
28
+ }) : target, mod)),
29
+ __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
30
+ value: !0
31
+ }), mod);
32
+ var SheetController_exports = {};
33
+ __export(SheetController_exports, {
34
+ SheetController: () => SheetController
35
+ });
36
+ module.exports = __toCommonJS(SheetController_exports);
37
+ var import_react = __toESM(require("react")),
38
+ import_core = require("@tamagui/core"),
39
+ import_useSheetController = require("./useSheetController.cjs"),
40
+ import_jsx_runtime = require("react/jsx-runtime");
41
+ const SheetController = ({
42
+ children,
43
+ onOpenChange: onOpenChangeProp,
44
+ ...value
45
+ }) => {
46
+ const onOpenChange = (0, import_core.useEvent)(onOpenChangeProp),
47
+ memoValue = import_react.default.useMemo(() => ({
48
+ open: value.open,
49
+ hidden: value.hidden,
50
+ disableDrag: value.disableDrag,
51
+ onOpenChange
52
+ }), [onOpenChange, value.open, value.hidden, value.disableDrag]);
53
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_useSheetController.SheetControllerContext.Provider, {
54
+ value: memoValue,
55
+ children
56
+ });
57
+ };
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/SheetController.tsx"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB,2BAClB,cAAyB,0BAIzB,4BAAuC,iCAoBnC;AAlBG,MAAM,kBAAkB,CAAC;AAAA,EAC9B;AAAA,EACA,cAAc;AAAA,EACd,GAAG;AACL,MAAuE;AACrE,QAAM,mBAAe,sBAAS,gBAAgB,GAExC,YAAY,aAAAA,QAAM;AAAA,IACtB,OAAO;AAAA,MACL,MAAM,MAAM;AAAA,MACZ,QAAQ,MAAM;AAAA,MACd,aAAa,MAAM;AAAA,MACnB;AAAA,IACF;AAAA,IACA,CAAC,cAAc,MAAM,MAAM,MAAM,QAAQ,MAAM,WAAW;AAAA,EAC5D;AAEA,SACE,4CAAC,iDAAuB,UAAvB,EAAgC,OAAO,WACrC,UACH;AAEJ;",
5
+ "names": ["React"]
6
+ }
@@ -0,0 +1,365 @@
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
+ __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: !0
11
+ });
12
+ },
13
+ __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
15
+ get: () => from[key],
16
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
+ });
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
+ value: mod,
27
+ enumerable: !0
28
+ }) : target, mod)),
29
+ __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
30
+ value: !0
31
+ }), mod);
32
+ var SheetImplementationCustom_exports = {};
33
+ __export(SheetImplementationCustom_exports, {
34
+ SheetImplementationCustom: () => SheetImplementationCustom
35
+ });
36
+ module.exports = __toCommonJS(SheetImplementationCustom_exports);
37
+ var import_react = __toESM(require("react")),
38
+ import_adapt = require("@tamagui/adapt"),
39
+ import_animate_presence = require("@tamagui/animate-presence"),
40
+ import_compose_refs = require("@tamagui/compose-refs"),
41
+ import_constants = require("@tamagui/constants"),
42
+ import_core = require("@tamagui/core"),
43
+ import_portal = require("@tamagui/portal"),
44
+ import_use_keyboard_visible = require("@tamagui/use-keyboard-visible"),
45
+ import_react_native = require("react-native-web"),
46
+ import_constants2 = require("./constants.cjs"),
47
+ import_contexts = require("./contexts.cjs"),
48
+ import_helpers = require("./helpers.cjs"),
49
+ import_SheetContext = require("./SheetContext.cjs"),
50
+ import_useSheetOpenState = require("./useSheetOpenState.cjs"),
51
+ import_useSheetProviderProps = require("./useSheetProviderProps.cjs"),
52
+ import_jsx_runtime = require("react/jsx-runtime");
53
+ let hiddenSize = 10000.1;
54
+ const SheetImplementationCustom = (0, import_core.themeable)(import_react.default.forwardRef(function (props, forwardedRef) {
55
+ const parentSheet = import_react.default.useContext(import_contexts.ParentSheetContext),
56
+ {
57
+ animation,
58
+ animationConfig: animationConfigProp,
59
+ modal = !1,
60
+ zIndex = parentSheet.zIndex + 1,
61
+ moveOnKeyboardChange = !1,
62
+ unmountChildrenWhenHidden = !1,
63
+ portalProps,
64
+ containerComponent: ContainerComponent = import_react.default.Fragment
65
+ } = props,
66
+ keyboardIsVisible = (0, import_use_keyboard_visible.useKeyboardVisible)(),
67
+ state = (0, import_useSheetOpenState.useSheetOpenState)(props),
68
+ [overlayComponent, setOverlayComponent] = import_react.default.useState(null),
69
+ providerProps = (0, import_useSheetProviderProps.useSheetProviderProps)(props, state, {
70
+ onOverlayComponent: setOverlayComponent
71
+ }),
72
+ {
73
+ frameSize,
74
+ setFrameSize,
75
+ snapPoints,
76
+ snapPointsMode,
77
+ hasFit,
78
+ position,
79
+ setPosition,
80
+ scrollBridge,
81
+ screenSize,
82
+ setMaxContentSize,
83
+ maxSnapPoint
84
+ } = providerProps,
85
+ {
86
+ open,
87
+ controller,
88
+ isHidden
89
+ } = state,
90
+ sheetRef = import_react.default.useRef(null),
91
+ ref = (0, import_compose_refs.useComposedRefs)(forwardedRef, sheetRef),
92
+ animationConfig = (() => {
93
+ const [animationProp, animationPropConfig] = animation ? Array.isArray(animation) ? animation : [animation] : [];
94
+ return animationConfigProp ?? (animationProp ? {
95
+ ...(0, import_core.getConfig)().animations.animations[animationProp],
96
+ ...animationPropConfig
97
+ } : null);
98
+ })(),
99
+ [isShowingInnerSheet, setIsShowingInnerSheet] = import_react.default.useState(!1),
100
+ shouldHideParentSheet = !import_constants.isWeb && modal && isShowingInnerSheet,
101
+ parentSheetContext = import_react.default.useContext(import_contexts.SheetInsideSheetContext),
102
+ onInnerSheet = import_react.default.useCallback(hasChild => {
103
+ setIsShowingInnerSheet(hasChild);
104
+ }, []),
105
+ positions = import_react.default.useMemo(() => snapPoints.map(point => getYPositions(snapPointsMode, point, screenSize, frameSize)), [screenSize, frameSize, snapPoints, snapPointsMode]),
106
+ {
107
+ animationDriver
108
+ } = (0, import_core.useConfiguration)(),
109
+ {
110
+ useAnimatedNumber,
111
+ useAnimatedNumberStyle,
112
+ useAnimatedNumberReaction
113
+ } = animationDriver,
114
+ AnimatedView = animationDriver.View ?? import_core.Stack;
115
+ (0, import_constants.useIsomorphicLayoutEffect)(() => {
116
+ if (parentSheetContext && open) return parentSheetContext(!0), () => {
117
+ parentSheetContext(!1);
118
+ };
119
+ }, [parentSheetContext, open]);
120
+ const nextParentContext = import_react.default.useMemo(() => ({
121
+ zIndex
122
+ }), [zIndex]),
123
+ animatedNumber = useAnimatedNumber(hiddenSize),
124
+ at = import_react.default.useRef(hiddenSize);
125
+ useAnimatedNumberReaction({
126
+ value: animatedNumber,
127
+ hostRef: sheetRef
128
+ }, import_react.default.useCallback(value => {
129
+ at.current = value, scrollBridge.paneY = value;
130
+ }, [animationDriver]));
131
+ function stopSpring() {
132
+ animatedNumber.stop(), scrollBridge.onFinishAnimate && (scrollBridge.onFinishAnimate(), scrollBridge.onFinishAnimate = void 0);
133
+ }
134
+ const hasntMeasured = at.current === hiddenSize,
135
+ animateTo = (0, import_core.useEvent)(position2 => {
136
+ if (frameSize === 0) return;
137
+ let toValue = isHidden || position2 === -1 ? screenSize : positions[position2];
138
+ if (at.current !== toValue) {
139
+ if (at.current = toValue, stopSpring(), hasntMeasured || isHidden) {
140
+ animatedNumber.setValue(screenSize, {
141
+ type: "timing",
142
+ duration: 0
143
+ }, () => {
144
+ isHidden || (toValue = positions[position2], at.current = toValue, animatedNumber.setValue(toValue, {
145
+ type: "spring",
146
+ ...animationConfig
147
+ }));
148
+ });
149
+ return;
150
+ }
151
+ animatedNumber.setValue(toValue, {
152
+ type: "spring",
153
+ ...animationConfig
154
+ });
155
+ }
156
+ });
157
+ (0, import_constants.useIsomorphicLayoutEffect)(() => {
158
+ screenSize && hasntMeasured && animatedNumber.setValue(screenSize, {
159
+ type: "timing",
160
+ duration: 0
161
+ });
162
+ }, [hasntMeasured, screenSize]), (0, import_constants.useIsomorphicLayoutEffect)(() => {
163
+ !frameSize || !screenSize || isHidden || hasntMeasured && !open || animateTo(position);
164
+ }, [isHidden, frameSize, screenSize, open, position]);
165
+ const disableDrag = props.disableDrag ?? controller?.disableDrag,
166
+ themeName = (0, import_core.useThemeName)(),
167
+ [isDragging, setIsDragging] = import_react.default.useState(!1),
168
+ panResponder = import_react.default.useMemo(() => {
169
+ if (disableDrag || !frameSize || isShowingInnerSheet) return;
170
+ const minY = positions[0];
171
+ scrollBridge.paneMinY = minY;
172
+ let startY = at.current;
173
+ function setPanning(val) {
174
+ setIsDragging(val), import_constants2.SHEET_HIDDEN_STYLESHEET && (val ? import_constants2.SHEET_HIDDEN_STYLESHEET.innerText = ":root * { user-select: none !important; -webkit-user-select: none !important; }" : import_constants2.SHEET_HIDDEN_STYLESHEET.innerText = "");
175
+ }
176
+ const release = ({
177
+ vy,
178
+ dragAt
179
+ }) => {
180
+ isExternalDrag = !1, previouslyScrolling = !1, setPanning(!1);
181
+ const end = dragAt + startY + frameSize * vy * 0.2;
182
+ let closestPoint = 0,
183
+ dist = Number.POSITIVE_INFINITY;
184
+ for (let i = 0; i < positions.length; i++) {
185
+ const position2 = positions[i],
186
+ curDist = end > position2 ? end - position2 : position2 - end;
187
+ curDist < dist && (dist = curDist, closestPoint = i);
188
+ }
189
+ setPosition(closestPoint), animateTo(closestPoint);
190
+ },
191
+ finish = (_e, state2) => {
192
+ release({
193
+ vy: state2.vy,
194
+ dragAt: state2.dy
195
+ });
196
+ };
197
+ let previouslyScrolling = !1;
198
+ const onMoveShouldSet = (e, {
199
+ dy
200
+ }) => {
201
+ if (e.target === providerProps.handleRef.current) return !0;
202
+ const isScrolled = scrollBridge.y !== 0,
203
+ isDraggingUp = dy < 0,
204
+ isNearTop = scrollBridge.paneY - 5 <= scrollBridge.paneMinY;
205
+ return isScrolled ? (previouslyScrolling = !0, !1) : isNearTop && !isScrolled && isDraggingUp && !import_constants.isWeb ? !1 : Math.abs(dy) > 5;
206
+ },
207
+ grant = () => {
208
+ setPanning(!0), stopSpring(), startY = at.current;
209
+ };
210
+ let isExternalDrag = !1;
211
+ return scrollBridge.drag = dy => {
212
+ isExternalDrag || (isExternalDrag = !0, grant());
213
+ const to = dy + startY;
214
+ animatedNumber.setValue((0, import_helpers.resisted)(to, minY), {
215
+ type: "direct"
216
+ });
217
+ }, scrollBridge.release = release, import_react_native.PanResponder.create({
218
+ onMoveShouldSetPanResponder: onMoveShouldSet,
219
+ onPanResponderGrant: grant,
220
+ onPanResponderMove: (_e, {
221
+ dy
222
+ }) => {
223
+ const toFull = dy + startY,
224
+ to = (0, import_helpers.resisted)(toFull, minY);
225
+ animatedNumber.setValue(to, {
226
+ type: "direct"
227
+ });
228
+ },
229
+ onPanResponderEnd: finish,
230
+ onPanResponderTerminate: finish,
231
+ onPanResponderRelease: finish
232
+ });
233
+ }, [disableDrag, isShowingInnerSheet, animateTo, frameSize, positions, setPosition]),
234
+ handleAnimationViewLayout = import_react.default.useCallback(e => {
235
+ const next = Math.min(e.nativeEvent?.layout.height, import_react_native.Dimensions.get("screen").height);
236
+ next && setFrameSize(next);
237
+ }, [keyboardIsVisible]),
238
+ handleMaxContentViewLayout = import_react.default.useCallback(e => {
239
+ const next = Math.min(e.nativeEvent?.layout.height, import_react_native.Dimensions.get("screen").height);
240
+ next && setMaxContentSize(next);
241
+ }, [keyboardIsVisible]),
242
+ animatedStyle = useAnimatedNumberStyle(animatedNumber, val => {
243
+ "worklet";
244
+
245
+ return {
246
+ transform: [{
247
+ translateY: frameSize === 0 ? hiddenSize : val
248
+ }]
249
+ };
250
+ }),
251
+ sizeBeforeKeyboard = import_react.default.useRef(null);
252
+ import_react.default.useEffect(() => {
253
+ if (import_constants.isWeb || !moveOnKeyboardChange) return;
254
+ const keyboardShowListener = import_react_native.Keyboard.addListener(import_constants.currentPlatform === "ios" ? "keyboardWillShow" : "keyboardDidShow", e => {
255
+ sizeBeforeKeyboard.current === null && (sizeBeforeKeyboard.current = isHidden || position === -1 ? screenSize : positions[position], animatedNumber.setValue(Math.max(sizeBeforeKeyboard.current - e.endCoordinates.height, 0), {
256
+ type: "timing",
257
+ duration: 250
258
+ }));
259
+ }),
260
+ keyboardDidHideListener = import_react_native.Keyboard.addListener("keyboardDidHide", () => {
261
+ sizeBeforeKeyboard.current !== null && (animatedNumber.setValue(sizeBeforeKeyboard.current, {
262
+ type: "timing",
263
+ duration: 250
264
+ }), sizeBeforeKeyboard.current = null);
265
+ });
266
+ return () => {
267
+ keyboardDidHideListener.remove(), keyboardShowListener.remove();
268
+ };
269
+ }, [moveOnKeyboardChange, positions, position, isHidden]);
270
+ const [opacity, setOpacity] = import_react.default.useState(open ? 1 : 0);
271
+ open && opacity === 0 && setOpacity(1), import_react.default.useEffect(() => {
272
+ if (!open) {
273
+ const tm = setTimeout(() => {
274
+ setOpacity(0);
275
+ }, 400);
276
+ return () => {
277
+ clearTimeout(tm);
278
+ };
279
+ }
280
+ }, [open]);
281
+ const forcedContentHeight = hasFit ? void 0 : snapPointsMode === "percent" ? `${maxSnapPoint}${import_constants.isWeb ? "dvh" : "%"}` : maxSnapPoint,
282
+ contents = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_contexts.ParentSheetContext.Provider, {
283
+ value: nextParentContext,
284
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_SheetContext.SheetProvider, {
285
+ ...providerProps,
286
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_animate_presence.AnimatePresence, {
287
+ custom: {
288
+ open
289
+ },
290
+ children: shouldHideParentSheet || !open ? null : overlayComponent
291
+ }), snapPointsMode !== "percent" && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.View, {
292
+ style: {
293
+ opacity: 0,
294
+ position: "absolute",
295
+ top: 0,
296
+ left: 0,
297
+ right: 0,
298
+ bottom: 0,
299
+ pointerEvents: "none"
300
+ },
301
+ onLayout: handleMaxContentViewLayout
302
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(AnimatedView, {
303
+ ref,
304
+ ...panResponder?.panHandlers,
305
+ onLayout: handleAnimationViewLayout,
306
+ ...(!isDragging && {
307
+ // @ts-ignore for CSS driver this is necessary to attach the transition
308
+ animation
309
+ }),
310
+ disableClassName: !0,
311
+ style: [{
312
+ position: "absolute",
313
+ zIndex,
314
+ width: "100%",
315
+ height: forcedContentHeight,
316
+ minHeight: forcedContentHeight,
317
+ opacity,
318
+ ...((shouldHideParentSheet || !open) && {
319
+ pointerEvents: "none"
320
+ })
321
+ }, animatedStyle],
322
+ children: props.children
323
+ })]
324
+ })
325
+ }),
326
+ adaptContext = import_react.default.useContext(import_adapt.AdaptParentContext),
327
+ shouldMountChildren = !!(opacity || !unmountChildrenWhenHidden);
328
+ if (modal) {
329
+ const modalContents = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_portal.Portal, {
330
+ zIndex,
331
+ ...portalProps,
332
+ children: shouldMountChildren && /* @__PURE__ */(0, import_jsx_runtime.jsx)(ContainerComponent, {
333
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_core.Theme, {
334
+ forceClassName: !0,
335
+ name: themeName,
336
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_adapt.AdaptParentContext.Provider, {
337
+ value: adaptContext,
338
+ children: contents
339
+ })
340
+ })
341
+ })
342
+ });
343
+ return import_constants.isWeb ? modalContents : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_contexts.SheetInsideSheetContext.Provider, {
344
+ value: onInnerSheet,
345
+ children: modalContents
346
+ });
347
+ }
348
+ return contents;
349
+ }));
350
+ function getYPositions(mode, point, screenSize, frameSize) {
351
+ if (!screenSize || !frameSize) return 0;
352
+ if (mode === "mixed") {
353
+ if (typeof point == "number") return screenSize - Math.min(screenSize, Math.max(0, point));
354
+ if (point === "fit") return screenSize - Math.min(screenSize, frameSize);
355
+ if (point.endsWith("%")) {
356
+ const pct2 = Math.min(100, Math.max(0, Number(point.slice(0, -1)))) / 100;
357
+ return Number.isNaN(pct2) ? (console.warn("Invalid snapPoint percentage string"), 0) : Math.round(screenSize - pct2 * screenSize);
358
+ }
359
+ return console.warn("Invalid snapPoint unknown value"), 0;
360
+ }
361
+ if (mode === "fit") return point === 0 ? screenSize : screenSize - Math.min(screenSize, frameSize);
362
+ if (mode === "constant" && typeof point == "number") return screenSize - Math.min(screenSize, Math.max(0, point));
363
+ const pct = Math.min(100, Math.max(0, Number(point))) / 100;
364
+ return Number.isNaN(pct) ? (console.warn("Invalid snapPoint percentage"), 0) : Math.round(screenSize - pct * screenSize);
365
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/SheetImplementationCustom.tsx"],
4
+ "mappings": "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",
5
+ "names": ["import_constants", "React", "position", "state", "pct"]
6
+ }