one 1.2.46 → 1.2.48
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.js +6 -1
- package/dist/cjs/Root.js.map +1 -1
- package/dist/cjs/Root.native.js.map +1 -1
- package/dist/cjs/babel-plugins/one-router-metro.js +4 -1
- package/dist/cjs/babel-plugins/one-router-metro.js.map +1 -1
- package/dist/cjs/babel-plugins/one-router-metro.native.js.map +1 -1
- package/dist/cjs/babel-plugins/remove-server-code.js +3 -1
- package/dist/cjs/babel-plugins/remove-server-code.js.map +1 -1
- package/dist/cjs/babel-plugins/remove-server-code.native.js.map +1 -1
- package/dist/cjs/cli/build.js +31 -8
- package/dist/cjs/cli/build.js.map +1 -1
- package/dist/cjs/cli/build.native.js.map +1 -1
- package/dist/cjs/cli/buildPage.cjs +16 -7
- package/dist/cjs/cli/buildPage.js +26 -7
- package/dist/cjs/cli/buildPage.js.map +1 -1
- package/dist/cjs/cli/buildPage.native.js +17 -8
- package/dist/cjs/cli/buildPage.native.js.map +1 -1
- package/dist/cjs/cli/generateRoutes.js +3 -1
- package/dist/cjs/cli/generateRoutes.js.map +1 -1
- package/dist/cjs/cli/generateRoutes.native.js.map +1 -1
- package/dist/cjs/cli/generateSitemap.js.map +1 -1
- package/dist/cjs/cli/generateSitemap.native.js.map +1 -1
- package/dist/cjs/cli/generateSitemap.test.js +14 -4
- package/dist/cjs/cli/generateSitemap.test.js.map +1 -1
- package/dist/cjs/cli/generateSitemap.test.native.js.map +1 -1
- package/dist/cjs/cli/main.js +4 -2
- package/dist/cjs/cli/main.js.map +1 -1
- package/dist/cjs/cli/main.native.js.map +1 -1
- package/dist/cjs/cli/prebuild.js.map +1 -1
- package/dist/cjs/cli/prebuild.native.js.map +1 -1
- package/dist/cjs/clientLoaderResolver.js.map +1 -1
- package/dist/cjs/clientLoaderResolver.native.js.map +1 -1
- package/dist/cjs/config.js +3 -1
- package/dist/cjs/config.js.map +1 -1
- package/dist/cjs/config.native.js.map +1 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/cjs/createApp.js +9 -1
- package/dist/cjs/createApp.js.map +1 -1
- package/dist/cjs/createHandleRequest.js +9 -3
- package/dist/cjs/createHandleRequest.js.map +1 -1
- package/dist/cjs/createHandleRequest.native.js.map +1 -1
- package/dist/cjs/fork/__tests__/getPathFromState.test.js +90 -88
- package/dist/cjs/fork/__tests__/getPathFromState.test.js.map +1 -1
- package/dist/cjs/fork/__tests__/getPathFromState.test.native.js.map +1 -1
- package/dist/cjs/fork/__tests__/getStateFromPath.test.js +163 -86
- package/dist/cjs/fork/__tests__/getStateFromPath.test.js.map +1 -1
- package/dist/cjs/fork/__tests__/getStateFromPath.test.native.js.map +1 -1
- package/dist/cjs/fork/_shared.js.map +1 -1
- package/dist/cjs/fork/_shared.native.js.map +1 -1
- package/dist/cjs/fork/extractPathFromURL.js.map +1 -1
- package/dist/cjs/fork/extractPathFromURL.native.js.map +1 -1
- package/dist/cjs/fork/getPathFromState-mods.js +4 -1
- package/dist/cjs/fork/getPathFromState-mods.js.map +1 -1
- package/dist/cjs/fork/getPathFromState-mods.native.js.map +1 -1
- package/dist/cjs/fork/getPathFromState.js +3 -1
- package/dist/cjs/fork/getPathFromState.js.map +1 -1
- package/dist/cjs/fork/getPathFromState.native.js.map +1 -1
- package/dist/cjs/fork/getStateFromPath-mods.js.map +1 -1
- package/dist/cjs/fork/getStateFromPath-mods.native.js.map +1 -1
- package/dist/cjs/fork/getStateFromPath.js +7 -1
- package/dist/cjs/fork/getStateFromPath.js.map +1 -1
- package/dist/cjs/fork/getStateFromPath.native.js.map +1 -1
- package/dist/cjs/fork/getStateFromPath.test.js +21 -8
- package/dist/cjs/fork/getStateFromPath.test.js.map +1 -1
- package/dist/cjs/fork/getStateFromPath.test.native.js.map +1 -1
- package/dist/cjs/fork/useBackButton.js.map +1 -1
- package/dist/cjs/fork/useDocumentTitle.js +4 -1
- package/dist/cjs/fork/useDocumentTitle.js.map +1 -1
- package/dist/cjs/fork/useLinking.js +4 -1
- package/dist/cjs/fork/useLinking.js.map +1 -1
- package/dist/cjs/fork/validatePathConfig.js.map +1 -1
- package/dist/cjs/fork/validatePathConfig.native.js.map +1 -1
- package/dist/cjs/hooks.js.map +1 -1
- package/dist/cjs/hooks.native.js.map +1 -1
- package/dist/cjs/index.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/layouts/withLayoutContext.js +10 -8
- package/dist/cjs/layouts/withLayoutContext.js.map +1 -1
- package/dist/cjs/layouts/withLayoutContext.native.js.map +1 -1
- package/dist/cjs/link/Link.js.map +1 -1
- package/dist/cjs/link/Link.native.js.map +1 -1
- package/dist/cjs/link/linking.js +3 -1
- package/dist/cjs/link/linking.js.map +1 -1
- package/dist/cjs/link/linking.native.js.map +1 -1
- package/dist/cjs/link/useLinkTo.js.map +1 -1
- package/dist/cjs/link/useLinkTo.native.js.map +1 -1
- package/dist/cjs/link/useLoadedNavigation.js.map +1 -1
- package/dist/cjs/link/useLoadedNavigation.native.js.map +1 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.cjs +6 -8
- package/dist/cjs/metro-config/getViteMetroPluginOptions.js +8 -10
- package/dist/cjs/metro-config/getViteMetroPluginOptions.js.map +1 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js +9 -11
- package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
- package/dist/cjs/polyfills-mobile.cjs +3 -1
- package/dist/cjs/polyfills-mobile.js +2 -1
- package/dist/cjs/polyfills-mobile.js.map +2 -2
- package/dist/cjs/polyfills-mobile.native.js +8 -4
- package/dist/cjs/polyfills-mobile.native.js.map +1 -1
- package/dist/cjs/router/Route.js.map +1 -1
- package/dist/cjs/router/Route.native.js.map +1 -1
- package/dist/cjs/router/RouteInfoContext.js +7 -1
- package/dist/cjs/router/RouteInfoContext.js.map +1 -1
- package/dist/cjs/router/RouteInfoContext.native.js.map +1 -1
- package/dist/cjs/router/filterRootHTML.js.map +1 -1
- package/dist/cjs/router/filterRootHTML.native.js.map +1 -1
- package/dist/cjs/router/getLinkingConfig.js.map +1 -1
- package/dist/cjs/router/getLinkingConfig.native.js.map +1 -1
- package/dist/cjs/router/getNormalizedStatePath.js.map +1 -1
- package/dist/cjs/router/getNormalizedStatePath.native.js.map +1 -1
- package/dist/cjs/router/getRoutes.js +3 -1
- package/dist/cjs/router/getRoutes.js.map +1 -1
- package/dist/cjs/router/getRoutes.native.js.map +1 -1
- package/dist/cjs/router/linkingConfig.js.map +1 -1
- package/dist/cjs/router/linkingConfig.native.js.map +1 -1
- package/dist/cjs/router/matchers.cjs +1 -1
- package/dist/cjs/router/matchers.js +1 -1
- package/dist/cjs/router/matchers.js.map +1 -1
- package/dist/cjs/router/matchers.native.js +1 -1
- package/dist/cjs/router/matchers.native.js.map +1 -1
- package/dist/cjs/router/matchers.test.js +6 -2
- package/dist/cjs/router/matchers.test.js.map +1 -1
- package/dist/cjs/router/matchers.test.native.js.map +1 -1
- package/dist/cjs/router/router.cjs +3 -1
- package/dist/cjs/router/router.js +15 -4
- package/dist/cjs/router/router.js.map +1 -1
- package/dist/cjs/router/router.native.js +7 -3
- package/dist/cjs/router/router.native.js.map +1 -1
- package/dist/cjs/router/useNavigation.js.map +1 -1
- package/dist/cjs/router/useNavigation.native.js.map +1 -1
- package/dist/cjs/router/useScreens.js +13 -11
- package/dist/cjs/router/useScreens.js.map +1 -1
- package/dist/cjs/router/useScreens.native.js.map +1 -1
- package/dist/cjs/router/useViteRoutes.js.map +1 -1
- package/dist/cjs/router/useViteRoutes.native.js.map +1 -1
- package/dist/cjs/router/utils/getNavigateAction.js.map +1 -1
- package/dist/cjs/router/utils/getNavigateAction.native.js.map +1 -1
- package/dist/cjs/server/createRoutesManifest.js.map +1 -1
- package/dist/cjs/server/createRoutesManifest.native.js.map +1 -1
- package/dist/cjs/server/getServerManifest.js +3 -1
- package/dist/cjs/server/getServerManifest.js.map +1 -1
- package/dist/cjs/server/getServerManifest.native.js.map +1 -1
- package/dist/cjs/server/oneServe.cjs +10 -2
- package/dist/cjs/server/oneServe.js +21 -3
- package/dist/cjs/server/oneServe.js.map +1 -1
- package/dist/cjs/server/oneServe.native.js +10 -3
- package/dist/cjs/server/oneServe.native.js.map +1 -1
- package/dist/cjs/server/setupBuildOptions.js.map +1 -1
- package/dist/cjs/server/setupBuildOptions.native.js.map +1 -1
- package/dist/cjs/server/staticHtmlFetcher.js.map +1 -1
- package/dist/cjs/server/staticHtmlFetcher.native.js.map +1 -1
- package/dist/cjs/server-render.js.map +1 -1
- package/dist/cjs/server-render.native.js.map +1 -1
- package/dist/cjs/typed-routes/getTypedRoutesDeclarationFile.js +14 -2
- package/dist/cjs/typed-routes/getTypedRoutesDeclarationFile.js.map +1 -1
- package/dist/cjs/typed-routes/getTypedRoutesDeclarationFile.native.js.map +1 -1
- package/dist/cjs/typed-routes/injectRouteHelpers.js +4 -1
- package/dist/cjs/typed-routes/injectRouteHelpers.js.map +1 -1
- package/dist/cjs/typed-routes/injectRouteHelpers.native.js.map +1 -1
- package/dist/cjs/ui/Slot.js.map +1 -1
- package/dist/cjs/ui/Slot.native.js.map +1 -1
- package/dist/cjs/ui/TabContext.js +3 -1
- package/dist/cjs/ui/TabContext.js.map +1 -1
- package/dist/cjs/ui/TabContext.native.js.map +1 -1
- package/dist/cjs/ui/TabRouter.js.map +1 -1
- package/dist/cjs/ui/TabRouter.native.js.map +1 -1
- package/dist/cjs/ui/TabTrigger.js +17 -2
- package/dist/cjs/ui/TabTrigger.js.map +1 -1
- package/dist/cjs/ui/TabTrigger.native.js.map +1 -1
- package/dist/cjs/ui/Tabs.js +5 -1
- package/dist/cjs/ui/Tabs.js.map +1 -1
- package/dist/cjs/ui/Tabs.native.js.map +1 -1
- package/dist/cjs/ui/common.js +3 -1
- package/dist/cjs/ui/common.js.map +1 -1
- package/dist/cjs/ui/common.native.js.map +1 -1
- package/dist/cjs/useLoader.js +4 -1
- package/dist/cjs/useLoader.js.map +1 -1
- package/dist/cjs/useLoader.native.js.map +1 -1
- package/dist/cjs/utils/cleanUrl.js.map +1 -1
- package/dist/cjs/utils/cleanUrl.native.js.map +1 -1
- package/dist/cjs/utils/url.js +3 -1
- package/dist/cjs/utils/url.js.map +1 -1
- package/dist/cjs/utils/url.native.js.map +1 -1
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.js +29 -10
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.js.map +1 -1
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.js +11 -3
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.js +9 -2
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js.map +1 -1
- package/dist/cjs/vercel/build/getPathFromRoute.js +4 -1
- package/dist/cjs/vercel/build/getPathFromRoute.js.map +1 -1
- package/dist/cjs/vercel/build/getPathFromRoute.native.js.map +1 -1
- package/dist/cjs/views/Navigator.js +16 -8
- package/dist/cjs/views/Navigator.js.map +1 -1
- package/dist/cjs/views/Navigator.native.js.map +1 -1
- package/dist/cjs/views/RootErrorBoundary.js +4 -2
- package/dist/cjs/views/RootErrorBoundary.js.map +1 -1
- package/dist/cjs/views/RootErrorBoundary.native.js.map +1 -1
- package/dist/cjs/views/Screen.js +4 -1
- package/dist/cjs/views/Screen.js.map +1 -1
- package/dist/cjs/views/Screen.native.js.map +1 -1
- package/dist/cjs/vite/loadConfig.js +6 -2
- package/dist/cjs/vite/loadConfig.js.map +1 -1
- package/dist/cjs/vite/loadConfig.native.js.map +1 -1
- package/dist/cjs/vite/one-server-only.js +3 -1
- package/dist/cjs/vite/one-server-only.js.map +1 -1
- package/dist/cjs/vite/one.js +9 -3
- package/dist/cjs/vite/one.js.map +1 -1
- package/dist/cjs/vite/one.native.js.map +1 -1
- package/dist/cjs/vite/plugins/SSRCSSPlugin.js +5 -1
- package/dist/cjs/vite/plugins/SSRCSSPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/SSRCSSPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.js +8 -2
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +1 -0
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js +13 -4
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +1 -0
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/removeReactNativeWebAnimatedPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/removeReactNativeWebAnimatedPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.cjs +7 -3
- package/dist/cjs/vite/plugins/virtualEntryPlugin.js +16 -5
- package/dist/cjs/vite/plugins/virtualEntryPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js +5 -2
- package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
- package/dist/cjs/vite/replaceLoader.js +4 -1
- package/dist/cjs/vite/replaceLoader.js.map +1 -1
- package/dist/cjs/vite/replaceLoader.native.js.map +1 -1
- package/dist/cjs/vite/resolveResponse.js.map +1 -1
- package/dist/cjs/vite/resolveResponse.native.js.map +1 -1
- package/dist/cjs/zero/subscribeToQuery.js.map +1 -1
- package/dist/cjs/zero/subscribeToQuery.native.js.map +1 -1
- package/dist/cjs/zero/useQueryZero.js +3 -1
- package/dist/cjs/zero/useQueryZero.js.map +1 -1
- package/dist/cjs/zero/useQueryZero.native.js.map +1 -1
- package/dist/esm/Root.js +6 -1
- package/dist/esm/Root.js.map +1 -1
- package/dist/esm/Root.mjs.map +1 -1
- package/dist/esm/Root.native.js.map +1 -1
- package/dist/esm/babel-plugins/one-router-metro.js +4 -1
- package/dist/esm/babel-plugins/one-router-metro.js.map +1 -1
- package/dist/esm/babel-plugins/one-router-metro.mjs.map +1 -1
- package/dist/esm/babel-plugins/one-router-metro.native.js.map +1 -1
- package/dist/esm/babel-plugins/remove-server-code.js +7 -2
- package/dist/esm/babel-plugins/remove-server-code.js.map +1 -1
- package/dist/esm/babel-plugins/remove-server-code.mjs.map +1 -1
- package/dist/esm/babel-plugins/remove-server-code.native.js.map +1 -1
- package/dist/esm/cli/build.js +31 -8
- package/dist/esm/cli/build.js.map +1 -1
- package/dist/esm/cli/build.mjs.map +1 -1
- package/dist/esm/cli/build.native.js.map +1 -1
- package/dist/esm/cli/buildPage.js +26 -6
- package/dist/esm/cli/buildPage.js.map +1 -1
- package/dist/esm/cli/buildPage.mjs +16 -7
- package/dist/esm/cli/buildPage.mjs.map +1 -1
- package/dist/esm/cli/buildPage.native.js +17 -8
- package/dist/esm/cli/buildPage.native.js.map +1 -1
- package/dist/esm/cli/generateRoutes.js +3 -1
- package/dist/esm/cli/generateRoutes.js.map +1 -1
- package/dist/esm/cli/generateRoutes.mjs.map +1 -1
- package/dist/esm/cli/generateRoutes.native.js.map +1 -1
- package/dist/esm/cli/generateSitemap.js.map +1 -1
- package/dist/esm/cli/generateSitemap.mjs.map +1 -1
- package/dist/esm/cli/generateSitemap.native.js.map +1 -1
- package/dist/esm/cli/generateSitemap.test.js +14 -4
- package/dist/esm/cli/generateSitemap.test.js.map +1 -1
- package/dist/esm/cli/generateSitemap.test.mjs.map +1 -1
- package/dist/esm/cli/generateSitemap.test.native.js.map +1 -1
- package/dist/esm/cli/main.js +4 -2
- package/dist/esm/cli/main.js.map +1 -1
- package/dist/esm/cli/main.mjs.map +1 -1
- package/dist/esm/cli/main.native.js.map +1 -1
- package/dist/esm/cli/prebuild.js.map +1 -1
- package/dist/esm/cli/prebuild.mjs.map +1 -1
- package/dist/esm/cli/prebuild.native.js.map +1 -1
- package/dist/esm/clientLoaderResolver.js.map +1 -1
- package/dist/esm/clientLoaderResolver.mjs.map +1 -1
- package/dist/esm/clientLoaderResolver.native.js.map +1 -1
- package/dist/esm/config.js +3 -1
- package/dist/esm/config.js.map +1 -1
- package/dist/esm/config.mjs.map +1 -1
- package/dist/esm/config.native.js.map +1 -1
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/constants.mjs.map +1 -1
- package/dist/esm/constants.native.js.map +1 -1
- package/dist/esm/createApp.js +9 -1
- package/dist/esm/createApp.js.map +1 -1
- package/dist/esm/createApp.mjs.map +1 -1
- package/dist/esm/createHandleRequest.js +9 -3
- package/dist/esm/createHandleRequest.js.map +1 -1
- package/dist/esm/createHandleRequest.mjs.map +1 -1
- package/dist/esm/createHandleRequest.native.js.map +1 -1
- package/dist/esm/fork/__tests__/getPathFromState.test.js +90 -88
- package/dist/esm/fork/__tests__/getPathFromState.test.js.map +1 -1
- package/dist/esm/fork/__tests__/getPathFromState.test.mjs.map +1 -1
- package/dist/esm/fork/__tests__/getPathFromState.test.native.js.map +1 -1
- package/dist/esm/fork/__tests__/getStateFromPath.test.js +163 -86
- package/dist/esm/fork/__tests__/getStateFromPath.test.js.map +1 -1
- package/dist/esm/fork/__tests__/getStateFromPath.test.mjs.map +1 -1
- package/dist/esm/fork/__tests__/getStateFromPath.test.native.js.map +1 -1
- package/dist/esm/fork/_shared.js.map +1 -1
- package/dist/esm/fork/_shared.mjs.map +1 -1
- package/dist/esm/fork/_shared.native.js.map +1 -1
- package/dist/esm/fork/extractPathFromURL.js.map +1 -1
- package/dist/esm/fork/extractPathFromURL.mjs.map +1 -1
- package/dist/esm/fork/extractPathFromURL.native.js.map +1 -1
- package/dist/esm/fork/getPathFromState-mods.js +4 -1
- package/dist/esm/fork/getPathFromState-mods.js.map +1 -1
- package/dist/esm/fork/getPathFromState-mods.mjs.map +1 -1
- package/dist/esm/fork/getPathFromState-mods.native.js.map +1 -1
- package/dist/esm/fork/getPathFromState.js +3 -1
- package/dist/esm/fork/getPathFromState.js.map +1 -1
- package/dist/esm/fork/getPathFromState.mjs.map +1 -1
- package/dist/esm/fork/getPathFromState.native.js.map +1 -1
- package/dist/esm/fork/getStateFromPath-mods.js.map +1 -1
- package/dist/esm/fork/getStateFromPath-mods.mjs.map +1 -1
- package/dist/esm/fork/getStateFromPath-mods.native.js.map +1 -1
- package/dist/esm/fork/getStateFromPath.js +7 -1
- package/dist/esm/fork/getStateFromPath.js.map +1 -1
- package/dist/esm/fork/getStateFromPath.mjs.map +1 -1
- package/dist/esm/fork/getStateFromPath.native.js.map +1 -1
- package/dist/esm/fork/getStateFromPath.test.js +25 -9
- package/dist/esm/fork/getStateFromPath.test.js.map +1 -1
- package/dist/esm/fork/getStateFromPath.test.mjs.map +1 -1
- package/dist/esm/fork/getStateFromPath.test.native.js.map +1 -1
- package/dist/esm/fork/useBackButton.js.map +1 -1
- package/dist/esm/fork/useBackButton.mjs.map +1 -1
- package/dist/esm/fork/useDocumentTitle.js +4 -1
- package/dist/esm/fork/useDocumentTitle.js.map +1 -1
- package/dist/esm/fork/useDocumentTitle.mjs.map +1 -1
- package/dist/esm/fork/useLinking.js +4 -1
- package/dist/esm/fork/useLinking.js.map +1 -1
- package/dist/esm/fork/useLinking.mjs.map +1 -1
- package/dist/esm/fork/validatePathConfig.js.map +1 -1
- package/dist/esm/fork/validatePathConfig.mjs.map +1 -1
- package/dist/esm/fork/validatePathConfig.native.js.map +1 -1
- package/dist/esm/hooks.js.map +1 -1
- package/dist/esm/hooks.mjs.map +1 -1
- package/dist/esm/hooks.native.js.map +1 -1
- package/dist/esm/index.js +3 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.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/layouts/withLayoutContext.js +10 -8
- package/dist/esm/layouts/withLayoutContext.js.map +1 -1
- package/dist/esm/layouts/withLayoutContext.mjs.map +1 -1
- package/dist/esm/layouts/withLayoutContext.native.js.map +1 -1
- package/dist/esm/link/Link.js.map +1 -1
- package/dist/esm/link/Link.mjs.map +1 -1
- package/dist/esm/link/Link.native.js.map +1 -1
- package/dist/esm/link/linking.js +3 -1
- package/dist/esm/link/linking.js.map +1 -1
- package/dist/esm/link/linking.mjs.map +1 -1
- package/dist/esm/link/linking.native.js.map +1 -1
- package/dist/esm/link/useLinkTo.js.map +1 -1
- package/dist/esm/link/useLinkTo.mjs.map +1 -1
- package/dist/esm/link/useLinkTo.native.js.map +1 -1
- package/dist/esm/link/useLoadedNavigation.js +3 -1
- package/dist/esm/link/useLoadedNavigation.js.map +1 -1
- package/dist/esm/link/useLoadedNavigation.mjs.map +1 -1
- package/dist/esm/link/useLoadedNavigation.native.js.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.js +8 -10
- package/dist/esm/metro-config/getViteMetroPluginOptions.js.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.mjs +6 -8
- package/dist/esm/metro-config/getViteMetroPluginOptions.mjs.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.native.js +9 -11
- package/dist/esm/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
- package/dist/esm/polyfills-mobile.js +2 -0
- package/dist/esm/polyfills-mobile.js.map +1 -1
- package/dist/esm/polyfills-mobile.mjs +2 -0
- package/dist/esm/polyfills-mobile.mjs.map +1 -1
- package/dist/esm/polyfills-mobile.native.js +5 -3
- package/dist/esm/polyfills-mobile.native.js.map +1 -1
- package/dist/esm/router/Route.js.map +1 -1
- package/dist/esm/router/Route.mjs.map +1 -1
- package/dist/esm/router/Route.native.js.map +1 -1
- package/dist/esm/router/RouteInfoContext.js +7 -1
- package/dist/esm/router/RouteInfoContext.js.map +1 -1
- package/dist/esm/router/RouteInfoContext.mjs.map +1 -1
- package/dist/esm/router/RouteInfoContext.native.js.map +1 -1
- package/dist/esm/router/filterRootHTML.js.map +1 -1
- package/dist/esm/router/filterRootHTML.mjs.map +1 -1
- package/dist/esm/router/filterRootHTML.native.js.map +1 -1
- package/dist/esm/router/getLinkingConfig.js.map +1 -1
- package/dist/esm/router/getLinkingConfig.mjs.map +1 -1
- package/dist/esm/router/getLinkingConfig.native.js.map +1 -1
- package/dist/esm/router/getNormalizedStatePath.js.map +1 -1
- package/dist/esm/router/getNormalizedStatePath.mjs.map +1 -1
- package/dist/esm/router/getNormalizedStatePath.native.js.map +1 -1
- package/dist/esm/router/getRoutes.js +3 -1
- package/dist/esm/router/getRoutes.js.map +1 -1
- package/dist/esm/router/getRoutes.mjs.map +1 -1
- package/dist/esm/router/getRoutes.native.js.map +1 -1
- package/dist/esm/router/linkingConfig.js +3 -1
- package/dist/esm/router/linkingConfig.js.map +1 -1
- package/dist/esm/router/linkingConfig.mjs.map +1 -1
- package/dist/esm/router/linkingConfig.native.js.map +1 -1
- package/dist/esm/router/matchers.js +1 -1
- package/dist/esm/router/matchers.js.map +1 -1
- package/dist/esm/router/matchers.mjs +1 -1
- package/dist/esm/router/matchers.mjs.map +1 -1
- package/dist/esm/router/matchers.native.js +1 -1
- package/dist/esm/router/matchers.native.js.map +1 -1
- package/dist/esm/router/matchers.test.js +6 -2
- package/dist/esm/router/matchers.test.js.map +1 -1
- package/dist/esm/router/matchers.test.mjs.map +1 -1
- package/dist/esm/router/router.js +18 -5
- package/dist/esm/router/router.js.map +1 -1
- package/dist/esm/router/router.mjs +3 -1
- package/dist/esm/router/router.mjs.map +1 -1
- package/dist/esm/router/router.native.js +7 -3
- package/dist/esm/router/router.native.js.map +1 -1
- package/dist/esm/router/useNavigation.js.map +1 -1
- package/dist/esm/router/useNavigation.mjs.map +1 -1
- package/dist/esm/router/useNavigation.native.js.map +1 -1
- package/dist/esm/router/useScreens.js +13 -11
- package/dist/esm/router/useScreens.js.map +1 -1
- package/dist/esm/router/useScreens.mjs.map +1 -1
- package/dist/esm/router/useScreens.native.js.map +1 -1
- package/dist/esm/router/useViteRoutes.js.map +1 -1
- package/dist/esm/router/useViteRoutes.mjs.map +1 -1
- package/dist/esm/router/useViteRoutes.native.js.map +1 -1
- package/dist/esm/router/utils/getNavigateAction.js.map +1 -1
- package/dist/esm/router/utils/getNavigateAction.mjs.map +1 -1
- package/dist/esm/router/utils/getNavigateAction.native.js.map +1 -1
- package/dist/esm/server/createRoutesManifest.js.map +1 -1
- package/dist/esm/server/createRoutesManifest.mjs.map +1 -1
- package/dist/esm/server/createRoutesManifest.native.js.map +1 -1
- package/dist/esm/server/getServerManifest.js +3 -1
- package/dist/esm/server/getServerManifest.js.map +1 -1
- package/dist/esm/server/getServerManifest.mjs.map +1 -1
- package/dist/esm/server/getServerManifest.native.js.map +1 -1
- package/dist/esm/server/oneServe.js +21 -3
- package/dist/esm/server/oneServe.js.map +1 -1
- package/dist/esm/server/oneServe.mjs +10 -2
- package/dist/esm/server/oneServe.mjs.map +1 -1
- package/dist/esm/server/oneServe.native.js +10 -3
- package/dist/esm/server/oneServe.native.js.map +1 -1
- package/dist/esm/server/setupBuildOptions.js.map +1 -1
- package/dist/esm/server/setupBuildOptions.mjs.map +1 -1
- package/dist/esm/server/setupBuildOptions.native.js.map +1 -1
- package/dist/esm/server/staticHtmlFetcher.js.map +1 -1
- package/dist/esm/server/staticHtmlFetcher.mjs.map +1 -1
- package/dist/esm/server/staticHtmlFetcher.native.js.map +1 -1
- package/dist/esm/server-render.js.map +1 -1
- package/dist/esm/server-render.mjs.map +1 -1
- package/dist/esm/server-render.native.js.map +1 -1
- package/dist/esm/typed-routes/getTypedRoutesDeclarationFile.js +14 -2
- package/dist/esm/typed-routes/getTypedRoutesDeclarationFile.js.map +1 -1
- package/dist/esm/typed-routes/getTypedRoutesDeclarationFile.mjs.map +1 -1
- package/dist/esm/typed-routes/getTypedRoutesDeclarationFile.native.js.map +1 -1
- package/dist/esm/typed-routes/injectRouteHelpers.js +4 -1
- package/dist/esm/typed-routes/injectRouteHelpers.js.map +1 -1
- package/dist/esm/typed-routes/injectRouteHelpers.mjs.map +1 -1
- package/dist/esm/typed-routes/injectRouteHelpers.native.js.map +1 -1
- package/dist/esm/ui/Slot.js.map +1 -1
- package/dist/esm/ui/Slot.mjs.map +1 -1
- package/dist/esm/ui/Slot.native.js.map +1 -1
- package/dist/esm/ui/TabContext.js +3 -1
- package/dist/esm/ui/TabContext.js.map +1 -1
- package/dist/esm/ui/TabContext.mjs.map +1 -1
- package/dist/esm/ui/TabContext.native.js.map +1 -1
- package/dist/esm/ui/TabRouter.js.map +1 -1
- package/dist/esm/ui/TabRouter.mjs.map +1 -1
- package/dist/esm/ui/TabRouter.native.js.map +1 -1
- package/dist/esm/ui/TabTrigger.js +21 -3
- package/dist/esm/ui/TabTrigger.js.map +1 -1
- package/dist/esm/ui/TabTrigger.mjs.map +1 -1
- package/dist/esm/ui/TabTrigger.native.js.map +1 -1
- package/dist/esm/ui/Tabs.js +5 -1
- package/dist/esm/ui/Tabs.js.map +1 -1
- package/dist/esm/ui/Tabs.mjs.map +1 -1
- package/dist/esm/ui/Tabs.native.js.map +1 -1
- package/dist/esm/ui/common.js +8 -2
- package/dist/esm/ui/common.js.map +1 -1
- package/dist/esm/ui/common.mjs.map +1 -1
- package/dist/esm/ui/common.native.js.map +1 -1
- package/dist/esm/useLoader.js +4 -1
- package/dist/esm/useLoader.js.map +1 -1
- package/dist/esm/useLoader.mjs.map +1 -1
- package/dist/esm/useLoader.native.js.map +1 -1
- package/dist/esm/utils/cleanUrl.js.map +1 -1
- package/dist/esm/utils/cleanUrl.mjs.map +1 -1
- package/dist/esm/utils/cleanUrl.native.js.map +1 -1
- package/dist/esm/utils/url.js +3 -1
- package/dist/esm/utils/url.js.map +1 -1
- package/dist/esm/utils/url.mjs.map +1 -1
- package/dist/esm/utils/url.native.js.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.js +29 -10
- package/dist/esm/vercel/build/buildVercelOutputDirectory.js.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.js +11 -3
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.js.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.js +9 -2
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.js.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js.map +1 -1
- package/dist/esm/vercel/build/getPathFromRoute.js +4 -1
- package/dist/esm/vercel/build/getPathFromRoute.js.map +1 -1
- package/dist/esm/vercel/build/getPathFromRoute.mjs.map +1 -1
- package/dist/esm/vercel/build/getPathFromRoute.native.js.map +1 -1
- package/dist/esm/views/Navigator.js +20 -9
- package/dist/esm/views/Navigator.js.map +1 -1
- package/dist/esm/views/Navigator.mjs.map +1 -1
- package/dist/esm/views/Navigator.native.js.map +1 -1
- package/dist/esm/views/RootErrorBoundary.js +4 -2
- package/dist/esm/views/RootErrorBoundary.js.map +1 -1
- package/dist/esm/views/RootErrorBoundary.mjs.map +1 -1
- package/dist/esm/views/RootErrorBoundary.native.js.map +1 -1
- package/dist/esm/views/Screen.js +4 -1
- package/dist/esm/views/Screen.js.map +1 -1
- package/dist/esm/views/Screen.mjs.map +1 -1
- package/dist/esm/views/Screen.native.js.map +1 -1
- package/dist/esm/vite/loadConfig.js +6 -2
- package/dist/esm/vite/loadConfig.js.map +1 -1
- package/dist/esm/vite/loadConfig.mjs.map +1 -1
- package/dist/esm/vite/loadConfig.native.js.map +1 -1
- package/dist/esm/vite/one-server-only.js +3 -1
- package/dist/esm/vite/one-server-only.js.map +1 -1
- package/dist/esm/vite/one-server-only.mjs.map +1 -1
- package/dist/esm/vite/one.js +9 -3
- package/dist/esm/vite/one.js.map +1 -1
- package/dist/esm/vite/one.mjs.map +1 -1
- package/dist/esm/vite/one.native.js.map +1 -1
- package/dist/esm/vite/plugins/SSRCSSPlugin.js +5 -1
- package/dist/esm/vite/plugins/SSRCSSPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/SSRCSSPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/SSRCSSPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/clientTreeShakePlugin.js +12 -3
- package/dist/esm/vite/plugins/clientTreeShakePlugin.js.map +1 -1
- package/dist/esm/vite/plugins/clientTreeShakePlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/clientTreeShakePlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.js +13 -4
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +1 -0
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +1 -0
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/removeReactNativeWebAnimatedPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/removeReactNativeWebAnimatedPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/removeReactNativeWebAnimatedPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.js +16 -4
- package/dist/esm/vite/plugins/virtualEntryPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.mjs +6 -2
- package/dist/esm/vite/plugins/virtualEntryPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.native.js +4 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
- package/dist/esm/vite/replaceLoader.js +4 -1
- package/dist/esm/vite/replaceLoader.js.map +1 -1
- package/dist/esm/vite/replaceLoader.mjs.map +1 -1
- package/dist/esm/vite/replaceLoader.native.js.map +1 -1
- package/dist/esm/vite/resolveResponse.js +5 -1
- package/dist/esm/vite/resolveResponse.js.map +1 -1
- package/dist/esm/vite/resolveResponse.mjs.map +1 -1
- package/dist/esm/vite/resolveResponse.native.js.map +1 -1
- package/dist/esm/zero/subscribeToQuery.js.map +1 -1
- package/dist/esm/zero/subscribeToQuery.mjs.map +1 -1
- package/dist/esm/zero/subscribeToQuery.native.js.map +1 -1
- package/dist/esm/zero/useQueryZero.js +3 -1
- package/dist/esm/zero/useQueryZero.js.map +1 -1
- package/dist/esm/zero/useQueryZero.mjs.map +1 -1
- package/dist/esm/zero/useQueryZero.native.js.map +1 -1
- package/metro-entry-ctx.js +2 -1
- package/package.json +11 -10
- package/src/Root.tsx +14 -5
- package/src/babel-plugins/one-router-metro.ts +4 -1
- package/src/babel-plugins/remove-server-code.ts +15 -4
- package/src/cli/build.ts +33 -8
- package/src/cli/buildPage.ts +36 -6
- package/src/cli/generateRoutes.ts +3 -1
- package/src/cli/generateSitemap.test.ts +14 -4
- package/src/cli/generateSitemap.ts +7 -2
- package/src/cli/main.ts +3 -1
- package/src/cli/prebuild.ts +5 -1
- package/src/clientLoaderResolver.ts +4 -1
- package/src/config.ts +6 -2
- package/src/constants.ts +4 -2
- package/src/createApp.tsx +11 -3
- package/src/createHandleRequest.ts +17 -6
- package/src/fork/__tests__/getPathFromState.test.tsx +128 -107
- package/src/fork/__tests__/getStateFromPath.test.tsx +181 -95
- package/src/fork/_shared.ts +2 -1
- package/src/fork/extractPathFromURL.ts +2 -1
- package/src/fork/getPathFromState-mods.ts +8 -2
- package/src/fork/getPathFromState.ts +16 -5
- package/src/fork/getStateFromPath-mods.ts +13 -3
- package/src/fork/getStateFromPath.test.ts +25 -9
- package/src/fork/getStateFromPath.ts +21 -5
- package/src/fork/useBackButton.native.tsx +3 -1
- package/src/fork/useBackButton.tsx +3 -1
- package/src/fork/useDocumentTitle.tsx +4 -1
- package/src/fork/useLinking.native.ts +3 -1
- package/src/fork/useLinking.ts +9 -3
- package/src/fork/validatePathConfig.ts +6 -1
- package/src/head/Head.ios.tsx +3 -1
- package/src/hooks.tsx +4 -2
- package/src/index.ts +4 -1
- package/src/interfaces/router.ts +29 -13
- package/src/layouts/Tabs.tsx +5 -1
- package/src/layouts/withLayoutContext.tsx +24 -21
- package/src/link/Link.tsx +3 -1
- package/src/link/linking.ts +3 -1
- package/src/link/useLinkTo.tsx +3 -1
- package/src/link/useLoadedNavigation.ts +5 -1
- package/src/metro-config/getViteMetroPluginOptions.ts +20 -22
- package/src/polyfills-mobile.ts +7 -0
- package/src/router/Route.tsx +3 -1
- package/src/router/RouteInfoContext.tsx +3 -1
- package/src/router/filterRootHTML.ts +5 -1
- package/src/router/getLinkingConfig.ts +4 -1
- package/src/router/getNormalizedStatePath.tsx +4 -1
- package/src/router/getRoutes.ts +13 -4
- package/src/router/linkingConfig.ts +4 -1
- package/src/router/matchers.test.ts +6 -2
- package/src/router/matchers.ts +1 -1
- package/src/router/router.ts +26 -7
- package/src/router/useNavigation.ts +4 -1
- package/src/router/useScreens.tsx +27 -14
- package/src/router/useViteRoutes.tsx +2 -1
- package/src/router/utils/getNavigateAction.ts +4 -2
- package/src/server/createRoutesManifest.ts +4 -1
- package/src/server/getServerManifest.ts +7 -2
- package/src/server/oneServe.ts +37 -9
- package/src/server/setupBuildOptions.ts +2 -1
- package/src/server/staticHtmlFetcher.ts +3 -1
- package/src/server-render.tsx +4 -1
- package/src/typed-routes/getTypedRoutesDeclarationFile.ts +20 -4
- package/src/typed-routes/injectRouteHelpers.ts +12 -3
- package/src/types.ts +2 -2
- package/src/ui/Slot.tsx +4 -2
- package/src/ui/TabContext.tsx +3 -1
- package/src/ui/TabRouter.tsx +7 -2
- package/src/ui/TabTrigger.tsx +20 -3
- package/src/ui/Tabs.tsx +8 -2
- package/src/ui/common.tsx +19 -5
- package/src/useLoader.ts +9 -4
- package/src/utils/cleanUrl.ts +5 -1
- package/src/utils/url.ts +3 -1
- package/src/vercel/build/buildVercelOutputDirectory.ts +31 -10
- package/src/vercel/build/generate/createApiServerlessFunction.ts +11 -3
- package/src/vercel/build/generate/createSsrServerlessFunction.ts +10 -3
- package/src/vercel/build/getPathFromRoute.ts +4 -1
- package/src/views/Navigator.tsx +21 -9
- package/src/views/RootErrorBoundary.tsx +3 -1
- package/src/views/Screen.tsx +4 -1
- package/src/vite/loadConfig.ts +6 -2
- package/src/vite/one-server-only.tsx +10 -4
- package/src/vite/one.ts +61 -46
- package/src/vite/plugins/SSRCSSPlugin.ts +9 -2
- package/src/vite/plugins/clientTreeShakePlugin.ts +22 -6
- package/src/vite/plugins/fileSystemRouterPlugin.tsx +15 -3
- package/src/vite/plugins/generateFileSystemRouteTypesPlugin.tsx +2 -1
- package/src/vite/plugins/removeReactNativeWebAnimatedPlugin.ts +3 -1
- package/src/vite/plugins/virtualEntryPlugin.ts +28 -5
- package/src/vite/replaceLoader.ts +7 -1
- package/src/vite/resolveResponse.ts +6 -2
- package/src/vite/types.ts +6 -3
- package/src/zero/subscribeToQuery.ts +4 -1
- package/src/zero/types.ts +8 -9
- package/src/zero/useQuery.ts +1 -1
- package/src/zero/useQueryZero.ts +3 -1
- package/types/Root.d.ts.map +1 -1
- package/types/babel-plugins/one-router-metro.d.ts.map +1 -1
- package/types/babel-plugins/remove-server-code.d.ts.map +1 -1
- package/types/cli/build.d.ts.map +1 -1
- package/types/cli/buildPage.d.ts.map +1 -1
- package/types/cli/generateRoutes.d.ts.map +1 -1
- package/types/cli/generateSitemap.d.ts.map +1 -1
- package/types/cli/main.d.ts.map +1 -1
- package/types/cli/prebuild.d.ts.map +1 -1
- package/types/clientLoaderResolver.d.ts.map +1 -1
- package/types/config.d.ts.map +1 -1
- package/types/constants.d.ts.map +1 -1
- package/types/createApp.d.ts.map +1 -1
- package/types/createHandleRequest.d.ts +1 -1
- package/types/createHandleRequest.d.ts.map +1 -1
- package/types/fork/_shared.d.ts.map +1 -1
- package/types/fork/extractPathFromURL.d.ts.map +1 -1
- package/types/fork/getPathFromState.d.ts.map +1 -1
- package/types/fork/getStateFromPath-mods.d.ts.map +1 -1
- package/types/fork/getStateFromPath.d.ts.map +1 -1
- package/types/fork/useBackButton.d.ts.map +1 -1
- package/types/fork/useBackButton.native.d.ts.map +1 -1
- package/types/fork/useDocumentTitle.d.ts.map +1 -1
- package/types/fork/useLinking.d.ts.map +1 -1
- package/types/fork/useLinking.native.d.ts.map +1 -1
- package/types/fork/validatePathConfig.d.ts.map +1 -1
- package/types/head/Head.ios.d.ts.map +1 -1
- package/types/hooks.d.ts +2 -2
- package/types/hooks.d.ts.map +1 -1
- package/types/index.d.ts +1 -1
- package/types/index.d.ts.map +1 -1
- package/types/interfaces/router.d.ts.map +1 -1
- package/types/layouts/Tabs.d.ts.map +1 -1
- package/types/layouts/withLayoutContext.d.ts.map +1 -1
- package/types/link/Link.d.ts.map +1 -1
- package/types/link/linking.d.ts.map +1 -1
- package/types/link/useLinkTo.d.ts.map +1 -1
- package/types/link/useLoadedNavigation.d.ts.map +1 -1
- package/types/metro-config/getViteMetroPluginOptions.d.ts.map +1 -1
- package/types/polyfills-mobile.d.ts.map +1 -1
- package/types/router/Route.d.ts.map +1 -1
- package/types/router/RouteInfoContext.d.ts.map +1 -1
- package/types/router/filterRootHTML.d.ts.map +1 -1
- package/types/router/getNormalizedStatePath.d.ts.map +1 -1
- package/types/router/getRoutes.d.ts.map +1 -1
- package/types/router/linkingConfig.d.ts.map +1 -1
- package/types/router/router.d.ts.map +1 -1
- package/types/router/useNavigation.d.ts.map +1 -1
- package/types/router/useScreens.d.ts.map +1 -1
- package/types/router/useViteRoutes.d.ts.map +1 -1
- package/types/router/utils/getNavigateAction.d.ts.map +1 -1
- package/types/server/createRoutesManifest.d.ts.map +1 -1
- package/types/server/getServerManifest.d.ts.map +1 -1
- package/types/server/oneServe.d.ts.map +1 -1
- package/types/server/setupBuildOptions.d.ts.map +1 -1
- package/types/server/staticHtmlFetcher.d.ts.map +1 -1
- package/types/server-render.d.ts.map +1 -1
- package/types/types.d.ts +2 -2
- package/types/ui/Slot.d.ts.map +1 -1
- package/types/ui/TabContext.d.ts.map +1 -1
- package/types/ui/TabRouter.d.ts.map +1 -1
- package/types/ui/TabTrigger.d.ts.map +1 -1
- package/types/ui/Tabs.d.ts.map +1 -1
- package/types/ui/common.d.ts.map +1 -1
- package/types/useLoader.d.ts.map +1 -1
- package/types/utils/cleanUrl.d.ts.map +1 -1
- package/types/utils/url.d.ts.map +1 -1
- package/types/vercel/build/buildVercelOutputDirectory.d.ts.map +1 -1
- package/types/vercel/build/generate/createApiServerlessFunction.d.ts.map +1 -1
- package/types/vercel/build/generate/createSsrServerlessFunction.d.ts.map +1 -1
- package/types/vercel/build/getPathFromRoute.d.ts.map +1 -1
- package/types/views/Navigator.d.ts +1 -1
- package/types/views/Navigator.d.ts.map +1 -1
- package/types/views/RootErrorBoundary.d.ts.map +1 -1
- package/types/views/Screen.d.ts +1 -1
- package/types/views/Screen.d.ts.map +1 -1
- package/types/vite/loadConfig.d.ts.map +1 -1
- package/types/vite/one-server-only.d.ts +2 -2
- package/types/vite/one-server-only.d.ts.map +1 -1
- package/types/vite/one.d.ts.map +1 -1
- package/types/vite/plugins/SSRCSSPlugin.d.ts.map +1 -1
- package/types/vite/plugins/clientTreeShakePlugin.d.ts.map +1 -1
- package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
- package/types/vite/plugins/generateFileSystemRouteTypesPlugin.d.ts.map +1 -1
- package/types/vite/plugins/removeReactNativeWebAnimatedPlugin.d.ts.map +1 -1
- package/types/vite/plugins/virtualEntryPlugin.d.ts.map +1 -1
- package/types/vite/replaceLoader.d.ts +2 -2
- package/types/vite/replaceLoader.d.ts.map +1 -1
- package/types/vite/resolveResponse.d.ts.map +1 -1
- package/types/vite/types.d.ts +1 -1
- package/types/vite/types.d.ts.map +1 -1
- package/types/zero/subscribeToQuery.d.ts.map +1 -1
- package/types/zero/types.d.ts.map +1 -1
- package/types/zero/useQueryZero.d.ts.map +1 -1
- package/vendor/react/cjs/react-jsx-dev-runtime.development.js +1230 -1078
- package/vendor/react/cjs/react-jsx-dev-runtime.production.min.js +4 -1
- package/vendor/react/cjs/react-jsx-dev-runtime.profiling.min.js +4 -1
- package/vendor/react/cjs/react-jsx-runtime.development.js +1244 -1092
- package/vendor/react/cjs/react-jsx-runtime.production.min.js +23 -2
- package/vendor/react/cjs/react-jsx-runtime.profiling.min.js +23 -2
- package/vendor/react/cjs/react.development.js +2604 -2324
- package/vendor/react/cjs/react.production.min.js +360 -17
- package/vendor/react/cjs/react.shared-subset.development.js +9 -7
- package/vendor/react/cjs/react.shared-subset.production.min.js +2 -1
- package/vendor/react/index.js +3 -3
- package/vendor/react/jsx-dev-runtime.js +3 -3
- package/vendor/react/jsx-runtime.js +3 -3
- package/vendor/react/react.shared-subset.js +3 -3
- package/vendor/react/umd/react.development.js +1430 -1152
- package/vendor/react/umd/react.production.min.js +657 -22
- package/vendor/react/umd/react.profiling.min.js +657 -22
- package/vendor/react-dom/cjs/react-dom-server-legacy.browser.development.js +7183 -5938
- package/vendor/react-dom/cjs/react-dom-server-legacy.browser.production.min.js +1941 -84
- package/vendor/react-dom/cjs/react-dom-server-legacy.node.development.js +7239 -5986
- package/vendor/react-dom/cjs/react-dom-server-legacy.node.production.min.js +2055 -92
- package/vendor/react-dom/cjs/react-dom-server.browser.development.js +7146 -5924
- package/vendor/react-dom/cjs/react-dom-server.browser.production.min.js +1997 -87
- package/vendor/react-dom/cjs/react-dom-server.node.development.js +7210 -5976
- package/vendor/react-dom/cjs/react-dom-server.node.production.min.js +2075 -93
- package/vendor/react-dom/cjs/react-dom-test-utils.development.js +1700 -1487
- package/vendor/react-dom/cjs/react-dom-test-utils.production.min.js +653 -31
- package/vendor/react-dom/cjs/react-dom.development.js +29568 -25248
- package/vendor/react-dom/cjs/react-dom.production.min.js +8208 -310
- package/vendor/react-dom/cjs/react-dom.profiling.min.js +8750 -343
- package/vendor/react-dom/client.js +15 -15
- package/vendor/react-dom/index.js +8 -8
- package/vendor/react-dom/profiling.js +8 -8
- package/vendor/react-dom/server.browser.js +12 -12
- package/vendor/react-dom/server.js +2 -2
- package/vendor/react-dom/server.node.js +12 -12
- package/vendor/react-dom/test-utils.js +3 -3
- package/vendor/react-dom/umd/react-dom-server-legacy.browser.development.js +3735 -2502
- package/vendor/react-dom/umd/react-dom-server-legacy.browser.production.min.js +1964 -66
- package/vendor/react-dom/umd/react-dom-server.browser.development.js +3724 -2511
- package/vendor/react-dom/umd/react-dom-server.browser.production.min.js +2017 -67
- package/vendor/react-dom/umd/react-dom-test-utils.development.js +777 -563
- package/vendor/react-dom/umd/react-dom-test-utils.production.min.js +678 -24
- package/vendor/react-dom/umd/react-dom.development.js +15978 -11854
- package/vendor/react-dom/umd/react-dom.production.min.js +8328 -256
- package/vendor/react-dom/umd/react-dom.profiling.min.js +8868 -274
package/src/fork/_shared.ts
CHANGED
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
* Shared utilities for modifications in the fork.
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
export const getParamName = (pattern: string) =>
|
|
5
|
+
export const getParamName = (pattern: string) =>
|
|
6
|
+
pattern.replace(/^[:*]/, '').replace(/\?$/, '')
|
|
6
7
|
|
|
7
8
|
export function getParamValue(p: string, value: string) {
|
|
8
9
|
if (p.startsWith('*')) {
|
|
@@ -37,7 +37,8 @@ function extractExactPathFromURL(url: string): string {
|
|
|
37
37
|
return href.replace(origin, '')
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
-
const isExpoGo =
|
|
40
|
+
const isExpoGo =
|
|
41
|
+
typeof globalThis.expo !== 'undefined' && globalThis.expo?.modules?.ExpoGo
|
|
41
42
|
|
|
42
43
|
// Handle special URLs used in Expo Go: `/--/pathname` -> `pathname`
|
|
43
44
|
if (
|
|
@@ -136,13 +136,19 @@ export function appendBaseUrl(
|
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
function segmentMatchesConvention(segment: string): boolean {
|
|
139
|
-
return
|
|
139
|
+
return (
|
|
140
|
+
segment === 'index' ||
|
|
141
|
+
matchDynamicName(segment) != null ||
|
|
142
|
+
matchGroupName(segment) != null
|
|
143
|
+
)
|
|
140
144
|
}
|
|
141
145
|
|
|
142
146
|
function encodeURISegment(str: string, { preserveBrackets = false } = {}) {
|
|
143
147
|
// Valid characters according to
|
|
144
148
|
// https://datatracker.ietf.org/doc/html/rfc3986#section-3.3 (see pchar definition)
|
|
145
|
-
str = String(str).replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]/g, (char) =>
|
|
149
|
+
str = String(str).replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]/g, (char) =>
|
|
150
|
+
encodeURIComponent(char)
|
|
151
|
+
)
|
|
146
152
|
|
|
147
153
|
if (preserveBrackets) {
|
|
148
154
|
// Preserve brackets
|
|
@@ -51,7 +51,10 @@ const getActiveRoute = (state: State): { name: string; params?: object } => {
|
|
|
51
51
|
return route
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
const cachedNormalizedConfigs = new WeakMap<
|
|
54
|
+
const cachedNormalizedConfigs = new WeakMap<
|
|
55
|
+
PathConfigMap<{}>,
|
|
56
|
+
Record<string, ConfigItem>
|
|
57
|
+
>()
|
|
55
58
|
|
|
56
59
|
const getNormalizedConfigs = (options?: Options<{}>) => {
|
|
57
60
|
if (!options?.screens) return {}
|
|
@@ -111,7 +114,9 @@ export function getPathDataFromState<ParamList extends {}>(
|
|
|
111
114
|
// @modified - end
|
|
112
115
|
|
|
113
116
|
if (state == null) {
|
|
114
|
-
throw Error(
|
|
117
|
+
throw Error(
|
|
118
|
+
"Got 'undefined' for the navigation state. You must pass a valid state object."
|
|
119
|
+
)
|
|
115
120
|
}
|
|
116
121
|
|
|
117
122
|
if (options) {
|
|
@@ -252,7 +257,9 @@ export function getPathDataFromState<ParamList extends {}>(
|
|
|
252
257
|
// @modified - end
|
|
253
258
|
} else {
|
|
254
259
|
index =
|
|
255
|
-
typeof route.state.index === 'number'
|
|
260
|
+
typeof route.state.index === 'number'
|
|
261
|
+
? route.state.index
|
|
262
|
+
: route.state.routes.length - 1
|
|
256
263
|
|
|
257
264
|
const nextRoute = route.state.routes[index]
|
|
258
265
|
const nestedConfig = currentOptions[route.name].screens
|
|
@@ -404,9 +411,13 @@ const createConfigItem = (
|
|
|
404
411
|
// If an object is specified as the value (e.g. Foo: { ... }),
|
|
405
412
|
// It can have `path` property and `screens` prop which has nested configs
|
|
406
413
|
const pattern =
|
|
407
|
-
config.exact !== true
|
|
414
|
+
config.exact !== true
|
|
415
|
+
? joinPaths(parentPattern || '', config.path || '')
|
|
416
|
+
: config.path || ''
|
|
408
417
|
|
|
409
|
-
const screens = config.screens
|
|
418
|
+
const screens = config.screens
|
|
419
|
+
? createNormalizedConfigs(config.screens, pattern)
|
|
420
|
+
: undefined
|
|
410
421
|
|
|
411
422
|
return {
|
|
412
423
|
// Normalize pattern to remove any leading, trailing slashes, duplicate slashes etc.
|
|
@@ -165,11 +165,19 @@ export function getRouteConfigSorter(previousSegments: string[] = []) {
|
|
|
165
165
|
* If both are static/dynamic or a layout file, then we check group similarity
|
|
166
166
|
*/
|
|
167
167
|
const similarToPreviousA = previousSegments.filter((value, index) => {
|
|
168
|
-
return
|
|
168
|
+
return (
|
|
169
|
+
value === a.expandedRouteNames[index] &&
|
|
170
|
+
value.startsWith('(') &&
|
|
171
|
+
value.endsWith(')')
|
|
172
|
+
)
|
|
169
173
|
})
|
|
170
174
|
|
|
171
175
|
const similarToPreviousB = previousSegments.filter((value, index) => {
|
|
172
|
-
return
|
|
176
|
+
return (
|
|
177
|
+
value === b.expandedRouteNames[index] &&
|
|
178
|
+
value.startsWith('(') &&
|
|
179
|
+
value.endsWith(')')
|
|
180
|
+
)
|
|
173
181
|
})
|
|
174
182
|
|
|
175
183
|
if (
|
|
@@ -411,7 +419,9 @@ export function stripBaseUrl(
|
|
|
411
419
|
) {
|
|
412
420
|
if (process.env.NODE_ENV !== 'development') {
|
|
413
421
|
if (baseUrl) {
|
|
414
|
-
return path
|
|
422
|
+
return path
|
|
423
|
+
.replace(/^\/+/g, '/')
|
|
424
|
+
.replace(new RegExp(`^\\/?${escape(baseUrl)}`, 'g'), '')
|
|
415
425
|
}
|
|
416
426
|
}
|
|
417
427
|
return path
|
|
@@ -2,7 +2,10 @@ import { beforeEach, describe, expect, it } from 'vitest'
|
|
|
2
2
|
import { getMockConfig } from '../testing-utils'
|
|
3
3
|
import { getPathFromState } from './getPathFromState'
|
|
4
4
|
import { getStateFromPath } from './getStateFromPath'
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
getUrlWithReactNavigationConcessions,
|
|
7
|
+
stripBaseUrl,
|
|
8
|
+
} from './getStateFromPath-mods'
|
|
6
9
|
|
|
7
10
|
describe(stripBaseUrl, () => {
|
|
8
11
|
;[
|
|
@@ -55,7 +58,9 @@ describe('baseUrl', () => {
|
|
|
55
58
|
expect(getStateFromPath<object>(path, config)).toEqual({
|
|
56
59
|
routes: [{ name: 'bar', path: '/bar' }],
|
|
57
60
|
})
|
|
58
|
-
expect(getPathFromState(getStateFromPath<object>(path, config)!, config)).toBe(
|
|
61
|
+
expect(getPathFromState(getStateFromPath<object>(path, config)!, config)).toBe(
|
|
62
|
+
'/expo/bar'
|
|
63
|
+
)
|
|
59
64
|
})
|
|
60
65
|
})
|
|
61
66
|
|
|
@@ -83,9 +88,9 @@ describe(getUrlWithReactNavigationConcessions, () => {
|
|
|
83
88
|
['https://acme.com/gh-pages/hello/world/?foo=bar#123', 'hello/world/'],
|
|
84
89
|
].forEach(([url, expected]) => {
|
|
85
90
|
it(`returns the pathname for ${url}`, () => {
|
|
86
|
-
expect(
|
|
87
|
-
|
|
88
|
-
)
|
|
91
|
+
expect(
|
|
92
|
+
getUrlWithReactNavigationConcessions(url, 'gh-pages').nonstandardPathname
|
|
93
|
+
).toBe(expected)
|
|
89
94
|
})
|
|
90
95
|
})
|
|
91
96
|
})
|
|
@@ -276,7 +281,9 @@ it(`adds dynamic route params from all levels of the path`, () => {
|
|
|
276
281
|
})
|
|
277
282
|
|
|
278
283
|
it(`handles not-found routes`, () => {
|
|
279
|
-
expect(
|
|
284
|
+
expect(
|
|
285
|
+
getStateFromPath('/missing-page', getMockConfig(['+not-found', 'index']))
|
|
286
|
+
).toEqual({
|
|
280
287
|
routes: [
|
|
281
288
|
{
|
|
282
289
|
name: '+not-found',
|
|
@@ -291,7 +298,10 @@ it(`handles not-found routes`, () => {
|
|
|
291
298
|
|
|
292
299
|
it(`handles query params`, () => {
|
|
293
300
|
expect(
|
|
294
|
-
getStateFromPath(
|
|
301
|
+
getStateFromPath(
|
|
302
|
+
'/?test=true&hello=world&array=1&array=2',
|
|
303
|
+
getMockConfig(['index.tsx'])
|
|
304
|
+
)
|
|
295
305
|
).toEqual({
|
|
296
306
|
routes: [
|
|
297
307
|
{
|
|
@@ -309,7 +319,10 @@ it(`handles query params`, () => {
|
|
|
309
319
|
|
|
310
320
|
it(`handles query params`, () => {
|
|
311
321
|
expect(
|
|
312
|
-
getStateFromPath(
|
|
322
|
+
getStateFromPath(
|
|
323
|
+
'/?test=true&hello=world&array=1&array=2',
|
|
324
|
+
getMockConfig(['index.tsx'])
|
|
325
|
+
)
|
|
313
326
|
).toEqual({
|
|
314
327
|
routes: [
|
|
315
328
|
{
|
|
@@ -328,7 +341,10 @@ it(`handles query params`, () => {
|
|
|
328
341
|
// TODO
|
|
329
342
|
it.skip(`prioritizes hoisted index routes over dynamic groups`, () => {
|
|
330
343
|
expect(
|
|
331
|
-
getStateFromPath(
|
|
344
|
+
getStateFromPath(
|
|
345
|
+
'/(one)',
|
|
346
|
+
getMockConfig(['(one,two)/index.tsx', '(one,two)/[slug].tsx'])
|
|
347
|
+
)
|
|
332
348
|
).toEqual({
|
|
333
349
|
routes: [
|
|
334
350
|
{
|
|
@@ -6,7 +6,11 @@
|
|
|
6
6
|
* All modifications except formatting should be marked with `// @modified` comment.
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import type {
|
|
9
|
+
import type {
|
|
10
|
+
InitialState,
|
|
11
|
+
NavigationState,
|
|
12
|
+
PartialState,
|
|
13
|
+
} from '@react-navigation/routers'
|
|
10
14
|
// biome-ignore lint/suspicious/noShadowRestrictedNames: ignore from forked code // @modified
|
|
11
15
|
import escape from 'escape-string-regexp'
|
|
12
16
|
|
|
@@ -200,7 +204,9 @@ export function getStateFromPath<ParamList extends {}>(
|
|
|
200
204
|
*/
|
|
201
205
|
const cachedConfigResources = new WeakMap<Options<{}>, ConfigResources>()
|
|
202
206
|
|
|
203
|
-
function getConfigResources<ParamList extends {}>(
|
|
207
|
+
function getConfigResources<ParamList extends {}>(
|
|
208
|
+
options: Options<ParamList> | undefined
|
|
209
|
+
) {
|
|
204
210
|
if (!options) return prepareConfigResources()
|
|
205
211
|
|
|
206
212
|
const cached = cachedConfigResources.get(options)
|
|
@@ -261,7 +267,13 @@ function getNormalizedConfigs(
|
|
|
261
267
|
([] as RouteConfig[])
|
|
262
268
|
.concat(
|
|
263
269
|
...Object.keys(screens).map((key) =>
|
|
264
|
-
createNormalizedConfigs(
|
|
270
|
+
createNormalizedConfigs(
|
|
271
|
+
key,
|
|
272
|
+
screens as PathConfigMap<object>,
|
|
273
|
+
[],
|
|
274
|
+
initialRoutes,
|
|
275
|
+
[]
|
|
276
|
+
)
|
|
265
277
|
)
|
|
266
278
|
)
|
|
267
279
|
/* @modified - start */
|
|
@@ -331,7 +343,9 @@ function checkForDuplicatedConfigs(configs: RouteConfig[]) {
|
|
|
331
343
|
// It's not a problem if the path string omitted from a inner most screen
|
|
332
344
|
// For example, it's ok if a path resolves to `A > B > C` or `A > B`
|
|
333
345
|
const intersects =
|
|
334
|
-
a.length > b.length
|
|
346
|
+
a.length > b.length
|
|
347
|
+
? b.every((it, i) => a[i] === it)
|
|
348
|
+
: a.every((it, i) => b[i] === it)
|
|
335
349
|
|
|
336
350
|
if (!intersects) {
|
|
337
351
|
throw new Error(
|
|
@@ -455,7 +469,9 @@ const matchAgainstConfigs = (remaining: string, configs: RouteConfig[]) => {
|
|
|
455
469
|
// const key = p.replace(/^:/, '').replace(/\?$/, '')
|
|
456
470
|
const key = replacePart(p)
|
|
457
471
|
// @modified - end
|
|
458
|
-
acc[key] = routeConfig?.parse?.[key]
|
|
472
|
+
acc[key] = routeConfig?.parse?.[key]
|
|
473
|
+
? routeConfig.parse[key](value as any)
|
|
474
|
+
: value
|
|
459
475
|
}
|
|
460
476
|
|
|
461
477
|
return acc
|
|
@@ -9,7 +9,9 @@ import type { NavigationContainerRef, ParamListBase } from '@react-navigation/co
|
|
|
9
9
|
import * as React from 'react'
|
|
10
10
|
import { BackHandler } from 'react-native'
|
|
11
11
|
|
|
12
|
-
export function useBackButton(
|
|
12
|
+
export function useBackButton(
|
|
13
|
+
ref: React.RefObject<NavigationContainerRef<ParamListBase>>
|
|
14
|
+
) {
|
|
13
15
|
React.useEffect(() => {
|
|
14
16
|
const subscription = BackHandler.addEventListener('hardwareBackPress', () => {
|
|
15
17
|
const navigation = ref.current
|
|
@@ -8,7 +8,9 @@
|
|
|
8
8
|
import type { NavigationContainerRef, ParamListBase } from '@react-navigation/core'
|
|
9
9
|
|
|
10
10
|
// eslint-disable-next-line @eslint-react/hooks-extra/ensure-custom-hooks-using-other-hooks
|
|
11
|
-
export function useBackButton(
|
|
11
|
+
export function useBackButton(
|
|
12
|
+
_: React.RefObject<NavigationContainerRef<ParamListBase> | null>
|
|
13
|
+
) {
|
|
12
14
|
// No-op
|
|
13
15
|
// BackHandler is not available on web
|
|
14
16
|
}
|
|
@@ -27,7 +27,10 @@ export function useDocumentTitle(
|
|
|
27
27
|
const navigation = ref.current
|
|
28
28
|
|
|
29
29
|
if (navigation) {
|
|
30
|
-
const title = formatter(
|
|
30
|
+
const title = formatter(
|
|
31
|
+
navigation.getCurrentOptions(),
|
|
32
|
+
navigation.getCurrentRoute()
|
|
33
|
+
)
|
|
31
34
|
|
|
32
35
|
document.title = title
|
|
33
36
|
}
|
|
@@ -134,7 +134,9 @@ export function useLinking(
|
|
|
134
134
|
|
|
135
135
|
const path = extractPathFromURL(prefixesRef.current, url)
|
|
136
136
|
|
|
137
|
-
return path !== undefined
|
|
137
|
+
return path !== undefined
|
|
138
|
+
? getStateFromPathRef.current(path, configRef.current)
|
|
139
|
+
: undefined
|
|
138
140
|
}, [])
|
|
139
141
|
|
|
140
142
|
const getInitialState = React.useCallback(() => {
|
package/src/fork/useLinking.ts
CHANGED
|
@@ -285,7 +285,8 @@ export function useLinking(
|
|
|
285
285
|
// @modified: workaround to make react-navigation handle hash changes
|
|
286
286
|
if (
|
|
287
287
|
index > previousIndex ||
|
|
288
|
-
(index === previousIndex &&
|
|
288
|
+
(index === previousIndex &&
|
|
289
|
+
(!record || `${record?.path}${location.hash}` === path))
|
|
289
290
|
) {
|
|
290
291
|
const action = getActionFromStateRef.current(state, configRef.current)
|
|
291
292
|
|
|
@@ -422,7 +423,10 @@ export function useLinking(
|
|
|
422
423
|
const path = getPathForRoute(route, state)
|
|
423
424
|
|
|
424
425
|
if (process.env.ONE_DEBUG_ROUTER) {
|
|
425
|
-
console.info(
|
|
426
|
+
console.info(
|
|
427
|
+
`[one] 📜 initial history.replace - state:`,
|
|
428
|
+
JSON.stringify(state, null, 2)
|
|
429
|
+
)
|
|
426
430
|
console.info(`[one] 📜 initial history.replace - focusedRoute:`, route)
|
|
427
431
|
console.info(`[one] 📜 initial history.replace - computed path:`, path)
|
|
428
432
|
}
|
|
@@ -474,7 +478,9 @@ export function useLinking(
|
|
|
474
478
|
path !== pendingPath
|
|
475
479
|
) {
|
|
476
480
|
const historyDelta =
|
|
477
|
-
(focusedState.history
|
|
481
|
+
(focusedState.history
|
|
482
|
+
? focusedState.history.length
|
|
483
|
+
: focusedState.routes.length) -
|
|
478
484
|
(previousFocusedState.history
|
|
479
485
|
? previousFocusedState.history.length
|
|
480
486
|
: previousFocusedState.routes.length)
|
|
@@ -64,7 +64,12 @@ export function validatePathConfig(config: unknown, root = true) {
|
|
|
64
64
|
)
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
if (
|
|
67
|
+
if (
|
|
68
|
+
root &&
|
|
69
|
+
'path' in config &&
|
|
70
|
+
typeof config.path === 'string' &&
|
|
71
|
+
config.path.includes(':')
|
|
72
|
+
) {
|
|
68
73
|
throw new Error(
|
|
69
74
|
`Found invalid path '${config.path}'. The 'path' in the top-level configuration cannot contain patterns for params.`
|
|
70
75
|
)
|
package/src/head/Head.ios.tsx
CHANGED
|
@@ -54,7 +54,9 @@ type SerializedMeta = {
|
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
function serializedMetaChildren(meta: MetaNode[]): SerializedMeta[] {
|
|
57
|
-
const validMeta = meta.filter(
|
|
57
|
+
const validMeta = meta.filter(
|
|
58
|
+
(child) => child.type === 'meta' || child.type === 'title'
|
|
59
|
+
)
|
|
58
60
|
|
|
59
61
|
return validMeta.map((child) => {
|
|
60
62
|
if (child.type === 'title') {
|
package/src/hooks.tsx
CHANGED
|
@@ -112,7 +112,9 @@ export function usePathname(): string {
|
|
|
112
112
|
*
|
|
113
113
|
* @see `useParams`
|
|
114
114
|
*/
|
|
115
|
-
export function useActiveParams<
|
|
115
|
+
export function useActiveParams<
|
|
116
|
+
TParams extends object = SearchParams,
|
|
117
|
+
>(): Partial<TParams> {
|
|
116
118
|
return useRouteInfo().params as Partial<TParams>
|
|
117
119
|
}
|
|
118
120
|
|
|
@@ -129,7 +131,7 @@ export const useGlobalSearchParams = useActiveParams
|
|
|
129
131
|
* To observe updates even when the invoking route is not focused, use `useActiveParams()`.
|
|
130
132
|
*/
|
|
131
133
|
|
|
132
|
-
export function useParams<TParams extends
|
|
134
|
+
export function useParams<TParams extends object = SearchParams>(): Partial<TParams> {
|
|
133
135
|
const params = React.useContext(RouteParamsContext) ?? {}
|
|
134
136
|
|
|
135
137
|
return Object.fromEntries(
|
package/src/index.ts
CHANGED
|
@@ -71,7 +71,10 @@ export type { Endpoint, LoaderProps } from './types'
|
|
|
71
71
|
// React Navigation
|
|
72
72
|
export { useFocusEffect } from './useFocusEffect'
|
|
73
73
|
export { useLoader, useLoaderState } from './useLoader'
|
|
74
|
-
export {
|
|
74
|
+
export {
|
|
75
|
+
type ServerHeadInsertionCallback,
|
|
76
|
+
useServerHeadInsertion,
|
|
77
|
+
} from './useServerHeadInsertion'
|
|
75
78
|
export { isResponse } from './utils/isResponse'
|
|
76
79
|
export { redirect } from './utils/redirect'
|
|
77
80
|
export { ErrorBoundary } from './views/ErrorBoundary'
|
package/src/interfaces/router.ts
CHANGED
|
@@ -35,19 +35,23 @@ export namespace OneRouter {
|
|
|
35
35
|
LoaderProps: import('../types').LoaderProps<InputRouteParams<Path>>
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
type StaticRoutes = __routes extends { StaticRoutes: string }
|
|
39
|
-
|
|
40
|
-
type DynamicRoutes<T extends string> = __routes<T> extends { DynamicRoutes: any }
|
|
41
|
-
? T extends __routes<infer _>['DynamicRoutes']
|
|
42
|
-
? T
|
|
43
|
-
: never
|
|
38
|
+
type StaticRoutes = __routes extends { StaticRoutes: string }
|
|
39
|
+
? __routes['StaticRoutes']
|
|
44
40
|
: string
|
|
45
41
|
|
|
42
|
+
type DynamicRoutes<T extends string> =
|
|
43
|
+
__routes<T> extends { DynamicRoutes: any }
|
|
44
|
+
? T extends __routes<infer _>['DynamicRoutes']
|
|
45
|
+
? T
|
|
46
|
+
: never
|
|
47
|
+
: string
|
|
48
|
+
|
|
46
49
|
export type DynamicRouteTemplate = __routes extends { DynamicRouteTemplate: string }
|
|
47
50
|
? __routes['DynamicRouteTemplate']
|
|
48
51
|
: string
|
|
49
52
|
|
|
50
|
-
export type NavigationRef =
|
|
53
|
+
export type NavigationRef =
|
|
54
|
+
NavigationContainerRefWithCurrent<ReactNavigation.RootParamList>
|
|
51
55
|
|
|
52
56
|
export type RelativePathString = `./${string}` | `../${string}` | '..'
|
|
53
57
|
export type AbsoluteRoute = DynamicRouteTemplate | StaticRoutes
|
|
@@ -178,14 +182,19 @@ export namespace OneRouter {
|
|
|
178
182
|
* Href *
|
|
179
183
|
*********/
|
|
180
184
|
|
|
181
|
-
export type DynamicRoutesHref = DynamicRouteString<
|
|
185
|
+
export type DynamicRoutesHref = DynamicRouteString<
|
|
186
|
+
{ __branded__: any },
|
|
187
|
+
DynamicRouteTemplate
|
|
188
|
+
>
|
|
182
189
|
export type DynamicRoutesHref2 = DynamicRouteString<string, DynamicRouteTemplate>
|
|
183
190
|
|
|
184
191
|
/**
|
|
185
192
|
* The main routing type for One. Includes all available routes with strongly typed parameters.
|
|
186
193
|
*/
|
|
187
194
|
export type Href<T extends string | object = { __branded__: any }> =
|
|
188
|
-
| StringRouteToType<
|
|
195
|
+
| StringRouteToType<
|
|
196
|
+
AllUngroupedRoutes<StaticRoutes> | RelativePathString | ExternalPathString
|
|
197
|
+
>
|
|
189
198
|
| DynamicRouteString<T, DynamicRouteTemplate>
|
|
190
199
|
| DynamicRouteObject<
|
|
191
200
|
StaticRoutes | RelativePathString | ExternalPathString | DynamicRouteTemplate
|
|
@@ -259,7 +268,9 @@ export namespace OneRouter {
|
|
|
259
268
|
/** If there's history that supports invoking the `dismiss` and `dismissAll` function. */
|
|
260
269
|
canDismiss: () => boolean
|
|
261
270
|
/** Update the current route query params. */
|
|
262
|
-
setParams: <T = ''>(
|
|
271
|
+
setParams: <T = ''>(
|
|
272
|
+
params?: T extends '' ? InputRouteParamsBlank : InputRouteParams<T>
|
|
273
|
+
) => void
|
|
263
274
|
/** Subscribe to state updates from the router */
|
|
264
275
|
subscribe: (listener: RootStateListener) => () => void
|
|
265
276
|
/** Subscribe to loading state updates */
|
|
@@ -325,7 +336,8 @@ export namespace OneRouter {
|
|
|
325
336
|
}
|
|
326
337
|
|
|
327
338
|
export interface LinkProps<T extends string | object>
|
|
328
|
-
extends
|
|
339
|
+
extends
|
|
340
|
+
Omit<TextProps, 'href' | 'disabled' | 'onLongPress' | 'onPressIn' | 'onPressOut'>,
|
|
329
341
|
Pick<PressableProps, 'disabled' | 'onLongPress' | 'onPressIn' | 'onPressOut'>,
|
|
330
342
|
WebAnchorProps {
|
|
331
343
|
/** Path to route to. */
|
|
@@ -343,7 +355,9 @@ export namespace OneRouter {
|
|
|
343
355
|
/** On web, this sets the HTML `class` directly. On native, this can be used with CSS interop tools like Nativewind. */
|
|
344
356
|
className?: string
|
|
345
357
|
|
|
346
|
-
onPress?: (
|
|
358
|
+
onPress?: (
|
|
359
|
+
e: React.MouseEvent<HTMLAnchorElement, MouseEvent> | GestureResponderEvent
|
|
360
|
+
) => void
|
|
347
361
|
}
|
|
348
362
|
|
|
349
363
|
export interface LinkComponent {
|
|
@@ -365,7 +379,9 @@ export namespace OneRouter {
|
|
|
365
379
|
export declare const Link: LinkComponent
|
|
366
380
|
|
|
367
381
|
/** Redirects to the href as soon as the component is mounted. */
|
|
368
|
-
export declare const Redirect: (
|
|
382
|
+
export declare const Redirect: (
|
|
383
|
+
props: React.PropsWithChildren<{ href: Href }>
|
|
384
|
+
) => ReactNode
|
|
369
385
|
export type Redirect = typeof Redirect
|
|
370
386
|
|
|
371
387
|
/**
|
package/src/layouts/Tabs.tsx
CHANGED
|
@@ -65,7 +65,11 @@ export const Tabs = withLayoutContext<
|
|
|
65
65
|
return null
|
|
66
66
|
}
|
|
67
67
|
const children =
|
|
68
|
-
Platform.OS === 'web' ?
|
|
68
|
+
Platform.OS === 'web' ? (
|
|
69
|
+
props.children
|
|
70
|
+
) : (
|
|
71
|
+
<Pressable>{props.children}</Pressable>
|
|
72
|
+
)
|
|
69
73
|
return (
|
|
70
74
|
<Link
|
|
71
75
|
{...(props as any)}
|
|
@@ -35,7 +35,8 @@ export function useFilterScreenChildren(
|
|
|
35
35
|
if (process.env.NODE_ENV !== 'production') {
|
|
36
36
|
if (
|
|
37
37
|
['children', 'component', 'getComponent'].some(
|
|
38
|
-
(key) =>
|
|
38
|
+
(key) =>
|
|
39
|
+
child.props && typeof child.props === 'object' && key in child.props
|
|
39
40
|
)
|
|
40
41
|
) {
|
|
41
42
|
throw new Error(
|
|
@@ -87,29 +88,31 @@ export function withLayoutContext<
|
|
|
87
88
|
options?: { props: any }
|
|
88
89
|
) {
|
|
89
90
|
return withStaticProperties(
|
|
90
|
-
React.forwardRef<unknown, PickPartial<React.ComponentProps<T>, 'children'>>(
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
91
|
+
React.forwardRef<unknown, PickPartial<React.ComponentProps<T>, 'children'>>(
|
|
92
|
+
(propsIn, ref) => {
|
|
93
|
+
const { children, ...props } = propsIn as React.ComponentProps<T>
|
|
94
|
+
const contextKey = useContextKey()
|
|
95
|
+
const { screens } = useFilterScreenChildren(children, {
|
|
96
|
+
contextKey,
|
|
97
|
+
})
|
|
96
98
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
99
|
+
const processed = processor ? processor(screens ?? ([] as any)) : screens
|
|
100
|
+
const sorted = useSortedScreens((processed ?? []) as any, {
|
|
101
|
+
onlyMatching: true,
|
|
102
|
+
})
|
|
101
103
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
104
|
+
// Prevent throwing an error when there are no screens.
|
|
105
|
+
if (!sorted.length) {
|
|
106
|
+
return null
|
|
107
|
+
}
|
|
106
108
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
109
|
+
return (
|
|
110
|
+
<Nav {...options?.props} {...props} id={contextKey} ref={ref}>
|
|
111
|
+
{sorted}
|
|
112
|
+
</Nav>
|
|
113
|
+
)
|
|
114
|
+
}
|
|
115
|
+
),
|
|
113
116
|
{
|
|
114
117
|
Screen,
|
|
115
118
|
}
|
package/src/link/Link.tsx
CHANGED
|
@@ -49,7 +49,9 @@ export const Link = React.forwardRef(function Link(
|
|
|
49
49
|
|
|
50
50
|
const props = useLinkTo({ href: resolvedHref, replace })
|
|
51
51
|
|
|
52
|
-
const onPress = (
|
|
52
|
+
const onPress = (
|
|
53
|
+
e: React.MouseEvent<HTMLAnchorElement, MouseEvent> | GestureResponderEvent
|
|
54
|
+
) => {
|
|
53
55
|
if ('onPress' in rest) {
|
|
54
56
|
rest.onPress?.(e)
|
|
55
57
|
}
|
package/src/link/linking.ts
CHANGED
|
@@ -83,7 +83,9 @@ export function addEventListener(listener: (url: string) => void) {
|
|
|
83
83
|
// `exp://192.168.87.39:19000/` then use the default `exp://192.168.87.39:19000/--/`
|
|
84
84
|
if (
|
|
85
85
|
parsed.path === null ||
|
|
86
|
-
['', '/'].includes(
|
|
86
|
+
['', '/'].includes(
|
|
87
|
+
adjustPathname({ hostname: parsed.hostname, pathname: parsed.path })
|
|
88
|
+
)
|
|
87
89
|
) {
|
|
88
90
|
listener(getRootURL())
|
|
89
91
|
} else {
|
package/src/link/useLinkTo.tsx
CHANGED
|
@@ -32,7 +32,9 @@ function eventShouldPreventDefault(
|
|
|
32
32
|
export function useLinkTo(props: { href: string; replace?: boolean }) {
|
|
33
33
|
const { linkTo } = useOneRouter()
|
|
34
34
|
|
|
35
|
-
const onPress = (
|
|
35
|
+
const onPress = (
|
|
36
|
+
e?: React.MouseEvent<HTMLAnchorElement, MouseEvent> | GestureResponderEvent
|
|
37
|
+
) => {
|
|
36
38
|
const event = props.replace ? 'REPLACE' : 'PUSH'
|
|
37
39
|
let shouldHandle = false
|
|
38
40
|
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
type NavigationProp,
|
|
3
|
+
type NavigationState,
|
|
4
|
+
useNavigation,
|
|
5
|
+
} from '@react-navigation/native'
|
|
2
6
|
import { useCallback, useEffect, useRef, useState } from 'react'
|
|
3
7
|
|
|
4
8
|
import { useOneRouter } from '../router/router'
|