expo-router 5.1.0 → 5.1.2
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/build/fork/getStateFromPath-forks.d.ts.map +1 -1
- package/build/fork/getStateFromPath-forks.js +4 -1
- package/build/fork/getStateFromPath-forks.js.map +1 -1
- package/build/getRoutes.d.ts +1 -1
- package/build/getRoutes.d.ts.map +1 -1
- package/build/getRoutes.js +14 -6
- package/build/getRoutes.js.map +1 -1
- package/build/getRoutesCore.d.ts +7 -2
- package/build/getRoutesCore.d.ts.map +1 -1
- package/build/getRoutesCore.js +86 -58
- package/build/getRoutesCore.js.map +1 -1
- package/build/getRoutesRedirects.d.ts +2 -2
- package/build/getRoutesRedirects.d.ts.map +1 -1
- package/build/getRoutesRedirects.js +18 -24
- package/build/getRoutesRedirects.js.map +1 -1
- package/build/getRoutesSSR.d.ts +1 -1
- package/build/getRoutesSSR.d.ts.map +1 -1
- package/build/getRoutesSSR.js +2 -3
- package/build/getRoutesSSR.js.map +1 -1
- package/build/global-state/routeInfo.d.ts.map +1 -1
- package/build/global-state/routeInfo.js +21 -1
- package/build/global-state/routeInfo.js.map +1 -1
- package/build/global-state/router-store.d.ts.map +1 -1
- package/build/global-state/router-store.js +1 -0
- package/build/global-state/router-store.js.map +1 -1
- package/build/layouts/StackClient.d.ts.map +1 -1
- package/build/layouts/StackClient.js +152 -65
- package/build/layouts/StackClient.js.map +1 -1
- package/build/link/Link.d.ts +1 -56
- package/build/link/Link.d.ts.map +1 -1
- package/build/link/Link.js +3 -39
- package/build/link/Link.js.map +1 -1
- package/build/link/Redirect.d.ts +59 -0
- package/build/link/Redirect.d.ts.map +1 -0
- package/build/link/Redirect.js +43 -0
- package/build/link/Redirect.js.map +1 -0
- package/build/typed-routes/generate.js +1 -1
- package/build/typed-routes/generate.js.map +1 -1
- package/build/useFocusEffect.d.ts.map +1 -1
- package/build/useFocusEffect.js +5 -3
- package/build/useFocusEffect.js.map +1 -1
- package/build/useScreens.d.ts +1 -3
- package/build/useScreens.d.ts.map +1 -1
- package/build/useScreens.js +2 -2
- package/build/useScreens.js.map +1 -1
- package/build/utils/stack.d.ts +5 -0
- package/build/utils/stack.d.ts.map +1 -0
- package/build/utils/stack.js +10 -0
- package/build/utils/stack.js.map +1 -0
- package/build/views/Screen.d.ts.map +1 -1
- package/build/views/Screen.js +13 -40
- package/build/views/Screen.js.map +1 -1
- package/build/views/Unmatched.d.ts.map +1 -1
- package/build/views/Unmatched.js +9 -3
- package/build/views/Unmatched.js.map +1 -1
- package/build/views/useSafeLayoutEffect.d.ts +3 -0
- package/build/views/useSafeLayoutEffect.d.ts.map +1 -0
- package/build/views/useSafeLayoutEffect.js +6 -0
- package/build/views/useSafeLayoutEffect.js.map +1 -0
- package/package.json +3 -3
- package/plugin/options.json +29 -1
- package/plugin/tsconfig.tsbuildinfo +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Unmatched.js","sourceRoot":"","sources":["../../src/views/Unmatched.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright © 2024 650 Industries.\n'use client';\n\nimport { createURL } from 'expo-linking';\nimport React from 'react';\nimport { StyleSheet, Text, View, Platform, Image } from 'react-native';\n\nimport { usePathname, useRouter } from '../hooks';\nimport { Link } from '../link/Link';\nimport { useNavigation } from '../useNavigation';\nimport { Pressable } from '../views/Pressable';\n\nconst useLayoutEffect = typeof window !== 'undefined' ? React.useLayoutEffect : function () {};\n\n/**\n * Default screen for unmatched routes.\n *\n * @hidden\n */\nexport function Unmatched() {\n const [render, setRender] = React.useState(false);\n\n const router = useRouter();\n const navigation = useNavigation();\n const pathname = usePathname();\n const url = createURL(pathname);\n\n React.useEffect(() => {\n setRender(true);\n }, []);\n\n useLayoutEffect(() => {\n navigation.setOptions({\n title: 'Not Found',\n });\n }, [navigation]);\n\n return (\n <View style={styles.container}>\n <NotFoundAsset />\n <Text role=\"heading\" aria-level={1} style={styles.title}>\n Unmatched Route\n </Text>\n <Text role=\"heading\" aria-level={2} style={[styles.subtitle, styles.secondaryText]}>\n Page could not be found.\n </Text>\n {render ? (\n <Link href={pathname} replace {...Platform.select({ native: { asChild: true } })}>\n <Pressable>\n {({ hovered, pressed }) => (\n <Text\n style={[\n styles.pageLink,\n styles.secondaryText,\n Platform.select({\n web: {\n transitionDuration: '200ms',\n opacity: 1,\n },\n }),\n hovered && {\n opacity: 0.8,\n textDecorationLine: 'underline',\n },\n pressed && {\n opacity: 0.8,\n },\n ]}>\n {url}\n </Text>\n )}\n </Pressable>\n </Link>\n ) : (\n <View style={[styles.pageLink, styles.placeholder]} />\n )}\n <View style={styles.linkContainer}>\n <Pressable>\n {({ hovered, pressed }) => (\n <Text\n onPress={() => {\n if (router.canGoBack()) {\n router.back();\n } else {\n router.replace('/');\n }\n }}\n style={[\n styles.link,\n Platform.select({\n web: {\n transitionDuration: '200ms',\n opacity: 1,\n },\n }),\n hovered && {\n opacity: 0.8,\n textDecorationLine: 'underline',\n },\n pressed && {\n opacity: 0.8,\n },\n ]}>\n Go back\n </Text>\n )}\n </Pressable>\n <Text style={[styles.linkSeparator, styles.secondaryText]}>•</Text>\n <Link href=\"/_sitemap\" replace {...Platform.select({ native: { asChild: true } })}>\n <Pressable>\n {({ hovered, pressed }) => (\n <Text\n style={[\n styles.link,\n Platform.select({\n web: {\n transitionDuration: '200ms',\n opacity: 1,\n },\n }),\n hovered && {\n opacity: 0.8,\n textDecorationLine: 'underline',\n },\n pressed && {\n opacity: 0.8,\n },\n ]}>\n Sitemap\n </Text>\n )}\n </Pressable>\n </Link>\n </View>\n </View>\n );\n}\n\nfunction NotFoundAsset() {\n return <Image source={require('expo-router/assets/unmatched.png')} style={styles.image} />;\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: 'black',\n padding: 24,\n paddingBottom: 64,\n alignItems: 'center',\n justifyContent: 'center',\n },\n image: {\n width: 270,\n height: 168,\n resizeMode: 'contain',\n marginBottom: 28,\n },\n title: {\n ...Platform.select({\n web: {\n fontSize: 64,\n lineHeight: 64,\n },\n default: {\n fontSize: 56,\n lineHeight: 56,\n },\n }),\n color: '#fff',\n fontWeight: '800',\n textAlign: 'center',\n },\n subtitle: {\n fontSize: 34,\n marginTop: 4,\n marginBottom: 12,\n fontWeight: '200',\n textAlign: 'center',\n },\n pageLink: {\n minHeight: 20,\n },\n secondaryText: {\n color: '#9ba1a6',\n },\n placeholder: {\n backgroundColor: '#9ba1a644',\n minWidth: 180,\n borderRadius: 5,\n },\n linkContainer: {\n marginTop: 28,\n flexDirection: 'row',\n gap: 12,\n },\n link: {\n fontSize: 20,\n textAlign: 'center',\n color: '#52a9ff',\n },\n linkSeparator: {\n fontSize: 20,\n },\n});\n"]}
|
|
1
|
+
{"version":3,"file":"Unmatched.js","sourceRoot":"","sources":["../../src/views/Unmatched.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright © 2024 650 Industries.\n'use client';\n\nimport { useRoute } from '@react-navigation/native';\nimport { createURL } from 'expo-linking';\nimport React from 'react';\nimport { StyleSheet, Text, View, Platform, Image } from 'react-native';\n\nimport { usePathname, useRouter } from '../hooks';\nimport { Link } from '../link/Link';\nimport { useNavigation } from '../useNavigation';\nimport { useSafeLayoutEffect } from './useSafeLayoutEffect';\nimport { isRoutePreloadedInStack } from '../utils/stack';\nimport { Pressable } from '../views/Pressable';\n\n/**\n * Default screen for unmatched routes.\n *\n * @hidden\n */\nexport function Unmatched() {\n const [render, setRender] = React.useState(false);\n\n const router = useRouter();\n const route = useRoute();\n\n const navigation = useNavigation();\n const pathname = usePathname();\n const url = createURL(pathname);\n\n React.useEffect(() => {\n setRender(true);\n }, []);\n\n const isFocused = navigation.isFocused();\n const isPreloaded = isRoutePreloadedInStack(navigation.getState(), route);\n\n /** This route may be prefetched if a <Link prefetch href=\"/<unmatched>\" /> is used */\n useSafeLayoutEffect(() => {\n navigation.setOptions({\n title: 'Not Found',\n });\n }, [isFocused, isPreloaded, navigation]);\n\n return (\n <View style={styles.container}>\n <NotFoundAsset />\n <Text role=\"heading\" aria-level={1} style={styles.title}>\n Unmatched Route\n </Text>\n <Text role=\"heading\" aria-level={2} style={[styles.subtitle, styles.secondaryText]}>\n Page could not be found.\n </Text>\n {render ? (\n <Link href={pathname} replace {...Platform.select({ native: { asChild: true } })}>\n <Pressable>\n {({ hovered, pressed }) => (\n <Text\n style={[\n styles.pageLink,\n styles.secondaryText,\n Platform.select({\n web: {\n transitionDuration: '200ms',\n opacity: 1,\n },\n }),\n hovered && {\n opacity: 0.8,\n textDecorationLine: 'underline',\n },\n pressed && {\n opacity: 0.8,\n },\n ]}>\n {url}\n </Text>\n )}\n </Pressable>\n </Link>\n ) : (\n <View style={[styles.pageLink, styles.placeholder]} />\n )}\n <View style={styles.linkContainer}>\n <Pressable>\n {({ hovered, pressed }) => (\n <Text\n onPress={() => {\n if (router.canGoBack()) {\n router.back();\n } else {\n router.replace('/');\n }\n }}\n style={[\n styles.link,\n Platform.select({\n web: {\n transitionDuration: '200ms',\n opacity: 1,\n },\n }),\n hovered && {\n opacity: 0.8,\n textDecorationLine: 'underline',\n },\n pressed && {\n opacity: 0.8,\n },\n ]}>\n Go back\n </Text>\n )}\n </Pressable>\n <Text style={[styles.linkSeparator, styles.secondaryText]}>•</Text>\n <Link href=\"/_sitemap\" replace {...Platform.select({ native: { asChild: true } })}>\n <Pressable>\n {({ hovered, pressed }) => (\n <Text\n style={[\n styles.link,\n Platform.select({\n web: {\n transitionDuration: '200ms',\n opacity: 1,\n },\n }),\n hovered && {\n opacity: 0.8,\n textDecorationLine: 'underline',\n },\n pressed && {\n opacity: 0.8,\n },\n ]}>\n Sitemap\n </Text>\n )}\n </Pressable>\n </Link>\n </View>\n </View>\n );\n}\n\nfunction NotFoundAsset() {\n return <Image source={require('expo-router/assets/unmatched.png')} style={styles.image} />;\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: 'black',\n padding: 24,\n paddingBottom: 64,\n alignItems: 'center',\n justifyContent: 'center',\n },\n image: {\n width: 270,\n height: 168,\n resizeMode: 'contain',\n marginBottom: 28,\n },\n title: {\n ...Platform.select({\n web: {\n fontSize: 64,\n lineHeight: 64,\n },\n default: {\n fontSize: 56,\n lineHeight: 56,\n },\n }),\n color: '#fff',\n fontWeight: '800',\n textAlign: 'center',\n },\n subtitle: {\n fontSize: 34,\n marginTop: 4,\n marginBottom: 12,\n fontWeight: '200',\n textAlign: 'center',\n },\n pageLink: {\n minHeight: 20,\n },\n secondaryText: {\n color: '#9ba1a6',\n },\n placeholder: {\n backgroundColor: '#9ba1a644',\n minWidth: 180,\n borderRadius: 5,\n },\n linkContainer: {\n marginTop: 28,\n flexDirection: 'row',\n gap: 12,\n },\n link: {\n fontSize: 20,\n textAlign: 'center',\n color: '#52a9ff',\n },\n linkSeparator: {\n fontSize: 20,\n },\n});\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSafeLayoutEffect.d.ts","sourceRoot":"","sources":["../../src/views/useSafeLayoutEffect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAExC,eAAO,MAAM,mBAAmB,wBAAmE,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useSafeLayoutEffect = void 0;
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
exports.useSafeLayoutEffect = typeof window !== 'undefined' ? react_1.useLayoutEffect : function () { };
|
|
6
|
+
//# sourceMappingURL=useSafeLayoutEffect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSafeLayoutEffect.js","sourceRoot":"","sources":["../../src/views/useSafeLayoutEffect.ts"],"names":[],"mappings":";;;AAAA,iCAAwC;AAE3B,QAAA,mBAAmB,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,uBAAe,CAAC,CAAC,CAAC,cAAa,CAAC,CAAC","sourcesContent":["import { useLayoutEffect } from 'react';\n\nexport const useSafeLayoutEffect = typeof window !== 'undefined' ? useLayoutEffect : function () {};\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expo-router",
|
|
3
|
-
"version": "5.1.
|
|
3
|
+
"version": "5.1.2",
|
|
4
4
|
"description": "Expo Router is a file-based router for React Native and web applications.",
|
|
5
5
|
"author": "650 Industries, Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
},
|
|
107
107
|
"dependencies": {
|
|
108
108
|
"@expo/metro-runtime": "5.0.4",
|
|
109
|
-
"@expo/server": "^0.6.
|
|
109
|
+
"@expo/server": "^0.6.3",
|
|
110
110
|
"@radix-ui/react-slot": "1.2.0",
|
|
111
111
|
"@react-navigation/bottom-tabs": "^7.3.10",
|
|
112
112
|
"@react-navigation/native": "^7.1.6",
|
|
@@ -120,5 +120,5 @@
|
|
|
120
120
|
"server-only": "^0.0.1",
|
|
121
121
|
"shallowequal": "^1.1.0"
|
|
122
122
|
},
|
|
123
|
-
"gitHead": "
|
|
123
|
+
"gitHead": "9731a6191dcab84e9c3a24492bbe70c56d6f5cc3"
|
|
124
124
|
}
|
package/plugin/options.json
CHANGED
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
"description": "The target file path that this route should redirect to",
|
|
92
92
|
"type": "string"
|
|
93
93
|
},
|
|
94
|
-
"
|
|
94
|
+
"permanent": {
|
|
95
95
|
"description": "Whether the redirect is temporary or permanent. Defaults to `false`.",
|
|
96
96
|
"type": "boolean",
|
|
97
97
|
"default": false
|
|
@@ -107,6 +107,34 @@
|
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
|
+
},
|
|
111
|
+
"rewrites": {
|
|
112
|
+
"description": "Enable static rewrites",
|
|
113
|
+
"type": "array",
|
|
114
|
+
"uniqueItems": true,
|
|
115
|
+
"items": {
|
|
116
|
+
"type": "object",
|
|
117
|
+
"required": ["source", "destination"],
|
|
118
|
+
"properties": {
|
|
119
|
+
"source": {
|
|
120
|
+
"description": "The previous file path that should be rewritten",
|
|
121
|
+
"type": "string"
|
|
122
|
+
},
|
|
123
|
+
"destination": {
|
|
124
|
+
"description": "The target file path that this route should rewrite",
|
|
125
|
+
"type": "string"
|
|
126
|
+
},
|
|
127
|
+
"methods": {
|
|
128
|
+
"description": "HTTP methods that should be rewritten. Omit to rewrite all methods.",
|
|
129
|
+
"type": "array",
|
|
130
|
+
"uniqueItems": true,
|
|
131
|
+
"items": {
|
|
132
|
+
"type": "string",
|
|
133
|
+
"enum": ["GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS", "HEAD"]
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
110
138
|
}
|
|
111
139
|
},
|
|
112
140
|
"additionalProperties": false
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"root":["./src/index.ts"],"version":"5.8.3"}
|