@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.
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetModule.kt +8 -2
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetView.kt +18 -2
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewController.kt +103 -121
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewManager.kt +7 -2
- package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetDialogObserver.kt +2 -2
- package/android/src/main/java/com/lodev09/truesheet/utils/ScreenUtils.kt +64 -81
- package/android/src/main/res/values/styles.xml +1 -0
- package/ios/TrueSheetModule.mm +17 -2
- package/ios/TrueSheetView.h +2 -0
- package/ios/TrueSheetView.mm +32 -3
- package/ios/TrueSheetViewController.h +2 -0
- package/ios/TrueSheetViewController.mm +45 -18
- package/lib/module/TrueSheet.js +3 -1
- package/lib/module/TrueSheet.js.map +1 -1
- package/lib/module/fabric/TrueSheetViewNativeComponent.ts +5 -2
- package/lib/module/navigation/TrueSheetRouter.js +119 -0
- package/lib/module/navigation/TrueSheetRouter.js.map +1 -0
- package/lib/module/navigation/TrueSheetView.js +169 -0
- package/lib/module/navigation/TrueSheetView.js.map +1 -0
- package/lib/module/navigation/createTrueSheetNavigator.js +59 -0
- package/lib/module/navigation/createTrueSheetNavigator.js.map +1 -0
- package/lib/module/navigation/index.js +6 -0
- package/lib/module/navigation/index.js.map +1 -0
- package/lib/module/navigation/types.js +4 -0
- package/lib/module/navigation/types.js.map +1 -0
- package/lib/module/navigation/useTrueSheetNavigation.js +26 -0
- package/lib/module/navigation/useTrueSheetNavigation.js.map +1 -0
- package/lib/typescript/src/TrueSheet.d.ts.map +1 -1
- package/lib/typescript/src/TrueSheet.types.d.ts +24 -0
- package/lib/typescript/src/TrueSheet.types.d.ts.map +1 -1
- package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts +3 -2
- package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/navigation/TrueSheetRouter.d.ts +57 -0
- package/lib/typescript/src/navigation/TrueSheetRouter.d.ts.map +1 -0
- package/lib/typescript/src/navigation/TrueSheetView.d.ts +10 -0
- package/lib/typescript/src/navigation/TrueSheetView.d.ts.map +1 -0
- package/lib/typescript/src/navigation/createTrueSheetNavigator.d.ts +35 -0
- package/lib/typescript/src/navigation/createTrueSheetNavigator.d.ts.map +1 -0
- package/lib/typescript/src/navigation/index.d.ts +6 -0
- package/lib/typescript/src/navigation/index.d.ts.map +1 -0
- package/lib/typescript/src/navigation/types.d.ts +125 -0
- package/lib/typescript/src/navigation/types.d.ts.map +1 -0
- package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts +23 -0
- package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts.map +1 -0
- package/package.json +12 -1
- package/src/TrueSheet.tsx +3 -1
- package/src/TrueSheet.types.ts +26 -0
- package/src/fabric/TrueSheetViewNativeComponent.ts +5 -2
- package/src/navigation/TrueSheetRouter.ts +172 -0
- package/src/navigation/TrueSheetView.tsx +271 -0
- package/src/navigation/createTrueSheetNavigator.tsx +89 -0
- package/src/navigation/index.ts +14 -0
- package/src/navigation/types.ts +176 -0
- 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 @@
|
|
|
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 @@
|
|
|
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;
|
|
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":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
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"}
|