react-native-bottom-sheet-stack 1.7.3 → 1.7.4
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/lib/commonjs/BottomSheetPersistent.js +49 -24
- package/lib/commonjs/BottomSheetPersistent.js.map +1 -1
- package/lib/commonjs/BottomSheetPortal.js +13 -7
- package/lib/commonjs/BottomSheetPortal.js.map +1 -1
- package/lib/typescript/example/src/App.d.ts.map +1 -1
- package/lib/typescript/example/src/screens/HomeScreen.d.ts.map +1 -1
- package/lib/typescript/example/src/sheets/PersistentWithNestedPortal.d.ts +6 -0
- package/lib/typescript/example/src/sheets/PersistentWithNestedPortal.d.ts.map +1 -0
- package/lib/typescript/example/src/sheets/index.d.ts +1 -0
- package/lib/typescript/example/src/sheets/index.d.ts.map +1 -1
- package/lib/typescript/src/BottomSheetPersistent.d.ts.map +1 -1
- package/lib/typescript/src/BottomSheetPortal.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/BottomSheetPersistent.tsx +18 -10
- package/src/BottomSheetPortal.tsx +10 -9
|
@@ -9,15 +9,16 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
9
9
|
var _bottomSheet = require("./bottomSheet.store");
|
|
10
10
|
var _BottomSheetDefaultIndex = require("./BottomSheetDefaultIndex.context");
|
|
11
11
|
var _BottomSheetManager = require("./BottomSheetManager.provider");
|
|
12
|
-
var _BottomSheetPortal = require("./BottomSheetPortal");
|
|
13
12
|
var _BottomSheetRef = require("./BottomSheetRef.context");
|
|
14
13
|
var _refsMap = require("./refsMap");
|
|
15
14
|
var _useEvent = require("./useEvent");
|
|
15
|
+
var _reactNativeTeleport = require("react-native-teleport");
|
|
16
|
+
var _BottomSheet = require("./BottomSheet.context");
|
|
16
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
18
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
18
19
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
20
|
function BottomSheetPersistent(t0) {
|
|
20
|
-
const $ = (0, _compilerRuntime.c)(
|
|
21
|
+
const $ = (0, _compilerRuntime.c)(24);
|
|
21
22
|
const {
|
|
22
23
|
id,
|
|
23
24
|
children
|
|
@@ -26,6 +27,7 @@ function BottomSheetPersistent(t0) {
|
|
|
26
27
|
const mount = (0, _bottomSheet.useMount)();
|
|
27
28
|
const unmount = (0, _bottomSheet.useUnmount)();
|
|
28
29
|
const sheetExists = (0, _bottomSheet.useSheetExists)(id);
|
|
30
|
+
const portalSession = (0, _bottomSheet.useSheetPortalSession)(id);
|
|
29
31
|
const sheetRef = (0, _react.useRef)(null);
|
|
30
32
|
const groupId = bottomSheetManagerContext?.groupId || "default";
|
|
31
33
|
let t1;
|
|
@@ -86,41 +88,64 @@ function BottomSheetPersistent(t0) {
|
|
|
86
88
|
if (!sheetExists) {
|
|
87
89
|
return null;
|
|
88
90
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
91
|
+
const t6 = `bottomsheet-${id}-${portalSession}`;
|
|
92
|
+
let t7;
|
|
93
|
+
if ($[13] !== id) {
|
|
94
|
+
t7 = {
|
|
95
|
+
id
|
|
96
|
+
};
|
|
97
|
+
$[13] = id;
|
|
98
|
+
$[14] = t7;
|
|
99
|
+
} else {
|
|
100
|
+
t7 = $[14];
|
|
101
|
+
}
|
|
102
|
+
let t8;
|
|
103
|
+
if ($[15] === Symbol.for("react.memo_cache_sentinel")) {
|
|
104
|
+
t8 = {
|
|
92
105
|
defaultIndex: -1
|
|
93
106
|
};
|
|
94
|
-
$[
|
|
107
|
+
$[15] = t8;
|
|
95
108
|
} else {
|
|
96
|
-
|
|
109
|
+
t8 = $[15];
|
|
97
110
|
}
|
|
98
|
-
let
|
|
99
|
-
if ($[
|
|
100
|
-
|
|
101
|
-
value:
|
|
111
|
+
let t9;
|
|
112
|
+
if ($[16] !== children) {
|
|
113
|
+
t9 = /*#__PURE__*/(0, _jsxRuntime.jsx)(_BottomSheetDefaultIndex.BottomSheetDefaultIndexContext.Provider, {
|
|
114
|
+
value: t8,
|
|
102
115
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BottomSheetRef.BottomSheetRefContext.Provider, {
|
|
103
116
|
value: sheetRef,
|
|
104
117
|
children: children
|
|
105
118
|
})
|
|
106
119
|
});
|
|
107
|
-
$[
|
|
108
|
-
$[
|
|
120
|
+
$[16] = children;
|
|
121
|
+
$[17] = t9;
|
|
109
122
|
} else {
|
|
110
|
-
|
|
123
|
+
t9 = $[17];
|
|
111
124
|
}
|
|
112
|
-
let
|
|
113
|
-
if ($[
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
children:
|
|
125
|
+
let t10;
|
|
126
|
+
if ($[18] !== t7 || $[19] !== t9) {
|
|
127
|
+
t10 = /*#__PURE__*/(0, _jsxRuntime.jsx)(_BottomSheet.BottomSheetContext.Provider, {
|
|
128
|
+
value: t7,
|
|
129
|
+
children: t9
|
|
130
|
+
});
|
|
131
|
+
$[18] = t7;
|
|
132
|
+
$[19] = t9;
|
|
133
|
+
$[20] = t10;
|
|
134
|
+
} else {
|
|
135
|
+
t10 = $[20];
|
|
136
|
+
}
|
|
137
|
+
let t11;
|
|
138
|
+
if ($[21] !== t10 || $[22] !== t6) {
|
|
139
|
+
t11 = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeTeleport.Portal, {
|
|
140
|
+
hostName: t6,
|
|
141
|
+
children: t10
|
|
117
142
|
});
|
|
118
|
-
$[
|
|
119
|
-
$[
|
|
120
|
-
$[
|
|
143
|
+
$[21] = t10;
|
|
144
|
+
$[22] = t6;
|
|
145
|
+
$[23] = t11;
|
|
121
146
|
} else {
|
|
122
|
-
|
|
147
|
+
t11 = $[23];
|
|
123
148
|
}
|
|
124
|
-
return
|
|
149
|
+
return t11;
|
|
125
150
|
}
|
|
126
151
|
//# sourceMappingURL=BottomSheetPersistent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_bottomSheet","_BottomSheetDefaultIndex","_BottomSheetManager","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_bottomSheet","_BottomSheetDefaultIndex","_BottomSheetManager","_BottomSheetRef","_refsMap","_useEvent","_reactNativeTeleport","_BottomSheet","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","BottomSheetPersistent","t0","$","_compilerRuntime","c","id","children","bottomSheetManagerContext","useMaybeBottomSheetManagerContext","mount","useMount","unmount","useUnmount","sheetExists","useSheetExists","portalSession","useSheetPortalSession","sheetRef","useRef","groupId","t1","content","usePortal","keepMounted","mountSheet","useEvent","t2","t3","setSheetRef","useEffect","t4","t5","t6","t7","t8","Symbol","for","defaultIndex","t9","jsx","BottomSheetDefaultIndexContext","Provider","value","BottomSheetRefContext","t10","BottomSheetContext","t11","Portal","hostName"],"sourceRoot":"../../src","sources":["BottomSheetPersistent.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,6 +8,8 @@ exports.BottomSheetPortal = BottomSheetPortal;
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _reactNativeTeleport = require("react-native-teleport");
|
|
10
10
|
var _BottomSheet = require("./BottomSheet.context");
|
|
11
|
+
var _BottomSheetDefaultIndex = require("./BottomSheetDefaultIndex.context");
|
|
12
|
+
var _BottomSheetRef = require("./BottomSheetRef.context");
|
|
11
13
|
var _bottomSheet = require("./bottomSheet.store");
|
|
12
14
|
var _refsMap = require("./refsMap");
|
|
13
15
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -16,22 +18,26 @@ function BottomSheetPortal({
|
|
|
16
18
|
id,
|
|
17
19
|
children
|
|
18
20
|
}) {
|
|
19
|
-
const usePortal = (0, _bottomSheet.useSheetUsePortal)(id);
|
|
20
21
|
const portalSession = (0, _bottomSheet.useSheetPortalSession)(id);
|
|
21
|
-
|
|
22
|
+
const ref = (0, _refsMap.getSheetRef)(id);
|
|
23
|
+
if (!portalSession || !ref) {
|
|
22
24
|
return null;
|
|
23
25
|
}
|
|
24
|
-
const ref = (0, _refsMap.getSheetRef)(id);
|
|
25
|
-
const childWithRef = /*#__PURE__*/_react.default.cloneElement(children, {
|
|
26
|
-
ref
|
|
27
|
-
});
|
|
28
26
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeTeleport.Portal, {
|
|
29
27
|
hostName: `bottomsheet-${id}-${portalSession}`,
|
|
30
28
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BottomSheet.BottomSheetContext.Provider, {
|
|
31
29
|
value: {
|
|
32
30
|
id
|
|
33
31
|
},
|
|
34
|
-
children:
|
|
32
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BottomSheetDefaultIndex.BottomSheetDefaultIndexContext.Provider, {
|
|
33
|
+
value: {
|
|
34
|
+
defaultIndex: 0
|
|
35
|
+
},
|
|
36
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BottomSheetRef.BottomSheetRefContext.Provider, {
|
|
37
|
+
value: ref,
|
|
38
|
+
children: children
|
|
39
|
+
})
|
|
40
|
+
})
|
|
35
41
|
})
|
|
36
42
|
});
|
|
37
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Object","defineProperty","exports","value","BottomSheetPortal","_react","_interopRequireDefault","require","_reactNativeTeleport","_BottomSheet","_bottomSheet","_refsMap","_jsxRuntime","e","__esModule","default","id","children","
|
|
1
|
+
{"version":3,"names":["Object","defineProperty","exports","value","BottomSheetPortal","_react","_interopRequireDefault","require","_reactNativeTeleport","_BottomSheet","_BottomSheetDefaultIndex","_BottomSheetRef","_bottomSheet","_refsMap","_jsxRuntime","e","__esModule","default","id","children","portalSession","useSheetPortalSession","ref","getSheetRef","jsx","Portal","hostName","BottomSheetContext","Provider","BottomSheetDefaultIndexContext","defaultIndex","BottomSheetRefContext"],"sourceRoot":"../../src","sources":["BottomSheetPortal.tsx"],"mappings":";AAAA,aAAa;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,iBAAA,GAAAA,iBAAA;AAEd,IAAAC,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,oBAAA,GAAAD,OAAA;AAEA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,wBAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAL,OAAA;AAEA,IAAAM,QAAA,GAAAN,OAAA;AAAwC,IAAAO,WAAA,GAAAP,OAAA;AAAA,SAAAD,uBAAAS,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAOjC,SAASX,iBAAiBA,CAAC;EAAEc,EAAE;EAAEC;AAAiC,CAAC,EAAE;EAC1E,MAAMC,aAAa,GAAG,IAAAC,kCAAqB,EAACH,EAAE,CAAC;EAC/C,MAAMI,GAAG,GAAG,IAAAC,oBAAW,EAACL,EAAE,CAAC;EAE3B,IAAI,CAACE,aAAa,IAAI,CAACE,GAAG,EAAE;IAC1B,OAAO,IAAI;EACb;EAEA,oBACE,IAAAR,WAAA,CAAAU,GAAA,EAAChB,oBAAA,CAAAiB,MAAM;IAACC,QAAQ,EAAE,eAAeR,EAAE,IAAIE,aAAa,EAAG;IAAAD,QAAA,eACrD,IAAAL,WAAA,CAAAU,GAAA,EAACf,YAAA,CAAAkB,kBAAkB,CAACC,QAAQ;MAACzB,KAAK,EAAE;QAAEe;MAAG,CAAE;MAAAC,QAAA,eACzC,IAAAL,WAAA,CAAAU,GAAA,EAACd,wBAAA,CAAAmB,8BAA8B,CAACD,QAAQ;QAACzB,KAAK,EAAE;UAAE2B,YAAY,EAAE;QAAE,CAAE;QAAAX,QAAA,eAClE,IAAAL,WAAA,CAAAU,GAAA,EAACb,eAAA,CAAAoB,qBAAqB,CAACH,QAAQ;UAACzB,KAAK,EAAEmB,GAAI;UAAAH,QAAA,EACxCA;QAAQ,CACqB;MAAC,CACM;IAAC,CACf;EAAC,CACxB,CAAC;AAEb","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../../example/src/App.tsx"],"names":[],"mappings":"AAcA,MAAM,CAAC,OAAO,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../../example/src/App.tsx"],"names":[],"mappings":"AAcA,MAAM,CAAC,OAAO,UAAU,GAAG,4CA0B1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HomeScreen.d.ts","sourceRoot":"","sources":["../../../../../example/src/screens/HomeScreen.tsx"],"names":[],"mappings":"AAoBA,wBAAgB,UAAU,
|
|
1
|
+
{"version":3,"file":"HomeScreen.d.ts","sourceRoot":"","sources":["../../../../../example/src/screens/HomeScreen.tsx"],"names":[],"mappings":"AAoBA,wBAAgB,UAAU,4CA8IzB"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { BottomSheetMethods } from '@gorhom/bottom-sheet/lib/typescript/types';
|
|
2
|
+
/**
|
|
3
|
+
* Persistent sheet that contains a portal-based sheet definition inside
|
|
4
|
+
*/
|
|
5
|
+
export declare const PersistentWithPortalSheet: import("react").ForwardRefExoticComponent<import("react").RefAttributes<BottomSheetMethods>>;
|
|
6
|
+
//# sourceMappingURL=PersistentWithNestedPortal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PersistentWithNestedPortal.d.ts","sourceRoot":"","sources":["../../../../../example/src/sheets/PersistentWithNestedPortal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAiEpF;;GAEG;AACH,eAAO,MAAM,yBAAyB,8FA8DrC,CAAC"}
|
|
@@ -2,6 +2,7 @@ export { ContextComparisonSheet, ContextSheetImperative, ContextSheetPortal, Nes
|
|
|
2
2
|
export { HeavySheet } from './DynamicContentSheet';
|
|
3
3
|
export { SheetA, SheetB, SheetC, SheetD } from './NavigationSheets';
|
|
4
4
|
export { NestedSheet1, NestedSheet2, NestedSheet3 } from './NestedScaleSheets';
|
|
5
|
+
export { PersistentWithPortalSheet } from './PersistentWithNestedPortal';
|
|
5
6
|
export { PortalModeSheetA, PortalModeSheetB } from './PortalModeSheets';
|
|
6
7
|
export { ScannerSheet } from './ScannerSheet';
|
|
7
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../example/src/sheets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../example/src/sheets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BottomSheetPersistent.d.ts","sourceRoot":"","sources":["../../../src/BottomSheetPersistent.tsx"],"names":[],"mappings":"AACA,OAAO,KAA4B,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"BottomSheetPersistent.d.ts","sourceRoot":"","sources":["../../../src/BottomSheetPersistent.tsx"],"names":[],"mappings":"AACA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAWjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAM1D,UAAU,0BAA0B;IAClC,EAAE,EAAE,mBAAmB,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC;CAC9B;AAED,wBAAgB,qBAAqB,CAAC,EACpC,EAAE,EACF,QAAQ,GACT,EAAE,0BAA0B,kDAyC5B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BottomSheetPortal.d.ts","sourceRoot":"","sources":["../../../src/BottomSheetPortal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"BottomSheetPortal.d.ts","sourceRoot":"","sources":["../../../src/BottomSheetPortal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAG1D,UAAU,sBAAsB;IAC9B,EAAE,EAAE,mBAAmB,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC;CAC9B;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,sBAAsB,kDAmBzE"}
|
package/package.json
CHANGED
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
import type { BottomSheetMethods } from '@gorhom/bottom-sheet/lib/typescript/types';
|
|
2
2
|
import React, { useEffect, useRef } from 'react';
|
|
3
3
|
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
useMount,
|
|
6
|
+
useSheetExists,
|
|
7
|
+
useSheetPortalSession,
|
|
8
|
+
useUnmount,
|
|
9
|
+
} from './bottomSheet.store';
|
|
5
10
|
import { BottomSheetDefaultIndexContext } from './BottomSheetDefaultIndex.context';
|
|
6
11
|
import { useMaybeBottomSheetManagerContext } from './BottomSheetManager.provider';
|
|
7
|
-
import { BottomSheetPortal } from './BottomSheetPortal';
|
|
8
12
|
import { BottomSheetRefContext } from './BottomSheetRef.context';
|
|
9
13
|
import type { BottomSheetPortalId } from './portal.types';
|
|
10
14
|
import { setSheetRef } from './refsMap';
|
|
11
15
|
import { useEvent } from './useEvent';
|
|
16
|
+
import { Portal } from 'react-native-teleport';
|
|
17
|
+
import { BottomSheetContext } from './BottomSheet.context';
|
|
12
18
|
|
|
13
19
|
interface BottomSheetPersistentProps {
|
|
14
20
|
id: BottomSheetPortalId;
|
|
@@ -23,7 +29,7 @@ export function BottomSheetPersistent({
|
|
|
23
29
|
const mount = useMount();
|
|
24
30
|
const unmount = useUnmount();
|
|
25
31
|
const sheetExists = useSheetExists(id);
|
|
26
|
-
|
|
32
|
+
const portalSession = useSheetPortalSession(id);
|
|
27
33
|
const sheetRef = useRef<BottomSheetMethods>(null);
|
|
28
34
|
const groupId = bottomSheetManagerContext?.groupId || 'default';
|
|
29
35
|
|
|
@@ -49,12 +55,14 @@ export function BottomSheetPersistent({
|
|
|
49
55
|
}
|
|
50
56
|
|
|
51
57
|
return (
|
|
52
|
-
<
|
|
53
|
-
<
|
|
54
|
-
<
|
|
55
|
-
{
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
58
|
+
<Portal hostName={`bottomsheet-${id}-${portalSession}`}>
|
|
59
|
+
<BottomSheetContext.Provider value={{ id }}>
|
|
60
|
+
<BottomSheetDefaultIndexContext.Provider value={{ defaultIndex: -1 }}>
|
|
61
|
+
<BottomSheetRefContext.Provider value={sheetRef}>
|
|
62
|
+
{children}
|
|
63
|
+
</BottomSheetRefContext.Provider>
|
|
64
|
+
</BottomSheetDefaultIndexContext.Provider>
|
|
65
|
+
</BottomSheetContext.Provider>
|
|
66
|
+
</Portal>
|
|
59
67
|
);
|
|
60
68
|
}
|
|
@@ -4,7 +4,9 @@ import React from 'react';
|
|
|
4
4
|
import { Portal } from 'react-native-teleport';
|
|
5
5
|
|
|
6
6
|
import { BottomSheetContext } from './BottomSheet.context';
|
|
7
|
-
import {
|
|
7
|
+
import { BottomSheetDefaultIndexContext } from './BottomSheetDefaultIndex.context';
|
|
8
|
+
import { BottomSheetRefContext } from './BottomSheetRef.context';
|
|
9
|
+
import { useSheetPortalSession } from './bottomSheet.store';
|
|
8
10
|
import type { BottomSheetPortalId } from './portal.types';
|
|
9
11
|
import { getSheetRef } from './refsMap';
|
|
10
12
|
|
|
@@ -14,22 +16,21 @@ interface BottomSheetPortalProps {
|
|
|
14
16
|
}
|
|
15
17
|
|
|
16
18
|
export function BottomSheetPortal({ id, children }: BottomSheetPortalProps) {
|
|
17
|
-
const usePortal = useSheetUsePortal(id);
|
|
18
19
|
const portalSession = useSheetPortalSession(id);
|
|
20
|
+
const ref = getSheetRef(id);
|
|
19
21
|
|
|
20
|
-
if (!
|
|
22
|
+
if (!portalSession || !ref) {
|
|
21
23
|
return null;
|
|
22
24
|
}
|
|
23
25
|
|
|
24
|
-
const ref = getSheetRef(id);
|
|
25
|
-
const childWithRef = React.cloneElement(children, {
|
|
26
|
-
ref,
|
|
27
|
-
} as { ref: typeof ref });
|
|
28
|
-
|
|
29
26
|
return (
|
|
30
27
|
<Portal hostName={`bottomsheet-${id}-${portalSession}`}>
|
|
31
28
|
<BottomSheetContext.Provider value={{ id }}>
|
|
32
|
-
{
|
|
29
|
+
<BottomSheetDefaultIndexContext.Provider value={{ defaultIndex: 0 }}>
|
|
30
|
+
<BottomSheetRefContext.Provider value={ref}>
|
|
31
|
+
{children}
|
|
32
|
+
</BottomSheetRefContext.Provider>
|
|
33
|
+
</BottomSheetDefaultIndexContext.Provider>
|
|
33
34
|
</BottomSheetContext.Provider>
|
|
34
35
|
</Portal>
|
|
35
36
|
);
|