@niibase/bottom-sheet-manager 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/README.md +371 -37
  2. package/lib/commonjs/events.js +100 -15
  3. package/lib/commonjs/events.js.map +1 -1
  4. package/lib/commonjs/index.js +7 -0
  5. package/lib/commonjs/index.js.map +1 -1
  6. package/lib/commonjs/manager.js +107 -29
  7. package/lib/commonjs/manager.js.map +1 -1
  8. package/lib/commonjs/provider.js +69 -28
  9. package/lib/commonjs/provider.js.map +1 -1
  10. package/lib/commonjs/router/index.js +50 -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 +194 -84
  15. package/lib/commonjs/router/view.js.map +1 -1
  16. package/lib/commonjs/sheet.js +124 -76
  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 +1 -1
  21. package/lib/module/index.js.map +1 -1
  22. package/lib/module/manager.js +108 -29
  23. package/lib/module/manager.js.map +1 -1
  24. package/lib/module/provider.js +65 -25
  25. package/lib/module/provider.js.map +1 -1
  26. package/lib/module/router/index.js +34 -18
  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 +194 -84
  31. package/lib/module/router/view.js.map +1 -1
  32. package/lib/module/sheet.js +126 -78
  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 +1 -1
  37. package/lib/typescript/index.d.ts.map +1 -1
  38. package/lib/typescript/manager.d.ts +57 -7
  39. package/lib/typescript/manager.d.ts.map +1 -1
  40. package/lib/typescript/provider.d.ts +22 -3
  41. package/lib/typescript/provider.d.ts.map +1 -1
  42. package/lib/typescript/router/index.d.ts +33 -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 +113 -17
  47. package/lib/typescript/router/types.d.ts.map +1 -1
  48. package/lib/typescript/router/view.d.ts +1 -1
  49. package/lib/typescript/router/view.d.ts.map +1 -1
  50. package/lib/typescript/sheet.d.ts.map +1 -1
  51. package/lib/typescript/types.d.ts +25 -11
  52. package/lib/typescript/types.d.ts.map +1 -1
  53. package/package.json +1 -1
  54. package/src/events.ts +118 -27
  55. package/src/index.ts +6 -5
  56. package/src/manager.ts +156 -33
  57. package/src/provider.tsx +98 -44
  58. package/src/router/index.tsx +38 -31
  59. package/src/router/router.ts +184 -15
  60. package/src/router/types.ts +119 -22
  61. package/src/router/view.tsx +252 -132
  62. package/src/sheet.tsx +175 -95
  63. package/src/types.ts +144 -130
@@ -1,11 +1,11 @@
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 { Easing, useAnimatedReaction, useSharedValue, withTiming } from "react-native-reanimated";
5
5
  import { useSafeAreaInsets } from "react-native-safe-area-context";
6
6
  import { useTheme } from "@react-navigation/native";
7
7
  import React from "react";
8
- import { useProviderContext, useSheetAnimationContext, useSheetIDContext, useSheetRef } from "./provider";
8
+ import { useProviderContext, useSheetAnimationContext, useSheetIDContext, useSheetRef, useStackBehaviorContext } from "./provider";
9
9
  import { PrivateManager } from "./manager";
10
10
  import { eventManager } from "./events";
