@niibase/bottom-sheet-manager 1.2.0 → 1.4.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.
Files changed (64) hide show
  1. package/README.md +414 -69
  2. package/lib/commonjs/events.js +100 -15
  3. package/lib/commonjs/events.js.map +1 -1
  4. package/lib/commonjs/index.js +14 -0
  5. package/lib/commonjs/index.js.map +1 -1
  6. package/lib/commonjs/manager.js +153 -35
  7. package/lib/commonjs/manager.js.map +1 -1
  8. package/lib/commonjs/provider.js +92 -54
  9. package/lib/commonjs/provider.js.map +1 -1
  10. package/lib/commonjs/router/index.js +80 -21
  11. package/lib/commonjs/router/index.js.map +1 -1
  12. package/lib/commonjs/router/router.js +137 -12
  13. package/lib/commonjs/router/router.js.map +1 -1
  14. package/lib/commonjs/router/view.js +93 -126
  15. package/lib/commonjs/router/view.js.map +1 -1
  16. package/lib/commonjs/sheet.js +122 -98
  17. package/lib/commonjs/sheet.js.map +1 -1
  18. package/lib/module/events.js +100 -15
  19. package/lib/module/events.js.map +1 -1
  20. package/lib/module/index.js +2 -2
  21. package/lib/module/index.js.map +1 -1
  22. package/lib/module/manager.js +154 -35
  23. package/lib/module/manager.js.map +1 -1
  24. package/lib/module/provider.js +87 -50
  25. package/lib/module/provider.js.map +1 -1
  26. package/lib/module/router/index.js +66 -19
  27. package/lib/module/router/index.js.map +1 -1
  28. package/lib/module/router/router.js +135 -11
  29. package/lib/module/router/router.js.map +1 -1
  30. package/lib/module/router/view.js +92 -126
  31. package/lib/module/router/view.js.map +1 -1
  32. package/lib/module/sheet.js +124 -100
  33. package/lib/module/sheet.js.map +1 -1
  34. package/lib/typescript/events.d.ts +46 -12
  35. package/lib/typescript/events.d.ts.map +1 -1
  36. package/lib/typescript/index.d.ts +2 -2
  37. package/lib/typescript/index.d.ts.map +1 -1
  38. package/lib/typescript/manager.d.ts +73 -7
  39. package/lib/typescript/manager.d.ts.map +1 -1
  40. package/lib/typescript/provider.d.ts +22 -16
  41. package/lib/typescript/provider.d.ts.map +1 -1
  42. package/lib/typescript/router/index.d.ts +47 -17
  43. package/lib/typescript/router/index.d.ts.map +1 -1
  44. package/lib/typescript/router/router.d.ts +44 -5
  45. package/lib/typescript/router/router.d.ts.map +1 -1
  46. package/lib/typescript/router/types.d.ts +142 -32
  47. package/lib/typescript/router/types.d.ts.map +1 -1
  48. package/lib/typescript/router/view.d.ts +3 -3
  49. package/lib/typescript/router/view.d.ts.map +1 -1
  50. package/lib/typescript/sheet.d.ts +1 -1
  51. package/lib/typescript/sheet.d.ts.map +1 -1
  52. package/lib/typescript/types.d.ts +52 -21
  53. package/lib/typescript/types.d.ts.map +1 -1
  54. package/package.json +14 -15
  55. package/src/events.ts +118 -27
  56. package/src/index.ts +2 -1
  57. package/src/manager.ts +209 -42
  58. package/src/provider.tsx +144 -71
  59. package/src/router/index.tsx +77 -33
  60. package/src/router/router.ts +188 -15
  61. package/src/router/types.ts +172 -57
  62. package/src/router/view.tsx +111 -213
  63. package/src/sheet.tsx +192 -124
  64. package/src/types.ts +51 -24
