@lodev09/react-native-true-sheet 3.1.0-beta.9 → 3.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/android/src/main/java/com/lodev09/truesheet/TrueSheetModule.kt +8 -2
  2. package/android/src/main/java/com/lodev09/truesheet/TrueSheetView.kt +18 -2
  3. package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewController.kt +103 -121
  4. package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewManager.kt +7 -2
  5. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetDialogObserver.kt +2 -2
  6. package/android/src/main/java/com/lodev09/truesheet/utils/ScreenUtils.kt +64 -81
  7. package/android/src/main/res/values/styles.xml +1 -0
  8. package/ios/TrueSheetModule.mm +17 -2
  9. package/ios/TrueSheetView.h +2 -0
  10. package/ios/TrueSheetView.mm +32 -3
  11. package/ios/TrueSheetViewController.h +2 -0
  12. package/ios/TrueSheetViewController.mm +45 -18
  13. package/lib/module/TrueSheet.js +3 -1
  14. package/lib/module/TrueSheet.js.map +1 -1
  15. package/lib/module/fabric/TrueSheetViewNativeComponent.ts +5 -2
  16. package/lib/module/navigation/TrueSheetRouter.js +119 -0
  17. package/lib/module/navigation/TrueSheetRouter.js.map +1 -0
  18. package/lib/module/navigation/TrueSheetView.js +169 -0
  19. package/lib/module/navigation/TrueSheetView.js.map +1 -0
  20. package/lib/module/navigation/createTrueSheetNavigator.js +59 -0
  21. package/lib/module/navigation/createTrueSheetNavigator.js.map +1 -0
  22. package/lib/module/navigation/index.js +6 -0
  23. package/lib/module/navigation/index.js.map +1 -0
  24. package/lib/module/navigation/types.js +4 -0
  25. package/lib/module/navigation/types.js.map +1 -0
  26. package/lib/module/navigation/useTrueSheetNavigation.js +26 -0
  27. package/lib/module/navigation/useTrueSheetNavigation.js.map +1 -0
  28. package/lib/typescript/src/TrueSheet.d.ts.map +1 -1
  29. package/lib/typescript/src/TrueSheet.types.d.ts +24 -0
  30. package/lib/typescript/src/TrueSheet.types.d.ts.map +1 -1
  31. package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts +3 -2
  32. package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts.map +1 -1
  33. package/lib/typescript/src/navigation/TrueSheetRouter.d.ts +57 -0
  34. package/lib/typescript/src/navigation/TrueSheetRouter.d.ts.map +1 -0
  35. package/lib/typescript/src/navigation/TrueSheetView.d.ts +10 -0
  36. package/lib/typescript/src/navigation/TrueSheetView.d.ts.map +1 -0
  37. package/lib/typescript/src/navigation/createTrueSheetNavigator.d.ts +35 -0
  38. package/lib/typescript/src/navigation/createTrueSheetNavigator.d.ts.map +1 -0
  39. package/lib/typescript/src/navigation/index.d.ts +6 -0
  40. package/lib/typescript/src/navigation/index.d.ts.map +1 -0
  41. package/lib/typescript/src/navigation/types.d.ts +125 -0
  42. package/lib/typescript/src/navigation/types.d.ts.map +1 -0
  43. package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts +23 -0
  44. package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts.map +1 -0
  45. package/package.json +12 -1
  46. package/src/TrueSheet.tsx +3 -1
  47. package/src/TrueSheet.types.ts +26 -0
  48. package/src/fabric/TrueSheetViewNativeComponent.ts +5 -2
  49. package/src/navigation/TrueSheetRouter.ts +172 -0
  50. package/src/navigation/TrueSheetView.tsx +271 -0
  51. package/src/navigation/createTrueSheetNavigator.tsx +89 -0
  52. package/src/navigation/index.ts +14 -0
  53. package/src/navigation/types.ts +176 -0
  54. package/src/navigation/useTrueSheetNavigation.ts +28 -0
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+
3
+ import { nanoid } from 'nanoid/non-secure';
4
+ import { StackRouter, StackActions } from '@react-navigation/native';
5
+ export const TrueSheetActions = {
6
+ ...StackActions,
7
+ resize(index) {
8
+ return {
9
+ type: 'RESIZE',
10
+ index
11
+ };
12
+ },
13
+ dismiss() {
14
+ return {
15
+ type: 'DISMISS'
16
+ };
17
+ },
18
+ remove() {
19
+ return {
20
+ type: 'REMOVE'
21
+ };
22
+ }
23
+ };
24
+ export function TrueSheetRouter(routerOptions) {
25
+ const baseRouter = StackRouter(routerOptions);
26
+ return {
27
+ ...baseRouter,
28
+ type: 'true-sheet',
29
+ getInitialState(options) {
30
+ const state = baseRouter.getInitialState(options);
31
+ return {
32
+ ...state,
33
+ stale: false,
34
+ type: 'true-sheet',
35
+ key: `true-sheet-${nanoid()}`
36
+ };
37
+ },
38
+ getStateForAction(state, action, options) {
39
+ switch (action.type) {
40
+ case 'RESIZE':
41
+ {
42
+ const routeIndex = action.target === state.key && action.source ? state.routes.findIndex(r => r.key === action.source) : state.index;
43
+ return {
44
+ ...state,
45
+ routes: state.routes.map((route, i) => i === routeIndex ? {
46
+ ...route,
47
+ resizeIndex: action.index,
48
+ resizeKey: (route.resizeKey ?? 0) + 1
49
+ } : route)
50
+ };
51
+ }
52
+ case 'GO_BACK':
53
+ case 'POP':
54
+ case 'DISMISS':
55
+ {
56
+ // Only base screen remains - let parent navigator handle it
57
+ if (state.routes.length <= 1) {
58
+ return null;
59
+ }
60
+
61
+ // Find the route to dismiss
62
+ const routeIndex = action.target === state.key && 'source' in action && action.source ? state.routes.findIndex(r => r.key === action.source) : state.index;
63
+
64
+ // Base screen - let parent navigator handle it
65
+ if (routeIndex === 0) {
66
+ return null;
67
+ }
68
+
69
+ // Mark the route as closing instead of removing it
70
+ return {
71
+ ...state,
72
+ routes: state.routes.map((route, i) => i === routeIndex ? {
73
+ ...route,
74
+ closing: true
75
+ } : route)
76
+ };
77
+ }
78
+ case 'REMOVE':
79
+ {
80
+ // Actually remove the closing route
81
+ const routeKey = action.source;
82
+ const routeIndex = routeKey ? state.routes.findIndex(r => r.key === routeKey) : state.routes.findIndex(r => r.closing);
83
+ if (routeIndex === -1) {
84
+ return state;
85
+ }
86
+ const routes = state.routes.filter((_, i) => i !== routeIndex);
87
+ return {
88
+ ...state,
89
+ index: Math.min(state.index, routes.length - 1),
90
+ routes
91
+ };
92
+ }
93
+ default:
94
+ return baseRouter.getStateForAction(state, action, options);
95
+ }
96
+ },
97
+ getRehydratedState(partialState, {
98
+ routeNames,
99
+ routeParamList,
100
+ routeGetIdList
101
+ }) {
102
+ if (partialState.stale === false) {
103
+ return partialState;
104
+ }
105
+ const state = baseRouter.getRehydratedState(partialState, {
106
+ routeNames,
107
+ routeParamList,
108
+ routeGetIdList
109
+ });
110
+ return {
111
+ ...state,
112
+ type: 'true-sheet',
113
+ key: `true-sheet-${nanoid()}`
114
+ };
115
+ },
116
+ actionCreators: TrueSheetActions
117
+ };
118
+ }
119
+ //# sourceMappingURL=TrueSheetRouter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["nanoid","StackRouter","StackActions","TrueSheetActions","resize","index","type","dismiss","remove","TrueSheetRouter","routerOptions","baseRouter","getInitialState","options","state","stale","key","getStateForAction","action","routeIndex","target","source","routes","findIndex","r","map","route","i","resizeIndex","resizeKey","length","closing","routeKey","filter","_","Math","min","getRehydratedState","partialState","routeNames","routeParamList","routeGetIdList","actionCreators"],"sourceRoot":"../../../src","sources":["navigation/TrueSheetRouter.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,169 @@
1
+ "use strict";
2
+
3
+ import React, { useCallback, useEffect, useRef } from 'react';
4
+ import { TrueSheet } from "../TrueSheet.js";
5
+ import { TrueSheetActions } from "./TrueSheetRouter.js";
6
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
7
+ function TrueSheetScreen({
8
+ detentIndex,
9
+ resizeKey,
10
+ navigation,
11
+ emit,
12
+ routeKey,
13
+ closing,
14
+ detents,
15
+ children,
16
+ ...sheetProps
17
+ }) {
18
+ const ref = useRef(null);
19
+ const isDismissedRef = useRef(false);
20
+ const isFirstRenderRef = useRef(true);
21
+ // Capture initial detent index only once
22
+ const initialDetentIndexRef = useRef(detentIndex);
23
+
24
+ // Handle closing state change - dismiss the sheet and wait for animation
25
+ useEffect(() => {
26
+ if (closing && !isDismissedRef.current) {
27
+ isDismissedRef.current = true;
28
+ (async () => {
29
+ await ref.current?.dismiss();
30
+ navigation.dispatch({
31
+ ...TrueSheetActions.remove(),
32
+ source: routeKey
33
+ });
34
+ })();
35
+ } else if (closing && isDismissedRef.current) {
36
+ // Sheet was already dismissed by user swipe, just remove
37
+ navigation.dispatch({
38
+ ...TrueSheetActions.remove(),
39
+ source: routeKey
40
+ });
41
+ }
42
+ }, [closing, navigation, routeKey]);
43
+
44
+ // Handle resize - resizeKey ensures effect runs even when resizing to same index
45
+ useEffect(() => {
46
+ // Skip first render - initialDetentIndex handles initial presentation
47
+ if (isFirstRenderRef.current) {
48
+ isFirstRenderRef.current = false;
49
+ return;
50
+ }
51
+ ref.current?.resize(detentIndex);
52
+ }, [detentIndex, resizeKey]);
53
+ const emitEvent = useCallback((type, data) => {
54
+ emit({
55
+ type,
56
+ target: routeKey,
57
+ data
58
+ });
59
+ }, [emit, routeKey]);
60
+ const onWillPresent = useCallback(e => {
61
+ emitEvent('sheetWillPresent', e.nativeEvent);
62
+ }, [emitEvent]);
63
+ const onDidPresent = useCallback(e => {
64
+ emitEvent('sheetDidPresent', e.nativeEvent);
65
+ }, [emitEvent]);
66
+ const onWillDismiss = useCallback(_e => {
67
+ emitEvent('sheetWillDismiss', undefined);
68
+ }, [emitEvent]);
69
+ const onDidDismiss = useCallback(() => {
70
+ emitEvent('sheetDidDismiss', undefined);
71
+ // User dismissed the sheet by swiping down
72
+ if (!isDismissedRef.current) {
73
+ isDismissedRef.current = true;
74
+ navigation.goBack();
75
+ }
76
+ }, [emitEvent, navigation]);
77
+ const onDetentChange = useCallback(e => {
78
+ emitEvent('sheetDetentChange', e.nativeEvent);
79
+ }, [emitEvent]);
80
+ const onDragBegin = useCallback(e => {
81
+ emitEvent('sheetDragBegin', e.nativeEvent);
82
+ }, [emitEvent]);
83
+ const onDragChange = useCallback(e => {
84
+ emitEvent('sheetDragChange', e.nativeEvent);
85
+ }, [emitEvent]);
86
+ const onDragEnd = useCallback(e => {
87
+ emitEvent('sheetDragEnd', e.nativeEvent);
88
+ }, [emitEvent]);
89
+ const onPositionChange = useCallback(e => {
90
+ emitEvent('sheetPositionChange', e.nativeEvent);
91
+ }, [emitEvent]);
92
+ const onWillFocus = useCallback(_e => {
93
+ emitEvent('sheetWillFocus', undefined);
94
+ }, [emitEvent]);
95
+ const onDidFocus = useCallback(_e => {
96
+ emitEvent('sheetDidFocus', undefined);
97
+ }, [emitEvent]);
98
+ const onWillBlur = useCallback(_e => {
99
+ emitEvent('sheetWillBlur', undefined);
100
+ }, [emitEvent]);
101
+ const onDidBlur = useCallback(_e => {
102
+ emitEvent('sheetDidBlur', undefined);
103
+ }, [emitEvent]);
104
+ return /*#__PURE__*/_jsx(TrueSheet, {
105
+ ref: ref,
106
+ name: `navigation-sheet-${routeKey}`,
107
+ initialDetentIndex: initialDetentIndexRef.current,
108
+ detents: detents,
109
+ onWillPresent: onWillPresent,
110
+ onDidPresent: onDidPresent,
111
+ onWillDismiss: onWillDismiss,
112
+ onDidDismiss: onDidDismiss,
113
+ onDetentChange: onDetentChange,
114
+ onDragBegin: onDragBegin,
115
+ onDragChange: onDragChange,
116
+ onDragEnd: onDragEnd,
117
+ onPositionChange: onPositionChange,
118
+ onWillFocus: onWillFocus,
119
+ onDidFocus: onDidFocus,
120
+ onWillBlur: onWillBlur,
121
+ onDidBlur: onDidBlur,
122
+ ...sheetProps,
123
+ children: children
124
+ });
125
+ }
126
+ const DEFAULT_DETENTS = ['auto'];
127
+ function clampDetentIndex(index, detentsLength) {
128
+ return Math.min(index, Math.max(detentsLength - 1, 0));
129
+ }
130
+ export function TrueSheetView({
131
+ state,
132
+ navigation,
133
+ descriptors
134
+ }) {
135
+ // First route is the base screen, rest are sheets
136
+ const [baseRoute, ...sheetRoutes] = state.routes;
137
+ const baseDescriptor = baseRoute ? descriptors[baseRoute.key] : null;
138
+ return /*#__PURE__*/_jsxs(_Fragment, {
139
+ children: [baseDescriptor?.render(), sheetRoutes.map(route => {
140
+ const descriptor = descriptors[route.key];
141
+ if (!descriptor) {
142
+ return null;
143
+ }
144
+ const {
145
+ options,
146
+ navigation: screenNavigation,
147
+ render
148
+ } = descriptor;
149
+ const {
150
+ detentIndex = 0,
151
+ detents = DEFAULT_DETENTS,
152
+ ...sheetProps
153
+ } = options;
154
+ const resolvedIndex = clampDetentIndex(route.resizeIndex ?? detentIndex, detents.length);
155
+ return /*#__PURE__*/_jsx(TrueSheetScreen, {
156
+ routeKey: route.key,
157
+ closing: route.closing,
158
+ detentIndex: resolvedIndex,
159
+ resizeKey: route.resizeKey,
160
+ detents: detents,
161
+ navigation: screenNavigation,
162
+ emit: navigation.emit,
163
+ ...sheetProps,
164
+ children: render()
165
+ }, route.key);
166
+ })]
167
+ });
168
+ }
169
+ //# sourceMappingURL=TrueSheetView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useCallback","useEffect","useRef","TrueSheet","TrueSheetActions","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TrueSheetScreen","detentIndex","resizeKey","navigation","emit","routeKey","closing","detents","children","sheetProps","ref","isDismissedRef","isFirstRenderRef","initialDetentIndexRef","current","dismiss","dispatch","remove","source","resize","emitEvent","type","data","target","onWillPresent","e","nativeEvent","onDidPresent","onWillDismiss","_e","undefined","onDidDismiss","goBack","onDetentChange","onDragBegin","onDragChange","onDragEnd","onPositionChange","onWillFocus","onDidFocus","onWillBlur","onDidBlur","name","initialDetentIndex","DEFAULT_DETENTS","clampDetentIndex","index","detentsLength","Math","min","max","TrueSheetView","state","descriptors","baseRoute","sheetRoutes","routes","baseDescriptor","key","render","map","route","descriptor","options","screenNavigation","resolvedIndex","resizeIndex","length"],"sourceRoot":"../../../src","sources":["navigation/TrueSheetView.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ import { createNavigatorFactory, useNavigationBuilder } from '@react-navigation/native';
4
+ import { TrueSheetRouter } from "./TrueSheetRouter.js";
5
+ import { TrueSheetView } from "./TrueSheetView.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ function TrueSheetNavigator({
8
+ id,
9
+ initialRouteName,
10
+ children,
11
+ screenListeners,
12
+ screenOptions
13
+ }) {
14
+ const {
15
+ state,
16
+ descriptors,
17
+ navigation,
18
+ NavigationContent
19
+ } = useNavigationBuilder(TrueSheetRouter, {
20
+ id,
21
+ initialRouteName,
22
+ children,
23
+ screenListeners,
24
+ screenOptions
25
+ });
26
+ return /*#__PURE__*/_jsx(NavigationContent, {
27
+ children: /*#__PURE__*/_jsx(TrueSheetView, {
28
+ state: state,
29
+ navigation: navigation,
30
+ descriptors: descriptors
31
+ })
32
+ });
33
+ }
34
+
35
+ /**
36
+ * Creates a TrueSheet navigator.
37
+ *
38
+ * @example
39
+ * ```tsx
40
+ * const Sheet = createTrueSheetNavigator();
41
+ *
42
+ * function App() {
43
+ * return (
44
+ * <Sheet.Navigator>
45
+ * <Sheet.Screen name="Home" component={HomeScreen} />
46
+ * <Sheet.Screen
47
+ * name="Details"
48
+ * component={DetailsSheet}
49
+ * options={{ detents: [0.5, 1] }}
50
+ * />
51
+ * </Sheet.Navigator>
52
+ * );
53
+ * }
54
+ * ```
55
+ */
56
+ export const createTrueSheetNavigator = config => {
57
+ return createNavigatorFactory(TrueSheetNavigator)(config);
58
+ };
59
+ //# sourceMappingURL=createTrueSheetNavigator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createNavigatorFactory","useNavigationBuilder","TrueSheetRouter","TrueSheetView","jsx","_jsx","TrueSheetNavigator","id","initialRouteName","children","screenListeners","screenOptions","state","descriptors","navigation","NavigationContent","createTrueSheetNavigator","config"],"sourceRoot":"../../../src","sources":["navigation/createTrueSheetNavigator.tsx"],"mappings":";;AAAA,SACEA,sBAAsB,EAKtBC,oBAAoB,QACf,0BAA0B;AAEjC,SAASC,eAAe,QAAqC,sBAAmB;AAChF,SAASC,aAAa,QAAQ,oBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAUhD,SAASC,kBAAkBA,CAAC;EAC1BC,EAAE;EACFC,gBAAgB;EAChBC,QAAQ;EACRC,eAAe;EACfC;AACuB,CAAC,EAAE;EAC1B,MAAM;IAAEC,KAAK;IAAEC,WAAW;IAAEC,UAAU;IAAEC;EAAkB,CAAC,GAAGd,oBAAoB,CAMhFC,eAAe,EAAE;IACjBK,EAAE;IACFC,gBAAgB;IAChBC,QAAQ;IACRC,eAAe;IACfC;EACF,CAAC,CAAC;EAEF,oBACEN,IAAA,CAACU,iBAAiB;IAAAN,QAAA,eAChBJ,IAAA,CAACF,aAAa;MAACS,KAAK,EAAEA,KAAM;MAACE,UAAU,EAAEA,UAAW;MAACD,WAAW,EAAEA;IAAY,CAAE;EAAC,CAChE,CAAC;AAExB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMG,wBAAwB,GAgBnCC,MAAe,IACqB;EACpC,OAAOjB,sBAAsB,CAACM,kBAAkB,CAAC,CAACW,MAAM,CAAC;AAC3D,CAAC","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export { createTrueSheetNavigator } from "./createTrueSheetNavigator.js";
4
+ export { TrueSheetActions } from "./TrueSheetRouter.js";
5
+ export { useTrueSheetNavigation } from "./useTrueSheetNavigation.js";
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createTrueSheetNavigator","TrueSheetActions","useTrueSheetNavigation"],"sourceRoot":"../../../src","sources":["navigation/index.ts"],"mappings":";;AAAA,SAASA,wBAAwB,QAAQ,+BAA4B;AACrE,SAASC,gBAAgB,QAAkC,sBAAmB;AAC9E,SAASC,sBAAsB,QAAQ,6BAA0B","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["navigation/types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ import { useNavigation } from '@react-navigation/native';
4
+ /**
5
+ * Hook to access TrueSheet navigation with the resize helper.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * function MySheet() {
10
+ * const navigation = useTrueSheetNavigation();
11
+ *
12
+ * // Resize to a specific detent
13
+ * const handleExpand = () => {
14
+ * navigation.resize(1); // Resize to second detent
15
+ * };
16
+ *
17
+ * return (
18
+ * <Button title="Expand" onPress={handleExpand} />
19
+ * );
20
+ * }
21
+ * ```
22
+ */
23
+ export function useTrueSheetNavigation() {
24
+ return useNavigation();
25
+ }
26
+ //# sourceMappingURL=useTrueSheetNavigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useNavigation","useTrueSheetNavigation"],"sourceRoot":"../../../src","sources":["navigation/useTrueSheetNavigation.ts"],"mappings":";;AAAA,SAASA,aAAa,QAA4B,0BAA0B;AAI5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAAA,EAEN;EAC9B,OAAOD,aAAa,CAA6B,CAAC;AACpD","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,KAAK,SAAS,EAIf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EACV,cAAc,EAgBf,MAAM,mBAAmB,CAAC;AA2B3B,UAAU,cAAc;IACtB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1E,WAAW,SAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAqC;IAEtE;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAA6B;gBAE7C,KAAK,EAAE,cAAc;IAgCjC,OAAO,CAAC,eAAe;IAkCvB,OAAO,CAAC,MAAM,CAAC,WAAW;IAU1B,OAAO,KAAK,MAAM,GAOjB;IAED;;;;;;;OAOG;WACiB,OAAO,CACzB,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,MAAU,EACjB,QAAQ,GAAE,OAAc,GACvB,OAAO,CAAC,IAAI,CAAC;IAShB;;;;;;OAMG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IASlF;;;;;;OAMG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStE,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAInB;;;;OAIG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,EAAE,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBhF;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;;OAGG;IACU,OAAO,CAAC,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;IASnD,oBAAoB,IAAI,IAAI;IAO5B,MAAM,IAAI,SAAS;CAmHpB"}
1
+ {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,KAAK,SAAS,EAIf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EACV,cAAc,EAgBf,MAAM,mBAAmB,CAAC;AA2B3B,UAAU,cAAc;IACtB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1E,WAAW,SAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAqC;IAEtE;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAA6B;gBAE7C,KAAK,EAAE,cAAc;IAgCjC,OAAO,CAAC,eAAe;IAkCvB,OAAO,CAAC,MAAM,CAAC,WAAW;IAU1B,OAAO,KAAK,MAAM,GAOjB;IAED;;;;;;;OAOG;WACiB,OAAO,CACzB,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,MAAU,EACjB,QAAQ,GAAE,OAAc,GACvB,OAAO,CAAC,IAAI,CAAC;IAShB;;;;;;OAMG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IASlF;;;;;;OAMG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStE,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAInB;;;;OAIG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,EAAE,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBhF;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;;OAGG;IACU,OAAO,CAAC,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;IASnD,oBAAoB,IAAI,IAAI;IAO5B,MAAM,IAAI,SAAS;CAqHpB"}
@@ -91,6 +91,20 @@ export interface BlurOptions {
91
91
  */
92
92
  interaction?: boolean;
93
93
  }
94
+ /**
95
+ * Inset adjustment behavior for the sheet content.
96
+ */
97
+ export type InsetAdjustment =
98
+ /**
99
+ * Automatically adjusts the sheet height to account for system insets (safe area).
100
+ * This ensures the sheet content is properly inset from system UI elements.
101
+ */
102
+ 'automatic'
103
+ /**
104
+ * Does not adjust the sheet height for system insets.
105
+ * The sheet height is calculated purely from the detent values.
106
+ */
107
+ | 'never';
94
108
  /**
95
109
  * Blur style mapped to native values in IOS.
96
110
  *
@@ -252,6 +266,16 @@ export interface TrueSheetProps extends ViewProps {
252
266
  * @default false
253
267
  */
254
268
  edgeToEdgeFullScreen?: boolean;
269
+ /**
270
+ * Controls how the sheet adjusts its height for system insets (safe area).
271
+ *
272
+ * - `'automatic'`: Adds the bottom safe area inset to the sheet height,
273
+ * ensuring content is properly inset from system UI elements.
274
+ * - `'never'`: Does not adjust for insets; height is calculated purely from detent values.
275
+ *
276
+ * @default 'automatic'
277
+ */
278
+ insetAdjustment?: InsetAdjustment;
255
279
  /**
256
280
  * A component that is fixed at the top of the Sheet content.
257
281
  * Useful for search bars, titles, or other header content.
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheet.types.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TrueSheet.types.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ViewProps } from 'react-native';
1
+ import type { ColorValue, ViewProps } from 'react-native';
2
2
  import type { DirectEventHandler, Double, Int32, WithDefault } from 'react-native/Libraries/Types/CodegenTypes';
3
3
  type GrabberOptionsType = Readonly<{
4
4
  width?: Double;
@@ -25,12 +25,13 @@ export interface PositionChangeEventPayload {
25
25
  export interface NativeProps extends ViewProps {
26
26
  detents?: ReadonlyArray<Double>;
27
27
  maxHeight?: WithDefault<Double, 0>;
28
- background?: WithDefault<Int32, 0>;
29
28
  cornerRadius?: WithDefault<Double, -1>;
29
+ backgroundColor?: ColorValue;
30
30
  initialDetentIndex?: WithDefault<Int32, -1>;
31
31
  dimmedDetentIndex?: WithDefault<Int32, 0>;
32
32
  blurTint?: WithDefault<string, ''>;
33
33
  keyboardMode?: WithDefault<'resize' | 'pan', 'resize'>;
34
+ insetAdjustment?: WithDefault<'automatic' | 'never', 'automatic'>;
34
35
  blurOptions?: BlurOptionsType;
35
36
  grabber?: WithDefault<boolean, true>;
36
37
  grabberOptions?: GrabberOptionsType;
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheetViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/fabric/TrueSheetViewNativeComponent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TrueSheetViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/fabric/TrueSheetViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACN,KAAK,EACL,WAAW,EACZ,MAAM,2CAA2C,CAAC;AAGnD,KAAK,kBAAkB,GAAG,QAAQ,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC,CAAC;AAEH,KAAK,eAAe,GAAG,QAAQ,CAAC;IAC9B,SAAS,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;CAC1C,CAAC,CAAC;AAEH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAE5C,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAGhC,SAAS,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IAGvC,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,kBAAkB,CAAC,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5C,iBAAiB,CAAC,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAG1C,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,WAAW,CAAC,QAAQ,GAAG,KAAK,EAAE,QAAQ,CAAC,CAAC;IACvD,eAAe,CAAC,EAAE,WAAW,CAAC,WAAW,GAAG,OAAO,EAAE,WAAW,CAAC,CAAC;IAGlE,WAAW,CAAC,EAAE,eAAe,CAAC;IAG9B,OAAO,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACrC,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC,WAAW,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvC,MAAM,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpC,qBAAqB,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACnD,oBAAoB,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACnD,UAAU,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAGxC,OAAO,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACnC,aAAa,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC3D,YAAY,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC1D,aAAa,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACzC,YAAY,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACxC,cAAc,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC5D,WAAW,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IACzD,YAAY,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC1D,SAAS,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IACvD,gBAAgB,CAAC,EAAE,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;IAClE,WAAW,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACvC,UAAU,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACtC,UAAU,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACtC,SAAS,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;CACxC;;AAED,wBAEG"}
@@ -0,0 +1,57 @@
1
+ import { type CommonActions, type ParamListBase, type Router, type StackActionType, type StackRouterOptions } from '@react-navigation/native';
2
+ import type { TrueSheetNavigationState } from './types';
3
+ export type TrueSheetRouterOptions = StackRouterOptions;
4
+ export type TrueSheetActionType = StackActionType | ReturnType<typeof CommonActions.goBack> | {
5
+ type: 'RESIZE';
6
+ index: number;
7
+ source?: string;
8
+ target?: string;
9
+ } | {
10
+ type: 'DISMISS';
11
+ source?: string;
12
+ target?: string;
13
+ } | {
14
+ type: 'REMOVE';
15
+ source?: string;
16
+ target?: string;
17
+ };
18
+ export declare const TrueSheetActions: {
19
+ resize(index: number): TrueSheetActionType;
20
+ dismiss(): TrueSheetActionType;
21
+ remove(): TrueSheetActionType;
22
+ replace(name: string, params?: object): {
23
+ readonly type: "REPLACE";
24
+ readonly payload: {
25
+ readonly name: string;
26
+ readonly params: object | undefined;
27
+ };
28
+ };
29
+ push(name: string, params?: object): {
30
+ readonly type: "PUSH";
31
+ readonly payload: {
32
+ readonly name: string;
33
+ readonly params: object | undefined;
34
+ };
35
+ };
36
+ pop(count?: number): {
37
+ readonly type: "POP";
38
+ readonly payload: {
39
+ readonly count: number;
40
+ };
41
+ };
42
+ popToTop(): {
43
+ readonly type: "POP_TO_TOP";
44
+ };
45
+ popTo(name: string, params?: object, options?: {
46
+ merge?: boolean;
47
+ }): {
48
+ readonly type: "POP_TO";
49
+ readonly payload: {
50
+ readonly name: string;
51
+ readonly params: object | undefined;
52
+ readonly merge: boolean | undefined;
53
+ };
54
+ };
55
+ };
56
+ export declare function TrueSheetRouter(routerOptions: StackRouterOptions): Router<TrueSheetNavigationState<ParamListBase>, TrueSheetActionType>;
57
+ //# sourceMappingURL=TrueSheetRouter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrueSheetRouter.d.ts","sourceRoot":"","sources":["../../../../src/navigation/TrueSheetRouter.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,MAAM,EAEX,KAAK,eAAe,EAEpB,KAAK,kBAAkB,EACxB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAExD,MAAM,MAAM,sBAAsB,GAAG,kBAAkB,CAAC;AAExD,MAAM,MAAM,mBAAmB,GAC3B,eAAe,GACf,UAAU,CAAC,OAAO,aAAa,CAAC,MAAM,CAAC,GACvC;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GACD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEN,eAAO,MAAM,gBAAgB;kBAEb,MAAM,GAAG,mBAAmB;eAG/B,mBAAmB;cAGpB,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;aAwGR,CAAC;;;;;;;;;CArGvB,CAAC;AAEF,wBAAgB,eAAe,CAC7B,aAAa,EAAE,kBAAkB,GAChC,MAAM,CAAC,wBAAwB,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAC,CAyHtE"}
@@ -0,0 +1,10 @@
1
+ import type { ParamListBase } from '@react-navigation/native';
2
+ import type { TrueSheetDescriptorMap, TrueSheetNavigationHelpers, TrueSheetNavigationState } from './types';
3
+ interface TrueSheetViewProps {
4
+ state: TrueSheetNavigationState<ParamListBase>;
5
+ navigation: TrueSheetNavigationHelpers;
6
+ descriptors: TrueSheetDescriptorMap;
7
+ }
8
+ export declare function TrueSheetView({ state, navigation, descriptors }: TrueSheetViewProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=TrueSheetView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrueSheetView.d.ts","sourceRoot":"","sources":["../../../../src/navigation/TrueSheetView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAoB9D,OAAO,KAAK,EACV,sBAAsB,EAEtB,0BAA0B,EAG1B,wBAAwB,EACzB,MAAM,SAAS,CAAC;AAoMjB,UAAU,kBAAkB;IAC1B,KAAK,EAAE,wBAAwB,CAAC,aAAa,CAAC,CAAC;IAC/C,UAAU,EAAE,0BAA0B,CAAC;IACvC,WAAW,EAAE,sBAAsB,CAAC;CACrC;AAED,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,kBAAkB,2CAyCnF"}
@@ -0,0 +1,35 @@
1
+ import { type NavigatorTypeBagBase, type ParamListBase, type StaticConfig, type TypedNavigator } from '@react-navigation/native';
2
+ import type { TrueSheetNavigationEventMap, TrueSheetNavigationOptions, TrueSheetNavigationProp, TrueSheetNavigationState, TrueSheetNavigatorProps } from './types';
3
+ declare function TrueSheetNavigator({ id, initialRouteName, children, screenListeners, screenOptions, }: TrueSheetNavigatorProps): import("react/jsx-runtime").JSX.Element;
4
+ /**
5
+ * Creates a TrueSheet navigator.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * const Sheet = createTrueSheetNavigator();
10
+ *
11
+ * function App() {
12
+ * return (
13
+ * <Sheet.Navigator>
14
+ * <Sheet.Screen name="Home" component={HomeScreen} />
15
+ * <Sheet.Screen
16
+ * name="Details"
17
+ * component={DetailsSheet}
18
+ * options={{ detents: [0.5, 1] }}
19
+ * />
20
+ * </Sheet.Navigator>
21
+ * );
22
+ * }
23
+ * ```
24
+ */
25
+ export declare const createTrueSheetNavigator: <const ParamList extends ParamListBase, const NavigatorID extends string | undefined = undefined, const TypeBag extends NavigatorTypeBagBase = {
26
+ ParamList: ParamList;
27
+ NavigatorID: NavigatorID;
28
+ State: TrueSheetNavigationState<ParamList>;
29
+ ScreenOptions: TrueSheetNavigationOptions;
30
+ EventMap: TrueSheetNavigationEventMap;
31
+ NavigationList: { [RouteName in keyof ParamList]: TrueSheetNavigationProp<ParamList, RouteName, NavigatorID>; };
32
+ Navigator: typeof TrueSheetNavigator;
33
+ }, const Config extends StaticConfig<TypeBag> = StaticConfig<TypeBag>>(config?: Config) => TypedNavigator<TypeBag, Config>;
34
+ export {};
35
+ //# sourceMappingURL=createTrueSheetNavigator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTrueSheetNavigator.d.ts","sourceRoot":"","sources":["../../../../src/navigation/createTrueSheetNavigator.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,cAAc,EAEpB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,KAAK,EAEV,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,SAAS,CAAC;AAEjB,iBAAS,kBAAkB,CAAC,EAC1B,EAAE,EACF,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,aAAa,GACd,EAAE,uBAAuB,2CAoBzB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,wBAAwB,GACnC,KAAK,CAAC,SAAS,SAAS,aAAa,EACrC,KAAK,CAAC,WAAW,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EACxD,KAAK,CAAC,OAAO,SAAS,oBAAoB,GAAG;IAC3C,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC3C,aAAa,EAAE,0BAA0B,CAAC;IAC1C,QAAQ,EAAE,2BAA2B,CAAC;IACtC,cAAc,EAAE,GACb,SAAS,IAAI,MAAM,SAAS,GAAG,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,GAC3F,CAAC;IACF,SAAS,EAAE,OAAO,kBAAkB,CAAC;CACtC,EACD,KAAK,CAAC,MAAM,SAAS,YAAY,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,EAElE,SAAS,MAAM,KACd,cAAc,CAAC,OAAO,EAAE,MAAM,CAEhC,CAAC"}