11
11
  const useSheetManager = ({
@@ -14,27 +14,27 @@ const useSheetManager = ({
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,
@@ -46,34 +46,51 @@ const BottomSheetComponent = /*#__PURE__*/React.forwardRef(({
46
46
  enableDynamicSizing = false,
47
47
  handleIndicatorStyle,
48
48
  iosModalSheetTypeOfAnimation: pageAnimation,
49
+ animatedIndex: defaultAnimatedIndex,
49
50
  backgroundStyle,
51
+ onAnimate,
50
52
  handleStyle,
53
+ style,
51
54
  clickThrough,
52
- fullScreen,
53
55
  opacity,
54
56
  ...props
55
57
  }, ref) => {
56
58
  const currentSheetRef = useSheetRef();
57
59
  const currentCtx = useProviderContext();
60
+ const stackContext = useStackBehaviorContext();
58
61
  const {
59
62
  isFullScreen,
60
- iosModalSheetTypeOfAnimation
63
+ iosModalSheetTypeOfAnimation,
64
+ duration
61
65
  } = useSheetAnimationContext();
62
66
  const animatedIndex = useSharedValue(0);
67
+ const previousIndex = useSharedValue(-1);
68
+ const [currentStackBehavior, setCurrentStackBehavior] = React.useState(stackBehavior);
69
+ const isPushed = currentStackBehavior === "push";
63
70
  const {
64
71
  colors
65
72
  } = useTheme();
66
73
  const {
67
- top
74
+ bottom,
75
+ left,
76
+ right
68
77
  } = useSafeAreaInsets();
69
78
  const themeBackgroundStyle = React.useMemo(() => ({
70
- backgroundColor: colors.card
79
+ borderCurve: "continuous",
80
+ backgroundColor: colors.card,
81
+ borderTopLeftRadius: 20,
82
+ borderTopRightRadius: 20
71
83
  }), [colors.card]);
72
84
  const themeHandleIndicatorStyle = React.useMemo(() => ({
73
85
  backgroundColor: colors.border,
74
86
  height: 5,
75
87
  width: 50
76
88
  }), [colors.border]);
89
+ const defaultStyle = React.useMemo(() => ({
90
+ paddingBottom: bottom,
91
+ paddingLeft: left,
92
+ paddingRight: right
93
+ }), [bottom, left, right]);
77
94
  const valueRef = React.useRef(null);
78
95
  const bottomSheetRef = React.useRef(null);
79
96
  const hardwareBackPressEvent = React.useRef(null);
@@ -81,8 +98,12 @@ const BottomSheetComponent = /*#__PURE__*/React.forwardRef(({
81
98
  const sheetId = props.id || id;
82
99
  useSheetManager({
83
100
  id: sheetId,
84
- onHide: (data, dismiss) => hideSheet(data, true, dismiss),
85
- onBeforeShow: data => {
101
+ onHide: (data, dismiss, behavior) => {
102
+ if (behavior) setCurrentStackBehavior(behavior);
103
+ hideSheet(data, true, dismiss);
104
+ },
105
+ onBeforeShow: (data, behavior) => {
106
+ if (behavior) setCurrentStackBehavior(behavior);
86
107
  onBeforeShow?.(data);
87
108
  valueRef.current = undefined;
88
109
  currentSheetRef.current = getInstance();
@@ -96,49 +117,70 @@ const BottomSheetComponent = /*#__PURE__*/React.forwardRef(({
96
117
  }
97
118
  }
98
119
  });
99
- useAnimatedReaction(() => {
100
- if (!!iosModalSheetTypeOfAnimation || !!pageAnimation) {
101
- isFullScreen.value = 0;
102
- }
103
- return animatedIndex.value;
104
- }, index => {
120
+ useAnimatedReaction(() => animatedIndex.value, index => {
105
121
  "worklet";
106
-
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]);
122
+ if (defaultAnimatedIndex) {
123
+ defaultAnimatedIndex.set(index);
124
+ }
125
+ if (!iosModalSheetTypeOfAnimation && !pageAnimation) {
126
+ if (isFullScreen.value > 0) isFullScreen.set(0);
127
+ previousIndex.set(index);
128
+ return;
111
129
  }
112
- }, [snapPoints]);
113
- const hideSheet = React.useCallback((data, isSheetManagerOrRef, dismiss) => {
130
+ if (isFullScreen.value < 0) {
131
+ isFullScreen.set(0);
132
+ }
133
+ const isClosing = index < 0 || previousIndex.value >= 0 && index < previousIndex.value - 0.05;
134
+ previousIndex.set(index);
135
+ if (isClosing) {
136
+ if (isFullScreen.value > 0.01) {
137
+ isFullScreen.set(withTiming(0, {
138
+ duration: duration * 0.85,
139
+ easing: Easing.bezier(0.25, 0.1, 0.25, 1)
140
+ }));
141
+ }
142
+ return;
143
+ }
144
+ const points = ["%90", "90%"];
145
+ const fullScreenIndex = snapPoints instanceof Array ? snapPoints.findIndex(p => points.includes(p)) : snapPoints?.value?.findIndex(p => points.includes(p)) || -1;
146
+ if (index >= fullScreenIndex - 0.5 && index <= fullScreenIndex + 0.5) {
147
+ isFullScreen.set(1);
148
+ } else if (index >= 0) {
149
+ isFullScreen.set(0);
150
+ }
151
+ }, [snapPoints, iosModalSheetTypeOfAnimation, pageAnimation, duration]);
152
+ const hideSheet = React.useCallback((data, fromManager, dismiss) => {
114
153
  let value = data ?? valueRef.current;
115
- if (!dismiss || stackBehavior !== "push") {
116
- hardwareBackPressEvent.current?.remove();
154
+ hardwareBackPressEvent.current?.remove();
155
+ const closeValue = onClose?.(value);
156
+ if (closeValue !== undefined) value = closeValue;
157
+ if (dismiss && currentStackBehavior === "push") {
158
+ if (fromManager) valueRef.current = data;
159
+ return;
160
+ }
161
+ if (currentStackBehavior !== "replace" || !dismiss) {
117
162
  bottomSheetRef.current?.close();
118
- const closeValue = onClose?.(value);
119
- if (undefined !== closeValue) value = closeValue;
120
163
  }
121
164
  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);
165
+ const hasHistory = PrivateManager.history.length > 0;
166
+ const shouldRestorePrevious = currentStackBehavior !== "replace";
167
+ eventManager.publish(`onclose_${sheetId}`, value, currentCtx, hasHistory || !!dismiss, currentStackBehavior);
168
+ if (shouldRestorePrevious) {
169
+ if (dismiss) {
170
+ PrivateManager.history.push({
171
+ id: sheetId,
172
+ context: currentCtx,
173
+ behavior: currentStackBehavior
174
+ });
175
+ } else if (hasHistory) {
176
+ const prev = PrivateManager.history.pop();
177
+ eventManager.publish(`show_wrap_${prev.id}`, undefined, prev.context, true, prev.behavior);
178
+ }
138
179
  }
180
+ PrivateManager.remove(sheetId, currentCtx);
139
181
  }
140
- if (isSheetManagerOrRef) valueRef.current = data;
141
- }, [sheetId, currentCtx, onClose]);
182
+ if (fromManager) valueRef.current = data;
183
+ }, [sheetId, currentCtx, onClose, currentStackBehavior]);
142
184
  const getInstance = React.useCallback(() => ({
143
185
  close(options = {}) {
144
186
  valueRef.current = options.value;
@@ -175,28 +217,48 @@ const BottomSheetComponent = /*#__PURE__*/React.forwardRef(({
175
217
  return () => hardwareBackPressEvent.current?.remove();
176
218
  }, [hardwareBackPressToClose]);
177
219
  React.useImperativeHandle(ref, getInstance, [getInstance]);
220
+ const zIndex = React.useMemo(() => {
221
+ if (!sheetId) return 0;
222
+ if (isPushed) {
223
+ return PrivateManager.zIndex(sheetId, currentCtx);
224
+ }
225
+ return 0;
226
+ }, [sheetId, isPushed, currentCtx]);
227
+ const backdropOpacity = React.useMemo(() => {
228
+ if (isPushed && stackContext.previousSheetId) {
229
+ return (opacity || 0.45) * 0.6;
230
+ }
231
+ return opacity || 0.45;
232
+ }, [isPushed, stackContext.previousSheetId, opacity]);
178
233
  return /*#__PURE__*/React.createElement(View, {
179
234
  pointerEvents: "box-none",
180
235
  style: [StyleSheet.absoluteFill, {
181
- zIndex: sheetId && stackBehavior === "push" ? PrivateManager.zIndex(sheetId, currentCtx) : 0
236
+ zIndex
182
237
  }]
183
238
  }, /*#__PURE__*/React.createElement(RNBottomSheet, _extends({
184
239
  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({
240
+ backdropComponent: backdropProps => /*#__PURE__*/React.createElement(BottomSheetBackdrop, _extends({
190
241
  enableTouchThrough: !!clickThrough,
191
- opacity: opacity || 0.45,
242
+ opacity: backdropOpacity,
192
243
  disappearsOnIndex: -1,
193
244
  appearsOnIndex: 0
194
- }, props))
245
+ }, backdropProps)),
246
+ onAnimate: (from, to, ...args) => {
247
+ const snapPointLen = Array.isArray(snapPoints) ? snapPoints.length : snapPoints?.value?.length ?? 0;
248
+ if (to >= isFullScreen.value && to > snapPointLen - 1) {
249
+ isFullScreen.set(0);
250
+ } else if (to > 0 && to === previousIndex.value && isFullScreen.value === 0) {
251
+ isFullScreen.set(1);
252
+ }
253
+ onAnimate?.(from, to, ...args);
254
+ },
255
+ topInset: 0,
256
+ bottomInset: 0
195
257
  }, props, {
196
258
  ref: bottomSheetRef,
197
259
  onClose: hideSheet,
198
260
  animatedIndex: animatedIndex,
199
- topInset: fullScreen ? 0 : top + (iosModalSheetTypeOfAnimation || pageAnimation ? 20 : 5),
261
+ style: [defaultStyle, style],
200
262
  snapPoints: enableDynamicSizing ? undefined : snapPoints ?? ["66%"],
201
263
  handleIndicatorStyle: [themeHandleIndicatorStyle, handleIndicatorStyle],
202
264
  backgroundStyle: [themeBackgroundStyle, backgroundStyle],
@@ -215,19 +277,5 @@ BottomSheet.Footer = BottomSheetFooter;
215
277
  BottomSheet.FooterContainer = BottomSheetFooterContainer;
216
278
  BottomSheet.Backdrop = BottomSheetBackdrop;
217
279
  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
280
  export default BottomSheet;
233
281
  //# 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":";AAAA,OAAOA,aAAa,IAClBC,mBAAmB,EACnBC,mBAAmB,EACnBC,iBAAiB,EACjBC,0BAA0B,EAC1BC,iBAAiB,EAEjBC,qBAAqB,EACrBC,sBAAsB,EACtBC,oBAAoB,EACpBC,eAAe,EACfC,0BAA0B,QACrB,sBAAsB;AAC7B,SACEC,WAAW,EACXC,QAAQ,EACRC,UAAU,EACVC,IAAI,QAEC,cAAc;AACrB,SACEC,MAAM,EACNC,WAAW,EACXC,mBAAmB,EACnBC,cAAc,QACT,yBAAyB;AAChC,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,SAASC,QAAQ,QAAQ,0BAA0B;AACnD,OAAOC,KAAK,MAAM,OAAO;AAEzB,SACEC,kBAAkB,EAClBC,wBAAwB,EACxBC,iBAAiB,EACjBC,WAAW,QACN,YAAY;AAEnB,SAASC,cAAc,QAAQ,WAAW;AAC1C,SAASC,YAAY,QAAQ,UAAU;AAqBvC,MAAMC,eAAe,GAAGA,CAAC;EACvBC,EAAE;EACFC,MAAM;EACNC,YAAY;EACZC;AAMF,CAAC,KAAK;EACJ,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAGb,KAAK,CAACc,QAAQ,CAAC,KAAK,CAAC;EACnD,MAAMC,cAAc,GAAGd,kBAAkB,CAAC,CAAC;EAE3CD,KAAK,CAACgB,SAAS,CAAC,MAAM;IACpB,IAAI,CAACR,EAAE,EAAE,OAAOS,SAAS;IAEzB,MAAMC,aAAa,GAAG,CACpBZ,YAAY,CAACa,SAAS,CAAC,QAAQX,EAAE,EAAE,EAAE,CAACY,IAAS,EAAEC,OAAgB,KAAK;MACpE,IAAIN,cAAc,KAAKM,OAAO,IAAIT,OAAO,EAAE;MAC3CD,eAAe,GAAG,CAAC;MACnBD,YAAY,GAAGU,IAAI,CAAC;MACpBP,UAAU,CAAC,IAAI,CAAC;IAClB,CAAC,CAAC,EACFP,YAAY,CAACa,SAAS,CAAC,QAAQX,EAAE,EAAE,EAAE,CAACY,IAAS,EAAEC,OAAO,EAAEC,OAAiB,KAAK;MAC9E,IAAIP,cAAc,KAAKM,OAAO,EAAE;MAChCZ,MAAM,GAAGW,IAAI,EAAEE,OAAO,CAAC;IACzB,CAAC,CAAC,CACH;IACD,OAAO,MAAM;MACXJ,aAAa,CAACK,OAAO,CAAEC,CAAC,IAAKA,CAAC,EAAEC,WAAW,GAAG,CAAC,CAAC;IAClD,CAAC;EACH,CAAC,EAAE,CAACjB,EAAE,EAAEC,MAAM,EAAEC,YAAY,EAAEC,eAAe,EAAEI,cAAc,CAAC,CAAC;EAE/D,OAAO;IAAEH,OAAO;IAAEC;EAAW,CAAC;AAChC,CAAC;AAED,MAAMa,oBAAoB,gBAAG1B,KAAK,CAAC2B,UAAU,CAC3C,CACE;EACEC,QAAQ;EACRC,UAAU;EACVC,OAAO;EACPpB,YAAY;EACZqB,aAAa,GAAG,QAAQ;EACxBC,wBAAwB,GAAG,IAAI;EAC/BC,mBAAmB,GAAG,KAAK;EAC3BC,oBAAoB;EACpBC,4BAA4B,EAAEC,aAAa;EAC3CC,eAAe;EACfC,WAAW;EACXC,YAAY;EACZC,UAAU;EACVC,OAAO;EAEP,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAMC,eAAe,GAAGxC,WAAW,CAAC,CAAC;EACrC,MAAMyC,UAAU,GAAG5C,kBAAkB,CAAC,CAAC;EAEvC,MAAM;IAAE6C,YAAY;IAAEX;EAA6B,CAAC,GAAGjC,wBAAwB,CAAC,CAAC;EACjF,MAAM6C,aAAa,GAAGlD,cAAc,CAAC,CAAC,CAAC;EAEvC,MAAM;IAAEmD;EAAO,CAAC,GAAGjD,QAAQ,CAAC,CAAC;EAC7B,MAAM;IAAEkD;EAAI,CAAC,GAAGnD,iBAAiB,CAAC,CAAC;EACnC,MAAMoD,oBAAoB,GAAGlD,KAAK,CAACmD,OAAO,CACxC,OAAO;IAAEC,eAAe,EAAEJ,MAAM,CAACK;EAAK,CAAC,CAAC,EACxC,CAACL,MAAM,CAACK,IAAI,CACd,CAAC;EACD,MAAMC,yBAAyB,GAAGtD,KAAK,CAACmD,OAAO,CAC7C,OAAO;IACLC,eAAe,EAAEJ,MAAM,CAACO,MAAM;IAC9BC,MAAM,EAAE,CAAC;IACTC,KAAK,EAAE;EACT,CAAC,CAAC,EACF,CAACT,MAAM,CAACO,MAAM,CAChB,CAAC;EAED,MAAMG,QAAQ,GAAG1D,KAAK,CAAC2D,MAAM,CAAU,IAAI,CAAC;EAC5C,MAAMC,cAAc,GAAG5D,KAAK,CAAC2D,MAAM,CAAmB,IAAI,CAAC;EAC3D,MAAME,sBAAsB,GAAG7D,KAAK,CAAC2D,MAAM,CACzC,IACF,CAAoD;EAEpD,MAAMnD,EAAE,GAAGL,iBAAiB,CAAC,CAAC;EAC9B,MAAM2D,OAAO,GAAGpB,KAAK,CAAClC,EAAE,IAAIA,EAAE;EAC9BD,eAAe,CAAC;IACdC,EAAE,EAAEsD,OAAO;IACXrD,MAAM,EAAEA,CAACW,IAAI,EAAEE,OAAO,KAAKyC,SAAS,CAAC3C,IAAI,EAAE,IAAI,EAAEE,OAAO,CAAC;IACzDZ,YAAY,EAAGU,IAAI,IAAK;MACtBV,YAAY,GAAGU,IAAI,CAAC;MACpBsC,QAAQ,CAACM,OAAO,GAAG/C,SAAS;MAC5B2B,eAAe,CAACoB,OAAO,GAAGC,WAAW,CAAC,CAAC;IACzC,CAAC;IACDtD,eAAe,EAAEA,CAAA,KAAM;MACrB,IAAImD,OAAO,EAAE;QACXzD,cAAc,CAAC6D,GAAG,CAACJ,OAAO,EAAEjB,UAAU,CAAC;QACvCxC,cAAc,CAAC8D,WAAW,CAACL,OAAO,EAAEjB,UAAU,EAAE;UAC9CmB,OAAO,EAAEC,WAAW,CAAC;QACvB,CAAyC,CAAC;MAC5C;IACF;EACF,CAAC,CAAC;EAEFrE,mBAAmB,CACjB,MAAM;IACJ,IAAI,CAAC,CAACuC,4BAA4B,IAAI,CAAC,CAACC,aAAa,EAAE;MACrDU,YAAY,CAACsB,KAAK,GAAG,CAAC;IACxB;IACA,OAAOrB,aAAa,CAACqB,KAAK;EAC5B,CAAC,EACAC,KAAK,IAAK;IACT,SAAS;;IACT,MAAMC,MAA2B,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IACpD,MAAMC,eAAe,GAAG/B,UAAU,GAC9B,CAAC,CAAC,GACFX,UAAU,YAAY2C,KAAK,GACzB3C,UAAU,CAAC4C,SAAS,CAAEC,CAAC,IAAKJ,MAAM,CAACK,QAAQ,CAACD,CAAC,CAAC,CAAC,GAC/C7C,UAAU,EAAEuC,KAAK,EAAEK,SAAS,CAAEC,CAAC,IAAKJ,MAAM,CAACK,QAAQ,CAACD,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEnE,IACE,CAAC,CAAC,KAAKH,eAAe,KACrB,CAAC,CAACpC,4BAA4B,IAAI,CAAC,CAACC,aAAa,CAAC,EACnD;MACAU,YAAY,CAACsB,KAAK,GAAGzE,WAAW,CAC9B0E,KAAK,EACL,CAACE,eAAe,GAAG,CAAC,EAAEA,eAAe,CAAC,EACtC,CAAC,CAAC,EAAE,CAAC,CACP,CAAC;IACH;EACF,CAAC,EACD,CAAC1C,UAAU,CACb,CAAC;EAED,MAAMkC,SAAS,GAAG/D,KAAK,CAAC4E,WAAW,CACjC,CAACxD,IAAU,EAAEyD,mBAA6B,EAAEvD,OAAiB,KAAK;IAChE,IAAI8C,KAAK,GAAGhD,IAAI,IAAIsC,QAAQ,CAACM,OAAO;IAEpC,IAAI,CAAC1C,OAAO,IAAIS,aAAa,KAAK,MAAM,EAAE;MACxC8B,sBAAsB,CAACG,OAAO,EAAEc,MAAM,CAAC,CAAC;MACxClB,cAAc,CAACI,OAAO,EAAEe,KAAK,CAAC,CAAC;MAC/B,MAAMC,UAAU,GAAGlD,OAAO,GAAGsC,KAAK,CAAC;MACnC,IAAInD,SAAS,KAAK+D,UAAU,EAAEZ,KAAK,GAAGY,UAAU;IAClD;IAEA,IAAIlB,OAAO,EAAE;MACXzD,cAAc,CAACyE,MAAM,CAAChB,OAAO,EAAEjB,UAAU,CAAC;MAC1C,IAAIvB,OAAO,IAAIS,aAAa,KAAK,MAAM,EAAE;MAEzC,MAAMkD,OAAO,GAAG5E,cAAc,CAAC4E,OAAO,CAACC,MAAM,IAAI,CAAC;MAClD5E,YAAY,CAAC6E,OAAO,CAClB,WAAWrB,OAAO,EAAE,EACpBM,KAAK,EACLvB,UAAU,EACVoC,OAAO,IAAI3D,OACb,CAAC;MAED,IAAIS,aAAa,KAAK,SAAS,EAAE;MACjC,IAAIT,OAAO,EAAE;QACXjB,cAAc,CAAC4E,OAAO,CAACG,IAAI,CAAC;UAAE5E,EAAE,EAAEsD,OAAO;UAAEzC,OAAO,EAAEwB;QAAW,CAAC,CAAC;MACnE,CAAC,MAAM,IAAIoC,OAAO,EAAE;QAClB,MAAM;UAAEzE,EAAE;UAAEa;QAAQ,CAAC,GAAGhB,cAAc,CAAC4E,OAAO,CAACI,GAAG,CAAC,CAAE;QACrD/E,YAAY,CAAC6E,OAAO,CAAC,aAAa3E,EAAE,EAAE,EAAES,SAAS,EAAEI,OAAO,EAAE,IAAI,CAAC;MACnE;IACF;IACA,IAAIwD,mBAAmB,EAAEnB,QAAQ,CAACM,OAAO,GAAG5C,IAAI;EAClD,CAAC,EACD,CAAC0C,OAAO,EAAEjB,UAAU,EAAEf,OAAO,CAC/B,CAAC;EACD,MAAMmC,WAAW,GAAGjE,KAAK,CAAC4E,WAAW,CACnC,OAA4B;IAC1BG,KAAKA,CAACO,OAAO,GAAG,CAAC,CAAC,EAAQ;MACxB5B,QAAQ,CAACM,OAAO,GAAIsB,OAAO,CAA6BlB,KAAK;MAC7DR,cAAc,CAACI,OAAO,EAAEe,KAAK,CAACO,OAAO,EAAEC,gBAAgB,CAAC;IAC1D,CAAC;IACDC,MAAMA,CAACD,gBAAgB,EAAQ;MAC7B3B,cAAc,CAACI,OAAO,EAAEwB,MAAM,CAACD,gBAAgB,CAAC;IAClD,CAAC;IACDE,QAAQA,CAACF,gBAAgB,EAAQ;MAC/B3B,cAAc,CAACI,OAAO,EAAEyB,QAAQ,CAACF,gBAAgB,CAAC;IACpD,CAAC;IACDG,WAAWA,CAACrB,KAAa,EAAEkB,gBAAgB,EAAQ;MACjD3B,cAAc,CAACI,OAAO,EAAE0B,WAAW,CAACrB,KAAK,EAAEkB,gBAAgB,CAAC;IAC9D,CAAC;IACDI,cAAcA,CAACC,QAAQ,EAAEL,gBAAgB,EAAQ;MAC/C3B,cAAc,CAACI,OAAO,EAAE2B,cAAc,CAACC,QAAQ,EAAEL,gBAAgB,CAAC;IACpE;EACF,CAAC,CAAC,EACF,EACF,CAAC;EAEDvF,KAAK,CAACgB,SAAS,CAAC,MAAM;IACpB,IAAI8C,OAAO,EAAE;MACXzD,cAAc,CAAC8D,WAAW,CAACL,OAAO,EAAEjB,UAAU,EAAE;QAC9CmB,OAAO,EAAEC,WAAW,CAAC;MACvB,CAAyC,CAAC;IAC5C;IACArB,eAAe,CAACoB,OAAO,GAAGC,WAAW,CAAC,CAAC;EACzC,CAAC,EAAE,CAACpB,UAAU,EAAEoB,WAAW,EAAEH,OAAO,EAAElB,eAAe,CAAC,CAAC;EAEvD5C,KAAK,CAACgB,SAAS,CAAC,MAAM;IACpB,IAAIzB,QAAQ,CAACsG,EAAE,KAAK,SAAS,IAAI7D,wBAAwB,EAAE;MACzD6B,sBAAsB,CAACG,OAAO,GAAG1E,WAAW,CAACwG,gBAAgB,CAC3D,mBAAmB,EACnB,MAAM;QACJlC,cAAc,CAACI,OAAO,EAAEe,KAAK,CAAC,CAAC;QAC/B,OAAO,IAAI;MACb,CACF,CAAC;IACH;IAEA,OAAO,MAAMlB,sBAAsB,CAACG,OAAO,EAAEc,MAAM,CAAC,CAAC;EACvD,CAAC,EAAE,CAAC9C,wBAAwB,CAAC,CAAC;EAE9BhC,KAAK,CAAC+F,mBAAmB,CAACpD,GAAG,EAAEsB,WAAW,EAAE,CAACA,WAAW,CAAC,CAAC;EAE1D,oBACEjE,KAAA,CAAAgG,aAAA,CAACvG,IAAI;IACHwG,aAAa,EAAC,UAAU;IACxBC,KAAK,EAAE,CACL1G,UAAU,CAAC2G,YAAY,EACvB;MACEC,MAAM,EACJtC,OAAO,IAAI/B,aAAa,KAAK,MAAM,GAC/B1B,cAAc,CAAC+F,MAAM,CAACtC,OAAO,EAAEjB,UAAU,CAAC,GAC1C;IACR,CAAC;EACD,gBAEF7C,KAAA,CAAAgG,aAAA,CAACrH,aAAa,EAAA0H,QAAA;IACZpE,mBAAmB,EAAEA,mBAAoB;IACzCsD,gBAAgB,EAAE;MAAEe,QAAQ,EAAE,GAAG;MAAEC,MAAM,EAAE7G,MAAM,CAAC8G,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IAAE,CAAE;IAC/EC,iBAAiB,EAAG/D,KAAK,iBACvB1C,KAAA,CAAAgG,aAAA,CAACpH,mBAAmB,EAAAyH,QAAA;MAClBK,kBAAkB,EAAE,CAAC,CAACnE,YAAa;MACnCE,OAAO,EAAEA,OAAO,IAAI,IAAK;MACzBkE,iBAAiB,EAAE,CAAC,CAAE;MACtBC,cAAc,EAAE;IAAE,GACdlE,KAAK,CACV;EACD,GACEA,KAAK;IACTC,GAAG,EAAEiB,cAAe;IACpB9B,OAAO,EAAEiC,SAAU;IACnBhB,aAAa,EAAEA,aAAc;IAC7B8D,QAAQ,EACNrE,UAAU,GACN,CAAC,GACDS,GAAG,IAAId,4BAA4B,IAAIC,aAAa,GAAG,EAAE,GAAG,CAAC,CAClE;IACDP,UAAU,EAAEI,mBAAmB,GAAGhB,SAAS,GAAIY,UAAU,IAAI,CAAC,KAAK,CAAG;IACtEK,oBAAoB,EAAE,CAACoB,yBAAyB,EAAEpB,oBAAoB,CAAE;IACxEG,eAAe,EAAE,CAACa,oBAAoB,EAAEb,eAAe,CAAE;IACzDC,WAAW,EAAE,CAACY,oBAAoB,EAAEZ,WAAW;EAAE,IAEhDV,QACY,CACX,CAAC;AAEX,CACF,CAAC;AAED,MAAMkF,WAAW,gBAAG9G,KAAK,CAAC+G,IAAI,CAACrF,oBAAoB,CAAkB;AACrEoF,WAAW,CAACE,WAAW,GAAG,aAAa;AAEvCF,WAAW,CAACrH,IAAI,GAAGL,eAAe;AAClC0H,WAAW,CAACG,UAAU,GAAGhI,qBAAqB;AAC9C6H,WAAW,CAACI,QAAQ,GAAGrI,mBAAmB;AAC1CiI,WAAW,CAACK,WAAW,GAAGjI,sBAAsB;AAChD4H,WAAW,CAACM,eAAe,GAAG/H,0BAA0B;AACxDyH,WAAW,CAACO,MAAM,GAAGrI,iBAAiB;AACtC8H,WAAW,CAACQ,MAAM,GAAGxI,iBAAiB;AACtCgI,WAAW,CAACS,eAAe,GAAGxI,0BAA0B;AACxD+H,WAAW,CAACU,QAAQ,GAAG5I,mBAAmB;AAC1CkI,WAAW,CAACW,SAAS,GAAGtI,oBAAoB;AAE5C,IAAI;EACF,MAAM;IAAEuI;EAAW,CAAC,GAAGC,OAAO,CAAC,YAAY,CAAC;EAC5CD,UAAU,CAACZ,WAAW,EAAE;IACtBc,wBAAwB,EAAE,sBAAsB;IAChDC,mBAAmB,EAAE,iBAAiB;IACtCC,kBAAkB,EAAE,gBAAgB;IACpCC,eAAe,EAAE,aAAa;IAC9BC,SAAS,EAAE;EACb,CAAC,CAAC;AACJ,CAAC,CAAC,OAAOC,CAAC,EAAE;EACV;AAAA;AAGF,eAAenB,WAAW","ignoreList":[]}
1
+ {"version":3,"names":["RNBottomSheet","BottomSheetBackdrop","BottomSheetFlatList","BottomSheetFooter","BottomSheetFooterContainer","BottomSheetHandle","BottomSheetScrollView","BottomSheetSectionList","BottomSheetTextInput","BottomSheetView","BottomSheetVirtualizedList","BackHandler","Platform","StyleSheet","View","Easing","useAnimatedReaction","useSharedValue","withTiming","useSafeAreaInsets","useTheme","React","useProviderContext","useSheetAnimationContext","useSheetIDContext","useSheetRef","useStackBehaviorContext","PrivateManager","eventManager","useSheetManager","id","onHide","onBeforeShow","onContextUpdate","currentContext","hasShownRef","useRef","useEffect","undefined","subscriptions","subscribe","data","context","behavior","current","dismiss","forEach","s","unsubscribe","BottomSheetComponent","forwardRef","children","snapPoints","onClose","stackBehavior","hardwareBackPressToClose","enableDynamicSizing","handleIndicatorStyle","iosModalSheetTypeOfAnimation","pageAnimation","animatedIndex","defaultAnimatedIndex","backgroundStyle","onAnimate","handleStyle","style","clickThrough","opacity","props","ref","currentSheetRef","currentCtx","stackContext","isFullScreen","duration","previousIndex","currentStackBehavior","setCurrentStackBehavior","useState","isPushed","colors","bottom","left","right","themeBackgroundStyle","useMemo","borderCurve","backgroundColor","card","borderTopLeftRadius","borderTopRightRadius","themeHandleIndicatorStyle","border","height","width","defaultStyle","paddingBottom","paddingLeft","paddingRight","valueRef","bottomSheetRef","hardwareBackPressEvent","sheetId","hideSheet","getInstance","add","registerRef","value","index","set","isClosing","easing","bezier","points","fullScreenIndex","Array","findIndex","p","includes","useCallback","fromManager","remove","closeValue","close","hasHistory","history","length","shouldRestorePrevious","publish","push","prev","pop","options","animationConfigs","expand","collapse","snapToIndex","snapToPosition","position","OS","addEventListener","useImperativeHandle","zIndex","backdropOpacity","previousSheetId","createElement","pointerEvents","absoluteFill","_extends","backdropComponent","backdropProps","enableTouchThrough","disappearsOnIndex","appearsOnIndex","from","to","args","snapPointLen","isArray","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"}
@@ -2,5 +2,5 @@ export { default as BottomSheet } from "./sheet";
2
2
  export { SheetManager } 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, 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,MAAM,WAAW,CAAC;AACzC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,aAAa,EACb,eAAe,EACf,WAAW,EACX,UAAU,EACV,uBAAuB,EACvB,aAAa,GACd,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,21 @@ 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;
28
44
  };
29
45
  declare class _SheetManager {
30
46
  /**
@@ -46,12 +62,19 @@ declare class _SheetManager {
46
62
  * Provide `context` of the `SheetProvider` where you want to show the action sheet.
47
63
  */
48
64
  context?: string;
65
+ /**
66
+ * Stack behavior for this sheet.
67
+ * - `switch`: (default) Closes current sheet, shows new one
68
+ * - `replace`: Swaps content with crossfade animation
69
+ * - `push`: Stacks new sheet on top of current
70
+ */
71
+ stackBehavior?: StackBehavior;
49
72
  }): Promise<Sheets[SheetId]["returnValue"]>;
50
73
  /**
51
74
  * An async hide function. This is useful when you want to show one Sheet after closing another.
52
75
  *
53
76
  * @param id id of the Sheet to show
54
- * @param data
77
+ * @param options
55
78
  */
56
79
  hide<SheetId extends keyof Sheets>(id: SheetId | (string & {}), options?: {
57
80
  /**
@@ -69,6 +92,33 @@ declare class _SheetManager {
69
92
  * @param id Hide all sheets for the specific id.
70
93
  */
71
94
  hideAll<SheetId extends keyof Sheets>(id?: SheetId | (string & {})): void;
95
+ /**
96
+ * Replace the current sheet with a new one using crossfade animation.
97
+ * This is a convenience method for show() with stackBehavior: 'replace'.
98
+ */
99
+ replace<SheetId extends keyof Sheets>(id: SheetId | (string & {}), options?: {
100
+ payload?: Sheets[SheetId]["payload"];
101
+ onClose?: (data: Sheets[SheetId]["returnValue"] | undefined) => void;
102
+ context?: string;
103
+ }): Promise<Sheets[SheetId]["returnValue"]>;
104
+ /**
105
+ * Push a new sheet on top of the current one, creating a stack.
106
+ * This is a convenience method for show() with stackBehavior: 'push'.
107
+ */
108
+ push<SheetId extends keyof Sheets>(id: SheetId | (string & {}), options?: {
109
+ payload?: Sheets[SheetId]["payload"];
110
+ onClose?: (data: Sheets[SheetId]["returnValue"] | undefined) => void;
111
+ context?: string;
112
+ }): Promise<Sheets[SheetId]["returnValue"]>;
113
+ /**
114
+ * Pop the top sheet from the stack and restore the previous one.
115
+ * Only works when sheets were opened with stackBehavior: 'push'.
116
+ */
117
+ pop(): void;
118
+ /**
119
+ * Check if a specific sheet is currently visible.
120
+ */
121
+ isVisible<SheetId extends keyof Sheets>(id: SheetId | (string & {}), context?: string): boolean;
72
122
  }
73
123
  /**
74
124
  * SheetManager is used to imperatively show/hide any sheet with a unique id prop.
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIlC,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAUtD,eAAO,MAAM,cAAc;aAER;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE;sBAE9B;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE;sBAoB3C,MAAM,WACD,MAAM,YACL,SAAS,CAAC,mBAAmB,CAAC;IAO5C;;;;;;OAMG;UACG,OAAO,SAAS,MAAM,MAAM,MAC1B,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,YACjB,MAAM,KACjB,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;cAchC,MAAM,WAAW,MAAM;iBAMpB,MAAM,WAAW,MAAM;iBAMvB,MAAM,YAAW,MAAM,KAAc,MAAM;;;;;CAY3D,CAAC;AAEF,cAAM,aAAa;IACf;;;;;OAKG;IACG,IAAI,CAAC,OAAO,SAAS,MAAM,MAAM,EACnC,EAAE,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAC3B,OAAO,CAAC,EAAE;QACN;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC;QAErC;;WAEG;QACH,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,GAAG,SAAS,KAAK,IAAI,CAAC;QAErE;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB,GACF,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC;IAiC1C;;;;;OAKG;IACG,IAAI,CAAC,OAAO,SAAS,MAAM,MAAM,EACnC,EAAE,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAC3B,OAAO,CAAC,EAAE;QACN;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC;QACzC;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB,GACF,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC;IAiC1C;;;;OAIG;IACH,OAAO,CAAC,OAAO,SAAS,MAAM,MAAM,EAAE,EAAE,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;CAMrE;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,eAAsB,CAAC"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/manager.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import React from "react";
2
1
  import { SharedValue } from "react-native-reanimated";
3
- import { BottomSheetInstance, SheetPayload, Sheets } from "./types";
2
+ import React from "react";
3
+ import { BottomSheetInstance, SheetPayload, Sheets, StackBehavior } from "./types";
4
4
  export declare const providerRegistryStack: string[];
5
5
  /**
6
6
  * An object that holds all the sheet components against their ids.
@@ -15,6 +15,14 @@ export interface SheetProps<SheetId extends keyof Sheets = never> {
15
15
  payload?: Sheets[SheetId]["payload"];
16
16
  }
17
17
  export declare function registerSheet<SheetId extends keyof Sheets = never>(id: SheetId | (string & {}), Sheet: React.ElementType, ...contexts: string[]): void;
18
+ /**
19
+ * Animation configuration for iOS modal sheet style animations.
20
+ * @deprecated Use duration prop directly instead
21
+ */
22
+ export interface ModalSheetAnimationConfig {
23
+ /** Duration of the animation in milliseconds */
24
+ duration: number;
25
+ }
18
26
  /**
19
27
  * The SheetProvider makes available the sheets in a given context. The default context is
20
28
  * `global`. However if you want to render a Sheet within another sheet or if you want to render
@@ -39,6 +47,11 @@ export declare function SheetProvider({ iosModalSheetTypeOfAnimation, context, d
39
47
  iosModalSheetTypeOfAnimation?: boolean;
40
48
  }>): React.JSX.Element;
41
49
  export declare const SheetRefContext: React.Context<React.RefObject<BottomSheetInstance<never> | null>>;
50
+ interface StackBehaviorContextValue {
51
+ behavior: StackBehavior;
52
+ isTransitioning: boolean;
53
+ previousSheetId: string | null;
54
+ }
42
55
  /**
43
56
  * Get id of the current context.
44
57
  */
@@ -53,7 +66,12 @@ export declare const useSheetIDContext: () => string | undefined;
53
66
  export declare const useSheetAnimationContext: () => {
54
67
  iosModalSheetTypeOfAnimation: boolean;
55
68
  isFullScreen: SharedValue<number>;
69
+ duration: number;
56
70
  };
71
+ /**
72
+ * Get stack behavior context for the current sheet.
73
+ */
74
+ export declare const useStackBehaviorContext: () => StackBehaviorContextValue;
57
75
  /**
58
76
  * Get the current Sheet's internal ref.
59
77
  */
@@ -65,5 +83,6 @@ export declare function useSheetPayload<SheetId extends keyof Sheets = never>():
65
83
  /**
66
84
  * Listen to sheet events.
67
85
  */
68
- export declare function useOnSheet<SheetId extends keyof Sheets = never>(id: SheetId | (string & {}), type: "show" | "hide" | "onclose", listener: (payload: SheetPayload<SheetId>, context: string, ...args: any[]) => void): void;
86
+ export declare function useOnSheet<SheetId extends keyof Sheets = never>(id: SheetId | (string & {}), type: "show" | "hide" | "onclose", listener: (payload: SheetPayload<SheetId>, context: string, ...args: unknown[]) => void): void;
87
+ export {};
69
88
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/provider.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAiB,EAIf,WAAW,EAMZ,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGpE,eAAO,MAAM,qBAAqB,EAAE,MAAM,EAAO,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE;IAC3B,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAA;KAAE,CAAC;CAGxD,CAAC;AAEF,MAAM,WAAW,UAAU,CAAC,OAAO,SAAS,MAAM,MAAM,GAAG,KAAK;IAC9D,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC;CACtC;AAGD,wBAAgB,aAAa,CAAC,OAAO,SAAS,MAAM,MAAM,GAAG,KAAK,EAChE,EAAE,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAC3B,KAAK,EAAE,KAAK,CAAC,WAAW,EACxB,GAAG,QAAQ,EAAE,MAAM,EAAE,QAWtB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,CAAC,EAC5B,4BAAoC,EACpC,OAAkB,EAClB,QAAc,EACd,QAAQ,GACT,EAAE,KAAK,CAAC,iBAAiB,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACxC,CAAC,qBA+ED;AAQD,eAAO,MAAM,eAAe,mEAEhB,CAAC;AAIb;;GAEG;AACH,eAAO,MAAM,kBAAkB,cAA0C,CAAC;AAC1E;;GAEG;AACH,eAAO,MAAM,iBAAiB,0BAAyC,CAAC;AACxE;;GAEG;AACH,eAAO,MAAM,wBAAwB;kCArBL,OAAO;kBACvB,WAAW,CAAC,MAAM,CAAC;CAoBkD,CAAC;AACtF;;GAEG;AACH,eAAO,MAAM,WAAW,GACtB,OAAO,SAAS,MAAM,MAAM,GAAG,KAAK,OACjC,KAAK,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAGrD,CAAC;AAEJ;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,SAAS,MAAM,MAAM,GAAG,KAAK,KAClB,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAC3E;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,SAAS,MAAM,MAAM,GAAG,KAAK,EAC7D,EAAE,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAC3B,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EACjC,QAAQ,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,QAMpF"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/provider.tsx"],"names":[],"mappings":"AAAA,OAAiB,EAIf,WAAW,EAKZ,MAAM,yBAAyB,CAAC;AAIjC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGnF,eAAO,MAAM,qBAAqB,EAAE,MAAM,EAAO,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE;IAC3B,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAA;KAAE,CAAC;CAGxD,CAAC;AAEF,MAAM,WAAW,UAAU,CAAC,OAAO,SAAS,MAAM,MAAM,GAAG,KAAK;IAC9D,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC;CACtC;AAGD,wBAAgB,aAAa,CAAC,OAAO,SAAS,MAAM,MAAM,GAAG,KAAK,EAChE,EAAE,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAC3B,KAAK,EAAE,KAAK,CAAC,WAAW,EACxB,GAAG,QAAQ,EAAE,MAAM,EAAE,QAWtB;AAED;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,CAAC,EAC5B,4BAAoC,EACpC,OAAkB,EAClB,QAAc,EACd,QAAQ,GACT,EAAE,KAAK,CAAC,iBAAiB,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACxC,CAAC,qBA2ED;AAaD,eAAO,MAAM,eAAe,mEAEwB,CAAC;AAKrD,UAAU,yBAAyB;IACjC,QAAQ,EAAE,aAAa,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAQD;;GAEG;AACH,eAAO,MAAM,kBAAkB,cAA0C,CAAC;AAC1E;;GAEG;AACH,eAAO,MAAM,iBAAiB,0BAAyC,CAAC;AACxE;;GAEG;AACH,eAAO,MAAM,wBAAwB;kCAvCL,OAAO;kBACvB,WAAW,CAAC,MAAM,CAAC;cACvB,MAAM;CAqCmE,CAAC;AACtF;;GAEG;AACH,eAAO,MAAM,uBAAuB,iCAA+C,CAAC;AACpF;;GAEG;AACH,eAAO,MAAM,WAAW,GACtB,OAAO,SAAS,MAAM,MAAM,GAAG,KAAK,OACjC,KAAK,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAGrD,CAAC;AAEJ;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,SAAS,MAAM,MAAM,GAAG,KAAK,KAClB,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAC3E;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,SAAS,MAAM,MAAM,GAAG,KAAK,EAC7D,EAAE,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAC3B,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EACjC,QAAQ,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,QAMxF"}