@tamagui/sheet 1.110.4 → 1.111.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/SheetContext.native.js +1 -43
- package/dist/cjs/SheetContext.native.js.map +2 -2
- package/dist/cjs/SheetController.native.js +2 -23
- package/dist/cjs/SheetController.native.js.map +2 -2
- package/dist/cjs/SheetImplementationCustom.native.js +89 -158
- package/dist/cjs/SheetImplementationCustom.native.js.map +2 -2
- package/dist/cjs/SheetScrollView.native.js +7 -63
- package/dist/cjs/SheetScrollView.native.js.map +1 -1
- package/dist/cjs/createSheet.native.js +27 -82
- package/dist/cjs/createSheet.native.js.map +2 -2
- package/dist/cjs/nativeSheet.native.js +5 -39
- package/dist/cjs/nativeSheet.native.js.map +1 -1
- package/dist/cjs/useSheetOffscreenSize.native.js +1 -1
- package/dist/cjs/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/cjs/useSheetOpenState.native.js +4 -46
- package/dist/cjs/useSheetOpenState.native.js.map +2 -2
- package/dist/cjs/useSheetProviderProps.native.js +7 -59
- package/dist/cjs/useSheetProviderProps.native.js.map +2 -2
- package/dist/esm/Sheet.native.mjs +92 -0
- package/dist/esm/Sheet.native.mjs.map +1 -0
- package/dist/esm/SheetContext.native.js +1 -42
- package/dist/esm/SheetContext.native.js.map +1 -1
- package/dist/esm/SheetContext.native.mjs +6 -0
- package/dist/esm/SheetContext.native.mjs.map +1 -0
- package/dist/esm/SheetController.native.js +2 -22
- package/dist/esm/SheetController.native.js.map +2 -2
- package/dist/esm/SheetController.native.mjs +26 -0
- package/dist/esm/SheetController.native.mjs.map +1 -0
- package/dist/esm/SheetImplementationCustom.native.js +88 -156
- package/dist/esm/SheetImplementationCustom.native.js.map +2 -2
- package/dist/esm/SheetImplementationCustom.native.mjs +347 -0
- package/dist/esm/SheetImplementationCustom.native.mjs.map +1 -0
- package/dist/esm/SheetScrollView.native.js +8 -63
- package/dist/esm/SheetScrollView.native.js.map +1 -1
- package/dist/esm/SheetScrollView.native.mjs +107 -0
- package/dist/esm/SheetScrollView.native.mjs.map +1 -0
- package/dist/esm/constants.native.mjs +9 -0
- package/dist/esm/constants.native.mjs.map +1 -0
- package/dist/esm/contexts.native.mjs +7 -0
- package/dist/esm/contexts.native.mjs.map +1 -0
- package/dist/esm/createSheet.native.js +27 -82
- package/dist/esm/createSheet.native.js.map +2 -2
- package/dist/esm/createSheet.native.mjs +161 -0
- package/dist/esm/createSheet.native.mjs.map +1 -0
- package/dist/esm/helpers.native.mjs +13 -0
- package/dist/esm/helpers.native.mjs.map +1 -0
- package/dist/esm/index.native.mjs +12 -0
- package/dist/esm/index.native.mjs.map +1 -0
- package/dist/esm/nativeSheet.native.js +4 -37
- package/dist/esm/nativeSheet.native.js.map +1 -1
- package/dist/esm/nativeSheet.native.mjs +56 -0
- package/dist/esm/nativeSheet.native.mjs.map +1 -0
- package/dist/esm/types.native.mjs +2 -0
- package/dist/esm/types.native.mjs.map +1 -0
- package/dist/esm/useSheet.native.mjs +6 -0
- package/dist/esm/useSheet.native.mjs.map +1 -0
- package/dist/esm/useSheetController.native.js +2 -2
- package/dist/esm/useSheetController.native.js.map +1 -1
- package/dist/esm/useSheetController.native.mjs +15 -0
- package/dist/esm/useSheetController.native.mjs.map +1 -0
- package/dist/esm/useSheetOffscreenSize.native.js +1 -1
- package/dist/esm/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/esm/useSheetOffscreenSize.native.mjs +35 -0
- package/dist/esm/useSheetOffscreenSize.native.mjs.map +1 -0
- package/dist/esm/useSheetOpenState.native.js +4 -45
- package/dist/esm/useSheetOpenState.native.js.map +2 -2
- package/dist/esm/useSheetOpenState.native.mjs +29 -0
- package/dist/esm/useSheetOpenState.native.mjs.map +1 -0
- package/dist/esm/useSheetProviderProps.native.js +7 -59
- package/dist/esm/useSheetProviderProps.native.js.map +2 -2
- package/dist/esm/useSheetProviderProps.native.mjs +103 -0
- package/dist/esm/useSheetProviderProps.native.mjs.map +1 -0
- package/dist/jsx/SheetContext.native.js +1 -42
- package/dist/jsx/SheetContext.native.js.map +1 -1
- package/dist/jsx/SheetController.native.js +2 -22
- package/dist/jsx/SheetController.native.js.map +2 -2
- package/dist/jsx/SheetImplementationCustom.native.js +88 -156
- package/dist/jsx/SheetImplementationCustom.native.js.map +2 -2
- package/dist/jsx/SheetScrollView.native.js +7 -62
- package/dist/jsx/SheetScrollView.native.js.map +1 -1
- package/dist/jsx/createSheet.native.js +27 -82
- package/dist/jsx/createSheet.native.js.map +2 -2
- package/dist/jsx/nativeSheet.native.js +4 -37
- package/dist/jsx/nativeSheet.native.js.map +1 -1
- package/dist/jsx/useSheetOffscreenSize.native.js +1 -1
- package/dist/jsx/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/jsx/useSheetOpenState.native.js +3 -44
- package/dist/jsx/useSheetOpenState.native.js.map +2 -2
- package/dist/jsx/useSheetProviderProps.native.js +7 -59
- package/dist/jsx/useSheetProviderProps.native.js.map +2 -2
- package/package.json +16 -16
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { composeRefs } from "@tamagui/compose-refs";
|
|
4
|
+
import { ScrollView } from "@tamagui/scroll-view";
|
|
5
|
+
import { useSheetContext } from "./SheetContext.mjs";
|
|
6
|
+
var SHEET_SCROLL_VIEW_NAME = "SheetScrollView",
|
|
7
|
+
SheetScrollView = /* @__PURE__ */React.forwardRef(function (param, ref) {
|
|
8
|
+
var {
|
|
9
|
+
__scopeSheet,
|
|
10
|
+
children,
|
|
11
|
+
onScroll,
|
|
12
|
+
...props
|
|
13
|
+
} = param,
|
|
14
|
+
context = useSheetContext(SHEET_SCROLL_VIEW_NAME, __scopeSheet),
|
|
15
|
+
{
|
|
16
|
+
scrollBridge
|
|
17
|
+
} = context,
|
|
18
|
+
scrollRef = React.useRef(null),
|
|
19
|
+
state = React.useRef({
|
|
20
|
+
lastPageY: 0,
|
|
21
|
+
dragAt: 0,
|
|
22
|
+
dys: [],
|
|
23
|
+
// store a few recent dys to get velocity on release
|
|
24
|
+
isScrolling: !1,
|
|
25
|
+
isDragging: !1
|
|
26
|
+
}),
|
|
27
|
+
release = function () {
|
|
28
|
+
if (state.current.isDragging) {
|
|
29
|
+
state.current.isDragging = !1, scrollBridge.scrollStartY = -1, state.current.isScrolling = !1;
|
|
30
|
+
var vy = 0;
|
|
31
|
+
if (state.current.dys.length) {
|
|
32
|
+
var recentDys = state.current.dys.slice(-10),
|
|
33
|
+
dist = recentDys.length ? recentDys.reduce(function (a, b) {
|
|
34
|
+
return a + b;
|
|
35
|
+
}, 0) : 0,
|
|
36
|
+
avgDy = dist / recentDys.length;
|
|
37
|
+
vy = avgDy * 0.04;
|
|
38
|
+
}
|
|
39
|
+
state.current.dys = [], scrollBridge.release({
|
|
40
|
+
dragAt: state.current.dragAt,
|
|
41
|
+
vy
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
return /* @__PURE__ */_jsx(ScrollView, {
|
|
46
|
+
ref: composeRefs(scrollRef, ref),
|
|
47
|
+
flex: 1,
|
|
48
|
+
scrollEventThrottle: 8,
|
|
49
|
+
// scrollEnabled={scrollEnabled}
|
|
50
|
+
onScroll: function (e) {
|
|
51
|
+
var {
|
|
52
|
+
y
|
|
53
|
+
} = e.nativeEvent.contentOffset;
|
|
54
|
+
scrollBridge.y = y, y > 0 && (scrollBridge.scrollStartY = -1), onScroll?.(e);
|
|
55
|
+
},
|
|
56
|
+
// This assures that we do not skip the "scrollBridge" values processing
|
|
57
|
+
// when passing this prop into a <Sheet.ScrollView /> overriding it here
|
|
58
|
+
// Useful when using this ScrollView with lists such as "FlashList", i.e.
|
|
59
|
+
// ```
|
|
60
|
+
// renderScrollComponent={Sheet.ScrollView}
|
|
61
|
+
// ```
|
|
62
|
+
onStartShouldSetResponder: function () {
|
|
63
|
+
return scrollBridge.scrollStartY = -1, state.current.isDragging = !0, !0;
|
|
64
|
+
},
|
|
65
|
+
// setting to false while onResponderMove is disabled
|
|
66
|
+
onMoveShouldSetResponder: function () {
|
|
67
|
+
return !1;
|
|
68
|
+
},
|
|
69
|
+
// somehow disabling works better, regression, no more nice drag continue scroll
|
|
70
|
+
// onResponderMove={(e) => {
|
|
71
|
+
// const { pageY } = e.nativeEvent
|
|
72
|
+
// if (state.current.isScrolling) {
|
|
73
|
+
// return
|
|
74
|
+
// }
|
|
75
|
+
// if (scrollBridge.scrollStartY === -1) {
|
|
76
|
+
// scrollBridge.scrollStartY = pageY
|
|
77
|
+
// state.current.lastPageY = pageY
|
|
78
|
+
// }
|
|
79
|
+
// const dragAt = pageY - scrollBridge.scrollStartY
|
|
80
|
+
// const dy = pageY - state.current.lastPageY
|
|
81
|
+
// state.current.lastPageY = pageY // after dy
|
|
82
|
+
// const isDraggingUp = dy < 0
|
|
83
|
+
// const isPaneAtTop = scrollBridge.paneY <= scrollBridge.paneMinY
|
|
84
|
+
// if ((dy === 0 || isDraggingUp) && isPaneAtTop) {
|
|
85
|
+
// state.current.isScrolling = true
|
|
86
|
+
// setScrollEnabled(true)
|
|
87
|
+
// return
|
|
88
|
+
// }
|
|
89
|
+
// setScrollEnabled(false)
|
|
90
|
+
// scrollBridge.drag(dragAt)
|
|
91
|
+
// state.current.dragAt = dragAt
|
|
92
|
+
// state.current.dys.push(dy)
|
|
93
|
+
// // only do every so often, cut down to 10 again
|
|
94
|
+
// if (state.current.dys.length > 100) {
|
|
95
|
+
// state.current.dys = state.current.dys.slice(-10)
|
|
96
|
+
// }
|
|
97
|
+
// }}
|
|
98
|
+
onResponderRelease: release,
|
|
99
|
+
className: "_ovs-contain",
|
|
100
|
+
...props,
|
|
101
|
+
children: React.useMemo(function () {
|
|
102
|
+
return children;
|
|
103
|
+
}, [children])
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
export { SheetScrollView };
|
|
107
|
+
//# sourceMappingURL=SheetScrollView.native.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","React","composeRefs","ScrollView","useSheetContext","SHEET_SCROLL_VIEW_NAME","SheetScrollView","forwardRef","param","ref","__scopeSheet","children","onScroll","props","context","scrollBridge","scrollRef","useRef","state","lastPageY","dragAt","dys","isScrolling","isDragging","release","current","scrollStartY","vy","length","recentDys","slice","dist","reduce","a","b","avgDy","flex","scrollEventThrottle","e","y","nativeEvent","contentOffset","onStartShouldSetResponder"],"sources":["../../src/SheetScrollView.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAOA,GAAA,IAAAC,IAAW;AAClB,OAAAC,KAAS;AAGT,SAASC,WAAA,QAAkB;AAI3B,SAASC,UAAA,8BAAuB;AAmE1B,SAAAC,eAAA;AA1DN,IAAAC,sBAAM,oBAAyB;EAAAC,eAElB,kBAAwBL,KAAA,CAAAM,UAAA,WAAAC,KAAA,EAAAC,GAAA;IAInC,IACI;QAAAC,YAAc;QAAAC,QAAU;QAAAC,QAAU;QAAG,GAAAC;MACvC,IAAAL,KACG;MAAAM,OAAA,GAAAV,eAAA,CAAAC,sBAAA,EAAAK,YAAA;MAAA;QAAAK;MAAA,IAAAD,OAAA;MAAAE,SAAA,GAAAf,KAAA,CAAAgB,MAAA;MAAAC,KAAA,GAAAjB,KAAA,CAAAgB,MAAA;QACHE,SAAM;QAiBqBC,MACzB;QAAWC,GACX;QAAQ;QACFC,WAAA;QAAAC,UACN;MAAa;MACbC,OAAA,YAAAA,CAAA,EAAY;QACd,IAEMN,KAAA,CAAAO,OAAU,CAAAF,UAAM;UACpBL,KAAK,CAAAO,OAAM,CAAAF,UAAQ,OAAAR,YAAA,CAAAW,YAAA,OAAAR,KAAA,CAAAO,OAAA,CAAAH,WAAA;UACjB,IAAAK,EAAA;UAEF,IAAAT,KAAM,CAAAO,OAAQ,CAAAJ,GAAA,CAAAO,MAAa;YAI3B,IAAIC,SAAK,GAAAX,KAAA,CAAAO,OAAA,CAAAJ,GAAA,CAAAS,KAAA;cAAAC,IAAA,GAAAF,SAAA,CAAAD,MAAA,GAAAC,SAAA,CAAAG,MAAA,WAAAC,CAAA,EAAAC,CAAA;gBACL,OAAMD,CAAA,GAAAC,CAAA;cACR,QAAM;cAAAC,KAAA,GAAYJ,IAAA,GAAMF,SAAQ,CAAID,MAAM;YAG1CD,EAAA,GAAAQ,KAFa,OAAU;UAGzB;UACAjB,KAAA,CAAMO,OAAA,CAAQJ,GAAA,GAAM,EAAC,EACrBN,YAAA,CAAaS,OAAA,CAAQ;YACnBJ,MAAA,EAAQF,KAAA,CAAMO,OAAA,CAAQL,MAAA;YACtBO;UACF,CAAC;QACH;MAEA;IACE,OAAC,eAAA3B,IAAA,CAAAG,UAAA;MAAAM,GAAA,EAAAP,WAAA,CAAAc,SAAA,EAAAP,GAAA;MAAA2B,IACC;MAAsCC,mBAChC;MAAA;MACezB,QAErB,WAAAA,CAAW0B,CAAA,EAAM;QACf;UAAAC;QAAA,IAAQD,CAAA,CAAEE,WAAM,CAAAC,aAAY;QAC5B1B,YAAA,CAAAwB,CAAA,GAAaA,CAAA,EAAAA,CAAI,GACb,MAAIxB,YACN,CAAAW,YAAa,QAAed,QAI9B,GAAA0B,CAAA;MAAY;MASd;MAIS;MAGuB;MAmCZ;MACV;MACN;MAEqCI,yBAAA,WAAAA,CAAA;QAC3C,OAAA3B,YAAA,CAAAW,YAAA,OAAAR,KAAA,CAAAO,OAAA,CAAAF,UAAA;MAEJ;MACF","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { isClient } from "@tamagui/core";
|
|
2
|
+
var constants = {},
|
|
3
|
+
SHEET_NAME = "Sheet",
|
|
4
|
+
SHEET_HANDLE_NAME = "SheetHandle",
|
|
5
|
+
SHEET_OVERLAY_NAME = "SheetOverlay",
|
|
6
|
+
SHEET_HIDDEN_STYLESHEET = isClient ? document.createElement("style") : null;
|
|
7
|
+
SHEET_HIDDEN_STYLESHEET && typeof document.head < "u" && document.head.appendChild(SHEET_HIDDEN_STYLESHEET);
|
|
8
|
+
export { SHEET_HANDLE_NAME, SHEET_HIDDEN_STYLESHEET, SHEET_NAME, SHEET_OVERLAY_NAME, constants };
|
|
9
|
+
//# sourceMappingURL=constants.native.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isClient","constants","SHEET_NAME","SHEET_HANDLE_NAME","SHEET_OVERLAY_NAME","SHEET_HIDDEN_STYLESHEET","document","createElement","head","appendChild"],"sources":["../../src/constants.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,QAAgB;AAElB,IAAAC,SAAM,KAAY;EAACC,UAEb,UAAa;EAAAC,iBACb,gBAAoB;EAAAC,kBACpB,iBAAqB;EAAAC,uBAErB,GAAAL,QAA0B,GAAAM,QAAW,CAAAC,aAAS,QAAc,IAAO,IAAI;AAChFF,uBAAA,IACE,OAAOC,QAAA,CAASE,IAAA,GAAS,OAC3BF,QAAA,CAASE,IAAA,CAAKC,WAAA,CAAYJ,uBAAuB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","ParentSheetContext","createContext","zIndex","SheetInsideSheetContext"],"sources":["../../src/contexts.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,KAAA,MAAW;AAEX,IAAAC,kBAAM,GAAAD,KAAqB,CAAAE,aAAM;IACtCC,MAAA,EAAQ;EACV,CAAC;EAEYC,uBAAA,GAA0BJ,KAAA,CAAME,aAAA,CAE3C,IAAI","ignoreList":[]}
|
|
@@ -14,84 +14,31 @@ import { SheetImplementationCustom } from "./SheetImplementationCustom";
|
|
|
14
14
|
import { SheetScrollView } from "./SheetScrollView";
|
|
15
15
|
import { useSheetController } from "./useSheetController";
|
|
16
16
|
import { useSheetOffscreenSize } from "./useSheetOffscreenSize";
|
|
17
|
-
function _define_property(obj, key, value) {
|
|
18
|
-
return key in obj ? Object.defineProperty(obj, key, {
|
|
19
|
-
value,
|
|
20
|
-
enumerable: !0,
|
|
21
|
-
configurable: !0,
|
|
22
|
-
writable: !0
|
|
23
|
-
}) : obj[key] = value, obj;
|
|
24
|
-
}
|
|
25
|
-
function _object_spread(target) {
|
|
26
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
27
|
-
var source = arguments[i] != null ? arguments[i] : {}, ownKeys2 = Object.keys(source);
|
|
28
|
-
typeof Object.getOwnPropertySymbols == "function" && (ownKeys2 = ownKeys2.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
29
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
30
|
-
}))), ownKeys2.forEach(function(key) {
|
|
31
|
-
_define_property(target, key, source[key]);
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
return target;
|
|
35
|
-
}
|
|
36
|
-
function ownKeys(object, enumerableOnly) {
|
|
37
|
-
var keys = Object.keys(object);
|
|
38
|
-
if (Object.getOwnPropertySymbols) {
|
|
39
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
40
|
-
enumerableOnly && (symbols = symbols.filter(function(sym) {
|
|
41
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
42
|
-
})), keys.push.apply(keys, symbols);
|
|
43
|
-
}
|
|
44
|
-
return keys;
|
|
45
|
-
}
|
|
46
|
-
function _object_spread_props(target, source) {
|
|
47
|
-
return source = source ?? {}, Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
|
|
48
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
49
|
-
}), target;
|
|
50
|
-
}
|
|
51
|
-
function _object_without_properties(source, excluded) {
|
|
52
|
-
if (source == null) return {};
|
|
53
|
-
var target = _object_without_properties_loose(source, excluded), key, i;
|
|
54
|
-
if (Object.getOwnPropertySymbols) {
|
|
55
|
-
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
|
|
56
|
-
for (i = 0; i < sourceSymbolKeys.length; i++)
|
|
57
|
-
key = sourceSymbolKeys[i], !(excluded.indexOf(key) >= 0) && Object.prototype.propertyIsEnumerable.call(source, key) && (target[key] = source[key]);
|
|
58
|
-
}
|
|
59
|
-
return target;
|
|
60
|
-
}
|
|
61
|
-
function _object_without_properties_loose(source, excluded) {
|
|
62
|
-
if (source == null) return {};
|
|
63
|
-
var target = {}, sourceKeys = Object.keys(source), key, i;
|
|
64
|
-
for (i = 0; i < sourceKeys.length; i++)
|
|
65
|
-
key = sourceKeys[i], !(excluded.indexOf(key) >= 0) && (target[key] = source[key]);
|
|
66
|
-
return target;
|
|
67
|
-
}
|
|
68
17
|
function createSheet(param) {
|
|
69
|
-
var
|
|
70
|
-
var __scopeSheet =
|
|
71
|
-
"__scopeSheet"
|
|
72
|
-
]), context = useSheetContext(SHEET_HANDLE_NAME, __scopeSheet), composedRef = useComposedRefs(context.handleRef, forwardedRef);
|
|
18
|
+
var { Handle, Frame, Overlay } = param, SheetHandle = Handle.styleable(function(param2, forwardedRef) {
|
|
19
|
+
var { __scopeSheet, ...props } = param2, context = useSheetContext(SHEET_HANDLE_NAME, __scopeSheet), composedRef = useComposedRefs(context.handleRef, forwardedRef);
|
|
73
20
|
return context.onlyShowFrame ? null : (
|
|
74
21
|
// @ts-ignore
|
|
75
|
-
/* @__PURE__ */ _jsx(Handle,
|
|
22
|
+
/* @__PURE__ */ _jsx(Handle, {
|
|
76
23
|
ref: composedRef,
|
|
77
24
|
onPress: function() {
|
|
78
25
|
var max = context.snapPoints.length + (context.dismissOnSnapToBottom ? -1 : 0), nextPos = (context.position + 1) % max;
|
|
79
26
|
context.setPosition(nextPos);
|
|
80
27
|
},
|
|
81
|
-
open: context.open
|
|
82
|
-
|
|
28
|
+
open: context.open,
|
|
29
|
+
...props
|
|
30
|
+
})
|
|
83
31
|
);
|
|
84
32
|
}), SheetOverlay = Overlay.extractable(/* @__PURE__ */ memo(function(propsIn) {
|
|
85
|
-
var __scopeSheet = propsIn
|
|
86
|
-
"__scopeSheet"
|
|
87
|
-
]), context = useSheetContext(SHEET_OVERLAY_NAME, __scopeSheet), element = useMemo(function() {
|
|
33
|
+
var { __scopeSheet, ...props } = propsIn, context = useSheetContext(SHEET_OVERLAY_NAME, __scopeSheet), element = useMemo(function() {
|
|
88
34
|
return (
|
|
89
35
|
// @ts-ignore
|
|
90
|
-
/* @__PURE__ */ _jsx(Overlay,
|
|
36
|
+
/* @__PURE__ */ _jsx(Overlay, {
|
|
37
|
+
...props,
|
|
91
38
|
onPress: composeEventHandlers(props.onPress, context.dismissOnOverlayPress ? function() {
|
|
92
39
|
context.setOpen(!1);
|
|
93
40
|
} : void 0)
|
|
94
|
-
})
|
|
41
|
+
})
|
|
95
42
|
);
|
|
96
43
|
}, [
|
|
97
44
|
props.onPress,
|
|
@@ -103,21 +50,16 @@ function createSheet(param) {
|
|
|
103
50
|
}, [
|
|
104
51
|
element
|
|
105
52
|
]), context.onlyShowFrame, null;
|
|
106
|
-
})), SheetFrame = Frame.extractable(/* @__PURE__ */ forwardRef(function(
|
|
107
|
-
var __scopeSheet =
|
|
108
|
-
"__scopeSheet",
|
|
109
|
-
"adjustPaddingForOffscreenContent",
|
|
110
|
-
"disableHideBottomOverflow",
|
|
111
|
-
"children"
|
|
112
|
-
]), context = useSheetContext(SHEET_NAME, __scopeSheet), hasFit = context.hasFit, removeScrollEnabled = context.removeScrollEnabled, frameSize = context.frameSize, contentRef = context.contentRef, open = context.open, composedContentRef = useComposedRefs(forwardedRef, contentRef), offscreenSize = useSheetOffscreenSize(context), sheetContents = useMemo(function() {
|
|
53
|
+
})), SheetFrame = Frame.extractable(/* @__PURE__ */ forwardRef(function(param2, forwardedRef) {
|
|
54
|
+
var { __scopeSheet, adjustPaddingForOffscreenContent, disableHideBottomOverflow, children, ...props } = param2, context = useSheetContext(SHEET_NAME, __scopeSheet), { hasFit, removeScrollEnabled, frameSize, contentRef, open } = context, composedContentRef = useComposedRefs(forwardedRef, contentRef), offscreenSize = useSheetOffscreenSize(context), sheetContents = useMemo(function() {
|
|
113
55
|
return (
|
|
114
56
|
// @ts-ignore
|
|
115
|
-
/* @__PURE__ */ _jsxs(Frame,
|
|
57
|
+
/* @__PURE__ */ _jsxs(Frame, {
|
|
116
58
|
ref: composedContentRef,
|
|
117
59
|
flex: hasFit ? 0 : 1,
|
|
118
60
|
height: hasFit ? void 0 : frameSize,
|
|
119
|
-
pointerEvents: open ? "auto" : "none"
|
|
120
|
-
|
|
61
|
+
pointerEvents: open ? "auto" : "none",
|
|
62
|
+
...props,
|
|
121
63
|
children: [
|
|
122
64
|
children,
|
|
123
65
|
adjustPaddingForOffscreenContent && /* @__PURE__ */ _jsx(Stack, {
|
|
@@ -126,7 +68,7 @@ function createSheet(param) {
|
|
|
126
68
|
width: "100%"
|
|
127
69
|
})
|
|
128
70
|
]
|
|
129
|
-
})
|
|
71
|
+
})
|
|
130
72
|
);
|
|
131
73
|
}, [
|
|
132
74
|
open,
|
|
@@ -151,7 +93,8 @@ function createSheet(param) {
|
|
|
151
93
|
}),
|
|
152
94
|
/* below frame hide when bouncing past 100% */
|
|
153
95
|
!disableHideBottomOverflow && // @ts-ignore
|
|
154
|
-
/* @__PURE__ */ _jsx(Frame,
|
|
96
|
+
/* @__PURE__ */ _jsx(Frame, {
|
|
97
|
+
...props,
|
|
155
98
|
componentName: "SheetCover",
|
|
156
99
|
// biome-ignore lint/correctness/noChildrenProp: <explanation>
|
|
157
100
|
children: null,
|
|
@@ -164,27 +107,29 @@ function createSheet(param) {
|
|
|
164
107
|
borderWidth: 0,
|
|
165
108
|
borderRadius: 0,
|
|
166
109
|
shadowOpacity: 0
|
|
167
|
-
})
|
|
110
|
+
})
|
|
168
111
|
]
|
|
169
112
|
});
|
|
170
113
|
})), Sheet = /* @__PURE__ */ forwardRef(function(props, ref) {
|
|
171
|
-
var hydrated = useDidFinishSSR(), isShowingNonSheet = useSheetController()
|
|
114
|
+
var hydrated = useDidFinishSSR(), { isShowingNonSheet } = useSheetController(), SheetImplementation = SheetImplementationCustom;
|
|
172
115
|
if (props.native && Platform.OS === "ios") {
|
|
173
116
|
var impl = getNativeSheet("ios");
|
|
174
117
|
impl && (SheetImplementation = impl);
|
|
175
118
|
}
|
|
176
|
-
return isShowingNonSheet || !hydrated ? null : /* @__PURE__ */ _jsx(SheetImplementation,
|
|
177
|
-
ref
|
|
178
|
-
|
|
119
|
+
return isShowingNonSheet || !hydrated ? null : /* @__PURE__ */ _jsx(SheetImplementation, {
|
|
120
|
+
ref,
|
|
121
|
+
...props
|
|
122
|
+
});
|
|
179
123
|
}), components = {
|
|
180
124
|
Frame: SheetFrame,
|
|
181
125
|
Overlay: SheetOverlay,
|
|
182
126
|
Handle: SheetHandle,
|
|
183
127
|
ScrollView: SheetScrollView
|
|
184
128
|
}, Controlled = withStaticProperties(Sheet, components);
|
|
185
|
-
return withStaticProperties(Sheet,
|
|
129
|
+
return withStaticProperties(Sheet, {
|
|
130
|
+
...components,
|
|
186
131
|
Controlled
|
|
187
|
-
})
|
|
132
|
+
});
|
|
188
133
|
}
|
|
189
134
|
export {
|
|
190
135
|
createSheet
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/n8/tamagui/code/ui/sheet/src/createSheet.tsx"],
|
|
4
|
-
"mappings": ";AAAA,SAASA,uBAAuB;AAChC,SAASC,iCAAiC;AAQ1C,SAASC,aAAa;AACtB,SAASC,sBAAsBC,4BAA4B;AAC3D,SAASC,oBAAoB;AAC7B,SAASC,uBAAuB;AAEhC,SAASC,YAAYC,MAAMC,eAAe;AAE1C,SAASC,gBAAgB;AAEzB,SAASC,mBAAmBC,YAAYC,0BAA0B;AAClE,SAASC,sBAAsB;AAC/B,SAASC,uBAAuB;AAChC,SAASC,iCAAiC;AAC1C,SAASC,uBAAuB;AAEhC,SAASC,0BAA0B;AACnC,SAASC,6BAA6B
|
|
5
|
-
"names": ["useComposedRefs", "useIsomorphicLayoutEffect", "Stack", "composeEventHandlers", "withStaticProperties", "RemoveScroll", "useDidFinishSSR", "forwardRef", "memo", "useMemo", "Platform", "SHEET_HANDLE_NAME", "SHEET_NAME", "SHEET_OVERLAY_NAME", "getNativeSheet", "useSheetContext", "SheetImplementationCustom", "SheetScrollView", "useSheetController", "useSheetOffscreenSize", "createSheet", "Handle", "Frame", "Overlay", "SheetHandle", "styleable", "forwardedRef", "__scopeSheet", "props", "context", "composedRef", "handleRef", "onlyShowFrame", "ref", "onPress", "max", "snapPoints", "length", "dismissOnSnapToBottom", "nextPos", "position", "setPosition", "open", "SheetOverlay", "extractable", "propsIn", "element", "dismissOnOverlayPress", "setOpen", "undefined", "onOverlayComponent", "SheetFrame", "adjustPaddingForOffscreenContent", "disableHideBottomOverflow", "children", "hasFit", "removeScrollEnabled", "frameSize", "contentRef", "composedContentRef", "offscreenSize", "sheetContents", "flex", "height", "pointerEvents", "data-sheet-offscreen-pad", "width", "forwardProps", "enabled", "allowPinchZoom", "shards", "removeScrollBar", "componentName", "bottom", "zIndex", "left", "right", "borderWidth", "borderRadius", "shadowOpacity", "Sheet", "hydrated", "isShowingNonSheet", "SheetImplementation", "native", "OS", "impl", "components", "ScrollView", "Controlled"]
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["useComposedRefs", "useIsomorphicLayoutEffect", "Stack", "composeEventHandlers", "withStaticProperties", "RemoveScroll", "useDidFinishSSR", "forwardRef", "memo", "useMemo", "Platform", "SHEET_HANDLE_NAME", "SHEET_NAME", "SHEET_OVERLAY_NAME", "getNativeSheet", "useSheetContext", "SheetImplementationCustom", "SheetScrollView", "useSheetController", "useSheetOffscreenSize", "createSheet", "Handle", "Frame", "Overlay", "SheetHandle", "styleable", "param", "forwardedRef", "__scopeSheet", "props", "context", "composedRef", "handleRef", "onlyShowFrame", "ref", "onPress", "max", "snapPoints", "length", "dismissOnSnapToBottom", "nextPos", "position", "setPosition", "open", "SheetOverlay", "extractable", "propsIn", "element", "dismissOnOverlayPress", "setOpen", "undefined", "onOverlayComponent", "SheetFrame", "adjustPaddingForOffscreenContent", "disableHideBottomOverflow", "children", "hasFit", "removeScrollEnabled", "frameSize", "contentRef", "composedContentRef", "offscreenSize", "sheetContents", "flex", "height", "pointerEvents", "data-sheet-offscreen-pad", "width", "forwardProps", "enabled", "allowPinchZoom", "shards", "removeScrollBar", "componentName", "bottom", "zIndex", "left", "right", "borderWidth", "borderRadius", "shadowOpacity", "Sheet", "hydrated", "isShowingNonSheet", "SheetImplementation", "native", "OS", "impl", "components", "ScrollView", "Controlled"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useComposedRefs } from "@tamagui/compose-refs";
|
|
3
|
+
import { useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
4
|
+
import { Stack } from "@tamagui/core";
|
|
5
|
+
import { composeEventHandlers, withStaticProperties } from "@tamagui/helpers";
|
|
6
|
+
import { RemoveScroll } from "@tamagui/remove-scroll";
|
|
7
|
+
import { useDidFinishSSR } from "@tamagui/use-did-finish-ssr";
|
|
8
|
+
import { forwardRef, memo, useMemo } from "react";
|
|
9
|
+
import { Platform } from "react-native";
|
|
10
|
+
import { SHEET_HANDLE_NAME, SHEET_NAME, SHEET_OVERLAY_NAME } from "./constants.mjs";
|
|
11
|
+
import { getNativeSheet } from "./nativeSheet.mjs";
|
|
12
|
+
import { useSheetContext } from "./SheetContext.mjs";
|
|
13
|
+
import { SheetImplementationCustom } from "./SheetImplementationCustom.mjs";
|
|
14
|
+
import { SheetScrollView } from "./SheetScrollView.mjs";
|
|
15
|
+
import { useSheetController } from "./useSheetController.mjs";
|
|
16
|
+
import { useSheetOffscreenSize } from "./useSheetOffscreenSize.mjs";
|
|
17
|
+
function createSheet(param) {
|
|
18
|
+
var {
|
|
19
|
+
Handle,
|
|
20
|
+
Frame,
|
|
21
|
+
Overlay
|
|
22
|
+
} = param,
|
|
23
|
+
SheetHandle = Handle.styleable(function (param2, forwardedRef) {
|
|
24
|
+
var {
|
|
25
|
+
__scopeSheet,
|
|
26
|
+
...props
|
|
27
|
+
} = param2,
|
|
28
|
+
context = useSheetContext(SHEET_HANDLE_NAME, __scopeSheet),
|
|
29
|
+
composedRef = useComposedRefs(context.handleRef, forwardedRef);
|
|
30
|
+
return context.onlyShowFrame ? null :
|
|
31
|
+
// @ts-ignore
|
|
32
|
+
/* @__PURE__ */
|
|
33
|
+
_jsx(Handle, {
|
|
34
|
+
ref: composedRef,
|
|
35
|
+
onPress: function () {
|
|
36
|
+
var max = context.snapPoints.length + (context.dismissOnSnapToBottom ? -1 : 0),
|
|
37
|
+
nextPos = (context.position + 1) % max;
|
|
38
|
+
context.setPosition(nextPos);
|
|
39
|
+
},
|
|
40
|
+
open: context.open,
|
|
41
|
+
...props
|
|
42
|
+
});
|
|
43
|
+
}),
|
|
44
|
+
SheetOverlay = Overlay.extractable(/* @__PURE__ */memo(function (propsIn) {
|
|
45
|
+
var {
|
|
46
|
+
__scopeSheet,
|
|
47
|
+
...props
|
|
48
|
+
} = propsIn,
|
|
49
|
+
context = useSheetContext(SHEET_OVERLAY_NAME, __scopeSheet),
|
|
50
|
+
element = useMemo(function () {
|
|
51
|
+
return (
|
|
52
|
+
// @ts-ignore
|
|
53
|
+
/* @__PURE__ */
|
|
54
|
+
_jsx(Overlay, {
|
|
55
|
+
...props,
|
|
56
|
+
onPress: composeEventHandlers(props.onPress, context.dismissOnOverlayPress ? function () {
|
|
57
|
+
context.setOpen(!1);
|
|
58
|
+
} : void 0)
|
|
59
|
+
})
|
|
60
|
+
);
|
|
61
|
+
}, [props.onPress, context.dismissOnOverlayPress]);
|
|
62
|
+
return useIsomorphicLayoutEffect(function () {
|
|
63
|
+
var _context_onOverlayComponent;
|
|
64
|
+
(_context_onOverlayComponent = context.onOverlayComponent) === null || _context_onOverlayComponent === void 0 || _context_onOverlayComponent.call(context, element);
|
|
65
|
+
}, [element]), context.onlyShowFrame, null;
|
|
66
|
+
})),
|
|
67
|
+
SheetFrame = Frame.extractable(/* @__PURE__ */forwardRef(function (param2, forwardedRef) {
|
|
68
|
+
var {
|
|
69
|
+
__scopeSheet,
|
|
70
|
+
adjustPaddingForOffscreenContent,
|
|
71
|
+
disableHideBottomOverflow,
|
|
72
|
+
children,
|
|
73
|
+
...props
|
|
74
|
+
} = param2,
|
|
75
|
+
context = useSheetContext(SHEET_NAME, __scopeSheet),
|
|
76
|
+
{
|
|
77
|
+
hasFit,
|
|
78
|
+
removeScrollEnabled,
|
|
79
|
+
frameSize,
|
|
80
|
+
contentRef,
|
|
81
|
+
open
|
|
82
|
+
} = context,
|
|
83
|
+
composedContentRef = useComposedRefs(forwardedRef, contentRef),
|
|
84
|
+
offscreenSize = useSheetOffscreenSize(context),
|
|
85
|
+
sheetContents = useMemo(function () {
|
|
86
|
+
return (
|
|
87
|
+
// @ts-ignore
|
|
88
|
+
/* @__PURE__ */
|
|
89
|
+
_jsxs(Frame, {
|
|
90
|
+
ref: composedContentRef,
|
|
91
|
+
flex: hasFit ? 0 : 1,
|
|
92
|
+
height: hasFit ? void 0 : frameSize,
|
|
93
|
+
pointerEvents: open ? "auto" : "none",
|
|
94
|
+
...props,
|
|
95
|
+
children: [children, adjustPaddingForOffscreenContent && /* @__PURE__ */_jsx(Stack, {
|
|
96
|
+
"data-sheet-offscreen-pad": !0,
|
|
97
|
+
height: offscreenSize,
|
|
98
|
+
width: "100%"
|
|
99
|
+
})]
|
|
100
|
+
})
|
|
101
|
+
);
|
|
102
|
+
}, [open, props, frameSize, offscreenSize, adjustPaddingForOffscreenContent, hasFit]);
|
|
103
|
+
return /* @__PURE__ */_jsxs(_Fragment, {
|
|
104
|
+
children: [/* @__PURE__ */_jsx(RemoveScroll, {
|
|
105
|
+
forwardProps: !0,
|
|
106
|
+
enabled: removeScrollEnabled,
|
|
107
|
+
allowPinchZoom: !0,
|
|
108
|
+
shards: [contentRef],
|
|
109
|
+
// causes lots of bugs on touch web on site
|
|
110
|
+
removeScrollBar: !1,
|
|
111
|
+
children: sheetContents
|
|
112
|
+
}), /* below frame hide when bouncing past 100% */
|
|
113
|
+
!disableHideBottomOverflow &&
|
|
114
|
+
// @ts-ignore
|
|
115
|
+
/* @__PURE__ */
|
|
116
|
+
_jsx(Frame, {
|
|
117
|
+
...props,
|
|
118
|
+
componentName: "SheetCover",
|
|
119
|
+
// biome-ignore lint/correctness/noChildrenProp: <explanation>
|
|
120
|
+
children: null,
|
|
121
|
+
position: "absolute",
|
|
122
|
+
bottom: "-100%",
|
|
123
|
+
zIndex: -1,
|
|
124
|
+
height: context.frameSize,
|
|
125
|
+
left: 0,
|
|
126
|
+
right: 0,
|
|
127
|
+
borderWidth: 0,
|
|
128
|
+
borderRadius: 0,
|
|
129
|
+
shadowOpacity: 0
|
|
130
|
+
})]
|
|
131
|
+
});
|
|
132
|
+
})),
|
|
133
|
+
Sheet = /* @__PURE__ */forwardRef(function (props, ref) {
|
|
134
|
+
var hydrated = useDidFinishSSR(),
|
|
135
|
+
{
|
|
136
|
+
isShowingNonSheet
|
|
137
|
+
} = useSheetController(),
|
|
138
|
+
SheetImplementation = SheetImplementationCustom;
|
|
139
|
+
if (props.native && Platform.OS === "ios") {
|
|
140
|
+
var impl = getNativeSheet("ios");
|
|
141
|
+
impl && (SheetImplementation = impl);
|
|
142
|
+
}
|
|
143
|
+
return isShowingNonSheet || !hydrated ? null : /* @__PURE__ */_jsx(SheetImplementation, {
|
|
144
|
+
ref,
|
|
145
|
+
...props
|
|
146
|
+
});
|
|
147
|
+
}),
|
|
148
|
+
components = {
|
|
149
|
+
Frame: SheetFrame,
|
|
150
|
+
Overlay: SheetOverlay,
|
|
151
|
+
Handle: SheetHandle,
|
|
152
|
+
ScrollView: SheetScrollView
|
|
153
|
+
},
|
|
154
|
+
Controlled = withStaticProperties(Sheet, components);
|
|
155
|
+
return withStaticProperties(Sheet, {
|
|
156
|
+
...components,
|
|
157
|
+
Controlled
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
export { createSheet };
|
|
161
|
+
//# sourceMappingURL=createSheet.native.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useComposedRefs","useIsomorphicLayoutEffect","Stack","composeEventHandlers","withStaticProperties","RemoveScroll","useDidFinishSSR","forwardRef","memo","useMemo","Platform","SHEET_HANDLE_NAME","SHEET_NAME","SHEET_OVERLAY_NAME","getNativeSheet","useSheetContext","SheetImplementationCustom","SheetScrollView","useSheetController","useSheetOffscreenSize","createSheet","param","Handle","Frame","Overlay","SheetHandle","styleable","param2","forwardedRef","__scopeSheet","props","context","composedRef","handleRef","onlyShowFrame","ref","onPress","max","snapPoints","length","dismissOnSnapToBottom","nextPos","position","setPosition","open","SheetOverlay","extractable","propsIn","element","dismissOnOverlayPress","setOpen","_context_onOverlayComponent","onOverlayComponent","call","SheetFrame","adjustPaddingForOffscreenContent","disableHideBottomOverflow","children","hasFit","removeScrollEnabled","frameSize","contentRef","composedContentRef","offscreenSize","sheetContents","flex","height","pointerEvents","width","forwardProps","enabled","allowPinchZoom","shards","removeScrollBar","componentName","bottom","zIndex","left","right","borderWidth","borderRadius","shadowOpacity","Sheet","hydrated","isShowingNonSheet","SheetImplementation","native","OS","impl","components","ScrollView","Controlled"],"sources":["../../src/createSheet.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
function resisted(y, minY) {
|
|
2
|
+
var maxOverflow = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 25;
|
|
3
|
+
if (y < minY) {
|
|
4
|
+
var past = minY - y,
|
|
5
|
+
pctPast = Math.min(maxOverflow, past) / maxOverflow,
|
|
6
|
+
diminishBy = 1.1 - Math.pow(0.15, pctPast),
|
|
7
|
+
extra = -diminishBy * maxOverflow;
|
|
8
|
+
return minY + extra;
|
|
9
|
+
}
|
|
10
|
+
return y;
|
|
11
|
+
}
|
|
12
|
+
export { resisted };
|
|
13
|
+
//# sourceMappingURL=helpers.native.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["resisted","y","minY","maxOverflow","arguments","length","past","pctPast","Math","min","diminishBy","pow","extra"],"sources":["../../src/helpers.tsx"],"sourcesContent":[null],"mappings":"AAAO,SAASA,SAASC,CAAA,EAAWC,IAAA,EAAc;EAChD,IAAIC,WAAU,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;EACZ,IAAAH,CAAA,GAAMC,IAAA;IAIN,IAAAI,IAAO,GAAAJ,IAAO,GAAAD,CAAA;MAAAM,OAAA,GAAAC,IAAA,CAAAC,GAAA,CAAAN,WAAA,EAAAG,IAAA,IAAAH,WAAA;MAAAO,UAAA,SAAAF,IAAA,CAAAG,GAAA,OAAAJ,OAAA;MAAAK,KAAA,IAAAF,UAAA,GAAAP,WAAA;IAChB,OAAAD,IAAA,GAAAU,KAAA;EACA;EACF,OAAAX,CAAA","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * from "./Sheet.mjs";
|
|
2
|
+
export * from "./useSheet.mjs";
|
|
3
|
+
export * from "./createSheet.mjs";
|
|
4
|
+
export * from "./SheetController.mjs";
|
|
5
|
+
export * from "./useSheetController.mjs";
|
|
6
|
+
export * from "./useSheetOpenState.mjs";
|
|
7
|
+
export * from "./useSheetOffscreenSize.mjs";
|
|
8
|
+
export * from "./SheetScrollView.mjs";
|
|
9
|
+
export * from "./nativeSheet.mjs";
|
|
10
|
+
export * from "./types.mjs";
|
|
11
|
+
export * from "./contexts.mjs";
|
|
12
|
+
//# sourceMappingURL=index.native.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc","ignoreList":[]}
|
|
@@ -5,40 +5,6 @@ import { View } from "react-native";
|
|
|
5
5
|
import { SheetProvider } from "./SheetContext";
|
|
6
6
|
import { useSheetOpenState } from "./useSheetOpenState";
|
|
7
7
|
import { useSheetProviderProps } from "./useSheetProviderProps";
|
|
8
|
-
function _define_property(obj, key, value) {
|
|
9
|
-
return key in obj ? Object.defineProperty(obj, key, {
|
|
10
|
-
value,
|
|
11
|
-
enumerable: !0,
|
|
12
|
-
configurable: !0,
|
|
13
|
-
writable: !0
|
|
14
|
-
}) : obj[key] = value, obj;
|
|
15
|
-
}
|
|
16
|
-
function _object_spread(target) {
|
|
17
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
18
|
-
var source = arguments[i] != null ? arguments[i] : {}, ownKeys2 = Object.keys(source);
|
|
19
|
-
typeof Object.getOwnPropertySymbols == "function" && (ownKeys2 = ownKeys2.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
20
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
21
|
-
}))), ownKeys2.forEach(function(key) {
|
|
22
|
-
_define_property(target, key, source[key]);
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
return target;
|
|
26
|
-
}
|
|
27
|
-
function ownKeys(object, enumerableOnly) {
|
|
28
|
-
var keys = Object.keys(object);
|
|
29
|
-
if (Object.getOwnPropertySymbols) {
|
|
30
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
31
|
-
enumerableOnly && (symbols = symbols.filter(function(sym) {
|
|
32
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
33
|
-
})), keys.push.apply(keys, symbols);
|
|
34
|
-
}
|
|
35
|
-
return keys;
|
|
36
|
-
}
|
|
37
|
-
function _object_spread_props(target, source) {
|
|
38
|
-
return source = source ?? {}, Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
|
|
39
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
40
|
-
}), target;
|
|
41
|
-
}
|
|
42
8
|
var nativeSheets = {
|
|
43
9
|
ios: null
|
|
44
10
|
};
|
|
@@ -47,14 +13,15 @@ function getNativeSheet(platform) {
|
|
|
47
13
|
}
|
|
48
14
|
function setupNativeSheet(platform, Implementation) {
|
|
49
15
|
platform === "ios" && (nativeSheets[platform] = function(props) {
|
|
50
|
-
var state = useSheetOpenState(props), providerProps = useSheetProviderProps(props, state),
|
|
16
|
+
var state = useSheetOpenState(props), providerProps = useSheetProviderProps(props, state), { open, setOpen } = state, ref = useRef();
|
|
51
17
|
return useEffect(function() {
|
|
52
18
|
var _ref_current;
|
|
53
19
|
(_ref_current = ref.current) === null || _ref_current === void 0 || _ref_current.setVisibility(open);
|
|
54
20
|
}, [
|
|
55
21
|
open
|
|
56
22
|
]), /* @__PURE__ */ _jsx(_Fragment, {
|
|
57
|
-
children: /* @__PURE__ */ _jsxs(SheetProvider,
|
|
23
|
+
children: /* @__PURE__ */ _jsxs(SheetProvider, {
|
|
24
|
+
...providerProps,
|
|
58
25
|
onlyShowFrame: !0,
|
|
59
26
|
children: [
|
|
60
27
|
/* @__PURE__ */ _jsx(Implementation, {
|
|
@@ -80,7 +47,7 @@ function setupNativeSheet(platform, Implementation) {
|
|
|
80
47
|
children: props.children
|
|
81
48
|
})
|
|
82
49
|
]
|
|
83
|
-
})
|
|
50
|
+
})
|
|
84
51
|
});
|
|
85
52
|
});
|
|
86
53
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/n8/tamagui/code/ui/sheet/src/nativeSheet.tsx"],
|
|
4
|
-
"mappings": ";AAAA,SAASA,cAAc;AAEvB,SAASC,WAAWC,cAAc;AAClC,SAASC,YAAY;AAErB,SAASC,qBAAqB;AAE9B,SAASC,yBAAyB;AAClC,SAASC,6BAA6B
|
|
4
|
+
"mappings": ";AAAA,SAASA,cAAc;AAEvB,SAASC,WAAWC,cAAc;AAClC,SAASC,YAAY;AAErB,SAASC,qBAAqB;AAE9B,SAASC,yBAAyB;AAClC,SAASC,6BAA6B;AAMtC,IAAMC,eAAmF;EACvFC,KAAK;AACP;AAEO,SAASC,eAAeC,UAA8B;AAC3D,SAAOH,aAAaG,QAAAA;AACtB;AAEO,SAASC,iBAAiBD,UAAgCE,gBAAmB;AAClF,EAAIF,aAAa,UACfH,aAAaG,QAAAA,IAAY,SAACG,OAAAA;AACxB,QAAMC,QAAQT,kBAAkBQ,KAAAA,GAC1BE,gBAAgBT,sBAAsBO,OAAOC,KAAAA,GAI7C,EAAEE,MAAMC,QAAO,IAAKH,OACpBI,MAAMhB,OAAAA;AAIZD,qBAAU,WAAA;UACRiB;OAAAA,eAAAA,IAAIC,aAAO,QAAXD,iBAAAA,UAAAA,aAAaE,cAAcJ,IAAAA;IAC7B,GAAG;MAACA;KAAK,GASP,qBAAA,WAAA;gBACE,sBAACZ,eAAAA;QAAe,GAAGW;QAAeM,eAAa;;UAC7C,qBAACT,gBAAAA;YAAeM;YAAUI,gBAAgB,WAAA;qBAAML,QAAQ,EAAA;;sBACtD,qBAACd,MAAAA;cAAKoB,OAAO;gBAAEC,MAAM;cAAE;wBAAIX,MAAMY;;;;;UAKnC,qBAACzB,QAAAA;YACC0B,UAAS;YACTC,SAAS;YACTC,eAAc;YACdC,OAAO;YACPC,QAAQ;sBAEPjB,MAAMY;;;;;EAKjB;AAEJ;",
|
|
5
5
|
"names": ["YStack", "useEffect", "useRef", "View", "SheetProvider", "useSheetOpenState", "useSheetProviderProps", "nativeSheets", "ios", "getNativeSheet", "platform", "setupNativeSheet", "Implementation", "props", "state", "providerProps", "open", "setOpen", "ref", "current", "setVisibility", "onlyShowFrame", "onModalDismiss", "style", "flex", "children", "position", "opacity", "pointerEvents", "width", "height"]
|
|
6
6
|
}
|