one 1.12.5 → 1.12.6
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/devtools/source-inspector.mjs +7 -27
- package/dist/cjs/Frozen.native.js +1 -1
- package/dist/cjs/Root.native.js +5 -5
- package/dist/cjs/Root.native.js.map +1 -1
- package/dist/cjs/__mocks__/@react-navigation/native-stack.native.js.map +1 -1
- package/dist/cjs/__mocks__/expo-linking.native.js.map +1 -1
- package/dist/cjs/__mocks__/expo-modules-core.native.js.map +1 -1
- package/dist/cjs/__mocks__/react-native-screens.native.js.map +1 -1
- package/dist/cjs/babel-plugins/environment-guard.native.js.map +1 -1
- package/dist/cjs/babel-plugins/inline-one-server-url.native.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.native.js.map +1 -1
- package/dist/cjs/cli/build.cjs +8 -11
- package/dist/cjs/cli/build.native.js +25 -28
- package/dist/cjs/cli/build.native.js.map +1 -1
- package/dist/cjs/cli/buildPage.native.js +6 -6
- package/dist/cjs/cli/buildPage.native.js.map +1 -1
- package/dist/cjs/cli/buildPageWorker.native.js +1 -1
- package/dist/cjs/cli/buildPageWorker.native.js.map +1 -1
- package/dist/cjs/cli/checkNodeVersion.native.js.map +1 -1
- package/dist/cjs/cli/daemon.native.js +1 -1
- package/dist/cjs/cli/daemon.native.js.map +1 -1
- package/dist/cjs/cli/dev.native.js +4 -4
- package/dist/cjs/cli/dev.native.js.map +1 -1
- package/dist/cjs/cli/generateRoutes.native.js +3 -3
- package/dist/cjs/cli/generateRoutes.native.js.map +1 -1
- package/dist/cjs/cli/generateSitemap.native.js.map +1 -1
- package/dist/cjs/cli/generateSitemap.test.native.js +1 -1
- package/dist/cjs/cli/generateSitemap.test.native.js.map +1 -1
- package/dist/cjs/cli/label-process.native.js.map +1 -1
- package/dist/cjs/cli/main.native.js +1 -1
- package/dist/cjs/cli/main.native.js.map +1 -1
- package/dist/cjs/cli/patch.native.js +1 -1
- package/dist/cjs/cli/patch.native.js.map +1 -1
- package/dist/cjs/cli/prebuild.native.js.map +1 -1
- package/dist/cjs/cli/runAndroid.native.js.map +1 -1
- package/dist/cjs/cli/runIos.native.js.map +1 -1
- package/dist/cjs/cli/securityScan.native.js.map +1 -1
- package/dist/cjs/cli/workerPool.native.js.map +1 -1
- package/dist/cjs/cli.native.js.map +1 -1
- package/dist/cjs/clientLoaderResolver.native.js.map +1 -1
- package/dist/cjs/config.native.js +1 -1
- package/dist/cjs/config.native.js.map +1 -1
- package/dist/cjs/constants.native.js +1 -1
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/cjs/createAPIRoute.native.js.map +1 -1
- package/dist/cjs/createApp.native.js +3 -3
- package/dist/cjs/createHandleRequest.native.js +5 -5
- package/dist/cjs/createHandleRequest.native.js.map +1 -1
- package/dist/cjs/createHandleRequest.test.native.js +1 -1
- package/dist/cjs/createHandleRequest.test.native.js.map +1 -1
- package/dist/cjs/createMiddleware.native.js.map +1 -1
- package/dist/cjs/daemon/index.native.js +7 -7
- package/dist/cjs/daemon/index.native.js.map +1 -1
- package/dist/cjs/daemon/ipc.native.js +1 -1
- package/dist/cjs/daemon/ipc.native.js.map +1 -1
- package/dist/cjs/daemon/picker.native.js.map +1 -1
- package/dist/cjs/daemon/proxy.native.js.map +1 -1
- package/dist/cjs/daemon/registry.native.js.map +1 -1
- package/dist/cjs/daemon/server.native.js +4 -4
- package/dist/cjs/daemon/server.native.js.map +1 -1
- package/dist/cjs/daemon/tui.native.js +3 -3
- package/dist/cjs/daemon/tui.native.js.map +1 -1
- package/dist/cjs/daemon/types.native.js.map +1 -1
- package/dist/cjs/daemon/utils.native.js.map +1 -1
- package/dist/cjs/devtools/registry.native.js.map +1 -1
- package/dist/cjs/drawer.native.js +1 -1
- package/dist/cjs/drawer.native.js.map +1 -1
- package/dist/cjs/fallbackViews/Sitemap.native.js.map +1 -1
- package/dist/cjs/fallbackViews/Unmatched.native.js.map +1 -1
- package/dist/cjs/fork/NavigationContainer.native.js +5 -5
- package/dist/cjs/fork/NavigationContainer.native.js.map +1 -1
- package/dist/cjs/fork/SSRNavigationContainer.native.js.map +1 -1
- package/dist/cjs/fork/__tests__/getPathFromState.test.native.js +2 -2
- package/dist/cjs/fork/__tests__/getPathFromState.test.native.js.map +1 -1
- package/dist/cjs/fork/__tests__/getStateFromPath.test.native.js +3 -3
- package/dist/cjs/fork/__tests__/getStateFromPath.test.native.js.map +1 -1
- package/dist/cjs/fork/_shared.native.js.map +1 -1
- package/dist/cjs/fork/createMemoryHistory.native.js.map +1 -1
- package/dist/cjs/fork/extractPathFromURL.native.js.map +1 -1
- package/dist/cjs/fork/findFocusedRoute.native.js.map +1 -1
- package/dist/cjs/fork/getPathFromState-mods.native.js +2 -2
- package/dist/cjs/fork/getPathFromState-mods.native.js.map +1 -1
- package/dist/cjs/fork/getPathFromState.native.js +3 -3
- package/dist/cjs/fork/getPathFromState.native.js.map +1 -1
- package/dist/cjs/fork/getPathFromState.test.native.js +1 -1
- package/dist/cjs/fork/getPathFromState.test.native.js.map +1 -1
- package/dist/cjs/fork/getStateFromPath-mods.native.js +1 -1
- package/dist/cjs/fork/getStateFromPath-mods.native.js.map +1 -1
- package/dist/cjs/fork/getStateFromPath.native.js +4 -4
- package/dist/cjs/fork/getStateFromPath.native.js.map +1 -1
- package/dist/cjs/fork/getStateFromPath.test.native.js +4 -4
- package/dist/cjs/fork/getStateFromPath.test.native.js.map +1 -1
- package/dist/cjs/fork/useLinking.native.js +1 -1
- package/dist/cjs/fork/useThenable.native.js.map +1 -1
- package/dist/cjs/fork/validatePathConfig.native.js.map +1 -1
- package/dist/cjs/getReactNavigationConfig.native.js +1 -1
- package/dist/cjs/getReactNavigationConfig.native.js.map +1 -1
- package/dist/cjs/getURL.native.js +1 -1
- package/dist/cjs/head/Head.native.js +1 -1
- package/dist/cjs/head/Head.native.js.map +1 -1
- package/dist/cjs/head/HeadModule.native.js.map +1 -1
- package/dist/cjs/head/index.native.js +1 -1
- package/dist/cjs/head/index.native.js.map +1 -1
- package/dist/cjs/head/types.native.js.map +1 -1
- package/dist/cjs/head/url.native.js.map +1 -1
- package/dist/cjs/hooks.native.js +4 -4
- package/dist/cjs/hooks.native.js.map +1 -1
- package/dist/cjs/hooks.test.native.js.map +1 -1
- package/dist/cjs/href.native.js.map +1 -1
- package/dist/cjs/image/getImageData.native.js.map +1 -1
- package/dist/cjs/image.native.js +1 -1
- package/dist/cjs/image.native.js.map +1 -1
- package/dist/cjs/index.native.js +42 -42
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/interfaces/router.native.js.map +1 -1
- package/dist/cjs/layouts/Drawer.native.js +1 -1
- package/dist/cjs/layouts/Drawer.native.js.map +1 -1
- package/dist/cjs/layouts/Stack.native.js +5 -5
- package/dist/cjs/layouts/Stack.native.js.map +1 -1
- package/dist/cjs/layouts/Tabs.native.js +2 -2
- package/dist/cjs/layouts/Tabs.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackHeaderBackButton.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackHeaderComponent.native.js +6 -6
- package/dist/cjs/layouts/stack-utils/StackHeaderComponent.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackHeaderLeft.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackHeaderRight.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackHeaderSearchBar.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackHeaderTitle.native.js +1 -1
- package/dist/cjs/layouts/stack-utils/StackHeaderTitle.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackScreen.native.js +2 -2
- package/dist/cjs/layouts/stack-utils/StackScreen.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/__tests__/composition.test.native.js +8 -8
- package/dist/cjs/layouts/stack-utils/__tests__/composition.test.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/index.native.js +7 -7
- package/dist/cjs/layouts/stack-utils/index.native.js.map +1 -1
- package/dist/cjs/layouts/withLayoutContext.native.js +7 -7
- package/dist/cjs/layouts/withLayoutContext.native.js.map +1 -1
- package/dist/cjs/link/Link.native.js +2 -2
- package/dist/cjs/link/Link.native.js.map +1 -1
- package/dist/cjs/link/Redirect.native.js +2 -2
- package/dist/cjs/link/Redirect.native.js.map +1 -1
- package/dist/cjs/link/href.native.js.map +1 -1
- package/dist/cjs/link/linking.native.js +3 -3
- package/dist/cjs/link/path.native.js.map +1 -1
- package/dist/cjs/link/prefetchIntent.native.js.map +1 -1
- package/dist/cjs/link/prefetchIntent.test.native.js +1 -1
- package/dist/cjs/link/prefetchIntent.test.native.js.map +1 -1
- package/dist/cjs/link/prefetchViewport.native.js.map +1 -1
- package/dist/cjs/link/prefetchViewport.test.native.js +1 -1
- package/dist/cjs/link/prefetchViewport.test.native.js.map +1 -1
- package/dist/cjs/link/useLinkTo.native.js +3 -3
- package/dist/cjs/link/useLinkTo.native.js.map +1 -1
- package/dist/cjs/link/useLoadedNavigation.native.js +1 -1
- package/dist/cjs/link/useLoadedNavigation.native.js.map +1 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js +1 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
- package/dist/cjs/notFoundState.native.js.map +1 -1
- package/dist/cjs/polyfills-mobile.native.js +1 -1
- package/dist/cjs/polyfills-mobile.native.js.map +1 -1
- package/dist/cjs/polyfills-server.native.js.map +1 -1
- package/dist/cjs/router/FlagsContext.native.js.map +1 -1
- package/dist/cjs/router/Route.native.js +2 -2
- package/dist/cjs/router/Route.native.js.map +1 -1
- package/dist/cjs/router/RouteInfoContext.native.js +1 -1
- package/dist/cjs/router/RouteInfoContext.native.js.map +1 -1
- package/dist/cjs/router/RouterStore.native.js.map +1 -1
- package/dist/cjs/router/SpaShellContext.native.js.map +1 -1
- package/dist/cjs/router/createRoute.native.js +1 -1
- package/dist/cjs/router/createRoute.native.js.map +1 -1
- package/dist/cjs/router/filterRootHTML.native.js.map +1 -1
- package/dist/cjs/router/findRouteNode.native.js.map +1 -1
- package/dist/cjs/router/getLinkingConfig.native.js +2 -2
- package/dist/cjs/router/getLinkingConfig.native.js.map +1 -1
- package/dist/cjs/router/getNormalizedStatePath.native.js +1 -1
- package/dist/cjs/router/getNormalizedStatePath.native.js.map +1 -1
- package/dist/cjs/router/getRouteInfo.native.js +5 -5
- package/dist/cjs/router/getRouteInfo.native.js.map +1 -1
- package/dist/cjs/router/getRoutes.native.js +4 -4
- package/dist/cjs/router/getRoutes.native.js.map +1 -1
- package/dist/cjs/router/getRoutes.test.native.js +1 -1
- package/dist/cjs/router/getRoutes.test.native.js.map +1 -1
- package/dist/cjs/router/glob-patterns.native.js.map +1 -1
- package/dist/cjs/router/imperative-api.native.js +1 -1
- package/dist/cjs/router/imperative-api.native.js.map +1 -1
- package/dist/cjs/router/interceptRoutes.native.js +2 -2
- package/dist/cjs/router/interceptRoutes.native.js.map +1 -1
- package/dist/cjs/router/isIndexPath.native.js.map +1 -1
- package/dist/cjs/router/lastAction.native.js.map +1 -1
- package/dist/cjs/router/linkingConfig.native.js +3 -3
- package/dist/cjs/router/linkingConfig.native.js.map +1 -1
- package/dist/cjs/router/matchers.native.js.map +1 -1
- package/dist/cjs/router/matchers.test.native.js +1 -1
- package/dist/cjs/router/matchers.test.native.js.map +1 -1
- package/dist/cjs/router/router.native.js +24 -24
- package/dist/cjs/router/router.native.js.map +1 -1
- package/dist/cjs/router/serverLocationContext.native.js.map +1 -1
- package/dist/cjs/router/sortRoutes.native.js +1 -1
- package/dist/cjs/router/sortRoutes.native.js.map +1 -1
- package/dist/cjs/router/useInitializeOneRouter.native.js +4 -4
- package/dist/cjs/router/useInitializeOneRouter.native.js.map +1 -1
- package/dist/cjs/router/useNavigation.native.js +2 -2
- package/dist/cjs/router/useNavigation.native.js.map +1 -1
- package/dist/cjs/router/useScreens.native.js +11 -11
- package/dist/cjs/router/useScreens.native.js.map +1 -1
- package/dist/cjs/router/useViteRoutes.native.js +1 -1
- package/dist/cjs/router/useViteRoutes.native.js.map +1 -1
- package/dist/cjs/router/utils/getNavigateAction.native.js +2 -2
- package/dist/cjs/router/utils/getNavigateAction.native.js.map +1 -1
- package/dist/cjs/router/utils/getNavigateAction.test.native.js +1 -1
- package/dist/cjs/router/utils/getNavigateAction.test.native.js.map +1 -1
- package/dist/cjs/screensFeatureFlags.native.js.map +1 -1
- package/dist/cjs/serve-worker.cjs +16 -23
- package/dist/cjs/serve-worker.native.js +19 -26
- package/dist/cjs/serve-worker.native.js.map +1 -1
- package/dist/cjs/serve.native.js +4 -4
- package/dist/cjs/serve.native.js.map +1 -1
- package/dist/cjs/server/ServerContextScript.native.js +4 -4
- package/dist/cjs/server/ServerContextScript.native.js.map +1 -1
- package/dist/cjs/server/createRoutesManifest.native.js +2 -2
- package/dist/cjs/server/createRoutesManifest.native.js.map +1 -1
- package/dist/cjs/server/getServerManifest.native.js +1 -1
- package/dist/cjs/server/getServerManifest.native.js.map +1 -1
- package/dist/cjs/server/getServerManifest.test.native.js +1 -1
- package/dist/cjs/server/getServerManifest.test.native.js.map +1 -1
- package/dist/cjs/server/oneServe.cjs +4 -1
- package/dist/cjs/server/oneServe.native.js +10 -7
- package/dist/cjs/server/oneServe.native.js.map +1 -1
- package/dist/cjs/server/setServerGlobals.native.js.map +1 -1
- package/dist/cjs/server/setupBuildOptions.native.js.map +1 -1
- package/dist/cjs/server/setupServerGlobals.native.js +1 -1
- package/dist/cjs/server/setupServerGlobals.native.js.map +1 -1
- package/dist/cjs/server/ssrLoaderData.native.js.map +1 -1
- package/dist/cjs/server/staticHtmlFetcher.native.js.map +1 -1
- package/dist/cjs/server/workerHandler.cjs +492 -0
- package/dist/cjs/server/workerHandler.native.js +673 -0
- package/dist/cjs/server/workerHandler.native.js.map +1 -0
- package/dist/cjs/server-render.native.js.map +1 -1
- package/dist/cjs/skewProtection.native.js +2 -2
- package/dist/cjs/skewProtection.native.js.map +1 -1
- package/dist/cjs/testing-utils.native.js +2 -2
- package/dist/cjs/testing-utils.native.js.map +1 -1
- package/dist/cjs/typed-routes/generateRouteTypes.native.js +5 -5
- package/dist/cjs/typed-routes/generateRouteTypes.native.js.map +1 -1
- package/dist/cjs/typed-routes/getTypedRoutesDeclarationFile.native.js +2 -2
- package/dist/cjs/typed-routes/getTypedRoutesDeclarationFile.native.js.map +1 -1
- package/dist/cjs/typed-routes/injectRouteHelpers.native.js.map +1 -1
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/ui/Slot.native.js.map +1 -1
- package/dist/cjs/ui/TabContext.native.js.map +1 -1
- package/dist/cjs/ui/TabList.native.js +1 -1
- package/dist/cjs/ui/TabList.native.js.map +1 -1
- package/dist/cjs/ui/TabRouter.native.js.map +1 -1
- package/dist/cjs/ui/TabSlot.native.js +2 -2
- package/dist/cjs/ui/TabSlot.native.js.map +1 -1
- package/dist/cjs/ui/TabTrigger.native.js +5 -5
- package/dist/cjs/ui/TabTrigger.native.js.map +1 -1
- package/dist/cjs/ui/Tabs.native.js +16 -16
- package/dist/cjs/ui/Tabs.native.js.map +1 -1
- package/dist/cjs/ui/common.native.js +4 -4
- package/dist/cjs/ui/common.native.js.map +1 -1
- package/dist/cjs/ui/index.native.js +1 -1
- package/dist/cjs/ui/index.native.js.map +1 -1
- package/dist/cjs/ui/useComponent.native.js.map +1 -1
- package/dist/cjs/useFocusEffect.native.js +1 -1
- package/dist/cjs/useFocusEffect.native.js.map +1 -1
- package/dist/cjs/useLoader.native.js +16 -16
- package/dist/cjs/useLoader.native.js.map +1 -1
- package/dist/cjs/useMatches.native.js +1 -1
- package/dist/cjs/useMatches.native.js.map +1 -1
- package/dist/cjs/useMatches.test.native.js +1 -1
- package/dist/cjs/useMatches.test.native.js.map +1 -1
- package/dist/cjs/useServerHeadInsertion.native.js.map +1 -1
- package/dist/cjs/utils/assertIsReady.native.js.map +1 -1
- package/dist/cjs/utils/children.native.js.map +1 -1
- package/dist/cjs/utils/cleanUrl.native.js +3 -3
- package/dist/cjs/utils/cleanUrl.native.js.map +1 -1
- package/dist/cjs/utils/cleanUrl.test.native.js +1 -1
- package/dist/cjs/utils/cleanUrl.test.native.js.map +1 -1
- package/dist/cjs/utils/dynamicImport.native.js.map +1 -1
- package/dist/cjs/utils/ensureExists.native.js.map +1 -1
- package/dist/cjs/utils/evictOldest.native.js.map +1 -1
- package/dist/cjs/utils/existsAsync.native.js.map +1 -1
- package/dist/cjs/utils/getPageExport.native.js.map +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.native.js.map +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.test.native.js +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.test.native.js.map +1 -1
- package/dist/cjs/utils/getRouterRootFromOneOptions.native.js.map +1 -1
- package/dist/cjs/utils/globDir.native.js.map +1 -1
- package/dist/cjs/utils/hashString.native.js.map +1 -1
- package/dist/cjs/utils/htmlEscape.native.js.map +1 -1
- package/dist/cjs/utils/isResponse.native.js.map +1 -1
- package/dist/cjs/utils/isRolldown.native.js.map +1 -1
- package/dist/cjs/utils/isStatus.native.js.map +1 -1
- package/dist/cjs/utils/pLimit.native.js.map +1 -1
- package/dist/cjs/utils/platform.native.js.map +1 -1
- package/dist/cjs/utils/promiseWithResolvers.native.js.map +1 -1
- package/dist/cjs/utils/rand.native.js.map +1 -1
- package/dist/cjs/utils/redirect.native.js +2 -2
- package/dist/cjs/utils/redirect.native.js.map +1 -1
- package/dist/cjs/utils/removeParams.native.js.map +1 -1
- package/dist/cjs/utils/removeSearch.native.js.map +1 -1
- package/dist/cjs/utils/removeUndefined.native.js.map +1 -1
- package/dist/cjs/utils/style.native.js.map +1 -1
- package/dist/cjs/utils/toAbsolute.native.js.map +1 -1
- package/dist/cjs/utils/trackLoaderDependencies.native.js +1 -1
- package/dist/cjs/utils/trackLoaderDependencies.native.js.map +1 -1
- package/dist/cjs/utils/url.native.js.map +1 -1
- package/dist/cjs/utils/useConstant.native.js.map +1 -1
- package/dist/cjs/utils/watchFile.native.js.map +1 -1
- package/dist/cjs/utils/weakKey.native.js.map +1 -1
- package/dist/cjs/utils/weakMemo.native.js.map +1 -1
- package/dist/cjs/utils/withStaticProperties.native.js.map +1 -1
- package/dist/cjs/utils/workerImport.native.js.map +1 -1
- package/dist/cjs/validateParams.native.js.map +1 -1
- package/dist/cjs/validateSearch.native.js.map +1 -1
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js +5 -5
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js.map +1 -1
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.native.js.map +1 -1
- package/dist/cjs/vercel/build/config/vc-config-base.native.js.map +1 -1
- package/dist/cjs/vercel/build/config/vc-package-base.native.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js +3 -3
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js +3 -3
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js.map +1 -1
- package/dist/cjs/vercel/build/getPathFromRoute.native.js +1 -1
- package/dist/cjs/vercel/build/getPathFromRoute.native.js.map +1 -1
- package/dist/cjs/views/EmptyRoute.native.js +1 -1
- package/dist/cjs/views/EmptyRoute.native.js.map +1 -1
- package/dist/cjs/views/ErrorBoundary.native.js.map +1 -1
- package/dist/cjs/views/LoadProgressBar.native.js +1 -1
- package/dist/cjs/views/LoadProgressBar.native.js.map +1 -1
- package/dist/cjs/views/Navigator.native.js +8 -8
- package/dist/cjs/views/Navigator.native.js.map +1 -1
- package/dist/cjs/views/OneStackRouter.native.js.map +1 -1
- package/dist/cjs/views/Protected.native.js.map +1 -1
- package/dist/cjs/views/RootErrorBoundary.native.js.map +1 -1
- package/dist/cjs/views/Screen.native.js +1 -1
- package/dist/cjs/views/Screen.native.js.map +1 -1
- package/dist/cjs/views/ScrollBehavior.native.js +2 -2
- package/dist/cjs/views/ScrollBehavior.native.js.map +1 -1
- package/dist/cjs/views/SourceInspector.native.js.map +1 -1
- package/dist/cjs/views/Try.native.js.map +1 -1
- package/dist/cjs/vite/DevHead.native.js +1 -1
- package/dist/cjs/vite/DevHead.native.js.map +1 -1
- package/dist/cjs/vite/constants.native.js.map +1 -1
- package/dist/cjs/vite/customNodeExternals.native.js.map +1 -1
- package/dist/cjs/vite/ensureTsConfig.native.js +2 -2
- package/dist/cjs/vite/ensureTsConfig.native.js.map +1 -1
- package/dist/cjs/vite/findDepsToOptimize.native.js.map +1 -1
- package/dist/cjs/vite/getManifest.native.js +2 -2
- package/dist/cjs/vite/getManifest.native.js.map +1 -1
- package/dist/cjs/vite/loadConfig.native.js +1 -1
- package/dist/cjs/vite/loadConfig.native.js.map +1 -1
- package/dist/cjs/vite/makePluginWebOnly.native.js.map +1 -1
- package/dist/cjs/vite/one.cjs +6 -2
- package/dist/cjs/vite/one.native.js +23 -20
- package/dist/cjs/vite/one.native.js.map +1 -1
- package/dist/cjs/vite/plugins/SSRCSSPlugin.native.js +1 -1
- package/dist/cjs/vite/plugins/SSRCSSPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.js +1 -1
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.test.native.js +1 -1
- package/dist/cjs/vite/plugins/clientTreeShakePlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/criticalCSSPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/devtoolsPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/environmentGuardPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/environmentGuardPlugin.test.native.js +1 -1
- package/dist/cjs/vite/plugins/environmentGuardPlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +12 -12
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/fixDependenciesPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js +2 -2
- package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/imageDataPlugin.native.js +1 -1
- package/dist/cjs/vite/plugins/imageDataPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/imageDataPlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/removeReactNativeWebAnimatedPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.cjs +12 -25
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.native.js +11 -40
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/useDomPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/virtualEntryConstants.native.js.map +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js +2 -2
- package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.test.native.js +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.test.native.js.map +1 -1
- package/dist/cjs/vite/plugins/warmRoutesPlugin.native.js.map +1 -1
- package/dist/cjs/vite/replaceLoader.native.js.map +1 -1
- package/dist/cjs/vite/resolveResponse.native.js +2 -2
- package/dist/cjs/vite/resolveResponse.native.js.map +1 -1
- package/dist/cjs/vite/types.native.js.map +1 -1
- package/dist/cjs/vite-auto-warm.native.js +1 -1
- package/dist/cjs/vite-auto-warm.native.js.map +1 -1
- package/dist/cjs/vite.native.js +9 -9
- package/dist/cjs/vite.native.js.map +1 -1
- package/dist/cjs/zero/getQueryKey.native.js +1 -1
- package/dist/cjs/zero/getQueryKey.native.js.map +1 -1
- package/dist/cjs/zero/isZeroQuery.native.js.map +1 -1
- package/dist/cjs/zero/resolveQuery.native.js.map +1 -1
- package/dist/cjs/zero/subscribeToQuery.native.js.map +1 -1
- package/dist/cjs/zero/types.native.js.map +1 -1
- package/dist/cjs/zero/useQuery.native.js +4 -4
- package/dist/cjs/zero/useQuery.native.js.map +1 -1
- package/dist/cjs/zero/useQueryZero.native.js.map +1 -1
- package/dist/cjs/zero.native.js +3 -3
- package/dist/cjs/zero.native.js.map +1 -1
- package/dist/esm/cli/build.mjs +8 -11
- package/dist/esm/cli/build.mjs.map +1 -1
- package/dist/esm/cli/build.native.js +8 -11
- package/dist/esm/cli/build.native.js.map +1 -1
- package/dist/esm/serve-worker.mjs +11 -7
- package/dist/esm/serve-worker.mjs.map +1 -1
- package/dist/esm/serve-worker.native.js +11 -7
- package/dist/esm/serve-worker.native.js.map +1 -1
- package/dist/esm/server/oneServe.mjs +4 -1
- package/dist/esm/server/oneServe.mjs.map +1 -1
- package/dist/esm/server/oneServe.native.js +4 -1
- package/dist/esm/server/oneServe.native.js.map +1 -1
- package/dist/esm/server/workerHandler.mjs +469 -0
- package/dist/esm/server/workerHandler.mjs.map +1 -0
- package/dist/esm/server/workerHandler.native.js +647 -0
- package/dist/esm/server/workerHandler.native.js.map +1 -0
- package/dist/esm/vite/one.mjs +6 -2
- package/dist/esm/vite/one.mjs.map +1 -1
- package/dist/esm/vite/one.native.js +5 -2
- package/dist/esm/vite/one.native.js.map +1 -1
- package/dist/esm/vite/plugins/sourceInspectorPlugin.mjs +11 -24
- package/dist/esm/vite/plugins/sourceInspectorPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/sourceInspectorPlugin.native.js +10 -39
- package/dist/esm/vite/plugins/sourceInspectorPlugin.native.js.map +1 -1
- package/package.json +10 -10
- package/src/cli/build.ts +8 -11
- package/src/serve-worker.ts +20 -22
- package/src/server/oneServe.ts +1 -1
- package/src/server/workerHandler.ts +767 -0
- package/src/vite/one.ts +2 -1
- package/src/vite/plugins/sourceInspectorPlugin.ts +22 -56
- package/src/vite/types.ts +8 -0
- package/types/cli/build.d.ts.map +1 -1
- package/types/serve-worker.d.ts +10 -21
- package/types/serve-worker.d.ts.map +1 -1
- package/types/server/workerHandler.d.ts +23 -0
- package/types/server/workerHandler.d.ts.map +1 -0
- package/types/vite/one.d.ts.map +1 -1
- package/types/vite/plugins/sourceInspectorPlugin.d.ts +3 -1
- package/types/vite/plugins/sourceInspectorPlugin.d.ts.map +1 -1
- package/types/vite/types.d.ts +7 -0
- package/types/vite/types.d.ts.map +1 -1
|
@@ -0,0 +1,469 @@
|
|
|
1
|
+
import { CSS_PRELOAD_JS_POSTFIX, LOADER_JS_POSTFIX_UNCACHED, PRELOAD_JS_POSTFIX } from "../constants.mjs";
|
|
2
|
+
import { compileManifest, getURLfromRequestURL, resolveAPIRoute, resolveLoaderRoute, resolvePageRoute } from "../createHandleRequest.mjs";
|
|
3
|
+
import { getPathFromLoaderPath } from "../utils/cleanUrl.mjs";
|
|
4
|
+
import { isResponse } from "../utils/isResponse.mjs";
|
|
5
|
+
import { withRequestContext } from "../vite/resolveResponse.mjs";
|
|
6
|
+
import { setSSRLoaderData } from "./ssrLoaderData.mjs";
|
|
7
|
+
import { getFetchStaticHtml } from "./staticHtmlFetcher.mjs";
|
|
8
|
+
function createWorkerHandler(options) {
|
|
9
|
+
const {
|
|
10
|
+
oneOptions
|
|
11
|
+
} = options;
|
|
12
|
+
let currentLazyRoutes = options.lazyRoutes,
|
|
13
|
+
compiledManifest = compileManifest(options.buildInfo.manifest),
|
|
14
|
+
routeToBuildInfo = options.buildInfo.routeToBuildInfo,
|
|
15
|
+
routeMap = options.buildInfo.routeMap,
|
|
16
|
+
currentPreloads = options.buildInfo.preloads,
|
|
17
|
+
currentCssPreloads = options.buildInfo.cssPreloads;
|
|
18
|
+
const debugRouter = process.env.ONE_DEBUG_ROUTER,
|
|
19
|
+
redirects = oneOptions.web?.redirects;
|
|
20
|
+
let compiledRedirects = null;
|
|
21
|
+
redirects?.length && (compiledRedirects = redirects.map(r => {
|
|
22
|
+
const regexSource = r.source.replace(/:(\w+)/g, (_, name) => `(?<${name}>[^/]+)`);
|
|
23
|
+
return {
|
|
24
|
+
regex: new RegExp(`^${regexSource}$`),
|
|
25
|
+
destination: r.destination,
|
|
26
|
+
permanent: r.permanent || !1
|
|
27
|
+
};
|
|
28
|
+
}));
|
|
29
|
+
const useStreaming = !process.env.ONE_BUFFERED_SSR,
|
|
30
|
+
htmlHeaders = {
|
|
31
|
+
"content-type": "text/html"
|
|
32
|
+
},
|
|
33
|
+
ssrHtmlHeaders = {
|
|
34
|
+
"content-type": "text/html",
|
|
35
|
+
"cache-control": "no-cache"
|
|
36
|
+
},
|
|
37
|
+
loaderCache = /* @__PURE__ */new Map(),
|
|
38
|
+
moduleImportCache = /* @__PURE__ */new Map(),
|
|
39
|
+
loaderCacheFnMap = /* @__PURE__ */new Map(),
|
|
40
|
+
pendingLoaderResults = /* @__PURE__ */new Map();
|
|
41
|
+
let render = null,
|
|
42
|
+
renderStream = null,
|
|
43
|
+
renderLoading = null,
|
|
44
|
+
renderGeneration = 0;
|
|
45
|
+
function ensureRenderLoaded() {
|
|
46
|
+
if (render) return;
|
|
47
|
+
if (renderLoading) return renderLoading;
|
|
48
|
+
const gen = ++renderGeneration;
|
|
49
|
+
return renderLoading = (async () => {
|
|
50
|
+
const entry = await currentLazyRoutes.serverEntry();
|
|
51
|
+
gen === renderGeneration && (render = entry.default.render, renderStream = entry.default.renderStream || null);
|
|
52
|
+
})(), renderLoading;
|
|
53
|
+
}
|
|
54
|
+
function findNearestNotFoundPath(urlPath) {
|
|
55
|
+
let cur = urlPath;
|
|
56
|
+
for (; cur;) {
|
|
57
|
+
const parent = cur.lastIndexOf("/") > 0 ? cur.slice(0, cur.lastIndexOf("/")) : "";
|
|
58
|
+
if (routeMap[`${parent}/+not-found`]) return `${parent}/+not-found`;
|
|
59
|
+
if (!parent) break;
|
|
60
|
+
cur = parent;
|
|
61
|
+
}
|
|
62
|
+
return "/+not-found";
|
|
63
|
+
}
|
|
64
|
+
function make404LoaderJs(path, logReason) {
|
|
65
|
+
const nfPath = findNearestNotFoundPath(path);
|
|
66
|
+
return logReason && console.error(`[one] 404 loader for ${path}: ${logReason}`), `export function loader(){return{__oneError:404,__oneErrorMessage:'Not Found',__oneNotFoundPath:${JSON.stringify(nfPath)}}}`;
|
|
67
|
+
}
|
|
68
|
+
async function readStaticHtml(htmlPath) {
|
|
69
|
+
const fetchStaticHtml = getFetchStaticHtml();
|
|
70
|
+
return fetchStaticHtml ? await fetchStaticHtml(htmlPath) : (debugRouter && console.warn(`[one/worker] no fetchStaticHtml set, cannot read ${htmlPath}`), null);
|
|
71
|
+
}
|
|
72
|
+
function resolveLoaderSync(lazyKey) {
|
|
73
|
+
const cacheKey = lazyKey || "",
|
|
74
|
+
cached = loaderCache.get(cacheKey);
|
|
75
|
+
return cached !== void 0 ? cached : (async () => {
|
|
76
|
+
let routeExported;
|
|
77
|
+
if (moduleImportCache.has(cacheKey)) routeExported = moduleImportCache.get(cacheKey);else if (lazyKey && currentLazyRoutes.pages[lazyKey]) routeExported = await currentLazyRoutes.pages[lazyKey](), moduleImportCache.set(cacheKey, routeExported);else return console.warn(`[one/worker] no lazy route for ${cacheKey}`), loaderCache.set(cacheKey, null), null;
|
|
78
|
+
const loader = routeExported?.loader || null;
|
|
79
|
+
return loaderCache.set(cacheKey, loader), loaderCacheFnMap.set(cacheKey, routeExported?.loaderCache ?? null), loader;
|
|
80
|
+
})();
|
|
81
|
+
}
|
|
82
|
+
async function importAndRunLoader(routeId, lazyKey, loaderProps) {
|
|
83
|
+
if (!lazyKey) return {
|
|
84
|
+
loaderData: void 0,
|
|
85
|
+
routeId
|
|
86
|
+
};
|
|
87
|
+
const cacheMapKey = lazyKey,
|
|
88
|
+
loaderCacheFn = loaderCacheFnMap.get(cacheMapKey);
|
|
89
|
+
let coalFullKey,
|
|
90
|
+
coalTtl = 0;
|
|
91
|
+
if (loaderCacheFn) {
|
|
92
|
+
const cacheResult = loaderCacheFn(loaderProps?.params, loaderProps?.request),
|
|
93
|
+
cacheKey = typeof cacheResult == "string" ? cacheResult : cacheResult?.key;
|
|
94
|
+
if (coalTtl = typeof cacheResult == "string" ? 0 : cacheResult?.ttl ?? 0, cacheKey != null) {
|
|
95
|
+
coalFullKey = routeId + "\0" + cacheKey;
|
|
96
|
+
const existing = pendingLoaderResults.get(coalFullKey);
|
|
97
|
+
if (existing && (!existing.expires || Date.now() < existing.expires)) return {
|
|
98
|
+
loaderData: await existing.promise,
|
|
99
|
+
routeId
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
try {
|
|
104
|
+
const loaderOrPromise = resolveLoaderSync(lazyKey),
|
|
105
|
+
loader = loaderOrPromise instanceof Promise ? await loaderOrPromise : loaderOrPromise;
|
|
106
|
+
if (!loader) return {
|
|
107
|
+
loaderData: void 0,
|
|
108
|
+
routeId
|
|
109
|
+
};
|
|
110
|
+
if (coalFullKey) {
|
|
111
|
+
const promise = loader(loaderProps),
|
|
112
|
+
entry = {
|
|
113
|
+
promise,
|
|
114
|
+
expires: 0
|
|
115
|
+
};
|
|
116
|
+
return pendingLoaderResults.set(coalFullKey, entry), promise.then(() => {
|
|
117
|
+
entry.expires = coalTtl > 0 ? Date.now() + coalTtl : 0, coalTtl <= 0 && Promise.resolve().then(() => pendingLoaderResults.delete(coalFullKey));
|
|
118
|
+
}, () => pendingLoaderResults.delete(coalFullKey)), {
|
|
119
|
+
loaderData: await promise,
|
|
120
|
+
routeId
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
return {
|
|
124
|
+
loaderData: await loader(loaderProps),
|
|
125
|
+
routeId
|
|
126
|
+
};
|
|
127
|
+
} catch (err) {
|
|
128
|
+
if (isResponse(err)) throw err;
|
|
129
|
+
return err?.code === "ENOENT" ? {
|
|
130
|
+
loaderData: void 0,
|
|
131
|
+
routeId,
|
|
132
|
+
isEnoent: !0
|
|
133
|
+
} : (console.error(`[one] Error running loader for ${routeId}:`, err), {
|
|
134
|
+
loaderData: void 0,
|
|
135
|
+
routeId
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
const requestHandlers = {
|
|
140
|
+
async handleStaticFile() {
|
|
141
|
+
return null;
|
|
142
|
+
},
|
|
143
|
+
async handleAPI({
|
|
144
|
+
route
|
|
145
|
+
}) {
|
|
146
|
+
return currentLazyRoutes.api[route.page] ? await currentLazyRoutes.api[route.page]() : (console.warn(`[one/worker] no lazy API route for ${route.page}`), null);
|
|
147
|
+
},
|
|
148
|
+
async loadMiddleware(route) {
|
|
149
|
+
return currentLazyRoutes.middlewares[route.contextKey] ? await currentLazyRoutes.middlewares[route.contextKey]() : (console.warn(`[one/worker] no lazy middleware for ${route.contextKey}`), null);
|
|
150
|
+
},
|
|
151
|
+
async handleLoader({
|
|
152
|
+
route,
|
|
153
|
+
loaderProps
|
|
154
|
+
}) {
|
|
155
|
+
const routeFile = route.routeFile || route.file;
|
|
156
|
+
let loader;
|
|
157
|
+
try {
|
|
158
|
+
const loaderResult = resolveLoaderSync(routeFile);
|
|
159
|
+
loader = loaderResult instanceof Promise ? await loaderResult : loaderResult;
|
|
160
|
+
} catch (err) {
|
|
161
|
+
if (err?.code === "ERR_MODULE_NOT_FOUND") return null;
|
|
162
|
+
throw err;
|
|
163
|
+
}
|
|
164
|
+
if (!loader) return null;
|
|
165
|
+
let json;
|
|
166
|
+
try {
|
|
167
|
+
json = await loader(loaderProps);
|
|
168
|
+
} catch (err) {
|
|
169
|
+
if (err?.code === "ENOENT") return make404LoaderJs(loaderProps?.path || "/", `ENOENT ${err?.path || err}`);
|
|
170
|
+
throw err;
|
|
171
|
+
}
|
|
172
|
+
if (isResponse(json)) throw json;
|
|
173
|
+
return `export function loader() { return ${JSON.stringify(json)} }`;
|
|
174
|
+
},
|
|
175
|
+
async handlePage({
|
|
176
|
+
route,
|
|
177
|
+
url,
|
|
178
|
+
loaderProps
|
|
179
|
+
}) {
|
|
180
|
+
const routeBuildInfo = routeToBuildInfo[route.file];
|
|
181
|
+
if (route.type === "ssr") {
|
|
182
|
+
if (!routeBuildInfo) throw console.error("Error in route", route), new Error(`No buildinfo found for ${url}, route: ${route.file}, in keys:
|
|
183
|
+
${Object.keys(routeToBuildInfo).join(`
|
|
184
|
+
`)}`);
|
|
185
|
+
try {
|
|
186
|
+
const layoutRoutes = route.layouts || [],
|
|
187
|
+
layoutLoaderPromises = [],
|
|
188
|
+
noLoaderResults = [];
|
|
189
|
+
for (const layout of layoutRoutes) {
|
|
190
|
+
const cacheKey = layout.contextKey || "";
|
|
191
|
+
loaderCache.get(cacheKey) === null ? noLoaderResults.push({
|
|
192
|
+
loaderData: void 0,
|
|
193
|
+
routeId: layout.contextKey
|
|
194
|
+
}) : layoutLoaderPromises.push(importAndRunLoader(layout.contextKey, layout.contextKey, loaderProps));
|
|
195
|
+
}
|
|
196
|
+
const pageLoaderPromise = importAndRunLoader(route.file, route.file, loaderProps);
|
|
197
|
+
let layoutResults, pageResult;
|
|
198
|
+
try {
|
|
199
|
+
if (layoutLoaderPromises.length === 0) layoutResults = noLoaderResults, pageResult = await pageLoaderPromise;else {
|
|
200
|
+
const [asyncLayoutResults, pr] = await Promise.all([Promise.all(layoutLoaderPromises), pageLoaderPromise]);
|
|
201
|
+
layoutResults = [...noLoaderResults, ...asyncLayoutResults], pageResult = pr;
|
|
202
|
+
}
|
|
203
|
+
} catch (err) {
|
|
204
|
+
if (isResponse(err)) return err;
|
|
205
|
+
throw err;
|
|
206
|
+
}
|
|
207
|
+
if (pageResult.isEnoent) {
|
|
208
|
+
const nfPath = findNearestNotFoundPath(loaderProps?.path || "/"),
|
|
209
|
+
nfHtml = routeMap[nfPath];
|
|
210
|
+
if (nfHtml) {
|
|
211
|
+
const html = await readStaticHtml(nfHtml);
|
|
212
|
+
if (html) return new Response(html, {
|
|
213
|
+
headers: {
|
|
214
|
+
"content-type": "text/html"
|
|
215
|
+
},
|
|
216
|
+
status: 404
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
return new Response("404 Not Found", {
|
|
220
|
+
status: 404
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
const matchPathname = loaderProps?.path || "/",
|
|
224
|
+
matchParams = loaderProps?.params || {},
|
|
225
|
+
matches = new Array(layoutResults.length + 1);
|
|
226
|
+
for (let i = 0; i < layoutResults.length; i++) {
|
|
227
|
+
const result = layoutResults[i];
|
|
228
|
+
matches[i] = {
|
|
229
|
+
routeId: result.routeId,
|
|
230
|
+
pathname: matchPathname,
|
|
231
|
+
params: matchParams,
|
|
232
|
+
loaderData: result.loaderData
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
matches[layoutResults.length] = {
|
|
236
|
+
routeId: pageResult.routeId,
|
|
237
|
+
pathname: matchPathname,
|
|
238
|
+
params: matchParams,
|
|
239
|
+
loaderData: pageResult.loaderData
|
|
240
|
+
};
|
|
241
|
+
const loaderData = pageResult.loaderData;
|
|
242
|
+
for (const layout of layoutRoutes) {
|
|
243
|
+
const key = layout.contextKey,
|
|
244
|
+
loaderFn = loaderCache.get(key);
|
|
245
|
+
if (loaderFn) {
|
|
246
|
+
const result = layoutResults.find(r => r.routeId === key);
|
|
247
|
+
result && setSSRLoaderData(loaderFn, result.loaderData);
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
const pageLoaderFn = loaderCache.get(route.file);
|
|
251
|
+
pageLoaderFn && setSSRLoaderData(pageLoaderFn, pageResult.loaderData), globalThis.__vxrnresetState?.();
|
|
252
|
+
const renderProps = {
|
|
253
|
+
mode: route.type,
|
|
254
|
+
loaderData,
|
|
255
|
+
loaderProps,
|
|
256
|
+
path: loaderProps?.path || "/",
|
|
257
|
+
preloads: routeBuildInfo.criticalPreloads || routeBuildInfo.preloads,
|
|
258
|
+
deferredPreloads: routeBuildInfo.deferredPreloads,
|
|
259
|
+
css: routeBuildInfo.css,
|
|
260
|
+
cssContents: routeBuildInfo.cssContents,
|
|
261
|
+
matches
|
|
262
|
+
},
|
|
263
|
+
_rl = ensureRenderLoaded();
|
|
264
|
+
_rl && (await _rl);
|
|
265
|
+
const status = route.isNotFound ? 404 : 200,
|
|
266
|
+
responseHeaders = route.isNotFound ? htmlHeaders : ssrHtmlHeaders;
|
|
267
|
+
if (useStreaming) {
|
|
268
|
+
const stream = await renderStream(renderProps);
|
|
269
|
+
return new Response(stream, {
|
|
270
|
+
headers: responseHeaders,
|
|
271
|
+
status
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
const rendered = await render(renderProps);
|
|
275
|
+
return new Response(rendered, {
|
|
276
|
+
headers: responseHeaders,
|
|
277
|
+
status
|
|
278
|
+
});
|
|
279
|
+
} catch (err) {
|
|
280
|
+
return isResponse(err) ? err : (console.error(`[one] Error rendering SSR route ${route.file}
|
|
281
|
+
${err?.stack ?? err}
|
|
282
|
+
url: ${url}`), null);
|
|
283
|
+
}
|
|
284
|
+
} else {
|
|
285
|
+
const layoutRoutes = route.layouts || [];
|
|
286
|
+
if (route.type === "spa" && layoutRoutes.some(layout => layout.layoutRenderMode === "ssg" || layout.layoutRenderMode === "ssr")) try {
|
|
287
|
+
const matches = (await Promise.all(layoutRoutes.map(layout => importAndRunLoader(layout.contextKey, layout.contextKey, loaderProps)))).map(result => ({
|
|
288
|
+
routeId: result.routeId,
|
|
289
|
+
pathname: loaderProps?.path || "/",
|
|
290
|
+
params: loaderProps?.params || {},
|
|
291
|
+
loaderData: result.loaderData
|
|
292
|
+
}));
|
|
293
|
+
globalThis.__vxrnresetState?.();
|
|
294
|
+
const _rl = ensureRenderLoaded();
|
|
295
|
+
_rl && (await _rl);
|
|
296
|
+
const spaRouteBuildInfo = routeToBuildInfo[route.file],
|
|
297
|
+
rendered = await render({
|
|
298
|
+
mode: "spa-shell",
|
|
299
|
+
loaderData: void 0,
|
|
300
|
+
loaderProps,
|
|
301
|
+
path: loaderProps?.path || "/",
|
|
302
|
+
preloads: spaRouteBuildInfo?.criticalPreloads || spaRouteBuildInfo?.preloads,
|
|
303
|
+
deferredPreloads: spaRouteBuildInfo?.deferredPreloads,
|
|
304
|
+
css: spaRouteBuildInfo?.css,
|
|
305
|
+
cssContents: spaRouteBuildInfo?.cssContents,
|
|
306
|
+
matches
|
|
307
|
+
});
|
|
308
|
+
return new Response(rendered, {
|
|
309
|
+
headers: htmlHeaders,
|
|
310
|
+
status: route.isNotFound ? 404 : 200
|
|
311
|
+
});
|
|
312
|
+
} catch (err) {
|
|
313
|
+
if (isResponse(err)) return err;
|
|
314
|
+
console.error(`[one] Error rendering spa-shell for ${route.file}
|
|
315
|
+
${err?.stack ?? err}
|
|
316
|
+
url: ${url}`);
|
|
317
|
+
}
|
|
318
|
+
const isDynamicRoute = Object.keys(route.routeKeys).length > 0,
|
|
319
|
+
routeCleanPath = route.urlCleanPath.replace(/\?/g, ""),
|
|
320
|
+
notFoundKey = route.isNotFound ? route.page.replace(/\[([^\]]+)\]/g, ":$1") : null,
|
|
321
|
+
htmlPath = notFoundKey ? routeMap[notFoundKey] : isDynamicRoute ? routeMap[routeCleanPath] || routeMap[url.pathname] : routeMap[url.pathname] || routeMap[routeBuildInfo?.cleanPath];
|
|
322
|
+
if (htmlPath) {
|
|
323
|
+
const html = await readStaticHtml(htmlPath);
|
|
324
|
+
if (html) return new Response(html, {
|
|
325
|
+
headers: htmlHeaders,
|
|
326
|
+
status: route.isNotFound ? 404 : 200
|
|
327
|
+
});
|
|
328
|
+
}
|
|
329
|
+
if (isDynamicRoute) {
|
|
330
|
+
const notFoundRoute = findNearestNotFoundPath(url.pathname),
|
|
331
|
+
notFoundHtmlPath = routeMap[notFoundRoute];
|
|
332
|
+
if (notFoundHtmlPath) {
|
|
333
|
+
const notFoundHtml = await readStaticHtml(notFoundHtmlPath);
|
|
334
|
+
if (notFoundHtml) {
|
|
335
|
+
const notFoundMarker = `<script>window.__one404=${JSON.stringify({
|
|
336
|
+
originalPath: url.pathname,
|
|
337
|
+
notFoundPath: notFoundRoute
|
|
338
|
+
})}</script>`,
|
|
339
|
+
injectedHtml = notFoundHtml.includes("</head>") ? notFoundHtml.replace("</head>", `${notFoundMarker}</head>`) : notFoundHtml.replace("<body", `${notFoundMarker}<body`);
|
|
340
|
+
return new Response(injectedHtml, {
|
|
341
|
+
headers: htmlHeaders,
|
|
342
|
+
status: 404
|
|
343
|
+
});
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
return new Response("404 Not Found", {
|
|
347
|
+
status: 404
|
|
348
|
+
});
|
|
349
|
+
}
|
|
350
|
+
return null;
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
};
|
|
354
|
+
function setCacheHeaders(response, route, isAPI) {
|
|
355
|
+
if (!response.headers.has("cache-control") && !response.headers.has("Cache-Control")) try {
|
|
356
|
+
isAPI ? response.headers.set("cache-control", "no-store") : route.type === "ssg" || route.type === "spa" ? response.headers.set("cache-control", "public, s-maxage=60, stale-while-revalidate=120") : response.headers.set("cache-control", "no-cache");
|
|
357
|
+
} catch {}
|
|
358
|
+
return response;
|
|
359
|
+
}
|
|
360
|
+
async function handleRequest(request) {
|
|
361
|
+
const url = getURLfromRequestURL(request),
|
|
362
|
+
pathname = url.pathname,
|
|
363
|
+
method = request.method;
|
|
364
|
+
if (compiledRedirects) for (const redirect of compiledRedirects) {
|
|
365
|
+
const match = redirect.regex.exec(pathname);
|
|
366
|
+
if (match) {
|
|
367
|
+
let destination = redirect.destination;
|
|
368
|
+
if (match.groups) for (const [name, value] of Object.entries(match.groups)) destination = destination.replace(`:${name}`, value);
|
|
369
|
+
return debugRouter && console.info(`[one] \u21AA redirect ${pathname} \u2192 ${destination}`), new Response(null, {
|
|
370
|
+
status: redirect.permanent ? 301 : 302,
|
|
371
|
+
headers: {
|
|
372
|
+
location: new URL(destination, url.origin).toString()
|
|
373
|
+
}
|
|
374
|
+
});
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
if (pathname.endsWith(PRELOAD_JS_POSTFIX)) return currentPreloads[pathname] ? null : new Response("", {
|
|
378
|
+
headers: {
|
|
379
|
+
"Content-Type": "text/javascript"
|
|
380
|
+
}
|
|
381
|
+
});
|
|
382
|
+
if (pathname.endsWith(CSS_PRELOAD_JS_POSTFIX)) return currentCssPreloads?.[pathname] ? null : new Response("export default Promise.resolve()", {
|
|
383
|
+
headers: {
|
|
384
|
+
"Content-Type": "text/javascript"
|
|
385
|
+
}
|
|
386
|
+
});
|
|
387
|
+
if (pathname.endsWith(LOADER_JS_POSTFIX_UNCACHED)) {
|
|
388
|
+
const originalUrl = getPathFromLoaderPath(pathname);
|
|
389
|
+
for (const route of compiledManifest.pageRoutes) {
|
|
390
|
+
if (route.file === "" || !route.compiledRegex.test(originalUrl)) continue;
|
|
391
|
+
if (route.type === "ssg" && Object.keys(route.routeKeys).length > 0 && !routeMap[originalUrl]) return new Response(make404LoaderJs(originalUrl, "ssg route not in routeMap"), {
|
|
392
|
+
headers: {
|
|
393
|
+
"Content-Type": "text/javascript"
|
|
394
|
+
}
|
|
395
|
+
});
|
|
396
|
+
const loaderRoute = {
|
|
397
|
+
...route,
|
|
398
|
+
routeFile: route.file,
|
|
399
|
+
file: route.loaderServerPath || pathname
|
|
400
|
+
},
|
|
401
|
+
finalUrl = new URL(originalUrl, url.origin);
|
|
402
|
+
finalUrl.search = url.search;
|
|
403
|
+
const cleanedRequest = new Request(finalUrl, request);
|
|
404
|
+
try {
|
|
405
|
+
return await resolveLoaderRoute(requestHandlers, cleanedRequest, finalUrl, loaderRoute);
|
|
406
|
+
} catch (err) {
|
|
407
|
+
return err?.code === "ERR_MODULE_NOT_FOUND" ? new Response("export function loader() { return undefined }", {
|
|
408
|
+
headers: {
|
|
409
|
+
"Content-Type": "text/javascript"
|
|
410
|
+
}
|
|
411
|
+
}) : (console.error(`Error running loader: ${err}`), null);
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
return null;
|
|
415
|
+
}
|
|
416
|
+
if (pathname.endsWith(".js") || pathname.endsWith(".css")) return null;
|
|
417
|
+
for (const route of compiledManifest.apiRoutes) if (route.compiledRegex.test(pathname)) {
|
|
418
|
+
debugRouter && console.info(`[one] \u26A1 ${pathname} \u2192 matched API route: ${route.page}`);
|
|
419
|
+
const response = await resolveAPIRoute(requestHandlers, request, url, route);
|
|
420
|
+
return response && isResponse(response) ? setCacheHeaders(response, route, !0) : null;
|
|
421
|
+
}
|
|
422
|
+
if (method === "GET") {
|
|
423
|
+
for (const route of compiledManifest.pageRoutes) if (route.compiledRegex.test(pathname)) {
|
|
424
|
+
if (debugRouter && console.info(`[one] \u26A1 ${pathname} \u2192 matched page route: ${route.page} (${route.type})`), route.type === "ssr" && !route.middlewares?.length) {
|
|
425
|
+
const params = {},
|
|
426
|
+
match = route.compiledRegex.exec(pathname);
|
|
427
|
+
if (match?.groups) for (const [key, value] of Object.entries(match.groups)) params[route.routeKeys[key]] = value;
|
|
428
|
+
const loaderProps = {
|
|
429
|
+
path: pathname,
|
|
430
|
+
search: url.search,
|
|
431
|
+
request,
|
|
432
|
+
params
|
|
433
|
+
},
|
|
434
|
+
response = await withRequestContext(async () => {
|
|
435
|
+
try {
|
|
436
|
+
return await requestHandlers.handlePage({
|
|
437
|
+
request,
|
|
438
|
+
route,
|
|
439
|
+
url,
|
|
440
|
+
loaderProps
|
|
441
|
+
});
|
|
442
|
+
} catch (err) {
|
|
443
|
+
if (isResponse(err)) return err;
|
|
444
|
+
throw err;
|
|
445
|
+
}
|
|
446
|
+
});
|
|
447
|
+
return response && isResponse(response) ? setCacheHeaders(response, route, !1) : null;
|
|
448
|
+
}
|
|
449
|
+
try {
|
|
450
|
+
const response = await resolvePageRoute(requestHandlers, request, url, route);
|
|
451
|
+
if (response && isResponse(response)) return setCacheHeaders(response, route, !1);
|
|
452
|
+
} catch (err) {
|
|
453
|
+
console.error(` [one] Error handling request: ${err.stack}`);
|
|
454
|
+
}
|
|
455
|
+
return null;
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
return null;
|
|
459
|
+
}
|
|
460
|
+
function updateRoutes(newBuildInfo, newLazyRoutes) {
|
|
461
|
+
compiledManifest = compileManifest(newBuildInfo.manifest), routeToBuildInfo = newBuildInfo.routeToBuildInfo, routeMap = newBuildInfo.routeMap, currentPreloads = newBuildInfo.preloads, currentCssPreloads = newBuildInfo.cssPreloads, newLazyRoutes && (currentLazyRoutes = newLazyRoutes), loaderCache.clear(), moduleImportCache.clear(), loaderCacheFnMap.clear(), pendingLoaderResults.clear(), render = null, renderStream = null, renderLoading = null;
|
|
462
|
+
}
|
|
463
|
+
return {
|
|
464
|
+
handleRequest,
|
|
465
|
+
updateRoutes
|
|
466
|
+
};
|
|
467
|
+
}
|
|
468
|
+
export { createWorkerHandler };
|
|
469
|
+
//# sourceMappingURL=workerHandler.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CSS_PRELOAD_JS_POSTFIX","LOADER_JS_POSTFIX_UNCACHED","PRELOAD_JS_POSTFIX","compileManifest","getURLfromRequestURL","resolveAPIRoute","resolveLoaderRoute","resolvePageRoute","getPathFromLoaderPath","isResponse","withRequestContext","setSSRLoaderData","getFetchStaticHtml","createWorkerHandler","options","oneOptions","currentLazyRoutes","lazyRoutes","compiledManifest","buildInfo","manifest","routeToBuildInfo","routeMap","currentPreloads","preloads","currentCssPreloads","cssPreloads","debugRouter","process","env","ONE_DEBUG_ROUTER","redirects","web","compiledRedirects","length","map","r","regexSource","source","replace","_","name","regex","RegExp","destination","permanent","useStreaming","ONE_BUFFERED_SSR","htmlHeaders","ssrHtmlHeaders","loaderCache","Map","moduleImportCache","loaderCacheFnMap","pendingLoaderResults","render","renderStream","renderLoading","renderGeneration","ensureRenderLoaded","gen","entry","serverEntry","default","findNearestNotFoundPath","urlPath","cur","parent","lastIndexOf","slice","make404LoaderJs","path","logReason","nfPath","console","error","JSON","stringify","readStaticHtml","htmlPath","fetchStaticHtml","warn","resolveLoaderSync","lazyKey","cacheKey","cached","get","routeExported","has","pages","set","loader","importAndRunLoader","routeId","loaderProps","loaderData","cacheMapKey","loaderCacheFn","coalFullKey","coalTtl","cacheResult","params","request","key","ttl","existing","expires","Date","now","promise","loaderOrPromise","Promise","then","resolve","delete","err","code","isEnoent","requestHandlers","handleStaticFile","handleAPI","route","api","page","loadMiddleware","middlewares","contextKey","handleLoader","routeFile","file","loaderResult","json","handlePage","url","routeBuildInfo","type","Error","Object","keys","join","layoutRoutes","layouts","layoutLoaderPromises","noLoaderResults","layout","push","pageLoaderPromise","layoutResults","pageResult","asyncLayoutResults","pr","all","nfHtml","html","Response","headers","status","matchPathname","matchParams","matches","Array","i","result","pathname","loaderFn","find","pageLoaderFn","globalThis","__vxrnresetState","renderProps","mode","criticalPreloads","deferredPreloads","css","cssContents","_rl","isNotFound","responseHeaders","stream","rendered","stack","some","layoutRenderMode","spaRouteBuildInfo","isDynamicRoute","routeKeys","routeCleanPath","urlCleanPath","notFoundKey","cleanPath","notFoundRoute","notFoundHtmlPath","notFoundHtml","notFoundMarker","originalPath","notFoundPath","injectedHtml","includes","setCacheHeaders","response","isAPI","handleRequest","method","redirect","match","exec","groups","value","entries","info","location","URL","origin","toString","endsWith","originalUrl","pageRoutes","compiledRegex","test","loaderRoute","loaderServerPath","finalUrl","search","cleanedRequest","Request","apiRoutes","updateRoutes","newBuildInfo","newLazyRoutes","clear"],"sources":["../../../src/server/workerHandler.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|