@novodip/expo-router-devtools 1.0.2 → 1.0.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@novodip/expo-router-devtools",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "Development tools for Expo Router - visualize routes, save navigation states, and debug your app's navigation flow",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",
@@ -1,261 +0,0 @@
1
- import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
- import { useGlobalSearchParams, usePathname, useRouter } from 'expo-router';
3
- import * as SecureStore from 'expo-secure-store';
4
- import { useCallback, useEffect, useState } from 'react';
5
- import { Platform, Pressable, ScrollView, StyleSheet, Text, View } from 'react-native';
6
- const STORAGE_PREFIX = 'expo-router-devtools_';
7
- const MAX_HISTORY = 10;
8
- const ExpoRouterDevTools = ({ position = 'top', theme = 'light', hideInProduction = true, storageKeyPrefix = STORAGE_PREFIX, onRouteChange, enableHistory = true, maxHistory = MAX_HISTORY, maxNumOfLines = 3, }) => {
9
- const pathname = usePathname();
10
- const searchParams = useGlobalSearchParams();
11
- const router = useRouter();
12
- const [currentRoute, setCurrentRoute] = useState('');
13
- const [savedRoutes, setSavedRoutes] = useState([]);
14
- const [routeHistory, setRouteHistory] = useState([]);
15
- const [isExpanded, setIsExpanded] = useState(false);
16
- const [showHistory, setShowHistory] = useState(false);
17
- const SAVED_ROUTES_KEY = `${storageKeyPrefix}saved-routes`;
18
- const HISTORY_KEY = `${storageKeyPrefix}history`;
19
- // Build current full route
20
- useEffect(() => {
21
- const query = Object.keys(searchParams).length
22
- ? '?' +
23
- Object.entries(searchParams)
24
- .map(([key, value]) => `${key}=${encodeURIComponent(String(value))}`)
25
- .join('&')
26
- : '';
27
- const fullRoute = `${pathname}${query}`;
28
- setCurrentRoute(fullRoute);
29
- onRouteChange === null || onRouteChange === void 0 ? void 0 : onRouteChange(fullRoute);
30
- }, [pathname, searchParams, onRouteChange]);
31
- // Load saved routes and history
32
- useEffect(() => {
33
- const loadData = async () => {
34
- try {
35
- const savedRoutesData = await SecureStore.getItemAsync(SAVED_ROUTES_KEY);
36
- if (savedRoutesData) {
37
- setSavedRoutes(JSON.parse(savedRoutesData));
38
- }
39
- if (enableHistory) {
40
- const historyData = await SecureStore.getItemAsync(HISTORY_KEY);
41
- if (historyData) {
42
- setRouteHistory(JSON.parse(historyData));
43
- }
44
- }
45
- }
46
- catch (error) {
47
- console.error('[ExpoRouterDevTools] Error loading data:', error);
48
- }
49
- };
50
- loadData();
51
- }, [SAVED_ROUTES_KEY, HISTORY_KEY, enableHistory]);
52
- // Update history when route changes
53
- useEffect(() => {
54
- if (!enableHistory || !currentRoute)
55
- return;
56
- const updateHistory = async () => {
57
- try {
58
- const newHistory = [currentRoute, ...routeHistory.filter((r) => r !== currentRoute)].slice(0, maxHistory);
59
- setRouteHistory(newHistory);
60
- await SecureStore.setItemAsync(HISTORY_KEY, JSON.stringify(newHistory));
61
- }
62
- catch (error) {
63
- console.error('[ExpoRouterDevTools] Error updating history:', error);
64
- }
65
- };
66
- updateHistory();
67
- }, [currentRoute, enableHistory, maxHistory, HISTORY_KEY]);
68
- // Save current route
69
- const saveRoute = useCallback(async () => {
70
- const label = `Route ${savedRoutes.length + 1}`;
71
- const newRoute = {
72
- route: currentRoute,
73
- label,
74
- timestamp: Date.now(),
75
- };
76
- const updated = [...savedRoutes, newRoute];
77
- setSavedRoutes(updated);
78
- try {
79
- await SecureStore.setItemAsync(SAVED_ROUTES_KEY, JSON.stringify(updated));
80
- }
81
- catch (error) {
82
- console.error('[ExpoRouterDevTools] Error saving route:', error);
83
- }
84
- }, [currentRoute, savedRoutes, SAVED_ROUTES_KEY]);
85
- // Navigate to route
86
- const navigateToRoute = useCallback((route) => {
87
- try {
88
- router.push(route);
89
- }
90
- catch (error) {
91
- console.error('[ExpoRouterDevTools] Navigation error:', error);
92
- }
93
- }, [router]);
94
- // Delete saved route
95
- const deleteSavedRoute = useCallback(async (index) => {
96
- const updated = savedRoutes.filter((_, i) => i !== index);
97
- setSavedRoutes(updated);
98
- try {
99
- await SecureStore.setItemAsync(SAVED_ROUTES_KEY, JSON.stringify(updated));
100
- }
101
- catch (error) {
102
- console.error('[ExpoRouterDevTools] Error deleting route:', error);
103
- }
104
- }, [savedRoutes, SAVED_ROUTES_KEY]);
105
- // Clear all data
106
- const clearAll = useCallback(async () => {
107
- setSavedRoutes([]);
108
- setRouteHistory([]);
109
- try {
110
- await SecureStore.deleteItemAsync(SAVED_ROUTES_KEY);
111
- await SecureStore.deleteItemAsync(HISTORY_KEY);
112
- }
113
- catch (error) {
114
- console.error('[ExpoRouterDevTools] Error clearing data:', error);
115
- }
116
- }, [SAVED_ROUTES_KEY, HISTORY_KEY]);
117
- const isDark = theme === 'dark';
118
- const styles = createStyles(isDark, position);
119
- // Check if we should render in production
120
- if (hideInProduction && !__DEV__) {
121
- return null;
122
- }
123
- return (_jsxs(View, { style: styles.container, children: [_jsxs(Pressable, { onPress: () => setIsExpanded(!isExpanded), style: styles.routeBar, children: [_jsxs(Text, { style: styles.routeText, numberOfLines: maxNumOfLines, children: ["\uD83D\uDEE3\uFE0F ", currentRoute || '/'] }), _jsx(Text, { style: styles.expandIcon, children: isExpanded ? '▼' : '▶' })] }), isExpanded && (_jsxs(View, { style: styles.controls, children: [_jsxs(View, { style: styles.buttonRow, children: [_jsx(Pressable, { onPress: saveRoute, style: styles.button, children: _jsx(Text, { style: styles.buttonText, children: "Save" }) }), enableHistory && (_jsx(Pressable, { onPress: () => setShowHistory(!showHistory), style: styles.button, children: _jsx(Text, { style: styles.buttonText, children: "History" }) })), _jsx(Pressable, { onPress: clearAll, style: [styles.button, styles.dangerButton], children: _jsx(Text, { style: styles.buttonText, children: "Clear" }) })] }), showHistory && enableHistory && routeHistory.length > 0 && (_jsxs(View, { style: styles.section, children: [_jsx(Text, { style: styles.sectionTitle, children: "Recent Routes" }), _jsx(ScrollView, { style: styles.listContainer, children: routeHistory.map((route, index) => (_jsx(Pressable, { onPress: () => navigateToRoute(route), style: ({ pressed }) => [styles.listItem, route === currentRoute && styles.selectedItem, pressed && styles.listItemPressed], children: _jsx(Text, { style: styles.listItemText, numberOfLines: 1, children: route }) }, `${route}-${index}`))) })] })), savedRoutes.length > 0 && (_jsxs(View, { style: styles.section, children: [_jsx(Text, { style: styles.sectionTitle, children: "Saved Routes" }), _jsx(ScrollView, { style: styles.listContainer, children: savedRoutes.map((saved, index) => (_jsxs(Pressable, { onPress: () => navigateToRoute(saved.route), style: ({ pressed }) => [styles.savedItem, saved.route === currentRoute && styles.selectedItem, pressed && styles.listItemPressed], children: [_jsxs(View, { style: styles.savedItemContent, children: [_jsx(Text, { style: styles.savedItemLabel, children: saved.label }), _jsx(Text, { style: styles.listItemText, numberOfLines: 1, children: saved.route })] }), _jsx(Pressable, { onPress: (e) => {
124
- var _a;
125
- (_a = e.stopPropagation) === null || _a === void 0 ? void 0 : _a.call(e);
126
- deleteSavedRoute(index);
127
- }, style: styles.deleteButton, children: _jsx(Text, { style: styles.deleteButtonText, children: "\u2715" }) })] }, `${saved.route}-${index}`))) })] }))] }))] }));
128
- };
129
- const createStyles = (isDark, position) => {
130
- const bgColor = isDark ? '#1a1a1a' : '#ffffff';
131
- const textColor = isDark ? '#e0e0e0' : '#333333';
132
- const borderColor = isDark ? '#333333' : '#dddddd';
133
- const buttonBg = isDark ? '#2563eb' : '#2563eb';
134
- const secondaryBg = isDark ? '#262626' : '#f5f5f5';
135
- const pressedBg = isDark ? '#1e40af' : '#dbeafe';
136
- return StyleSheet.create({
137
- container: {
138
- backgroundColor: bgColor,
139
- borderTopWidth: position === 'bottom' ? 1 : 0,
140
- borderBottomWidth: position === 'top' ? 1 : 0,
141
- borderColor,
142
- ...Platform.select({
143
- ios: {
144
- shadowColor: '#000',
145
- shadowOffset: { width: 0, height: 2 },
146
- shadowOpacity: 0.1,
147
- shadowRadius: 4,
148
- },
149
- android: {
150
- elevation: 4,
151
- },
152
- }),
153
- },
154
- selectedItem: {
155
- backgroundColor: pressedBg,
156
- borderWidth: 1,
157
- borderColor: '#2563eb',
158
- },
159
- routeBar: {
160
- flexDirection: 'row',
161
- alignItems: 'center',
162
- justifyContent: 'space-between',
163
- padding: 12,
164
- paddingHorizontal: 16,
165
- },
166
- routeText: {
167
- flex: 1,
168
- fontSize: 12,
169
- color: textColor,
170
- fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace',
171
- },
172
- expandIcon: {
173
- fontSize: 16,
174
- color: textColor,
175
- marginLeft: 8,
176
- },
177
- controls: {
178
- padding: 12,
179
- paddingTop: 0,
180
- },
181
- buttonRow: {
182
- flexDirection: 'row',
183
- gap: 8,
184
- marginBottom: 12,
185
- },
186
- button: {
187
- flex: 1,
188
- paddingHorizontal: 12,
189
- paddingVertical: 8,
190
- backgroundColor: buttonBg,
191
- borderRadius: 6,
192
- alignItems: 'center',
193
- },
194
- dangerButton: {
195
- backgroundColor: '#dc2626',
196
- },
197
- buttonText: {
198
- color: '#ffffff',
199
- fontSize: 12,
200
- fontWeight: '600',
201
- },
202
- section: {
203
- marginTop: 12,
204
- },
205
- sectionTitle: {
206
- fontSize: 11,
207
- fontWeight: '600',
208
- color: textColor,
209
- marginBottom: 8,
210
- textTransform: 'uppercase',
211
- letterSpacing: 0.5,
212
- },
213
- listContainer: {
214
- maxHeight: 150,
215
- },
216
- listItem: {
217
- padding: 8,
218
- backgroundColor: secondaryBg,
219
- borderRadius: 4,
220
- marginBottom: 4,
221
- },
222
- listItemPressed: {
223
- backgroundColor: pressedBg,
224
- },
225
- listItemText: {
226
- fontSize: 11,
227
- color: textColor,
228
- fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace',
229
- },
230
- savedItem: {
231
- flexDirection: 'row',
232
- alignItems: 'center',
233
- backgroundColor: secondaryBg,
234
- borderRadius: 4,
235
- marginBottom: 4,
236
- overflow: 'hidden',
237
- },
238
- savedItemContent: {
239
- flex: 1,
240
- padding: 8,
241
- },
242
- savedItemLabel: {
243
- fontSize: 10,
244
- fontWeight: '600',
245
- color: buttonBg,
246
- marginBottom: 2,
247
- },
248
- deleteButton: {
249
- padding: 8,
250
- paddingHorizontal: 12,
251
- backgroundColor: '#dc2626',
252
- },
253
- deleteButtonText: {
254
- color: '#ffffff',
255
- fontSize: 14,
256
- fontWeight: 'bold',
257
- },
258
- });
259
- };
260
- export default ExpoRouterDevTools;
261
- //# sourceMappingURL=ExpoRouterDevTools.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExpoRouterDevTools.js","sourceRoot":"","sources":["../../src/ExpoRouterDevTools.tsx"],"names":[],"mappings":"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"}
package/dist/lib/index.js DELETED
@@ -1,2 +0,0 @@
1
- export { default as ExpoRouterDevTools } from './ExpoRouterDevTools';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=base.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/interfaces/base.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { ExpoRouterDevToolsProps } from './interfaces/base';
3
- declare const ExpoRouterDevTools: React.FC<ExpoRouterDevToolsProps>;
4
- export default ExpoRouterDevTools;
@@ -1,2 +0,0 @@
1
- export { default as ExpoRouterDevTools } from './ExpoRouterDevTools';
2
- export type { ExpoRouterDevToolsProps } from './interfaces/base';
@@ -1,23 +0,0 @@
1
- export interface ExpoRouterDevToolsProps {
2
- /** Position of the dev tools bar */
3
- position?: 'top' | 'bottom';
4
- /** Theme */
5
- theme?: 'light' | 'dark';
6
- /** Hide in production builds */
7
- hideInProduction?: boolean;
8
- /** Custom storage key prefix (alphanumeric, dots, dashes, and underscores only) */
9
- storageKeyPrefix?: string;
10
- /** Callback when route changes */
11
- onRouteChange?: (route: string) => void;
12
- /** Enable route history */
13
- enableHistory?: boolean;
14
- /** Maximum number of history items */
15
- maxHistory?: number;
16
- /** Maximum number of lines the route will show */
17
- maxNumOfLines?: number;
18
- }
19
- export interface SavedRoute {
20
- route: string;
21
- label: string;
22
- timestamp: number;
23
- }
@@ -1,23 +0,0 @@
1
- export interface ExpoRouterDevToolsProps {
2
- /** Position of the dev tools bar */
3
- position?: 'top' | 'bottom';
4
- /** Theme */
5
- theme?: 'light' | 'dark';
6
- /** Hide in production builds */
7
- hideInProduction?: boolean;
8
- /** Custom storage key prefix (alphanumeric, dots, dashes, and underscores only) */
9
- storageKeyPrefix?: string;
10
- /** Callback when route changes */
11
- onRouteChange?: (route: string) => void;
12
- /** Enable route history */
13
- enableHistory?: boolean;
14
- /** Maximum number of history items */
15
- maxHistory?: number;
16
- /** Maximum number of lines the route will show */
17
- maxNumOfLines?: number;
18
- }
19
- export interface SavedRoute {
20
- route: string;
21
- label: string;
22
- timestamp: number;
23
- }