one 1.1.546 → 1.1.547-1762219526973
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/dist/cjs/Root.cjs +3 -2
- package/dist/cjs/Root.js +2 -2
- package/dist/cjs/Root.js.map +1 -1
- package/dist/cjs/Root.native.js +3 -2
- package/dist/cjs/Root.native.js.map +1 -1
- package/dist/cjs/fork/extractPathFromURL.cjs +1 -1
- package/dist/cjs/fork/extractPathFromURL.js +1 -1
- package/dist/cjs/fork/extractPathFromURL.js.map +1 -1
- package/dist/cjs/fork/extractPathFromURL.native.js +1 -1
- package/dist/cjs/fork/extractPathFromURL.native.js.map +1 -1
- package/dist/cjs/layouts/Tabs.js.map +1 -1
- package/dist/cjs/layouts/Tabs.native.js.map +1 -1
- package/dist/cjs/router/RouteInfoContext.cjs +2 -2
- package/dist/cjs/router/RouteInfoContext.js +2 -2
- package/dist/cjs/router/RouteInfoContext.js.map +1 -1
- package/dist/cjs/router/RouteInfoContext.native.js +2 -2
- package/dist/cjs/router/RouteInfoContext.native.js.map +1 -1
- package/dist/cjs/router/getRouteInfo.cjs +50 -0
- package/dist/cjs/router/getRouteInfo.js +41 -0
- package/dist/cjs/router/getRouteInfo.js.map +6 -0
- package/dist/cjs/router/getRouteInfo.native.js +56 -0
- package/dist/cjs/router/getRouteInfo.native.js.map +1 -0
- package/dist/cjs/router/isIndexPath.cjs +36 -0
- package/dist/cjs/router/isIndexPath.js +31 -0
- package/dist/cjs/router/isIndexPath.js.map +6 -0
- package/dist/cjs/router/isIndexPath.native.js +41 -0
- package/dist/cjs/router/isIndexPath.native.js.map +1 -0
- package/dist/cjs/router/linkingConfig.cjs +43 -0
- package/dist/cjs/router/linkingConfig.js +41 -0
- package/dist/cjs/router/linkingConfig.js.map +6 -0
- package/dist/cjs/router/linkingConfig.native.js +52 -0
- package/dist/cjs/router/linkingConfig.native.js.map +1 -0
- package/dist/cjs/router/router.cjs +9 -44
- package/dist/cjs/router/router.js +9 -44
- package/dist/cjs/router/router.js.map +2 -2
- package/dist/cjs/router/router.native.js +10 -55
- package/dist/cjs/router/router.native.js.map +1 -1
- package/dist/cjs/setup.cjs +0 -1
- package/dist/cjs/setup.js +0 -1
- package/dist/cjs/setup.js.map +2 -2
- package/dist/cjs/setup.native.js.map +1 -6
- package/dist/cjs/vite/one.cjs +3 -3
- package/dist/cjs/vite/one.js +2 -2
- package/dist/cjs/vite/one.js.map +1 -1
- package/dist/cjs/vite/one.native.js +3 -3
- package/dist/cjs/vite/one.native.js.map +1 -1
- package/dist/esm/Root.js +3 -2
- package/dist/esm/Root.js.map +1 -1
- package/dist/esm/Root.mjs +3 -2
- package/dist/esm/Root.mjs.map +1 -1
- package/dist/esm/Root.native.js +3 -2
- package/dist/esm/Root.native.js.map +1 -1
- package/dist/esm/fork/extractPathFromURL.js +1 -1
- package/dist/esm/fork/extractPathFromURL.js.map +1 -1
- package/dist/esm/fork/extractPathFromURL.mjs +1 -1
- package/dist/esm/fork/extractPathFromURL.mjs.map +1 -1
- package/dist/esm/fork/extractPathFromURL.native.js +1 -1
- package/dist/esm/fork/extractPathFromURL.native.js.map +1 -1
- package/dist/esm/layouts/Tabs.js.map +1 -1
- package/dist/esm/layouts/Tabs.mjs.map +1 -1
- package/dist/esm/layouts/Tabs.native.js.map +1 -1
- package/dist/esm/router/RouteInfoContext.js +1 -1
- package/dist/esm/router/RouteInfoContext.mjs +1 -1
- package/dist/esm/router/RouteInfoContext.native.js +1 -1
- package/dist/esm/router/getRouteInfo.js +29 -0
- package/dist/esm/router/getRouteInfo.js.map +6 -0
- package/dist/esm/router/getRouteInfo.mjs +27 -0
- package/dist/esm/router/getRouteInfo.mjs.map +1 -0
- package/dist/esm/router/getRouteInfo.native.js +30 -0
- package/dist/esm/router/getRouteInfo.native.js.map +1 -0
- package/dist/esm/router/isIndexPath.js +15 -0
- package/dist/esm/router/isIndexPath.js.map +6 -0
- package/dist/esm/router/isIndexPath.mjs +13 -0
- package/dist/esm/router/isIndexPath.mjs.map +1 -0
- package/dist/esm/router/isIndexPath.native.js +15 -0
- package/dist/esm/router/isIndexPath.native.js.map +1 -0
- package/dist/esm/router/linkingConfig.js +25 -0
- package/dist/esm/router/linkingConfig.js.map +6 -0
- package/dist/esm/router/linkingConfig.mjs +17 -0
- package/dist/esm/router/linkingConfig.mjs.map +1 -0
- package/dist/esm/router/linkingConfig.native.js +23 -0
- package/dist/esm/router/linkingConfig.native.js.map +1 -0
- package/dist/esm/router/router.js +10 -49
- package/dist/esm/router/router.js.map +2 -2
- package/dist/esm/router/router.mjs +9 -42
- package/dist/esm/router/router.mjs.map +1 -1
- package/dist/esm/router/router.native.js +10 -53
- package/dist/esm/router/router.native.js.map +1 -1
- package/dist/esm/setup.js +0 -1
- package/dist/esm/setup.js.map +2 -2
- package/dist/esm/setup.mjs +1 -1
- package/dist/esm/setup.mjs.map +1 -1
- package/dist/esm/vite/one.js +3 -3
- package/dist/esm/vite/one.js.map +1 -1
- package/dist/esm/vite/one.mjs +3 -3
- package/dist/esm/vite/one.mjs.map +1 -1
- package/dist/esm/vite/one.native.js +3 -3
- package/dist/esm/vite/one.native.js.map +1 -1
- package/package.json +32 -31
- package/src/Root.tsx +3 -3
- package/src/fork/extractPathFromURL.ts +1 -1
- package/src/layouts/Tabs.tsx +1 -1
- package/src/router/RouteInfoContext.tsx +1 -1
- package/src/router/getRouteInfo.ts +37 -0
- package/src/router/isIndexPath.ts +33 -0
- package/src/router/linkingConfig.ts +38 -0
- package/src/router/router.ts +18 -90
- package/src/setup.ts +2 -1
- package/src/vite/one.ts +7 -9
- package/types/Root.d.ts.map +1 -1
- package/types/layouts/Drawer.d.ts +6 -14
- package/types/layouts/Drawer.d.ts.map +1 -1
- package/types/layouts/Stack.d.ts +6 -14
- package/types/layouts/Stack.d.ts.map +1 -1
- package/types/layouts/Tabs.d.ts +6 -14
- package/types/layouts/Tabs.d.ts.map +1 -1
- package/types/router/getRouteInfo.d.ts +4 -0
- package/types/router/getRouteInfo.d.ts.map +1 -0
- package/types/router/isIndexPath.d.ts +3 -0
- package/types/router/isIndexPath.d.ts.map +1 -0
- package/types/router/linkingConfig.d.ts +8 -0
- package/types/router/linkingConfig.d.ts.map +1 -0
- package/types/router/router.d.ts +8 -6
- package/types/router/router.d.ts.map +1 -1
- package/types/setup.d.ts +0 -1
- package/types/setup.d.ts.map +1 -1
- package/types/vite/one.d.ts.map +1 -1
- package/vendor/react-dom/package.json +1 -1
package/src/layouts/Tabs.tsx
CHANGED
|
@@ -68,7 +68,7 @@ export const Tabs = withLayoutContext<
|
|
|
68
68
|
Platform.OS === 'web' ? props.children : <Pressable>{props.children}</Pressable>
|
|
69
69
|
return (
|
|
70
70
|
<Link
|
|
71
|
-
{...props}
|
|
71
|
+
{...(props as any)}
|
|
72
72
|
style={[{ display: 'flex' }, props.style]}
|
|
73
73
|
href={href}
|
|
74
74
|
asChild={Platform.OS !== 'web'}
|
|
@@ -2,7 +2,7 @@ import type React from 'react'
|
|
|
2
2
|
import { createContext, useRef } from 'react'
|
|
3
3
|
import type { UrlObject } from './getNormalizedStatePath'
|
|
4
4
|
import { useStateForPath } from '@react-navigation/core'
|
|
5
|
-
import { getRouteInfo } from './
|
|
5
|
+
import { getRouteInfo } from './getRouteInfo'
|
|
6
6
|
|
|
7
7
|
export const RouteInfoContext = createContext<UrlObject | undefined>(undefined)
|
|
8
8
|
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { getPathFromState as originalGetPathFromState } from '@react-navigation/core'
|
|
2
|
+
import { getPathDataFromState, type State } from '../fork/getPathFromState'
|
|
3
|
+
import { stripBaseUrl } from '../fork/getStateFromPath-mods'
|
|
4
|
+
import type { OneRouter } from '../interfaces/router'
|
|
5
|
+
import { getNormalizedStatePath, type UrlObject } from './getNormalizedStatePath'
|
|
6
|
+
import { isIndexPath } from './isIndexPath'
|
|
7
|
+
import { getLinking } from './linkingConfig'
|
|
8
|
+
|
|
9
|
+
export function getRouteInfo(state: OneRouter.ResultState) {
|
|
10
|
+
return getRouteInfoFromState(
|
|
11
|
+
(state: Parameters<typeof originalGetPathFromState>[0], asPath: boolean) => {
|
|
12
|
+
return getPathDataFromState(state, {
|
|
13
|
+
screens: [],
|
|
14
|
+
...getLinking()?.config,
|
|
15
|
+
preserveDynamicRoutes: asPath,
|
|
16
|
+
preserveGroups: asPath,
|
|
17
|
+
})
|
|
18
|
+
},
|
|
19
|
+
state
|
|
20
|
+
)
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
function getRouteInfoFromState(
|
|
24
|
+
getPathFromState: (state: State, asPath: boolean) => { path: string; params: any },
|
|
25
|
+
state: State,
|
|
26
|
+
baseUrl?: string
|
|
27
|
+
): UrlObject {
|
|
28
|
+
const { path } = getPathFromState(state, false)
|
|
29
|
+
const qualified = getPathFromState(state, true)
|
|
30
|
+
|
|
31
|
+
return {
|
|
32
|
+
unstable_globalHref: path,
|
|
33
|
+
pathname: stripBaseUrl(path, baseUrl).split('?')[0],
|
|
34
|
+
isIndex: isIndexPath(state),
|
|
35
|
+
...getNormalizedStatePath(qualified, baseUrl),
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { State } from '../fork/getPathFromState'
|
|
2
|
+
|
|
3
|
+
type RouteLikeTree = { name: string; state?: { routes?: RouteLikeTree[] } }
|
|
4
|
+
|
|
5
|
+
export function isIndexPath(state: State) {
|
|
6
|
+
const route = getActualLastRoute(state.routes[state.index ?? state.routes.length - 1])
|
|
7
|
+
|
|
8
|
+
if (route.state) {
|
|
9
|
+
return isIndexPath(route.state)
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
if (route.name === 'index') {
|
|
13
|
+
return true
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
if (route.params && 'screen' in route.params) {
|
|
17
|
+
return route.params.screen === 'index'
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
if (route.name.match(/.+\/index$/)) {
|
|
21
|
+
return true
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
return false
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
function getActualLastRoute<A extends RouteLikeTree>(routeLike: A): A {
|
|
28
|
+
if (routeLike.name[0] === '(' && routeLike.state?.routes) {
|
|
29
|
+
const routes = routeLike.state.routes
|
|
30
|
+
return getActualLastRoute(routes[routes.length - 1]) as any
|
|
31
|
+
}
|
|
32
|
+
return routeLike
|
|
33
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { OneRouter } from '../interfaces/router'
|
|
2
|
+
import { getLinkingConfig as createLinkingConfig, type OneLinkingOptions } from './getLinkingConfig'
|
|
3
|
+
import type { RouteNode } from './Route'
|
|
4
|
+
|
|
5
|
+
let linkingConfig: OneLinkingOptions | undefined
|
|
6
|
+
|
|
7
|
+
export function getLinking() {
|
|
8
|
+
return linkingConfig
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export function setLinking(_: OneLinkingOptions) {
|
|
12
|
+
linkingConfig = _
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export function resetLinking() {
|
|
16
|
+
linkingConfig = undefined
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export function setupLinking(
|
|
20
|
+
routeNode: RouteNode | null,
|
|
21
|
+
initialLocation?: URL
|
|
22
|
+
): OneRouter.ResultState | undefined {
|
|
23
|
+
let initialState: OneRouter.ResultState | undefined
|
|
24
|
+
|
|
25
|
+
if (routeNode) {
|
|
26
|
+
linkingConfig = createLinkingConfig(routeNode)
|
|
27
|
+
|
|
28
|
+
if (initialLocation) {
|
|
29
|
+
linkingConfig.getInitialURL = () => initialLocation.toString()
|
|
30
|
+
initialState = linkingConfig.getStateFromPath?.(
|
|
31
|
+
initialLocation.pathname + (initialLocation.search || ''),
|
|
32
|
+
linkingConfig.config
|
|
33
|
+
)
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return initialState
|
|
38
|
+
}
|
package/src/router/router.ts
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Note: this entire module is exported as an interface router.*
|
|
3
|
+
* We need to treat exports as an API and not change them, maybe not
|
|
4
|
+
* the best decision.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { StackActions, type NavigationContainerRefWithCurrent } from '@react-navigation/native'
|
|
6
8
|
import * as Linking from 'expo-linking'
|
|
7
|
-
import { Fragment, startTransition, type ComponentType
|
|
9
|
+
import { Fragment, startTransition, useSyncExternalStore, type ComponentType } from 'react'
|
|
8
10
|
import { Platform } from 'react-native'
|
|
9
|
-
import type { State } from '../fork/getPathFromState'
|
|
10
|
-
import { getPathDataFromState } from '../fork/getPathFromState'
|
|
11
|
-
import { stripBaseUrl } from '../fork/getStateFromPath-mods'
|
|
12
11
|
import type { OneRouter } from '../interfaces/router'
|
|
13
12
|
import { resolveHref } from '../link/href'
|
|
14
13
|
import { resolve } from '../link/path'
|
|
@@ -17,10 +16,11 @@ import { getLoaderPath, getPreloadPath } from '../utils/cleanUrl'
|
|
|
17
16
|
import { dynamicImport } from '../utils/dynamicImport'
|
|
18
17
|
import { shouldLinkExternally } from '../utils/url'
|
|
19
18
|
import type { One } from '../vite/types'
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
19
|
+
import type { UrlObject } from './getNormalizedStatePath'
|
|
20
|
+
import { getRouteInfo } from './getRouteInfo'
|
|
22
21
|
import { getRoutes } from './getRoutes'
|
|
23
22
|
import { setLastAction } from './lastAction'
|
|
23
|
+
import { getLinking, resetLinking, setupLinking } from './linkingConfig'
|
|
24
24
|
import type { RouteNode } from './Route'
|
|
25
25
|
import { sortRoutes } from './sortRoutes'
|
|
26
26
|
import { getQualifiedRouteComponent } from './useScreens'
|
|
@@ -29,7 +29,6 @@ import { getNavigateAction } from './utils/getNavigateAction'
|
|
|
29
29
|
// Module-scoped variables
|
|
30
30
|
export let routeNode: RouteNode | null = null
|
|
31
31
|
export let rootComponent: ComponentType
|
|
32
|
-
export let linking: OneLinkingOptions | undefined
|
|
33
32
|
|
|
34
33
|
export let hasAttemptedToHideSplash = false
|
|
35
34
|
export let initialState: OneRouter.ResultState | undefined
|
|
@@ -67,7 +66,7 @@ export function initialize(
|
|
|
67
66
|
}
|
|
68
67
|
|
|
69
68
|
navigationRef = ref
|
|
70
|
-
|
|
69
|
+
setupLinkingAndRouteInfo(initialLocation)
|
|
71
70
|
subscribeToNavigationChanges()
|
|
72
71
|
}
|
|
73
72
|
|
|
@@ -76,24 +75,14 @@ function cleanUpState() {
|
|
|
76
75
|
rootState = undefined
|
|
77
76
|
nextState = undefined
|
|
78
77
|
routeInfo = undefined
|
|
79
|
-
|
|
78
|
+
resetLinking()
|
|
80
79
|
navigationRefSubscription?.()
|
|
81
80
|
rootStateSubscribers.clear()
|
|
82
81
|
storeSubscribers.clear()
|
|
83
82
|
}
|
|
84
83
|
|
|
85
|
-
function
|
|
86
|
-
|
|
87
|
-
linking = getLinkingConfig(routeNode)
|
|
88
|
-
|
|
89
|
-
if (initialLocation) {
|
|
90
|
-
linking.getInitialURL = () => initialLocation.toString()
|
|
91
|
-
initialState = linking.getStateFromPath?.(
|
|
92
|
-
initialLocation.pathname + (initialLocation.search || ''),
|
|
93
|
-
linking.config
|
|
94
|
-
)
|
|
95
|
-
}
|
|
96
|
-
}
|
|
84
|
+
function setupLinkingAndRouteInfo(initialLocation?: URL) {
|
|
85
|
+
initialState = setupLinking(routeNode, initialLocation)
|
|
97
86
|
|
|
98
87
|
if (initialState) {
|
|
99
88
|
rootState = initialState
|
|
@@ -232,36 +221,6 @@ export function updateState(state: OneRouter.ResultState, nextStateParam = state
|
|
|
232
221
|
}
|
|
233
222
|
}
|
|
234
223
|
|
|
235
|
-
export function getRouteInfo(state: OneRouter.ResultState) {
|
|
236
|
-
return getRouteInfoFromState(
|
|
237
|
-
(state: Parameters<typeof originalGetPathFromState>[0], asPath: boolean) => {
|
|
238
|
-
return getPathDataFromState(state, {
|
|
239
|
-
screens: [],
|
|
240
|
-
...linking?.config,
|
|
241
|
-
preserveDynamicRoutes: asPath,
|
|
242
|
-
preserveGroups: asPath,
|
|
243
|
-
})
|
|
244
|
-
},
|
|
245
|
-
state
|
|
246
|
-
)
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
function getRouteInfoFromState(
|
|
250
|
-
getPathFromState: (state: State, asPath: boolean) => { path: string; params: any },
|
|
251
|
-
state: State,
|
|
252
|
-
baseUrl?: string
|
|
253
|
-
): UrlObject {
|
|
254
|
-
const { path } = getPathFromState(state, false)
|
|
255
|
-
const qualified = getPathFromState(state, true)
|
|
256
|
-
|
|
257
|
-
return {
|
|
258
|
-
unstable_globalHref: path,
|
|
259
|
-
pathname: stripBaseUrl(path, baseUrl).split('?')[0],
|
|
260
|
-
isIndex: isIndexPath(state),
|
|
261
|
-
...getNormalizedStatePath(qualified, baseUrl),
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
|
|
265
224
|
// Subscription functions
|
|
266
225
|
export function subscribeToRootState(subscriber: OneRouter.RootStateListener) {
|
|
267
226
|
rootStateSubscribers.add(subscriber)
|
|
@@ -310,7 +269,7 @@ function getSnapshot() {
|
|
|
310
269
|
linkTo,
|
|
311
270
|
routeNode,
|
|
312
271
|
rootComponent,
|
|
313
|
-
linking,
|
|
272
|
+
linking: getLinking(),
|
|
314
273
|
hasAttemptedToHideSplash,
|
|
315
274
|
initialState,
|
|
316
275
|
rootState,
|
|
@@ -359,39 +318,6 @@ export function useStoreRouteInfo() {
|
|
|
359
318
|
return useSyncExternalStore(subscribeToRootState, routeInfoSnapshot, routeInfoSnapshot)
|
|
360
319
|
}
|
|
361
320
|
|
|
362
|
-
// Utility functions
|
|
363
|
-
function isIndexPath(state: State) {
|
|
364
|
-
const route = getActualLastRoute(state.routes[state.index ?? state.routes.length - 1])
|
|
365
|
-
|
|
366
|
-
if (route.state) {
|
|
367
|
-
return isIndexPath(route.state)
|
|
368
|
-
}
|
|
369
|
-
|
|
370
|
-
if (route.name === 'index') {
|
|
371
|
-
return true
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
if (route.params && 'screen' in route.params) {
|
|
375
|
-
return route.params.screen === 'index'
|
|
376
|
-
}
|
|
377
|
-
|
|
378
|
-
if (route.name.match(/.+\/index$/)) {
|
|
379
|
-
return true
|
|
380
|
-
}
|
|
381
|
-
|
|
382
|
-
return false
|
|
383
|
-
}
|
|
384
|
-
|
|
385
|
-
type RouteLikeTree = { name: string; state?: { routes?: RouteLikeTree[] } }
|
|
386
|
-
|
|
387
|
-
function getActualLastRoute<A extends RouteLikeTree>(routeLike: A): A {
|
|
388
|
-
if (routeLike.name[0] === '(' && routeLike.state?.routes) {
|
|
389
|
-
const routes = routeLike.state.routes
|
|
390
|
-
return getActualLastRoute(routes[routes.length - 1]) as any
|
|
391
|
-
}
|
|
392
|
-
return routeLike
|
|
393
|
-
}
|
|
394
|
-
|
|
395
321
|
// Cleanup function
|
|
396
322
|
export function cleanup() {
|
|
397
323
|
if (splashScreenAnimationFrame) {
|
|
@@ -454,6 +380,8 @@ export async function linkTo(href: string, event?: string, options?: OneRouter.L
|
|
|
454
380
|
)
|
|
455
381
|
}
|
|
456
382
|
|
|
383
|
+
const linking = getLinking()
|
|
384
|
+
|
|
457
385
|
if (!linking) {
|
|
458
386
|
throw new Error('Attempted to link to route when no routes are present')
|
|
459
387
|
}
|
package/src/setup.ts
CHANGED
|
@@ -13,4 +13,5 @@
|
|
|
13
13
|
// fixes bad import error in expo-modules-core
|
|
14
14
|
// without this you run into error loading web immediately
|
|
15
15
|
// where globalThis.expo is not defined
|
|
16
|
-
import
|
|
16
|
+
// @zetavg: the actual thing we need to do is maybe import and call `installExpoGlobalPolyfill`. This is currently the file that does it, so we import it.
|
|
17
|
+
// import 'expo-modules-core/src/polyfill/index.web.ts'
|
package/src/vite/one.ts
CHANGED
|
@@ -1,13 +1,18 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { configureVXRNCompilerPlugin } from '@vxrn/compiler'
|
|
2
2
|
import { resolvePath } from '@vxrn/resolve'
|
|
3
|
+
import type {
|
|
4
|
+
ExpoManifestRequestHandlerPluginPluginOptions,
|
|
5
|
+
MetroPluginOptions,
|
|
6
|
+
} from '@vxrn/vite-plugin-metro'
|
|
3
7
|
import events from 'node:events'
|
|
4
8
|
import path from 'node:path'
|
|
5
|
-
import type { Plugin, PluginOption
|
|
9
|
+
import type { Plugin, PluginOption } from 'vite'
|
|
6
10
|
import { barrel } from 'vite-plugin-barrel'
|
|
7
11
|
import tsconfigPaths from 'vite-tsconfig-paths'
|
|
8
12
|
import { autoDepOptimizePlugin, getOptimizeDeps, getOptionsFilled, loadEnv } from 'vxrn'
|
|
9
13
|
import vxrnVitePlugin from 'vxrn/vite-plugin'
|
|
10
14
|
import { CACHE_KEY } from '../constants'
|
|
15
|
+
import { getViteMetroPluginOptions } from '../metro-config/getViteMetroPluginOptions'
|
|
11
16
|
import '../polyfills-server'
|
|
12
17
|
import { getRouterRootFromOneOptions } from '../utils/getRouterRootFromOneOptions'
|
|
13
18
|
import { ensureTSConfig } from './ensureTsConfig'
|
|
@@ -20,11 +25,6 @@ import { SSRCSSPlugin } from './plugins/SSRCSSPlugin'
|
|
|
20
25
|
import { virtualEntryId } from './plugins/virtualEntryConstants'
|
|
21
26
|
import { createVirtualEntry } from './plugins/virtualEntryPlugin'
|
|
22
27
|
import type { One } from './types'
|
|
23
|
-
import type {
|
|
24
|
-
ExpoManifestRequestHandlerPluginPluginOptions,
|
|
25
|
-
MetroPluginOptions,
|
|
26
|
-
} from '@vxrn/vite-plugin-metro'
|
|
27
|
-
import { getViteMetroPluginOptions } from '../metro-config/getViteMetroPluginOptions'
|
|
28
28
|
|
|
29
29
|
type MetroOptions = MetroPluginOptions
|
|
30
30
|
|
|
@@ -116,8 +116,6 @@ export function one(options: One.PluginOptions = {}): PluginOption {
|
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
118
|
|
|
119
|
-
clearCompilerCache()
|
|
120
|
-
|
|
121
119
|
// ensure tsconfig
|
|
122
120
|
if (options.config?.ensureTSConfig !== false) {
|
|
123
121
|
void ensureTSConfig()
|
package/types/Root.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Root.d.ts","sourceRoot":"","sources":["../src/Root.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,wBAAwB,EAC9B,MAAM,0BAA0B,CAAA;AAEjC,OAAO,
|
|
1
|
+
{"version":3,"file":"Root.d.ts","sourceRoot":"","sources":["../src/Root.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,wBAAwB,EAC9B,MAAM,0BAA0B,CAAA;AAEjC,OAAO,EAOL,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AASd,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAKlD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAEvC,KAAK,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,GAAG;IAC7C,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,EAAE,mBAAmB,CAAA;IAC3B,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,GAAG,CAAC,YAAY,CAAA;IAC/B,KAAK,CAAC,EAAE,GAAG,CAAC,KAAK,CAAA;CAClB,CAAA;AAED,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,GAAG,CAAC,YAAY,CAAA;IACzB,QAAQ,CAAC,EAAE,GAAG,CAAA;IACd,OAAO,CAAC,EAAE,iBAAiB,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAA;IACpD,wBAAwB,CAAC,EAAE,wBAAwB,GAAG;QACpD,KAAK,CAAC,EAAE;YACN,IAAI,EAAE,OAAO,CAAA;YACb,MAAM,EAAE;gBACN,OAAO,EAAE,MAAM,CAAA;gBACf,UAAU,EAAE,MAAM,CAAA;gBAClB,IAAI,EAAE,MAAM,CAAA;gBACZ,IAAI,EAAE,MAAM,CAAA;gBACZ,MAAM,EAAE,MAAM,CAAA;gBACd,YAAY,EAAE,MAAM,CAAA;aACrB,CAAA;SACF,CAAA;KACF,CAAA;CACF,CAAA;AAOD,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,kDA6FpC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type DrawerNavigationOptions, type DrawerNavigationEventMap } from '@react-navigation/drawer';
|
|
2
2
|
import type { DrawerNavigationState, ParamListBase } from '@react-navigation/native';
|
|
3
|
-
export declare const Drawer: import("react").ForwardRefExoticComponent<Omit<Omit<import("@react-navigation/drawer").DrawerNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
3
|
+
export declare const Drawer: import("react").ForwardRefExoticComponent<Omit<Omit<import("@react-navigation/drawer").DrawerNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router" | "UNSTABLE_routeNamesChangeBehavior"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
4
4
|
children: React.ReactNode;
|
|
5
5
|
layout?: ((props: {
|
|
6
6
|
state: DrawerNavigationState<ParamListBase>;
|
|
@@ -39,21 +39,17 @@ export declare const Drawer: import("react").ForwardRefExoticComponent<Omit<Omit
|
|
|
39
39
|
navigation: import("@react-navigation/drawer").DrawerNavigationProp<ParamListBase, string, undefined>;
|
|
40
40
|
theme: ReactNavigation.Theme;
|
|
41
41
|
}) => DrawerNavigationOptions) | undefined;
|
|
42
|
-
screenLayout?: ((props:
|
|
43
|
-
route: import("@react-navigation/core").RouteProp<ParamListBase, string>;
|
|
44
|
-
navigation: import("@react-navigation/drawer").DrawerNavigationProp<ParamListBase, string, undefined>;
|
|
45
|
-
theme: ReactNavigation.Theme;
|
|
46
|
-
children: React.ReactElement;
|
|
47
|
-
}) => React.ReactElement) | undefined;
|
|
42
|
+
screenLayout?: ((props: import("@react-navigation/core").ScreenLayoutArgs<ParamListBase, string, DrawerNavigationOptions, import("@react-navigation/drawer").DrawerNavigationProp<ParamListBase, string, undefined>>) => React.ReactElement) | undefined;
|
|
48
43
|
UNSTABLE_router?: (<Action extends Readonly<{
|
|
49
44
|
type: string;
|
|
50
45
|
payload?: object;
|
|
51
46
|
source?: string;
|
|
52
47
|
target?: string;
|
|
53
48
|
}>>(original: import("@react-navigation/routers").Router<DrawerNavigationState<ParamListBase>, Action>) => Partial<import("@react-navigation/routers").Router<DrawerNavigationState<ParamListBase>, Action>>) | undefined;
|
|
49
|
+
UNSTABLE_routeNamesChangeBehavior?: "firstMatch" | "lastUnhandled";
|
|
54
50
|
} & {
|
|
55
51
|
id?: undefined;
|
|
56
|
-
}, "children"> & Partial<Pick<Omit<import("@react-navigation/drawer").DrawerNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
52
|
+
}, "children"> & Partial<Pick<Omit<import("@react-navigation/drawer").DrawerNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router" | "UNSTABLE_routeNamesChangeBehavior"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
57
53
|
children: React.ReactNode;
|
|
58
54
|
layout?: ((props: {
|
|
59
55
|
state: DrawerNavigationState<ParamListBase>;
|
|
@@ -92,18 +88,14 @@ export declare const Drawer: import("react").ForwardRefExoticComponent<Omit<Omit
|
|
|
92
88
|
navigation: import("@react-navigation/drawer").DrawerNavigationProp<ParamListBase, string, undefined>;
|
|
93
89
|
theme: ReactNavigation.Theme;
|
|
94
90
|
}) => DrawerNavigationOptions) | undefined;
|
|
95
|
-
screenLayout?: ((props:
|
|
96
|
-
route: import("@react-navigation/core").RouteProp<ParamListBase, string>;
|
|
97
|
-
navigation: import("@react-navigation/drawer").DrawerNavigationProp<ParamListBase, string, undefined>;
|
|
98
|
-
theme: ReactNavigation.Theme;
|
|
99
|
-
children: React.ReactElement;
|
|
100
|
-
}) => React.ReactElement) | undefined;
|
|
91
|
+
screenLayout?: ((props: import("@react-navigation/core").ScreenLayoutArgs<ParamListBase, string, DrawerNavigationOptions, import("@react-navigation/drawer").DrawerNavigationProp<ParamListBase, string, undefined>>) => React.ReactElement) | undefined;
|
|
101
92
|
UNSTABLE_router?: (<Action extends Readonly<{
|
|
102
93
|
type: string;
|
|
103
94
|
payload?: object;
|
|
104
95
|
source?: string;
|
|
105
96
|
target?: string;
|
|
106
97
|
}>>(original: import("@react-navigation/routers").Router<DrawerNavigationState<ParamListBase>, Action>) => Partial<import("@react-navigation/routers").Router<DrawerNavigationState<ParamListBase>, Action>>) | undefined;
|
|
98
|
+
UNSTABLE_routeNamesChangeBehavior?: "firstMatch" | "lastUnhandled";
|
|
107
99
|
} & {
|
|
108
100
|
id?: undefined;
|
|
109
101
|
}, "children">> & import("react").RefAttributes<unknown>> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../src/layouts/Drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC9B,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAMpF,eAAO,MAAM,MAAM;cAQ2Q,MAAO,SAAS;;;;;kBAAmb,MAAO,SAAS;UAAW,MAAO,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAAod,gBAAiB,KAAK
|
|
1
|
+
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../src/layouts/Drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC9B,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAMpF,eAAO,MAAM,MAAM;cAQ2Q,MAAO,SAAS;;;;;kBAAmb,MAAO,SAAS;UAAW,MAAO,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAAod,gBAAiB,KAAK;;6NAAsM,MAAO,YAAY;;;;;;;;;;;cAAprC,MAAO,SAAS;;;;;kBAAmb,MAAO,SAAS;UAAW,MAAO,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAAod,gBAAiB,KAAK;;6NAAsM,MAAO,YAAY;;;;;;;;;;;;CAHh8C,CAAA;AAElB,eAAe,MAAM,CAAA"}
|
package/types/layouts/Stack.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ParamListBase, StackNavigationState } from '@react-navigation/native';
|
|
2
2
|
import { type NativeStackNavigationEventMap, type NativeStackNavigationOptions } from '@react-navigation/native-stack';
|
|
3
|
-
export declare const Stack: import("react").ForwardRefExoticComponent<Omit<Omit<import("@react-navigation/native-stack").NativeStackNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
3
|
+
export declare const Stack: import("react").ForwardRefExoticComponent<Omit<Omit<import("@react-navigation/native-stack").NativeStackNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router" | "UNSTABLE_routeNamesChangeBehavior"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
4
4
|
children: React.ReactNode;
|
|
5
5
|
layout?: ((props: {
|
|
6
6
|
state: StackNavigationState<ParamListBase>;
|
|
@@ -35,21 +35,17 @@ export declare const Stack: import("react").ForwardRefExoticComponent<Omit<Omit<
|
|
|
35
35
|
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<ParamListBase, string, undefined>;
|
|
36
36
|
theme: ReactNavigation.Theme;
|
|
37
37
|
}) => NativeStackNavigationOptions) | undefined;
|
|
38
|
-
screenLayout?: ((props:
|
|
39
|
-
route: import("@react-navigation/core").RouteProp<ParamListBase, string>;
|
|
40
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<ParamListBase, string, undefined>;
|
|
41
|
-
theme: ReactNavigation.Theme;
|
|
42
|
-
children: React.ReactElement;
|
|
43
|
-
}) => React.ReactElement) | undefined;
|
|
38
|
+
screenLayout?: ((props: import("@react-navigation/core").ScreenLayoutArgs<ParamListBase, string, NativeStackNavigationOptions, import("@react-navigation/native-stack").NativeStackNavigationProp<ParamListBase, string, undefined>>) => React.ReactElement) | undefined;
|
|
44
39
|
UNSTABLE_router?: (<Action extends Readonly<{
|
|
45
40
|
type: string;
|
|
46
41
|
payload?: object;
|
|
47
42
|
source?: string;
|
|
48
43
|
target?: string;
|
|
49
44
|
}>>(original: import("@react-navigation/routers").Router<StackNavigationState<ParamListBase>, Action>) => Partial<import("@react-navigation/routers").Router<StackNavigationState<ParamListBase>, Action>>) | undefined;
|
|
45
|
+
UNSTABLE_routeNamesChangeBehavior?: "firstMatch" | "lastUnhandled";
|
|
50
46
|
} & {
|
|
51
47
|
id?: undefined;
|
|
52
|
-
}, "children"> & Partial<Pick<Omit<import("@react-navigation/native-stack").NativeStackNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
48
|
+
}, "children"> & Partial<Pick<Omit<import("@react-navigation/native-stack").NativeStackNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router" | "UNSTABLE_routeNamesChangeBehavior"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
53
49
|
children: React.ReactNode;
|
|
54
50
|
layout?: ((props: {
|
|
55
51
|
state: StackNavigationState<ParamListBase>;
|
|
@@ -84,18 +80,14 @@ export declare const Stack: import("react").ForwardRefExoticComponent<Omit<Omit<
|
|
|
84
80
|
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<ParamListBase, string, undefined>;
|
|
85
81
|
theme: ReactNavigation.Theme;
|
|
86
82
|
}) => NativeStackNavigationOptions) | undefined;
|
|
87
|
-
screenLayout?: ((props:
|
|
88
|
-
route: import("@react-navigation/core").RouteProp<ParamListBase, string>;
|
|
89
|
-
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<ParamListBase, string, undefined>;
|
|
90
|
-
theme: ReactNavigation.Theme;
|
|
91
|
-
children: React.ReactElement;
|
|
92
|
-
}) => React.ReactElement) | undefined;
|
|
83
|
+
screenLayout?: ((props: import("@react-navigation/core").ScreenLayoutArgs<ParamListBase, string, NativeStackNavigationOptions, import("@react-navigation/native-stack").NativeStackNavigationProp<ParamListBase, string, undefined>>) => React.ReactElement) | undefined;
|
|
93
84
|
UNSTABLE_router?: (<Action extends Readonly<{
|
|
94
85
|
type: string;
|
|
95
86
|
payload?: object;
|
|
96
87
|
source?: string;
|
|
97
88
|
target?: string;
|
|
98
89
|
}>>(original: import("@react-navigation/routers").Router<StackNavigationState<ParamListBase>, Action>) => Partial<import("@react-navigation/routers").Router<StackNavigationState<ParamListBase>, Action>>) | undefined;
|
|
90
|
+
UNSTABLE_routeNamesChangeBehavior?: "firstMatch" | "lastUnhandled";
|
|
99
91
|
} & {
|
|
100
92
|
id?: undefined;
|
|
101
93
|
}, "children">> & import("react").RefAttributes<unknown>> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stack.d.ts","sourceRoot":"","sources":["../../src/layouts/Stack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AACnF,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EAElC,MAAM,gCAAgC,CAAA;AAMvC,eAAO,MAAM,KAAK;cAQ6N,MAAO,SAAS;;;;;kBAAmb,MAAO,SAAS;UAAW,MAAO,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;eAAod,gBAAiB,KAAK
|
|
1
|
+
{"version":3,"file":"Stack.d.ts","sourceRoot":"","sources":["../../src/layouts/Stack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AACnF,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EAElC,MAAM,gCAAgC,CAAA;AAMvC,eAAO,MAAM,KAAK;cAQ6N,MAAO,SAAS;;;;;kBAAmb,MAAO,SAAS;UAAW,MAAO,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;eAAod,gBAAiB,KAAK;;6OAAsM,MAAO,YAAY;;;;;;;;;;;cAAprC,MAAO,SAAS;;;;;kBAAmb,MAAO,SAAS;UAAW,MAAO,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;eAAod,gBAAiB,KAAK;;6OAAsM,MAAO,YAAY;;;;;;;;;;;;CAH54C,CAAA;AAEvB,eAAe,KAAK,CAAA"}
|
package/types/layouts/Tabs.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type BottomTabNavigationEventMap, type BottomTabNavigationOptions } from '@react-navigation/bottom-tabs';
|
|
2
2
|
import type { ParamListBase, TabNavigationState } from '@react-navigation/native';
|
|
3
|
-
export declare const Tabs: import("react").ForwardRefExoticComponent<Omit<Omit<import("@react-navigation/bottom-tabs").BottomTabNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
3
|
+
export declare const Tabs: import("react").ForwardRefExoticComponent<Omit<Omit<import("@react-navigation/bottom-tabs").BottomTabNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router" | "UNSTABLE_routeNamesChangeBehavior"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
4
4
|
children: React.ReactNode;
|
|
5
5
|
layout?: ((props: {
|
|
6
6
|
state: TabNavigationState<ParamListBase>;
|
|
@@ -35,21 +35,17 @@ export declare const Tabs: import("react").ForwardRefExoticComponent<Omit<Omit<i
|
|
|
35
35
|
navigation: import("@react-navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>;
|
|
36
36
|
theme: ReactNavigation.Theme;
|
|
37
37
|
}) => BottomTabNavigationOptions) | undefined;
|
|
38
|
-
screenLayout?: ((props:
|
|
39
|
-
route: import("@react-navigation/core").RouteProp<ParamListBase, string>;
|
|
40
|
-
navigation: import("@react-navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>;
|
|
41
|
-
theme: ReactNavigation.Theme;
|
|
42
|
-
children: React.ReactElement;
|
|
43
|
-
}) => React.ReactElement) | undefined;
|
|
38
|
+
screenLayout?: ((props: import("@react-navigation/core").ScreenLayoutArgs<ParamListBase, string, BottomTabNavigationOptions, import("@react-navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>>) => React.ReactElement) | undefined;
|
|
44
39
|
UNSTABLE_router?: (<Action extends Readonly<{
|
|
45
40
|
type: string;
|
|
46
41
|
payload?: object;
|
|
47
42
|
source?: string;
|
|
48
43
|
target?: string;
|
|
49
44
|
}>>(original: import("@react-navigation/routers").Router<TabNavigationState<ParamListBase>, Action>) => Partial<import("@react-navigation/routers").Router<TabNavigationState<ParamListBase>, Action>>) | undefined;
|
|
45
|
+
UNSTABLE_routeNamesChangeBehavior?: "firstMatch" | "lastUnhandled";
|
|
50
46
|
} & {
|
|
51
47
|
id?: undefined;
|
|
52
|
-
}, "children"> & Partial<Pick<Omit<import("@react-navigation/bottom-tabs").BottomTabNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
48
|
+
}, "children"> & Partial<Pick<Omit<import("@react-navigation/bottom-tabs").BottomTabNavigatorProps, "children" | "initialRouteName" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_router" | "UNSTABLE_routeNamesChangeBehavior"> & import("@react-navigation/routers").DefaultRouterOptions<string> & {
|
|
53
49
|
children: React.ReactNode;
|
|
54
50
|
layout?: ((props: {
|
|
55
51
|
state: TabNavigationState<ParamListBase>;
|
|
@@ -84,18 +80,14 @@ export declare const Tabs: import("react").ForwardRefExoticComponent<Omit<Omit<i
|
|
|
84
80
|
navigation: import("@react-navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>;
|
|
85
81
|
theme: ReactNavigation.Theme;
|
|
86
82
|
}) => BottomTabNavigationOptions) | undefined;
|
|
87
|
-
screenLayout?: ((props:
|
|
88
|
-
route: import("@react-navigation/core").RouteProp<ParamListBase, string>;
|
|
89
|
-
navigation: import("@react-navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>;
|
|
90
|
-
theme: ReactNavigation.Theme;
|
|
91
|
-
children: React.ReactElement;
|
|
92
|
-
}) => React.ReactElement) | undefined;
|
|
83
|
+
screenLayout?: ((props: import("@react-navigation/core").ScreenLayoutArgs<ParamListBase, string, BottomTabNavigationOptions, import("@react-navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>>) => React.ReactElement) | undefined;
|
|
93
84
|
UNSTABLE_router?: (<Action extends Readonly<{
|
|
94
85
|
type: string;
|
|
95
86
|
payload?: object;
|
|
96
87
|
source?: string;
|
|
97
88
|
target?: string;
|
|
98
89
|
}>>(original: import("@react-navigation/routers").Router<TabNavigationState<ParamListBase>, Action>) => Partial<import("@react-navigation/routers").Router<TabNavigationState<ParamListBase>, Action>>) | undefined;
|
|
90
|
+
UNSTABLE_routeNamesChangeBehavior?: "firstMatch" | "lastUnhandled";
|
|
99
91
|
} & {
|
|
100
92
|
id?: undefined;
|
|
101
93
|
}, "children">> & import("react").RefAttributes<unknown>> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../src/layouts/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAGhC,MAAM,+BAA+B,CAAA;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAoCjF,eAAO,MAAM,IAAI;cAtBM,MAAM,SAAS;;;;;kBAmBV,MAG3B,SAAS;UAAW,MAAO,YAC3B;;;;;;;;;;;;;;;;;;;;;;;;;;eAYsC,gBAAiB,KAAK
|
|
1
|
+
{"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../src/layouts/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAGhC,MAAM,+BAA+B,CAAA;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAoCjF,eAAO,MAAM,IAAI;cAtBM,MAAM,SAAS;;;;;kBAmBV,MAG3B,SAAS;UAAW,MAAO,YAC3B;;;;;;;;;;;;;;;;;;;;;;;;;;eAYsC,gBAAiB,KAAK;;wOAQ5C,MAAO,YAChB;;;;;;;;;;;cA5Ce,MAAM,SAAS;;;;;kBAmBV,MAG3B,SAAS;UAAW,MAAO,YAC3B;;;;;;;;;;;;;;;;;;;;;;;;;;eAYsC,gBAAiB,KAAK;;wOAQ5C,MAAO,YAChB;;;;;;;;;;;;CAqBP,CAAA;AAED,eAAe,IAAI,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getRouteInfo.d.ts","sourceRoot":"","sources":["../../src/router/getRouteInfo.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAA0B,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAIjF,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,WAAW,aAYxD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isIndexPath.d.ts","sourceRoot":"","sources":["../../src/router/isIndexPath.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAIrD,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,WAoBvC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { OneRouter } from '../interfaces/router';
|
|
2
|
+
import { type OneLinkingOptions } from './getLinkingConfig';
|
|
3
|
+
import type { RouteNode } from './Route';
|
|
4
|
+
export declare function getLinking(): OneLinkingOptions | undefined;
|
|
5
|
+
export declare function setLinking(_: OneLinkingOptions): void;
|
|
6
|
+
export declare function resetLinking(): void;
|
|
7
|
+
export declare function setupLinking(routeNode: RouteNode | null, initialLocation?: URL): OneRouter.ResultState | undefined;
|
|
8
|
+
//# sourceMappingURL=linkingConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"linkingConfig.d.ts","sourceRoot":"","sources":["../../src/router/linkingConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAA2C,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACpG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAIxC,wBAAgB,UAAU,kCAEzB;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,iBAAiB,QAE9C;AAED,wBAAgB,YAAY,SAE3B;AAED,wBAAgB,YAAY,CAC1B,SAAS,EAAE,SAAS,GAAG,IAAI,EAC3B,eAAe,CAAC,EAAE,GAAG,GACpB,SAAS,CAAC,WAAW,GAAG,SAAS,CAgBnC"}
|
package/types/router/router.d.ts
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Note: this entire module is exported as an interface router.*
|
|
3
|
+
* We need to treat exports as an API and not change them, maybe not
|
|
4
|
+
* the best decision.
|
|
5
|
+
*/
|
|
1
6
|
import { type NavigationContainerRefWithCurrent } from '@react-navigation/native';
|
|
2
7
|
import { type ComponentType } from 'react';
|
|
3
8
|
import type { OneRouter } from '../interfaces/router';
|
|
4
9
|
import type { One } from '../vite/types';
|
|
5
|
-
import {
|
|
6
|
-
import { type UrlObject } from './getNormalizedStatePath';
|
|
10
|
+
import type { UrlObject } from './getNormalizedStatePath';
|
|
7
11
|
import type { RouteNode } from './Route';
|
|
8
12
|
export declare let routeNode: RouteNode | null;
|
|
9
13
|
export declare let rootComponent: ComponentType;
|
|
10
|
-
export declare let linking: OneLinkingOptions | undefined;
|
|
11
14
|
export declare let hasAttemptedToHideSplash: boolean;
|
|
12
15
|
export declare let initialState: OneRouter.ResultState | undefined;
|
|
13
16
|
export declare let rootState: OneRouter.ResultState | undefined;
|
|
@@ -25,7 +28,6 @@ export declare function canGoBack(): boolean;
|
|
|
25
28
|
export declare function canDismiss(): boolean;
|
|
26
29
|
export declare function getSortedRoutes(): RouteNode[];
|
|
27
30
|
export declare function updateState(state: OneRouter.ResultState, nextStateParam?: OneRouter.ResultState): void;
|
|
28
|
-
export declare function getRouteInfo(state: OneRouter.ResultState): UrlObject;
|
|
29
31
|
export declare function subscribeToRootState(subscriber: OneRouter.RootStateListener): () => void;
|
|
30
32
|
export declare function subscribeToStore(subscriber: () => void): () => void;
|
|
31
33
|
export declare function subscribeToLoadingState(subscriber: OneRouter.LoadingStateListener): () => void;
|
|
@@ -34,7 +36,7 @@ export declare function snapshot(): {
|
|
|
34
36
|
linkTo: typeof linkTo;
|
|
35
37
|
routeNode: RouteNode | null;
|
|
36
38
|
rootComponent: ComponentType;
|
|
37
|
-
linking: OneLinkingOptions | undefined;
|
|
39
|
+
linking: import("./getLinkingConfig").OneLinkingOptions | undefined;
|
|
38
40
|
hasAttemptedToHideSplash: boolean;
|
|
39
41
|
initialState: OneRouter.ResultState | undefined;
|
|
40
42
|
rootState: OneRouter.ResultState | undefined;
|
|
@@ -52,7 +54,7 @@ export declare function useOneRouter(): {
|
|
|
52
54
|
linkTo: typeof linkTo;
|
|
53
55
|
routeNode: RouteNode | null;
|
|
54
56
|
rootComponent: ComponentType;
|
|
55
|
-
linking: OneLinkingOptions | undefined;
|
|
57
|
+
linking: import("./getLinkingConfig").OneLinkingOptions | undefined;
|
|
56
58
|
hasAttemptedToHideSplash: boolean;
|
|
57
59
|
initialState: OneRouter.ResultState | undefined;
|
|
58
60
|
rootState: OneRouter.ResultState | undefined;
|