@@ -1 +1 @@
1
- {"version":3,"names":["BottomSheetBackdrop","BottomSheetModal","BottomSheetModalProvider","useTheme","React","StatusBar","Animated","Easing","interpolate","interpolateColor","runOnJS","useAnimatedReaction","useAnimatedStyle","useSharedValue","withSpring","useSafeAreaInsets","BottomSheetModalScreen","index","navigation","clickThrough","iosModalSheetTypeOfAnimation","opacity","children","props","ref","useRef","lastIndexRef","useEffect","current","present","isMounted","snapToIndex","onChange","useCallback","newIndex","currentIndex","snapTo","onDismiss","goBack","createElement","_extends","backdropComponent","appearsOnIndex","disappearsOnIndex","enableTouchThrough","DEFAULT_SNAP_POINTS","BottomSheetView","state","descriptors","colors","top","themeBackgroundStyle","useMemo","backgroundColor","card","themeHandleIndicatorStyle","border","height","width","isFullScreen","colorStyle","flex","value","animatedStyle","transform","scaleX","damping","stiffness","translateY","setStatusBar","setBarStyle","currentValue","shouldRenderProvider","routes","length","firstRoute","firstDescriptor","key","Fragment","View","style","render","slice","map","route","descriptor","options","snapPoints","handleStyle","backgroundStyle","handleIndicatorStyle","enableDynamicSizing","sheetProps","Math","min","onAnimate","_","to","includes","animationConfigs","duration","easing","bezier","topInset","borderRadius"],"sourceRoot":"../../../src","sources":["router/view.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useSafeAreaInsets","useTheme","React","BottomSheetActions","BottomSheet","BottomSheetScreen","children","navigation","route","props","ref","useRef","lastSnapIndexRef","snapToIndex","index","useEffect","closing","current","close","snapToKey","handleChange","useCallback","newIndex","position","type","emit","target","key","data","currentIndex","dispatch","snapTo","createElement","_extends","onChange","BottomSheetView","state","descriptors","colors","bottom","left","right","themeBackgroundStyle","useMemo","borderCurve","backgroundColor","card","themeHandleIndicatorStyle","border","defaultStyle","paddingBottom","paddingLeft","paddingRight","baseRoute","sheetRoutes","routes","baseDescriptor","Fragment","render","map","descriptor","options","style","backgroundStyle","handleIndicatorStyle","handleStyle","id","borderRadius","onClose","remove","source","onBeforeShow","onAnimate","fromIndex","toIndex","fromPosition","toPosition"],"sourceRoot":"../../../src","sources":["router/view.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,88 +1,104 @@
1
1
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
2
  import RNBottomSheet, { BottomSheetBackdrop, BottomSheetFlatList, BottomSheetFooter, BottomSheetFooterContainer, BottomSheetHandle, BottomSheetScrollView, BottomSheetSectionList, BottomSheetTextInput, BottomSheetView, BottomSheetVirtualizedList } from "@gorhom/bottom-sheet";
3
3
  import { BackHandler, Platform, StyleSheet, View } from "react-native";
4
- import { Easing, interpolate, useAnimatedReaction, useSharedValue } from "react-native-reanimated";
4
+ import { interpolate, useAnimatedReaction, useSharedValue } from "react-native-reanimated";
5
5
  import { useSafeAreaInsets } from "react-native-safe-area-context";
6
- import { useTheme } from "@react-navigation/native";
7
6
  import React from "react";
8
- import { useProviderContext, useSheetAnimationContext, useSheetIDContext, useSheetRef } from "./provider";
7
+ import { useProviderContext, useSheetIDContext, useSheetRef, useSheetSharedContext, useStackBehaviorContext } from "./provider";
9
8
  import { PrivateManager } from "./manager";
10
9
  import { eventManager } from "./events";
10
+ const FULL_SCREEN_POINTS = Platform.OS === "ios" ? ["%90", "90%"] : ["%93", "93%"];
11
11
  const useSheetManager = ({
12
12
  id,
13
13
  onHide,
14
14
  onBeforeShow,
15
15
  onContextUpdate
16
16
  }) => {
17
- const [visible, setVisible] = React.useState(false);
18
17
  const currentContext = useProviderContext();
18
+ const hasShownRef = React.useRef(false);
19
19
  React.useEffect(() => {
20
20
  if (!id) return undefined;
21
- const subscriptions = [eventManager.subscribe(`show_${id}`, (data, context) => {
22
- if (currentContext !== context || visible) return;
23
- onContextUpdate?.();
24
- onBeforeShow?.(data);
25
- setVisible(true);
26
- }), eventManager.subscribe(`hide_${id}`, (data, context, dismiss) => {
21
+ const subscriptions = [eventManager.subscribe(`show_${id}`, (data, context, behavior) => {
22
+ if (currentContext !== context) return;
23
+ if (!hasShownRef.current) {
24
+ hasShownRef.current = true;
25
+ onContextUpdate?.();
26
+ onBeforeShow?.(data, behavior);
27
+ }
28
+ }), eventManager.subscribe(`hide_${id}`, (data, context, dismiss, behavior) => {
27
29
  if (currentContext !== context) return;
28
- onHide?.(data, dismiss);
30
+ hasShownRef.current = false;
31
+ onHide?.(data, dismiss, behavior);
29
32
  })];
30
33
  return () => {
34
+ hasShownRef.current = false;
31
35
  subscriptions.forEach(s => s?.unsubscribe?.());
32
36
  };
33
37
  }, [id, onHide, onBeforeShow, onContextUpdate, currentContext]);
34
- return {
35
- visible,
36
- setVisible
37
- };
38
38
  };
39
39
  const BottomSheetComponent = /*#__PURE__*/React.forwardRef(({
40
40
  children,
41
- snapPoints,
42
41
  onClose,
43
42
  onBeforeShow,
44
43
  stackBehavior = "switch",
45
44
  hardwareBackPressToClose = true,
46
45
  enableDynamicSizing = false,
47
46
  handleIndicatorStyle,
48
- iosModalSheetTypeOfAnimation: pageAnimation,
47
+ iosModalSheetTypeOfAnimation,
48
+ snapPoints: defaultSnapPoints,
49
+ animatedIndex: defaultAnimatedIndex,
49
50
  backgroundStyle,
51
+ onAnimate,
50
52
  handleStyle,
51
- clickThrough,
52
- fullScreen,
53
+ style,
54
+ passThrough,
53
55
  opacity,
54
56
  ...props
55
57
  }, ref) => {
56
58
  const currentSheetRef = useSheetRef();
57
59
  const currentCtx = useProviderContext();
58
- const {
59
- isFullScreen,
60
- iosModalSheetTypeOfAnimation
61
- } = useSheetAnimationContext();
60
+ const stackContext = useStackBehaviorContext();
62
61
  const animatedIndex = useSharedValue(0);
62
+ const [currentStackBehavior, setCurrentStackBehavior] = React.useState(stackBehavior);
63
+ const isPushed = currentStackBehavior === "push";
63
64
  const {
64
- colors
65
- } = useTheme();
66
- const {
67
- top
65
+ bottom,
66
+ left,
67
+ right
68
68
  } = useSafeAreaInsets();
69
- const themeBackgroundStyle = React.useMemo(() => ({
70
- backgroundColor: colors.card
71
- }), [colors.card]);
72
- const themeHandleIndicatorStyle = React.useMemo(() => ({
73
- backgroundColor: colors.border,
74
- height: 5,
75
- width: 50
76
- }), [colors.border]);
69
+ const defaultStyle = React.useMemo(() => ({
70
+ paddingBottom: bottom,
71
+ paddingLeft: left,
72
+ paddingRight: right
73
+ }), [bottom, left, right]);
74
+ const {
75
+ isFullScreen
76
+ } = useSheetSharedContext();
77
+ const [snapPoints, fullScreenIndex] = React.useMemo(() => {
78
+ let resolved = defaultSnapPoints;
79
+ if (Platform.OS === "android" && iosModalSheetTypeOfAnimation && Array.isArray(resolved)) {
80
+ resolved = resolved.map(p => p === "90%" || p === "%90" ? "93%" : p);
81
+ }
82
+ const fullScreenIndex = resolved instanceof Array ? resolved.findIndex(p => FULL_SCREEN_POINTS.includes(p)) : resolved?.value?.findIndex(p => FULL_SCREEN_POINTS.includes(p)) || -1;
83
+ return [resolved, fullScreenIndex];
84
+ }, [defaultSnapPoints, iosModalSheetTypeOfAnimation]);
77
85
  const valueRef = React.useRef(null);
78
86
  const bottomSheetRef = React.useRef(null);
79
87
  const hardwareBackPressEvent = React.useRef(null);
80
88
  const id = useSheetIDContext();
81
89
  const sheetId = props.id || id;
90
+ const hideSheetRef = React.useRef(null);
82
91
  useSheetManager({
83
92
  id: sheetId,
84
- onHide: (data, dismiss) => hideSheet(data, true, dismiss),
85
- onBeforeShow: data => {
93
+ onHide: (data, dismiss, behavior) => {
94
+ // Update state for future renders, but also pass behavior directly
95
+ // so hideSheet doesn't read a stale closure value (React state update
96
+ // is async — hideSheet runs before the re-render).
97
+ if (behavior) setCurrentStackBehavior(behavior);
98
+ hideSheetRef.current(data, true, dismiss, behavior);
99
+ },
100
+ onBeforeShow: (data, behavior) => {
101
+ if (behavior) setCurrentStackBehavior(behavior);
86
102
  onBeforeShow?.(data);
87
103
  valueRef.current = undefined;
88
104
  currentSheetRef.current = getInstance();
@@ -96,49 +112,63 @@ const BottomSheetComponent = /*#__PURE__*/React.forwardRef(({
96
112
  }
97
113
  }
98
114
  });
99
- useAnimatedReaction(() => {
100
- if (!!iosModalSheetTypeOfAnimation || !!pageAnimation) {
101
- isFullScreen.value = 0;
102
- }
103
- return animatedIndex.value;
104
- }, index => {
115
+ useAnimatedReaction(() => animatedIndex.value, index => {
105
116
  "worklet";
106
117
 
107
- const points = ["%100", "100%"];
108
- const checkFullScreen = fullScreen ? -1 : snapPoints instanceof Array ? snapPoints.findIndex(p => points.includes(p)) : snapPoints?.value?.findIndex(p => points.includes(p)) || -1;
109
- if (-1 !== checkFullScreen && (!!iosModalSheetTypeOfAnimation || !!pageAnimation)) {
110
- isFullScreen.value = interpolate(index, [checkFullScreen - 1, checkFullScreen], [0, 1]);
118
+ if (defaultAnimatedIndex) {
119
+ defaultAnimatedIndex.set(index);
120
+ }
121
+ if (iosModalSheetTypeOfAnimation) {
122
+ isFullScreen.set(interpolate(index, [fullScreenIndex - 1, fullScreenIndex, fullScreenIndex + 1], [0, 1, 0]));
111
123
  }
112
- }, [snapPoints]);
113
- const hideSheet = React.useCallback((data, isSheetManagerOrRef, dismiss) => {
124
+ }, [iosModalSheetTypeOfAnimation]);
125
+ const hideSheet = React.useCallback((data, fromManager, dismiss, incomingBehavior) => {
126
+ // Use the freshly-delivered behavior from the event when available.
127
+ // currentStackBehavior comes from React state which may not have flushed
128
+ // yet when this callback fires synchronously from the manager.
129
+ const activeBehavior = incomingBehavior ?? currentStackBehavior;
114
130
  let value = data ?? valueRef.current;
115
- if (!dismiss || stackBehavior !== "push") {
116
- hardwareBackPressEvent.current?.remove();
131
+ hardwareBackPressEvent.current?.remove();
132
+ const closeValue = onClose?.(value);
133
+ if (closeValue !== undefined) value = closeValue;
134
+ if (dismiss && activeBehavior === "push") {
135
+ // For push behavior, a "dismiss" event means another sheet wants to
136
+ // appear on top — do not close this sheet.
137
+ if (fromManager) valueRef.current = data;
138
+ return;
139
+ }
140
+ if (activeBehavior !== "replace" || !dismiss) {
117
141
  bottomSheetRef.current?.close();
118
- const closeValue = onClose?.(value);
119
- if (undefined !== closeValue) value = closeValue;
120
142
  }
121
143
  if (sheetId) {
122
- PrivateManager.remove(sheetId, currentCtx);
123
- if (dismiss && stackBehavior === "push") return;
124
- const history = PrivateManager.history.length >= 1;
125
- eventManager.publish(`onclose_${sheetId}`, value, currentCtx, history || dismiss);
126
- if (stackBehavior === "replace") return;
127
- if (dismiss) {
128
- PrivateManager.history.push({
129
- id: sheetId,
130
- context: currentCtx
131
- });
132
- } else if (history) {
133
- const {
134
- id,
135
- context
136
- } = PrivateManager.history.pop();
137
- eventManager.publish(`show_wrap_${id}`, undefined, context, true);
144
+ const hasHistory = PrivateManager.history.length > 0;
145
+ const shouldRestorePrevious = activeBehavior !== "replace";
146
+ eventManager.publish(`onclose_${sheetId}`, value, currentCtx, hasHistory || !!dismiss, activeBehavior);
147
+ if (shouldRestorePrevious) {
148
+ if (dismiss) {
149
+ // it will surface naturally when the push sheet is closed.
150
+ if (activeBehavior !== "push") {
151
+ PrivateManager.history.push({
152
+ id: sheetId,
153
+ context: currentCtx,
154
+ behavior: activeBehavior
155
+ });
156
+ }
157
+ } else if (hasHistory) {
158
+ const otherSheetsStillOpen = PrivateManager.stack().some(s => !(s.id === sheetId && s.context === currentCtx));
159
+ if (!otherSheetsStillOpen) {
160
+ const prev = PrivateManager.history.pop();
161
+ eventManager.publish(`show_wrap_${prev.id}`, undefined, prev.context, true, prev.behavior);
162
+ }
163
+ }
138
164
  }
165
+ PrivateManager.remove(sheetId, currentCtx);
139
166
  }
140
- if (isSheetManagerOrRef) valueRef.current = data;
141
- }, [sheetId, currentCtx, onClose]);
167
+ if (fromManager) valueRef.current = data;
168
+ }, [sheetId, currentCtx, onClose, currentStackBehavior]);
169
+ React.useEffect(() => {
170
+ hideSheetRef.current = hideSheet;
171
+ }, [hideSheet]);
142
172
  const getInstance = React.useCallback(() => ({
143
173
  close(options = {}) {
144
174
  valueRef.current = options.value;
@@ -168,39 +198,47 @@ const BottomSheetComponent = /*#__PURE__*/React.forwardRef(({
168
198
  React.useEffect(() => {
169
199
  if (Platform.OS === "android" && hardwareBackPressToClose) {
170
200
  hardwareBackPressEvent.current = BackHandler.addEventListener("hardwareBackPress", () => {
171
- bottomSheetRef.current?.close();
201
+ // Go through hideSheet so internal state (PrivateManager, events,
202
+ // history) is updated correctly — not just the visual sheet.
203
+ hideSheetRef.current(undefined, true, false);
172
204
  return true;
173
205
  });
174
206
  }
175
207
  return () => hardwareBackPressEvent.current?.remove();
176
208
  }, [hardwareBackPressToClose]);
177
209
  React.useImperativeHandle(ref, getInstance, [getInstance]);
210
+ const zIndex = React.useMemo(() => isPushed && sheetId ? PrivateManager.zIndex(sheetId, currentCtx) : 0, [sheetId, isPushed, currentCtx]);
211
+ const backdropOpacity = React.useMemo(() => {
212
+ if (isPushed && stackContext.previousSheetId) {
213
+ return (opacity || 0.45) * 0.6;
214
+ }
215
+ return opacity || 0.45;
216
+ }, [isPushed, stackContext.previousSheetId, opacity]);
178
217
  return /*#__PURE__*/React.createElement(View, {
179
218
  pointerEvents: "box-none",
180
219
  style: [StyleSheet.absoluteFill, {
181
- zIndex: sheetId && stackBehavior === "push" ? PrivateManager.zIndex(sheetId, currentCtx) : 0
220
+ zIndex
182
221
  }]
183
222
  }, /*#__PURE__*/React.createElement(RNBottomSheet, _extends({
184
223
  enableDynamicSizing: enableDynamicSizing,
185
- animationConfigs: {
186
- duration: 400,
187
- easing: Easing.bezier(0.25, 0.1, 0.25, 1)
188
- },
189
- backdropComponent: props => /*#__PURE__*/React.createElement(BottomSheetBackdrop, _extends({
190
- enableTouchThrough: !!clickThrough,
191
- opacity: opacity || 0.45,
224
+ backdropComponent: backdropProps => /*#__PURE__*/React.createElement(BottomSheetBackdrop, _extends({
225
+ enableTouchThrough: !!passThrough,
226
+ opacity: backdropOpacity,
192
227
  disappearsOnIndex: -1,
193
228
  appearsOnIndex: 0
194
- }, props))
229
+ }, backdropProps)),
230
+ topInset: 0,
231
+ bottomInset: 0
195
232
  }, props, {
196
233
  ref: bottomSheetRef,
197
234
  onClose: hideSheet,
235
+ onAnimate: onAnimate,
198
236
  animatedIndex: animatedIndex,
199
- topInset: fullScreen ? 0 : top + (iosModalSheetTypeOfAnimation || pageAnimation ? 20 : 5),
200
- snapPoints: enableDynamicSizing ? undefined : snapPoints ?? ["66%"],
201
- handleIndicatorStyle: [themeHandleIndicatorStyle, handleIndicatorStyle],
202
- backgroundStyle: [themeBackgroundStyle, backgroundStyle],
203
- handleStyle: [themeBackgroundStyle, handleStyle]
237
+ style: [defaultStyle, style],
238
+ snapPoints: enableDynamicSizing ? undefined : snapPoints,
239
+ handleIndicatorStyle: handleIndicatorStyle,
240
+ backgroundStyle: backgroundStyle,
241
+ handleStyle: handleStyle
204
242
  }), children));
205
243
  });
206
244
  const BottomSheet = /*#__PURE__*/React.memo(BottomSheetComponent);
@@ -215,19 +253,5 @@ BottomSheet.Footer = BottomSheetFooter;
215
253
  BottomSheet.FooterContainer = BottomSheetFooterContainer;
216
254
  BottomSheet.Backdrop = BottomSheetBackdrop;
217
255
  BottomSheet.TextInput = BottomSheetTextInput;
218
- try {
219
- const {
220
- cssInterop
221
- } = require("nativewind");
222
- cssInterop(BottomSheet, {
223
- handleIndicatorClassName: "handleIndicatorStyle",
224
- backgroundClassName: "backgroundStyle",
225
- containerClassName: "containerStyle",
226
- handleClassName: "handleStyle",
227
- className: "style"
228
- });
229
- } catch (e) {
230
- // Ignore error
231
- }
232
256
  export default BottomSheet;
233
257
  //# sourceMappingURL=sheet.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["RNBottomSheet","BottomSheetBackdrop","BottomSheetFlatList","BottomSheetFooter","BottomSheetFooterContainer","BottomSheetHandle","BottomSheetScrollView","BottomSheetSectionList","BottomSheetTextInput","BottomSheetView","BottomSheetVirtualizedList","BackHandler","Platform","StyleSheet","View","Easing","interpolate","useAnimatedReaction","useSharedValue","useSafeAreaInsets","useTheme","React","useProviderContext","useSheetAnimationContext","useSheetIDContext","useSheetRef","PrivateManager","eventManager","useSheetManager","id","onHide","onBeforeShow","onContextUpdate","visible","setVisible","useState","currentContext","useEffect","undefined","subscriptions","subscribe","data","context","dismiss","forEach","s","unsubscribe","BottomSheetComponent","forwardRef","children","snapPoints","onClose","stackBehavior","hardwareBackPressToClose","enableDynamicSizing","handleIndicatorStyle","iosModalSheetTypeOfAnimation","pageAnimation","backgroundStyle","handleStyle","clickThrough","fullScreen","opacity","props","ref","currentSheetRef","currentCtx","isFullScreen","animatedIndex","colors","top","themeBackgroundStyle","useMemo","backgroundColor","card","themeHandleIndicatorStyle","border","height","width","valueRef","useRef","bottomSheetRef","hardwareBackPressEvent","sheetId","hideSheet","current","getInstance","add","registerRef","value","index","points","checkFullScreen","Array","findIndex","p","includes","useCallback","isSheetManagerOrRef","remove","close","closeValue","history","length","publish","push","pop","options","animationConfigs","expand","collapse","snapToIndex","snapToPosition","position","OS","addEventListener","useImperativeHandle","createElement","pointerEvents","style","absoluteFill","zIndex","_extends","duration","easing","bezier","backdropComponent","enableTouchThrough","disappearsOnIndex","appearsOnIndex","topInset","BottomSheet","memo","displayName","ScrollView","FlatList","SectionList","VirtualizedList","Handle","Footer","FooterContainer","Backdrop","TextInput","cssInterop","require","handleIndicatorClassName","backgroundClassName","containerClassName","handleClassName","className","e"],"sourceRoot":"../../src","sources":["sheet.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["RNBottomSheet","BottomSheetBackdrop","BottomSheetFlatList","BottomSheetFooter","BottomSheetFooterContainer","BottomSheetHandle","BottomSheetScrollView","BottomSheetSectionList","BottomSheetTextInput","BottomSheetView","BottomSheetVirtualizedList","BackHandler","Platform","StyleSheet","View","interpolate","useAnimatedReaction","useSharedValue","useSafeAreaInsets","React","useProviderContext","useSheetIDContext","useSheetRef","useSheetSharedContext","useStackBehaviorContext","PrivateManager","eventManager","FULL_SCREEN_POINTS","OS","useSheetManager","id","onHide","onBeforeShow","onContextUpdate","currentContext","hasShownRef","useRef","useEffect","undefined","subscriptions","subscribe","data","context","behavior","current","dismiss","forEach","s","unsubscribe","BottomSheetComponent","forwardRef","children","onClose","stackBehavior","hardwareBackPressToClose","enableDynamicSizing","handleIndicatorStyle","iosModalSheetTypeOfAnimation","snapPoints","defaultSnapPoints","animatedIndex","defaultAnimatedIndex","backgroundStyle","onAnimate","handleStyle","style","passThrough","opacity","props","ref","currentSheetRef","currentCtx","stackContext","currentStackBehavior","setCurrentStackBehavior","useState","isPushed","bottom","left","right","defaultStyle","useMemo","paddingBottom","paddingLeft","paddingRight","isFullScreen","fullScreenIndex","resolved","Array","isArray","map","p","findIndex","includes","value","valueRef","bottomSheetRef","hardwareBackPressEvent","sheetId","hideSheetRef","getInstance","add","registerRef","index","set","hideSheet","useCallback","fromManager","incomingBehavior","activeBehavior","remove","closeValue","close","hasHistory","history","length","shouldRestorePrevious","publish","push","otherSheetsStillOpen","stack","some","prev","pop","options","animationConfigs","expand","collapse","snapToIndex","snapToPosition","position","addEventListener","useImperativeHandle","zIndex","backdropOpacity","previousSheetId","createElement","pointerEvents","absoluteFill","_extends","backdropComponent","backdropProps","enableTouchThrough","disappearsOnIndex","appearsOnIndex","topInset","bottomInset","BottomSheet","memo","displayName","ScrollView","FlatList","SectionList","VirtualizedList","Handle","Footer","FooterContainer","Backdrop","TextInput"],"sourceRoot":"../../src","sources":["sheet.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,16 +1,50 @@
1
- import { NativeEventEmitter } from "react-native";
2
- export type EventHandler = (...args: any[]) => void;
3
- export type EventHandlerSubscription = {
4
- unsubscribe: () => void;
5
- };
6
- export default class EventManager {
7
- _registry?: NativeEventEmitter;
8
- constructor();
9
- subscribe(name: string, handler: EventHandler): {
10
- unsubscribe: () => void | undefined;
11
- };
12
- publish(name: string, ...args: any[]): void;
1
+ /**
2
+ * High-performance event manager using Maps for O(1) lookups.
3
+ * Replaces React Native's EventEmitter which has significant overhead.
4
+ */
5
+ export type EventHandler<T extends unknown[] = unknown[]> = (...args: T) => void;
6
+ export interface EventSubscription {
7
+ readonly unsubscribe: () => void;
8
+ }
9
+ declare class EventManager {
10
+ private _handlers;
11
+ private _nextId;
12
+ /**
13
+ * Subscribe to an event with a handler function.
14
+ * Returns a subscription object with an unsubscribe method.
15
+ */
16
+ subscribe<T extends unknown[] = unknown[]>(name: string, handler: EventHandler<T>): EventSubscription;
17
+ /**
18
+ * Publish an event with optional arguments.
19
+ * All subscribed handlers will be called synchronously.
20
+ */
21
+ publish<T extends unknown[] = unknown[]>(name: string, ...args: T): void;
22
+ /**
23
+ * Publish an event asynchronously using microtasks for better performance.
24
+ * Useful when you don't need immediate execution.
25
+ */
26
+ publishAsync<T extends unknown[] = unknown[]>(name: string, ...args: T): void;
27
+ /**
28
+ * Check if an event has any subscribers.
29
+ */
30
+ hasSubscribers(name: string): boolean;
31
+ /**
32
+ * Get the number of subscribers for an event.
33
+ */
34
+ subscriberCount(name: string): number;
35
+ /**
36
+ * Remove all listeners for the specified event names.
37
+ */
13
38
  remove(...names: string[]): void;
39
+ /**
40
+ * Remove all event listeners.
41
+ */
42
+ clear(): void;
43
+ /**
44
+ * Subscribe to an event that will only fire once.
45
+ */
46
+ once<T extends unknown[] = unknown[]>(name: string, handler: EventHandler<T>): EventSubscription;
14
47
  }
15
48
  export declare const eventManager: EventManager;
49
+ export default EventManager;
16
50
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,kBAAkB,EAErB,MAAM,cAAc,CAAC;AAGtB,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;AACpD,MAAM,MAAM,wBAAwB,GAAG;IACnC,WAAW,EAAE,MAAM,IAAI,CAAC;CAC3B,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,YAAY;IAC7B,SAAS,CAAC,EAAE,kBAAkB,CAAC;;IAQ/B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY;;;IAM7C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAIpC,MAAM,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE;CAK5B;AAED,eAAO,MAAM,YAAY,cAAqB,CAAC"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;AAEjF,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC;CACpC;AAOD,cAAM,YAAY;IACd,OAAO,CAAC,SAAS,CAAqC;IACtD,OAAO,CAAC,OAAO,CAAK;IAEpB;;;OAGG;IACH,SAAS,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EACrC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GACzB,iBAAiB;IA+BpB;;;OAGG;IACH,OAAO,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI;IAWxE;;;OAGG;IACH,YAAY,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI;IAI7E;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAKrC;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIrC;;OAEG;IACH,MAAM,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI;IAMhC;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,IAAI,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EAChC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GACzB,iBAAiB;CAOvB;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC;AAE/C,eAAe,YAAY,CAAC"}
@@ -1,6 +1,6 @@
1
1
  export { default as BottomSheet } from "./sheet";
2
- export { SheetManager } from "./manager";
2
+ export { SheetManager, PrivateManager } from "./manager";
3
3
  export * from "./router";
4
4
  export * from "./types";
5
- export { SheetProvider, useSheetPayload, useSheetRef, useOnSheet, registerSheet, } from "./provider";
5
+ export { SheetProvider, useSheetPayload, useSheetRef, useOnSheet, useStackBehaviorContext as useSheetStackBehavior, registerSheet, } from "./provider";
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,OAAO,EACH,aAAa,EACb,eAAe,EACf,WAAW,EACX,UAAU,EACV,aAAa,GAChB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACzD,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,OAAO,EACH,aAAa,EACb,eAAe,EACf,WAAW,EACX,UAAU,EACV,uBAAuB,IAAI,qBAAqB,EAChD,aAAa,GAChB,MAAM,YAAY,CAAC"}
@@ -1,17 +1,18 @@
1
1
  import { RefObject } from "react";
2
- import { BottomSheetInstance, Sheets } from "./types";
2
+ import { BottomSheetInstance, Sheets, StackBehavior } from "./types";
3
+ interface HistoryEntry {
4
+ id: string;
5
+ context: string;
6
+ behavior: StackBehavior;
7
+ }
3
8
  export declare const PrivateManager: {
4
- history: {
5
- id: string;
6
- context: string;
7
- }[];
9
+ history: HistoryEntry[];
8
10
  context(options?: {
9
11
  context?: string;
10
12
  id?: string;
11
13
  }): string | undefined;
12
14
  registerRef: (id: string, context: string, instance: RefObject<BottomSheetInstance>) => void;
13
15
  /**
14
- *
15
16
  * Get internal ref of a sheet by the given id.
16
17
  *
17
18
  * @param id Id of the sheet
@@ -25,6 +26,25 @@ export declare const PrivateManager: {
25
26
  id: string;
26
27
  context: string;
27
28
  }[];
29
+ /**
30
+ * Get the top-most sheet in the stack
31
+ */
32
+ topSheet: () => {
33
+ id: string;
34
+ context: string;
35
+ } | null;
36
+ /**
37
+ * Check if a sheet is currently visible
38
+ */
39
+ isSheetVisible: (id: string, context?: string) => boolean;
40
+ /**
41
+ * Clear all history entries
42
+ */
43
+ clearHistory: () => void;
44
+ /**
45
+ * Reset all internal state. Useful for testing or HMR.
46
+ */
47
+ reset: () => void;
28
48
  };
29
49
  declare class _SheetManager {
30
50
  /**
@@ -46,12 +66,19 @@ declare class _SheetManager {
46
66
  * Provide `context` of the `SheetProvider` where you want to show the action sheet.
47
67
  */
48
68
  context?: string;
69
+ /**
70
+ * Stack behavior for this sheet.
71
+ * - `switch`: (default) Closes current sheet, shows new one
72
+ * - `replace`: Swaps content with crossfade animation
73
+ * - `push`: Stacks new sheet on top of current
74
+ */
75
+ stackBehavior?: StackBehavior;
49
76
  }): Promise<Sheets[SheetId]["returnValue"]>;
50
77
  /**
51
78
  * An async hide function. This is useful when you want to show one Sheet after closing another.
52
79
  *
53
80
  * @param id id of the Sheet to show
54
- * @param data
81
+ * @param options
55
82
  */
56
83
  hide<SheetId extends keyof Sheets>(id: SheetId | (string & {}), options?: {
57
84
  /**
@@ -69,6 +96,45 @@ declare class _SheetManager {
69
96
  * @param id Hide all sheets for the specific id.
70
97
  */
71
98
  hideAll<SheetId extends keyof Sheets>(id?: SheetId | (string & {})): void;
99
+ /**
100
+ * Replace the current sheet with a new one using crossfade animation.
101
+ * This is a convenience method for show() with stackBehavior: 'replace'.
102
+ */
103
+ replace<SheetId extends keyof Sheets>(id: SheetId | (string & {}), options?: {
104
+ payload?: Sheets[SheetId]["payload"];
105
+ onClose?: (data: Sheets[SheetId]["returnValue"] | undefined) => void;
106
+ context?: string;
107
+ }): Promise<Sheets[SheetId]["returnValue"]>;
108
+ /**
109
+ * Push a new sheet on top of the current one, creating a stack.
110
+ * This is a convenience method for show() with stackBehavior: 'push'.
111
+ *
112
+ */
113
+ push<SheetId extends keyof Sheets>(id: SheetId | (string & {}), options?: {
114
+ payload?: Sheets[SheetId]["payload"];
115
+ onClose?: (data: Sheets[SheetId]["returnValue"] | undefined) => void;
116
+ context?: string;
117
+ }): Promise<Sheets[SheetId]["returnValue"]>;
118
+ /**
119
+ * Pop the top sheet from the stack and restore the previous one.
120
+ * Only works when sheets were opened with stackBehavior: 'push'.
121
+ */
122
+ pop(): void;
123
+ /**
124
+ * Get the internal ref of a sheet instance.
125
+ *
126
+ * @param id Id of the sheet
127
+ * @param context Optional context of the SheetProvider
128
+ */
129
+ get<SheetId extends keyof Sheets>(id: SheetId | (string & {}), context?: string): BottomSheetInstance<SheetId> | undefined;
130
+ /**
131
+ * Check if a specific sheet is currently visible.
132
+ */
133
+ isVisible<SheetId extends keyof Sheets>(id: SheetId | (string & {}), context?: string): boolean;
134
+ /**
135
+ * Reset all internal state. Useful for testing environments.
136
+ */
137
+ reset(): void;
72
138
  }
73
139
  /**
74
140
  * SheetManager is used to imperatively show/hide any sheet with a unique id prop.