one 1.10.6 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Root.cjs +11 -2
- package/dist/cjs/Root.js +5 -2
- package/dist/cjs/Root.js.map +1 -1
- package/dist/cjs/Root.native.js +18 -18
- package/dist/cjs/Root.native.js.map +1 -1
- package/dist/cjs/babel-plugins/inline-one-server-url.cjs +41 -0
- package/dist/cjs/babel-plugins/inline-one-server-url.js +34 -0
- package/dist/cjs/babel-plugins/inline-one-server-url.js.map +6 -0
- package/dist/cjs/babel-plugins/inline-one-server-url.native.js +48 -0
- package/dist/cjs/babel-plugins/inline-one-server-url.native.js.map +1 -0
- package/dist/cjs/cli/build.cjs +88 -29
- package/dist/cjs/cli/build.js +85 -28
- package/dist/cjs/cli/build.js.map +1 -1
- package/dist/cjs/cli/build.native.js +105 -35
- package/dist/cjs/cli/build.native.js.map +1 -1
- package/dist/cjs/cli/buildPage.cjs +24 -12
- package/dist/cjs/cli/buildPage.js +20 -14
- package/dist/cjs/cli/buildPage.js.map +1 -1
- package/dist/cjs/cli/buildPage.native.js +29 -18
- package/dist/cjs/cli/buildPage.native.js.map +1 -1
- package/dist/cjs/cli/buildPageWorker.cjs +9 -15
- package/dist/cjs/cli/buildPageWorker.js +11 -12
- package/dist/cjs/cli/buildPageWorker.js.map +1 -1
- package/dist/cjs/cli/buildPageWorker.native.js +5 -16
- package/dist/cjs/cli/buildPageWorker.native.js.map +1 -1
- package/dist/cjs/cli/patch.cjs +3 -3
- package/dist/cjs/cli/patch.js +3 -3
- package/dist/cjs/cli/patch.js.map +1 -1
- package/dist/cjs/cli/patch.native.js +3 -3
- package/dist/cjs/cli/patch.native.js.map +1 -1
- package/dist/cjs/cli/securityScan.cjs +123 -0
- package/dist/cjs/cli/securityScan.js +134 -0
- package/dist/cjs/cli/securityScan.js.map +6 -0
- package/dist/cjs/cli/securityScan.native.js +205 -0
- package/dist/cjs/cli/securityScan.native.js.map +1 -0
- package/dist/cjs/cli/workerPool.cjs +4 -3
- package/dist/cjs/cli/workerPool.js +3 -3
- package/dist/cjs/cli/workerPool.js.map +1 -1
- package/dist/cjs/cli/workerPool.native.js +4 -3
- package/dist/cjs/cli/workerPool.native.js.map +1 -1
- package/dist/cjs/cli.cjs +13 -2
- package/dist/cjs/cli.js +12 -2
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/cli.native.js +13 -2
- package/dist/cjs/cli.native.js.map +1 -1
- package/dist/cjs/createApp.cjs +130 -64
- package/dist/cjs/createApp.js +97 -24
- package/dist/cjs/createApp.js.map +1 -1
- package/dist/cjs/createHandleRequest.cjs +58 -35
- package/dist/cjs/createHandleRequest.js +29 -18
- package/dist/cjs/createHandleRequest.js.map +1 -1
- package/dist/cjs/createHandleRequest.native.js +66 -41
- package/dist/cjs/createHandleRequest.native.js.map +1 -1
- package/dist/cjs/daemon/tui.js.map +1 -1
- package/dist/cjs/fork/NavigationContainer.cjs +26 -3
- package/dist/cjs/fork/NavigationContainer.js +12 -4
- package/dist/cjs/fork/NavigationContainer.js.map +1 -1
- package/dist/cjs/fork/NavigationContainer.native.js +25 -2
- package/dist/cjs/fork/NavigationContainer.native.js.map +1 -1
- package/dist/cjs/fork/SSRNavigationContainer.cjs +105 -0
- package/dist/cjs/fork/SSRNavigationContainer.js +66 -0
- package/dist/cjs/fork/SSRNavigationContainer.js.map +6 -0
- package/dist/cjs/fork/SSRNavigationContainer.native.js +119 -0
- package/dist/cjs/fork/SSRNavigationContainer.native.js.map +1 -0
- package/dist/cjs/fork/getPathFromState.cjs +10 -5
- package/dist/cjs/fork/getPathFromState.js +5 -5
- package/dist/cjs/fork/getPathFromState.js.map +1 -1
- package/dist/cjs/fork/getPathFromState.native.js +10 -5
- package/dist/cjs/fork/getPathFromState.native.js.map +1 -1
- package/dist/cjs/fork/getStateFromPath-mods.cjs +1 -1
- package/dist/cjs/fork/getStateFromPath-mods.js +1 -1
- package/dist/cjs/fork/getStateFromPath-mods.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/navigationThemes.cjs +84 -0
- package/dist/cjs/fork/navigationThemes.js +54 -0
- package/dist/cjs/fork/navigationThemes.js.map +6 -0
- package/dist/cjs/fork/navigationThemes.native.js +87 -0
- package/dist/cjs/fork/navigationThemes.native.js.map +1 -0
- package/dist/cjs/fork/useLinking.cjs +11 -1
- package/dist/cjs/fork/useLinking.js +10 -1
- package/dist/cjs/fork/useLinking.js.map +1 -1
- package/dist/cjs/fork/useLinking.native.js +1 -1
- package/dist/cjs/fork/useLinking.native.js.map +1 -1
- package/dist/cjs/getReactNavigationConfig.cjs +3 -1
- package/dist/cjs/getReactNavigationConfig.js +2 -2
- package/dist/cjs/getReactNavigationConfig.js.map +1 -1
- package/dist/cjs/getReactNavigationConfig.native.js +3 -1
- package/dist/cjs/getReactNavigationConfig.native.js.map +1 -1
- package/dist/cjs/index.cjs +2 -0
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index.native.js +2 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackScreen.cjs +15 -1
- package/dist/cjs/layouts/stack-utils/StackScreen.js +27 -1
- package/dist/cjs/layouts/stack-utils/StackScreen.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackScreen.native.js +18 -1
- package/dist/cjs/layouts/stack-utils/StackScreen.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/index.cjs +2 -1
- package/dist/cjs/layouts/stack-utils/index.js +2 -1
- package/dist/cjs/layouts/stack-utils/index.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/index.native.js +2 -1
- package/dist/cjs/layouts/stack-utils/index.native.js.map +1 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.cjs +3 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.js +3 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.js.map +1 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js +3 -1
- package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
- package/dist/cjs/reactNavigationImports.cjs +33 -0
- package/dist/cjs/reactNavigationImports.js +28 -0
- package/dist/cjs/reactNavigationImports.js.map +6 -0
- package/dist/cjs/reactNavigationImports.native.js +36 -0
- package/dist/cjs/reactNavigationImports.native.js.map +1 -0
- package/dist/cjs/reactNavigationImports.server.cjs +51 -0
- package/dist/cjs/reactNavigationImports.server.js +42 -0
- package/dist/cjs/reactNavigationImports.server.js.map +6 -0
- package/dist/cjs/reactNavigationImports.server.native.js +56 -0
- package/dist/cjs/reactNavigationImports.server.native.js.map +1 -0
- package/dist/cjs/router/findRouteNode.cjs +4 -4
- package/dist/cjs/router/findRouteNode.js +4 -4
- package/dist/cjs/router/findRouteNode.js.map +1 -1
- package/dist/cjs/router/findRouteNode.native.js +4 -4
- package/dist/cjs/router/findRouteNode.native.js.map +1 -1
- package/dist/cjs/router/isIndexPath.cjs +1 -0
- package/dist/cjs/router/isIndexPath.js +2 -0
- package/dist/cjs/router/isIndexPath.js.map +1 -1
- package/dist/cjs/router/isIndexPath.native.js +3 -2
- package/dist/cjs/router/isIndexPath.native.js.map +1 -1
- package/dist/cjs/router/linkingConfig.cjs +19 -2
- package/dist/cjs/router/linkingConfig.js +18 -2
- package/dist/cjs/router/linkingConfig.js.map +1 -1
- package/dist/cjs/router/linkingConfig.native.js +21 -2
- package/dist/cjs/router/linkingConfig.native.js.map +1 -1
- package/dist/cjs/router/router.cjs +30 -24
- package/dist/cjs/router/router.js +23 -20
- package/dist/cjs/router/router.js.map +2 -2
- package/dist/cjs/router/router.native.js +21 -14
- package/dist/cjs/router/router.native.js.map +1 -1
- package/dist/cjs/router/useInitializeOneRouter.cjs +25 -9
- package/dist/cjs/router/useInitializeOneRouter.js +21 -8
- package/dist/cjs/router/useInitializeOneRouter.js.map +1 -1
- package/dist/cjs/router/useInitializeOneRouter.native.js +23 -7
- package/dist/cjs/router/useInitializeOneRouter.native.js.map +1 -1
- package/dist/cjs/router/useScreens.cjs +30 -11
- package/dist/cjs/router/useScreens.js +47 -21
- package/dist/cjs/router/useScreens.js.map +1 -1
- package/dist/cjs/router/useScreens.native.js +25 -10
- package/dist/cjs/router/useScreens.native.js.map +1 -1
- package/dist/cjs/screensFeatureFlags.cjs +37 -0
- package/dist/cjs/screensFeatureFlags.js +31 -0
- package/dist/cjs/screensFeatureFlags.js.map +6 -0
- package/dist/cjs/screensFeatureFlags.native.js +40 -0
- package/dist/cjs/screensFeatureFlags.native.js.map +1 -0
- package/dist/cjs/serve.cjs +27 -3
- package/dist/cjs/serve.js +26 -3
- package/dist/cjs/serve.js.map +1 -1
- package/dist/cjs/serve.native.js +36 -4
- package/dist/cjs/serve.native.js.map +1 -1
- package/dist/cjs/server/ServerContextScript.cjs +14 -5
- package/dist/cjs/server/ServerContextScript.js +12 -6
- package/dist/cjs/server/ServerContextScript.js.map +1 -1
- package/dist/cjs/server/ServerContextScript.native.js +18 -6
- package/dist/cjs/server/ServerContextScript.native.js.map +1 -1
- package/dist/cjs/server/oneServe.cjs +279 -182
- package/dist/cjs/server/oneServe.js +105 -30
- package/dist/cjs/server/oneServe.js.map +1 -1
- package/dist/cjs/server/oneServe.native.js +334 -215
- package/dist/cjs/server/oneServe.native.js.map +1 -1
- package/dist/cjs/server/ssrLoaderData.cjs +30 -0
- package/dist/cjs/server/ssrLoaderData.js +25 -0
- package/dist/cjs/server/ssrLoaderData.js.map +6 -0
- package/dist/cjs/server/ssrLoaderData.native.js +33 -0
- package/dist/cjs/server/ssrLoaderData.native.js.map +1 -0
- package/dist/cjs/server-render.cjs +22 -22
- package/dist/cjs/server-render.js +11 -15
- package/dist/cjs/server-render.js.map +1 -1
- package/dist/cjs/server-render.native.js +18 -38
- package/dist/cjs/server-render.native.js.map +1 -1
- package/dist/cjs/ui/Slot.cjs +1 -0
- package/dist/cjs/ui/Slot.js +4 -0
- package/dist/cjs/ui/Slot.js.map +1 -1
- package/dist/cjs/ui/Slot.native.js +1 -0
- package/dist/cjs/ui/Slot.native.js.map +1 -1
- package/dist/cjs/ui/TabRouter.cjs +32 -19
- package/dist/cjs/ui/TabRouter.js +18 -2
- package/dist/cjs/ui/TabRouter.js.map +1 -1
- package/dist/cjs/ui/TabRouter.native.js +13 -0
- package/dist/cjs/ui/TabRouter.native.js.map +1 -1
- package/dist/cjs/ui/TabTrigger.cjs +2 -2
- package/dist/cjs/ui/TabTrigger.js +1 -1
- package/dist/cjs/ui/TabTrigger.js.map +1 -1
- package/dist/cjs/ui/TabTrigger.native.js +2 -2
- package/dist/cjs/ui/TabTrigger.native.js.map +1 -1
- package/dist/cjs/useLoader.cjs +39 -9
- package/dist/cjs/useLoader.js +33 -9
- package/dist/cjs/useLoader.js.map +2 -2
- package/dist/cjs/useLoader.native.js +48 -11
- package/dist/cjs/useLoader.native.js.map +1 -1
- package/dist/cjs/utils/isRolldown.cjs +8 -24
- package/dist/cjs/utils/isRolldown.js +6 -20
- package/dist/cjs/utils/isRolldown.js.map +1 -1
- package/dist/cjs/utils/isRolldown.native.js +8 -25
- package/dist/cjs/utils/isRolldown.native.js.map +1 -1
- package/dist/cjs/utils/removeParams.cjs +52 -0
- package/dist/cjs/utils/removeParams.js +40 -0
- package/dist/cjs/utils/removeParams.js.map +6 -0
- package/dist/cjs/utils/removeParams.native.js +71 -0
- package/dist/cjs/utils/removeParams.native.js.map +1 -0
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.cjs +7 -5
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.js +7 -5
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.js.map +1 -1
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js +7 -4
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.cjs +2 -2
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.js +2 -2
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js +2 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.cjs +3 -2
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.js +2 -2
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js +3 -2
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js.map +1 -1
- package/dist/cjs/views/Navigator.cjs +1 -0
- package/dist/cjs/views/Navigator.js +2 -0
- package/dist/cjs/views/Navigator.js.map +1 -1
- package/dist/cjs/views/Navigator.native.js +1 -0
- package/dist/cjs/views/Navigator.native.js.map +1 -1
- package/dist/cjs/vite/one-server-only.cjs +6 -3
- package/dist/cjs/vite/one-server-only.js +3 -3
- package/dist/cjs/vite/one-server-only.js.map +1 -1
- package/dist/cjs/vite/one-server-only.native.js +6 -0
- package/dist/cjs/vite/one-server-only.native.js.map +1 -1
- package/dist/cjs/vite/one.cjs +75 -29
- package/dist/cjs/vite/one.js +93 -24
- package/dist/cjs/vite/one.js.map +2 -2
- package/dist/cjs/vite/one.native.js +143 -34
- package/dist/cjs/vite/one.native.js.map +1 -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/criticalCSSPlugin.cjs +59 -0
- package/dist/cjs/vite/plugins/criticalCSSPlugin.js +52 -0
- package/dist/cjs/vite/plugins/criticalCSSPlugin.js.map +6 -0
- package/dist/cjs/vite/plugins/criticalCSSPlugin.native.js +78 -0
- package/dist/cjs/vite/plugins/criticalCSSPlugin.native.js.map +1 -0
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.cjs +160 -0
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.js +126 -0
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.js.map +6 -0
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.native.js +165 -0
- package/dist/cjs/vite/plugins/criticalCSSPlugin.test.native.js.map +1 -0
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +2 -2
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js +2 -2
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +2 -2
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/fixDependenciesPlugin.cjs +2 -8
- package/dist/cjs/vite/plugins/fixDependenciesPlugin.js +2 -8
- package/dist/cjs/vite/plugins/fixDependenciesPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/fixDependenciesPlugin.native.js +2 -8
- package/dist/cjs/vite/plugins/fixDependenciesPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/removeReactNativeWebAnimatedPlugin.cjs +6 -14
- package/dist/cjs/vite/plugins/removeReactNativeWebAnimatedPlugin.js +8 -11
- package/dist/cjs/vite/plugins/removeReactNativeWebAnimatedPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/removeReactNativeWebAnimatedPlugin.native.js +6 -18
- package/dist/cjs/vite/plugins/removeReactNativeWebAnimatedPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.cjs +11 -6
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.js +12 -7
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.native.js +12 -7
- package/dist/cjs/vite/plugins/sourceInspectorPlugin.native.js.map +1 -1
- package/dist/cjs/vite/plugins/warmRoutesPlugin.cjs +98 -0
- package/dist/cjs/vite/plugins/warmRoutesPlugin.js +95 -0
- package/dist/cjs/vite/plugins/warmRoutesPlugin.js.map +6 -0
- package/dist/cjs/vite/plugins/warmRoutesPlugin.native.js +134 -0
- package/dist/cjs/vite/plugins/warmRoutesPlugin.native.js.map +1 -0
- package/dist/cjs/vite/replaceLoader.cjs +1 -1
- package/dist/cjs/vite/replaceLoader.js +1 -1
- package/dist/cjs/vite/replaceLoader.js.map +1 -1
- package/dist/cjs/vite/replaceLoader.native.js +1 -1
- package/dist/cjs/vite/replaceLoader.native.js.map +1 -1
- package/dist/cjs/vite/resolveResponse.cjs +20 -8
- package/dist/cjs/vite/resolveResponse.js +22 -7
- package/dist/cjs/vite/resolveResponse.js.map +1 -1
- package/dist/cjs/vite/resolveResponse.native.js +20 -8
- package/dist/cjs/vite/resolveResponse.native.js.map +1 -1
- package/dist/cjs/vite-auto-warm.cjs +26 -0
- package/dist/cjs/vite-auto-warm.js +21 -0
- package/dist/cjs/vite-auto-warm.js.map +6 -0
- package/dist/cjs/vite-auto-warm.native.js +29 -0
- package/dist/cjs/vite-auto-warm.native.js.map +1 -0
- package/dist/cjs/vite.cjs +3 -1
- package/dist/cjs/vite.js +2 -1
- package/dist/cjs/vite.js.map +1 -1
- package/dist/cjs/vite.native.js +3 -1
- package/dist/cjs/vite.native.js.map +1 -1
- package/dist/esm/Root.js +7 -2
- package/dist/esm/Root.js.map +1 -1
- package/dist/esm/Root.mjs +12 -3
- package/dist/esm/Root.mjs.map +1 -1
- package/dist/esm/Root.native.js +19 -19
- package/dist/esm/Root.native.js.map +1 -1
- package/dist/esm/babel-plugins/inline-one-server-url.js +18 -0
- package/dist/esm/babel-plugins/inline-one-server-url.js.map +6 -0
- package/dist/esm/babel-plugins/inline-one-server-url.mjs +18 -0
- package/dist/esm/babel-plugins/inline-one-server-url.mjs.map +1 -0
- package/dist/esm/babel-plugins/inline-one-server-url.native.js +22 -0
- package/dist/esm/babel-plugins/inline-one-server-url.native.js.map +1 -0
- package/dist/esm/cli/build.js +86 -27
- package/dist/esm/cli/build.js.map +1 -1
- package/dist/esm/cli/build.mjs +87 -28
- package/dist/esm/cli/build.mjs.map +1 -1
- package/dist/esm/cli/build.native.js +104 -34
- package/dist/esm/cli/build.native.js.map +1 -1
- package/dist/esm/cli/buildPage.js +20 -13
- package/dist/esm/cli/buildPage.js.map +1 -1
- package/dist/esm/cli/buildPage.mjs +24 -12
- package/dist/esm/cli/buildPage.mjs.map +1 -1
- package/dist/esm/cli/buildPage.native.js +29 -18
- package/dist/esm/cli/buildPage.native.js.map +1 -1
- package/dist/esm/cli/buildPageWorker.js +11 -12
- package/dist/esm/cli/buildPageWorker.js.map +1 -1
- package/dist/esm/cli/buildPageWorker.mjs +9 -15
- package/dist/esm/cli/buildPageWorker.mjs.map +1 -1
- package/dist/esm/cli/buildPageWorker.native.js +5 -16
- package/dist/esm/cli/buildPageWorker.native.js.map +1 -1
- package/dist/esm/cli/patch.js +3 -3
- package/dist/esm/cli/patch.js.map +1 -1
- package/dist/esm/cli/patch.mjs +3 -3
- package/dist/esm/cli/patch.mjs.map +1 -1
- package/dist/esm/cli/patch.native.js +3 -3
- package/dist/esm/cli/patch.native.js.map +1 -1
- package/dist/esm/cli/securityScan.js +119 -0
- package/dist/esm/cli/securityScan.js.map +6 -0
- package/dist/esm/cli/securityScan.mjs +99 -0
- package/dist/esm/cli/securityScan.mjs.map +1 -0
- package/dist/esm/cli/securityScan.native.js +178 -0
- package/dist/esm/cli/securityScan.native.js.map +1 -0
- package/dist/esm/cli/workerPool.js +3 -3
- package/dist/esm/cli/workerPool.js.map +1 -1
- package/dist/esm/cli/workerPool.mjs +4 -3
- package/dist/esm/cli/workerPool.mjs.map +1 -1
- package/dist/esm/cli/workerPool.native.js +4 -3
- package/dist/esm/cli/workerPool.native.js.map +1 -1
- package/dist/esm/cli.js +12 -2
- package/dist/esm/cli.js.map +1 -1
- package/dist/esm/cli.mjs +13 -2
- package/dist/esm/cli.mjs.map +1 -1
- package/dist/esm/cli.native.js +13 -2
- package/dist/esm/cli.native.js.map +1 -1
- package/dist/esm/createApp.js +97 -25
- package/dist/esm/createApp.js.map +1 -1
- package/dist/esm/createApp.mjs +130 -64
- package/dist/esm/createApp.mjs.map +1 -1
- package/dist/esm/createHandleRequest.js +29 -18
- package/dist/esm/createHandleRequest.js.map +1 -1
- package/dist/esm/createHandleRequest.mjs +58 -35
- package/dist/esm/createHandleRequest.mjs.map +1 -1
- package/dist/esm/createHandleRequest.native.js +66 -41
- package/dist/esm/createHandleRequest.native.js.map +1 -1
- package/dist/esm/daemon/tui.js.map +1 -1
- package/dist/esm/daemon/tui.mjs.map +1 -1
- package/dist/esm/fork/NavigationContainer.js +12 -3
- package/dist/esm/fork/NavigationContainer.js.map +1 -1
- package/dist/esm/fork/NavigationContainer.mjs +26 -3
- package/dist/esm/fork/NavigationContainer.mjs.map +1 -1
- package/dist/esm/fork/NavigationContainer.native.js +24 -1
- package/dist/esm/fork/NavigationContainer.native.js.map +1 -1
- package/dist/esm/fork/SSRNavigationContainer.js +55 -0
- package/dist/esm/fork/SSRNavigationContainer.js.map +6 -0
- package/dist/esm/fork/SSRNavigationContainer.mjs +82 -0
- package/dist/esm/fork/SSRNavigationContainer.mjs.map +1 -0
- package/dist/esm/fork/SSRNavigationContainer.native.js +93 -0
- package/dist/esm/fork/SSRNavigationContainer.native.js.map +1 -0
- package/dist/esm/fork/getPathFromState.js +5 -5
- package/dist/esm/fork/getPathFromState.js.map +1 -1
- package/dist/esm/fork/getPathFromState.mjs +10 -5
- package/dist/esm/fork/getPathFromState.mjs.map +1 -1
- package/dist/esm/fork/getPathFromState.native.js +11 -6
- package/dist/esm/fork/getPathFromState.native.js.map +1 -1
- package/dist/esm/fork/getStateFromPath-mods.js +1 -1
- package/dist/esm/fork/getStateFromPath-mods.js.map +1 -1
- package/dist/esm/fork/getStateFromPath-mods.mjs +1 -1
- package/dist/esm/fork/getStateFromPath-mods.mjs.map +1 -1
- package/dist/esm/fork/getStateFromPath-mods.native.js +1 -1
- package/dist/esm/fork/getStateFromPath-mods.native.js.map +1 -1
- package/dist/esm/fork/navigationThemes.js +38 -0
- package/dist/esm/fork/navigationThemes.js.map +6 -0
- package/dist/esm/fork/navigationThemes.mjs +60 -0
- package/dist/esm/fork/navigationThemes.mjs.map +1 -0
- package/dist/esm/fork/navigationThemes.native.js +60 -0
- package/dist/esm/fork/navigationThemes.native.js.map +1 -0
- package/dist/esm/fork/useLinking.js +10 -1
- package/dist/esm/fork/useLinking.js.map +1 -1
- package/dist/esm/fork/useLinking.mjs +11 -1
- package/dist/esm/fork/useLinking.mjs.map +1 -1
- package/dist/esm/fork/useLinking.native.js +1 -1
- package/dist/esm/fork/useLinking.native.js.map +1 -1
- package/dist/esm/getReactNavigationConfig.js +2 -2
- package/dist/esm/getReactNavigationConfig.js.map +1 -1
- package/dist/esm/getReactNavigationConfig.mjs +3 -1
- package/dist/esm/getReactNavigationConfig.mjs.map +1 -1
- package/dist/esm/getReactNavigationConfig.native.js +3 -1
- package/dist/esm/getReactNavigationConfig.native.js.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +2 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +2 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/layouts/stack-utils/StackScreen.js +27 -1
- package/dist/esm/layouts/stack-utils/StackScreen.js.map +1 -1
- package/dist/esm/layouts/stack-utils/StackScreen.mjs +14 -1
- package/dist/esm/layouts/stack-utils/StackScreen.mjs.map +1 -1
- package/dist/esm/layouts/stack-utils/StackScreen.native.js +17 -1
- package/dist/esm/layouts/stack-utils/StackScreen.native.js.map +1 -1
- package/dist/esm/layouts/stack-utils/index.js +4 -2
- package/dist/esm/layouts/stack-utils/index.js.map +1 -1
- package/dist/esm/layouts/stack-utils/index.mjs +2 -2
- package/dist/esm/layouts/stack-utils/index.mjs.map +1 -1
- package/dist/esm/layouts/stack-utils/index.native.js +2 -2
- package/dist/esm/layouts/stack-utils/index.native.js.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.js +3 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.js.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.mjs +3 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.mjs.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.native.js +3 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
- package/dist/esm/reactNavigationImports.js +21 -0
- package/dist/esm/reactNavigationImports.js.map +6 -0
- package/dist/esm/reactNavigationImports.mjs +3 -0
- package/dist/esm/reactNavigationImports.mjs.map +1 -0
- package/dist/esm/reactNavigationImports.native.js +3 -0
- package/dist/esm/reactNavigationImports.native.js.map +1 -0
- package/dist/esm/reactNavigationImports.server.js +32 -0
- package/dist/esm/reactNavigationImports.server.js.map +6 -0
- package/dist/esm/reactNavigationImports.server.mjs +20 -0
- package/dist/esm/reactNavigationImports.server.mjs.map +1 -0
- package/dist/esm/reactNavigationImports.server.native.js +22 -0
- package/dist/esm/reactNavigationImports.server.native.js.map +1 -0
- package/dist/esm/router/findRouteNode.js +4 -4
- package/dist/esm/router/findRouteNode.js.map +1 -1
- package/dist/esm/router/findRouteNode.mjs +4 -4
- package/dist/esm/router/findRouteNode.mjs.map +1 -1
- package/dist/esm/router/findRouteNode.native.js +4 -4
- package/dist/esm/router/findRouteNode.native.js.map +1 -1
- package/dist/esm/router/isIndexPath.js +2 -0
- package/dist/esm/router/isIndexPath.js.map +1 -1
- package/dist/esm/router/isIndexPath.mjs +1 -0
- package/dist/esm/router/isIndexPath.mjs.map +1 -1
- package/dist/esm/router/isIndexPath.native.js +3 -2
- package/dist/esm/router/isIndexPath.native.js.map +1 -1
- package/dist/esm/router/linkingConfig.js +18 -2
- package/dist/esm/router/linkingConfig.js.map +1 -1
- package/dist/esm/router/linkingConfig.mjs +18 -3
- package/dist/esm/router/linkingConfig.mjs.map +1 -1
- package/dist/esm/router/linkingConfig.native.js +20 -3
- package/dist/esm/router/linkingConfig.native.js.map +1 -1
- package/dist/esm/router/router.js +23 -20
- package/dist/esm/router/router.js.map +2 -2
- package/dist/esm/router/router.mjs +30 -25
- package/dist/esm/router/router.mjs.map +1 -1
- package/dist/esm/router/router.native.js +21 -15
- package/dist/esm/router/router.native.js.map +1 -1
- package/dist/esm/router/useInitializeOneRouter.js +21 -7
- package/dist/esm/router/useInitializeOneRouter.js.map +1 -1
- package/dist/esm/router/useInitializeOneRouter.mjs +23 -8
- package/dist/esm/router/useInitializeOneRouter.mjs.map +1 -1
- package/dist/esm/router/useInitializeOneRouter.native.js +23 -8
- package/dist/esm/router/useInitializeOneRouter.native.js.map +1 -1
- package/dist/esm/router/useScreens.js +47 -21
- package/dist/esm/router/useScreens.js.map +1 -1
- package/dist/esm/router/useScreens.mjs +30 -11
- package/dist/esm/router/useScreens.mjs.map +1 -1
- package/dist/esm/router/useScreens.native.js +25 -10
- package/dist/esm/router/useScreens.native.js.map +1 -1
- package/dist/esm/screensFeatureFlags.js +15 -0
- package/dist/esm/screensFeatureFlags.js.map +6 -0
- package/dist/esm/screensFeatureFlags.mjs +14 -0
- package/dist/esm/screensFeatureFlags.mjs.map +1 -0
- package/dist/esm/screensFeatureFlags.native.js +14 -0
- package/dist/esm/screensFeatureFlags.native.js.map +1 -0
- package/dist/esm/serve.js +26 -3
- package/dist/esm/serve.js.map +1 -1
- package/dist/esm/serve.mjs +27 -3
- package/dist/esm/serve.mjs.map +1 -1
- package/dist/esm/serve.native.js +36 -4
- package/dist/esm/serve.native.js.map +1 -1
- package/dist/esm/server/ServerContextScript.js +12 -6
- package/dist/esm/server/ServerContextScript.js.map +1 -1
- package/dist/esm/server/ServerContextScript.mjs +14 -5
- package/dist/esm/server/ServerContextScript.mjs.map +1 -1
- package/dist/esm/server/ServerContextScript.native.js +18 -6
- package/dist/esm/server/ServerContextScript.native.js.map +1 -1
- package/dist/esm/server/oneServe.js +105 -29
- package/dist/esm/server/oneServe.js.map +1 -1
- package/dist/esm/server/oneServe.mjs +279 -182
- package/dist/esm/server/oneServe.mjs.map +1 -1
- package/dist/esm/server/oneServe.native.js +334 -215
- package/dist/esm/server/oneServe.native.js.map +1 -1
- package/dist/esm/server/ssrLoaderData.js +9 -0
- package/dist/esm/server/ssrLoaderData.js.map +6 -0
- package/dist/esm/server/ssrLoaderData.mjs +6 -0
- package/dist/esm/server/ssrLoaderData.mjs.map +1 -0
- package/dist/esm/server/ssrLoaderData.native.js +6 -0
- package/dist/esm/server/ssrLoaderData.native.js.map +1 -0
- package/dist/esm/server-render.js +11 -15
- package/dist/esm/server-render.js.map +1 -1
- package/dist/esm/server-render.mjs +21 -22
- package/dist/esm/server-render.mjs.map +1 -1
- package/dist/esm/server-render.native.js +17 -38
- package/dist/esm/server-render.native.js.map +1 -1
- package/dist/esm/ui/Slot.js +4 -0
- package/dist/esm/ui/Slot.js.map +1 -1
- package/dist/esm/ui/Slot.mjs +1 -0
- package/dist/esm/ui/Slot.mjs.map +1 -1
- package/dist/esm/ui/Slot.native.js +1 -0
- package/dist/esm/ui/Slot.native.js.map +1 -1
- package/dist/esm/ui/TabRouter.js +18 -2
- package/dist/esm/ui/TabRouter.js.map +1 -1
- package/dist/esm/ui/TabRouter.mjs +32 -19
- package/dist/esm/ui/TabRouter.mjs.map +1 -1
- package/dist/esm/ui/TabRouter.native.js +13 -0
- package/dist/esm/ui/TabRouter.native.js.map +1 -1
- package/dist/esm/ui/TabTrigger.js +1 -1
- package/dist/esm/ui/TabTrigger.js.map +1 -1
- package/dist/esm/ui/TabTrigger.mjs +2 -2
- package/dist/esm/ui/TabTrigger.mjs.map +1 -1
- package/dist/esm/ui/TabTrigger.native.js +2 -2
- package/dist/esm/ui/TabTrigger.native.js.map +1 -1
- package/dist/esm/useLoader.js +37 -8
- package/dist/esm/useLoader.js.map +1 -1
- package/dist/esm/useLoader.mjs +38 -9
- package/dist/esm/useLoader.mjs.map +1 -1
- package/dist/esm/useLoader.native.js +47 -11
- package/dist/esm/useLoader.native.js.map +1 -1
- package/dist/esm/utils/isRolldown.js +4 -10
- package/dist/esm/utils/isRolldown.js.map +1 -1
- package/dist/esm/utils/isRolldown.mjs +4 -9
- package/dist/esm/utils/isRolldown.mjs.map +1 -1
- package/dist/esm/utils/isRolldown.native.js +4 -10
- package/dist/esm/utils/isRolldown.native.js.map +1 -1
- package/dist/esm/utils/removeParams.js +24 -0
- package/dist/esm/utils/removeParams.js.map +6 -0
- package/dist/esm/utils/removeParams.mjs +29 -0
- package/dist/esm/utils/removeParams.mjs.map +1 -0
- package/dist/esm/utils/removeParams.native.js +45 -0
- package/dist/esm/utils/removeParams.native.js.map +1 -0
- package/dist/esm/vercel/build/buildVercelOutputDirectory.js +7 -5
- package/dist/esm/vercel/build/buildVercelOutputDirectory.js.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs +7 -5
- package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js +7 -4
- package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.js +2 -2
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.js.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs +2 -2
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js +2 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.js +2 -2
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.js.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs +3 -2
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js +3 -2
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js.map +1 -1
- package/dist/esm/views/Navigator.js +2 -0
- package/dist/esm/views/Navigator.js.map +1 -1
- package/dist/esm/views/Navigator.mjs +1 -0
- package/dist/esm/views/Navigator.mjs.map +1 -1
- package/dist/esm/views/Navigator.native.js +1 -0
- package/dist/esm/views/Navigator.native.js.map +1 -1
- package/dist/esm/vite/one-server-only.js +3 -3
- package/dist/esm/vite/one-server-only.js.map +1 -1
- package/dist/esm/vite/one-server-only.mjs +6 -3
- package/dist/esm/vite/one-server-only.mjs.map +1 -1
- package/dist/esm/vite/one-server-only.native.js +4 -1
- package/dist/esm/vite/one-server-only.native.js.map +1 -1
- package/dist/esm/vite/one.js +94 -24
- package/dist/esm/vite/one.js.map +1 -1
- package/dist/esm/vite/one.mjs +75 -29
- package/dist/esm/vite/one.mjs.map +1 -1
- package/dist/esm/vite/one.native.js +143 -34
- package/dist/esm/vite/one.native.js.map +1 -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/criticalCSSPlugin.js +36 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.js.map +6 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.mjs +34 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.mjs.map +1 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.native.js +50 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.native.js.map +1 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.js +107 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.js.map +6 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.mjs +139 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.mjs.map +1 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.native.js +141 -0
- package/dist/esm/vite/plugins/criticalCSSPlugin.test.native.js.map +1 -0
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.js +2 -2
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +2 -2
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +2 -2
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/fixDependenciesPlugin.js +3 -9
- package/dist/esm/vite/plugins/fixDependenciesPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/fixDependenciesPlugin.mjs +3 -9
- package/dist/esm/vite/plugins/fixDependenciesPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/fixDependenciesPlugin.native.js +3 -9
- package/dist/esm/vite/plugins/fixDependenciesPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/removeReactNativeWebAnimatedPlugin.js +8 -11
- package/dist/esm/vite/plugins/removeReactNativeWebAnimatedPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/removeReactNativeWebAnimatedPlugin.mjs +6 -14
- package/dist/esm/vite/plugins/removeReactNativeWebAnimatedPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/removeReactNativeWebAnimatedPlugin.native.js +6 -18
- package/dist/esm/vite/plugins/removeReactNativeWebAnimatedPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/sourceInspectorPlugin.js +12 -7
- package/dist/esm/vite/plugins/sourceInspectorPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/sourceInspectorPlugin.mjs +11 -6
- package/dist/esm/vite/plugins/sourceInspectorPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/sourceInspectorPlugin.native.js +12 -7
- package/dist/esm/vite/plugins/sourceInspectorPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/warmRoutesPlugin.js +80 -0
- package/dist/esm/vite/plugins/warmRoutesPlugin.js.map +6 -0
- package/dist/esm/vite/plugins/warmRoutesPlugin.mjs +74 -0
- package/dist/esm/vite/plugins/warmRoutesPlugin.mjs.map +1 -0
- package/dist/esm/vite/plugins/warmRoutesPlugin.native.js +107 -0
- package/dist/esm/vite/plugins/warmRoutesPlugin.native.js.map +1 -0
- package/dist/esm/vite/replaceLoader.js +1 -1
- package/dist/esm/vite/replaceLoader.js.map +1 -1
- package/dist/esm/vite/replaceLoader.mjs +1 -1
- package/dist/esm/vite/replaceLoader.mjs.map +1 -1
- package/dist/esm/vite/replaceLoader.native.js +1 -1
- package/dist/esm/vite/replaceLoader.native.js.map +1 -1
- package/dist/esm/vite/resolveResponse.js +23 -7
- package/dist/esm/vite/resolveResponse.js.map +1 -1
- package/dist/esm/vite/resolveResponse.mjs +21 -9
- package/dist/esm/vite/resolveResponse.mjs.map +1 -1
- package/dist/esm/vite/resolveResponse.native.js +21 -9
- package/dist/esm/vite/resolveResponse.native.js.map +1 -1
- package/dist/esm/vite-auto-warm.js +5 -0
- package/dist/esm/vite-auto-warm.js.map +6 -0
- package/dist/esm/vite-auto-warm.mjs +3 -0
- package/dist/esm/vite-auto-warm.mjs.map +1 -0
- package/dist/esm/vite-auto-warm.native.js +3 -0
- package/dist/esm/vite-auto-warm.native.js.map +1 -0
- package/dist/esm/vite.js +2 -0
- package/dist/esm/vite.js.map +1 -1
- package/dist/esm/vite.mjs +2 -1
- package/dist/esm/vite.mjs.map +1 -1
- package/dist/esm/vite.native.js +2 -1
- package/dist/esm/vite.native.js.map +1 -1
- package/package.json +44 -35
- package/src/Root.tsx +17 -13
- package/src/babel-plugins/inline-one-server-url.ts +26 -0
- package/src/cli/build.ts +130 -28
- package/src/cli/buildPage.ts +46 -20
- package/src/cli/buildPageWorker.ts +6 -18
- package/src/cli/patch.ts +3 -3
- package/src/cli/securityScan.ts +189 -0
- package/src/cli/workerPool.ts +5 -5
- package/src/cli.ts +11 -0
- package/src/createApp.tsx +165 -56
- package/src/createHandleRequest.ts +75 -18
- package/src/daemon/tui.ts +3 -3
- package/src/fork/NavigationContainer.tsx +38 -16
- package/src/fork/SSRNavigationContainer.tsx +94 -0
- package/src/fork/getPathFromState.ts +15 -5
- package/src/fork/getStateFromPath-mods.ts +1 -1
- package/src/fork/useLinking.native.ts +15 -13
- package/src/fork/useLinking.ts +22 -1
- package/src/getReactNavigationConfig.ts +3 -0
- package/src/index.ts +1 -0
- package/src/interfaces/router.ts +2 -3
- package/src/layouts/stack-utils/StackScreen.tsx +47 -0
- package/src/layouts/stack-utils/index.tsx +1 -0
- package/src/metro-config/getViteMetroPluginOptions.ts +2 -0
- package/src/router/findRouteNode.ts +4 -4
- package/src/router/isIndexPath.ts +4 -0
- package/src/router/linkingConfig.ts +53 -2
- package/src/router/router.ts +71 -45
- package/src/router/useInitializeOneRouter.ts +47 -15
- package/src/router/useScreens.tsx +56 -20
- package/src/screensFeatureFlags.ts +23 -0
- package/src/serve.ts +65 -5
- package/src/server/ServerContextScript.tsx +15 -8
- package/src/server/oneServe.ts +184 -47
- package/src/server/ssrLoaderData.ts +8 -0
- package/src/server-render.tsx +25 -28
- package/src/ui/Slot.tsx +7 -0
- package/src/ui/TabRouter.tsx +18 -0
- package/src/ui/TabTrigger.tsx +3 -0
- package/src/useLoader.ts +69 -11
- package/src/utils/isRolldown.ts +4 -14
- package/src/utils/removeParams.ts +40 -0
- package/src/vercel/build/buildVercelOutputDirectory.ts +12 -7
- package/src/vercel/build/generate/createApiServerlessFunction.ts +3 -2
- package/src/vercel/build/generate/createSsrServerlessFunction.ts +3 -2
- package/src/views/Navigator.tsx +4 -0
- package/src/vite/one-server-only.native.ts +3 -0
- package/src/vite/one-server-only.tsx +13 -5
- package/src/vite/one.ts +134 -28
- package/src/vite/plugins/SSRCSSPlugin.ts +2 -2
- package/src/vite/plugins/criticalCSSPlugin.test.ts +166 -0
- package/src/vite/plugins/criticalCSSPlugin.ts +74 -0
- package/src/vite/plugins/fileSystemRouterPlugin.tsx +3 -2
- package/src/vite/plugins/fixDependenciesPlugin.ts +7 -19
- package/src/vite/plugins/removeReactNativeWebAnimatedPlugin.ts +10 -17
- package/src/vite/plugins/sourceInspectorPlugin.ts +28 -23
- package/src/vite/plugins/warmRoutesPlugin.ts +156 -0
- package/src/vite/replaceLoader.ts +2 -1
- package/src/vite/resolveResponse.ts +25 -9
- package/src/vite/types.ts +54 -10
- package/src/vite-auto-warm.ts +1 -0
- package/src/vite.ts +1 -0
- package/types/Root.d.ts.map +1 -1
- package/types/babel-plugins/inline-one-server-url.d.ts +10 -0
- package/types/babel-plugins/inline-one-server-url.d.ts.map +1 -0
- package/types/cli/build.d.ts.map +1 -1
- package/types/cli/buildPage.d.ts +1 -1
- package/types/cli/buildPage.d.ts.map +1 -1
- package/types/cli/securityScan.d.ts +16 -0
- package/types/cli/securityScan.d.ts.map +1 -0
- package/types/cli/workerPool.d.ts +2 -1
- package/types/cli/workerPool.d.ts.map +1 -1
- package/types/createApp.d.ts +2 -1
- package/types/createApp.d.ts.map +1 -1
- package/types/createHandleRequest.d.ts +2 -1
- package/types/createHandleRequest.d.ts.map +1 -1
- package/types/fork/NavigationContainer.d.ts.map +1 -1
- package/types/fork/SSRNavigationContainer.d.ts +16 -0
- package/types/fork/SSRNavigationContainer.d.ts.map +1 -0
- package/types/fork/getPathFromState.d.ts.map +1 -1
- package/types/fork/navigationThemes.d.ts.map +1 -0
- package/types/fork/useLinking.d.ts.map +1 -1
- package/types/fork/useLinking.native.d.ts.map +1 -1
- package/types/getReactNavigationConfig.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/interfaces/router.d.ts +2 -1
- package/types/interfaces/router.d.ts.map +1 -1
- package/types/layouts/Stack.d.ts +15 -11
- package/types/layouts/Stack.d.ts.map +1 -1
- package/types/layouts/Tabs.d.ts +15 -11
- package/types/layouts/Tabs.d.ts.map +1 -1
- package/types/layouts/stack-utils/StackScreen.d.ts +2 -0
- package/types/layouts/stack-utils/StackScreen.d.ts.map +1 -1
- package/types/layouts/stack-utils/index.d.ts +1 -1
- package/types/layouts/stack-utils/index.d.ts.map +1 -1
- package/types/metro-config/getViteMetroPluginOptions.d.ts.map +1 -1
- package/types/reactNavigationImports.d.ts.map +1 -0
- package/types/reactNavigationImports.server.d.ts.map +1 -0
- package/types/router/isIndexPath.d.ts.map +1 -1
- package/types/router/linkingConfig.d.ts +10 -0
- package/types/router/linkingConfig.d.ts.map +1 -1
- package/types/router/router.d.ts +8 -3
- package/types/router/router.d.ts.map +1 -1
- package/types/router/useInitializeOneRouter.d.ts +1 -0
- package/types/router/useInitializeOneRouter.d.ts.map +1 -1
- package/types/router/useScreens.d.ts.map +1 -1
- package/types/screensFeatureFlags.d.ts +2 -0
- package/types/screensFeatureFlags.d.ts.map +1 -0
- package/types/serve.d.ts +2 -0
- package/types/serve.d.ts.map +1 -1
- package/types/server/ServerContextScript.d.ts.map +1 -1
- package/types/server/oneServe.d.ts.map +1 -1
- package/types/server/ssrLoaderData.d.ts +3 -0
- package/types/server/ssrLoaderData.d.ts.map +1 -0
- package/types/server-render.d.ts +10 -7
- package/types/server-render.d.ts.map +1 -1
- package/types/ui/Slot.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/useLoader.d.ts +1 -0
- package/types/useLoader.d.ts.map +1 -1
- package/types/utils/isRolldown.d.ts +1 -1
- package/types/utils/isRolldown.d.ts.map +1 -1
- package/types/utils/removeParams.d.ts +8 -0
- package/types/utils/removeParams.d.ts.map +1 -0
- package/types/vercel/build/buildVercelOutputDirectory.d.ts +2 -2
- package/types/vercel/build/buildVercelOutputDirectory.d.ts.map +1 -1
- package/types/vercel/build/generate/createApiServerlessFunction.d.ts +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/views/Navigator.d.ts.map +1 -1
- package/types/vite/one-server-only.d.ts.map +1 -1
- package/types/vite/one-server-only.native.d.ts +3 -0
- package/types/vite/one-server-only.native.d.ts.map +1 -1
- package/types/vite/one.d.ts.map +1 -1
- package/types/vite/plugins/criticalCSSPlugin.d.ts +12 -0
- package/types/vite/plugins/criticalCSSPlugin.d.ts.map +1 -0
- package/types/vite/plugins/criticalCSSPlugin.test.d.ts +2 -0
- package/types/vite/plugins/criticalCSSPlugin.test.d.ts.map +1 -0
- package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
- package/types/vite/plugins/fixDependenciesPlugin.d.ts.map +1 -1
- package/types/vite/plugins/removeReactNativeWebAnimatedPlugin.d.ts.map +1 -1
- package/types/vite/plugins/sourceInspectorPlugin.d.ts.map +1 -1
- package/types/vite/plugins/warmRoutesPlugin.d.ts +17 -0
- package/types/vite/plugins/warmRoutesPlugin.d.ts.map +1 -0
- package/types/vite/replaceLoader.d.ts.map +1 -1
- package/types/vite/resolveResponse.d.ts +2 -2
- package/types/vite/resolveResponse.d.ts.map +1 -1
- package/types/vite/types.d.ts +51 -10
- package/types/vite/types.d.ts.map +1 -1
- package/types/vite-auto-warm.d.ts +2 -0
- package/types/vite-auto-warm.d.ts.map +1 -0
- package/types/vite.d.ts +1 -0
- package/types/vite.d.ts.map +1 -1
- package/vendor/react-dom/package.json +1 -1
- package/dist/cjs/cli/easPrebuild.cjs +0 -117
- package/dist/cjs/cli/easPrebuild.js +0 -94
- package/dist/cjs/cli/easPrebuild.js.map +0 -6
- package/dist/cjs/cli/easPrebuild.native.js +0 -135
- package/dist/cjs/cli/easPrebuild.native.js.map +0 -1
- package/dist/esm/cli/easPrebuild.js +0 -73
- package/dist/esm/cli/easPrebuild.js.map +0 -6
- package/dist/esm/cli/easPrebuild.mjs +0 -83
- package/dist/esm/cli/easPrebuild.mjs.map +0 -1
- package/dist/esm/cli/easPrebuild.native.js +0 -98
- package/dist/esm/cli/easPrebuild.native.js.map +0 -1
- package/types/cli/easPrebuild.d.ts.map +0 -1
- package/types/cli/findClientManifestEntry.d.ts.map +0 -1
- package/types/cli/findClientManifestEntry.test.d.ts.map +0 -1
- package/types/env.d.ts.map +0 -1
- package/types/router/routeMask.d.ts.map +0 -1
- package/types/server/PreloadScripts.d.ts.map +0 -1
- /package/types/vercel/build/generate/{createSSRServerlessFunction.d.ts → createSsrServerlessFunction.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["parentPort","workerImport","_instanceof","left","right","Symbol","hasInstance","console","error","process","exit","env","VXRN_REACT_19","VITE_ENVIRONMENT","NODE_ENV","buildPageFn","runWithAsyncLocalContextFn","
|
|
1
|
+
{"version":3,"names":["parentPort","workerImport","_instanceof","left","right","Symbol","hasInstance","console","error","process","exit","env","VXRN_REACT_19","VITE_ENVIRONMENT","NODE_ENV","buildPageFn","runWithAsyncLocalContextFn","initialized","ensureImports","mod","import","meta","url","buildPage","mod1","runWithAsyncLocalContext","initializeWorker","oneOptions","Error","globalThis","__vxrnPluginConfig__","on","msg","type","postMessage","id","result","args","serverEntry","path","relativeId","params","foundRoute","clientManifestEntry","staticDir","clientDir","builtMiddlewares","serverJsPath","preloads","allCSS","layoutCSS","routePreloads","allCSSContents","criticalPreloads","deferredPreloads","useAfterLCP","useAfterLCPAggressive","err","message","String","stack"],"sources":["../../../src/cli/buildPageWorker.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/cli/patch.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { loadUserOneOptions } from "../vite/loadConfig";
|
|
2
2
|
async function run(args) {
|
|
3
3
|
process.env.IS_VXRN_CLI = "true";
|
|
4
|
-
const { patch } = await import("vxrn"),
|
|
5
|
-
process.env.DEBUG && console.info("User
|
|
4
|
+
const { patch } = await import("vxrn"), patches = (await loadUserOneOptions("build")).oneOptions.patches;
|
|
5
|
+
process.env.DEBUG && console.info("User patches:", Object.keys(patches || {})), await patch({
|
|
6
6
|
root: process.cwd(),
|
|
7
|
-
deps,
|
|
7
|
+
deps: patches,
|
|
8
8
|
force: args.force
|
|
9
9
|
});
|
|
10
10
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/cli/patch.ts"],
|
|
4
|
-
"mappings": "AACA,SAAS,0BAA0B;AAEnC,eAAsB,IAAI,MAA2B;AACnD,UAAQ,IAAI,cAAc;AAC1B,QAAM,EAAE,MAAM,IAAI,MAAM,OAAO,MAAM,GAG/B,
|
|
4
|
+
"mappings": "AACA,SAAS,0BAA0B;AAEnC,eAAsB,IAAI,MAA2B;AACnD,UAAQ,IAAI,cAAc;AAC1B,QAAM,EAAE,MAAM,IAAI,MAAM,OAAO,MAAM,GAG/B,WADU,MAAM,mBAAmB,OAAO,GACxB,WAAW;AAEnC,EAAI,QAAQ,IAAI,SACd,QAAQ,KAAK,iBAAiB,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,GAG1D,MAAM,MAAM;AAAA,IACV,MAAM,QAAQ,IAAI;AAAA,IAClB,MAAM;AAAA,IACN,OAAO,KAAK;AAAA,EACd,CAAwB;AAC1B;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/esm/cli/patch.mjs
CHANGED
|
@@ -4,10 +4,10 @@ async function run(args) {
|
|
|
4
4
|
const {
|
|
5
5
|
patch
|
|
6
6
|
} = await import("vxrn"),
|
|
7
|
-
|
|
8
|
-
process.env.DEBUG && console.info("User
|
|
7
|
+
patches = (await loadUserOneOptions("build")).oneOptions.patches;
|
|
8
|
+
process.env.DEBUG && console.info("User patches:", Object.keys(patches || {})), await patch({
|
|
9
9
|
root: process.cwd(),
|
|
10
|
-
deps,
|
|
10
|
+
deps: patches,
|
|
11
11
|
force: args.force
|
|
12
12
|
});
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["loadUserOneOptions","run","args","process","env","IS_VXRN_CLI","patch","
|
|
1
|
+
{"version":3,"names":["loadUserOneOptions","run","args","process","env","IS_VXRN_CLI","patch","patches","oneOptions","DEBUG","console","info","Object","keys","root","cwd","deps","force"],"sources":["../../../src/cli/patch.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,kBAAA,QAA0B;AAEnC,eAAsBC,IAAIC,IAAA,EAA2B;EACnDC,OAAA,CAAQC,GAAA,CAAIC,WAAA,GAAc;EAC1B,MAAM;MAAEC;IAAM,IAAI,MAAM,OAAO,MAAM;IAG/BC,OAAA,IADU,MAAMP,kBAAA,CAAmB,OAAO,GACxBQ,UAAA,CAAWD,OAAA;EAE/BJ,OAAA,CAAQC,GAAA,CAAIK,KAAA,IACdC,OAAA,CAAQC,IAAA,CAAK,iBAAiBC,MAAA,CAAOC,IAAA,CAAKN,OAAA,IAAW,CAAC,CAAC,CAAC,GAG1D,MAAMD,KAAA,CAAM;IACVQ,IAAA,EAAMX,OAAA,CAAQY,GAAA,CAAI;IAClBC,IAAA,EAAMT,OAAA;IACNU,KAAA,EAAOf,IAAA,CAAKe;EACd,CAAwB;AAC1B","ignoreList":[]}
|
|
@@ -5,10 +5,10 @@ async function run(args) {
|
|
|
5
5
|
patch
|
|
6
6
|
} = await import("vxrn"),
|
|
7
7
|
options = await loadUserOneOptions("build"),
|
|
8
|
-
|
|
9
|
-
process.env.DEBUG && console.info("User
|
|
8
|
+
patches = options.oneOptions.patches;
|
|
9
|
+
process.env.DEBUG && console.info("User patches:", Object.keys(patches || {})), await patch({
|
|
10
10
|
root: process.cwd(),
|
|
11
|
-
deps,
|
|
11
|
+
deps: patches,
|
|
12
12
|
force: args.force
|
|
13
13
|
});
|
|
14
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["loadUserOneOptions","run","args","process","env","IS_VXRN_CLI","patch","options","
|
|
1
|
+
{"version":3,"names":["loadUserOneOptions","run","args","process","env","IS_VXRN_CLI","patch","options","patches","oneOptions","DEBUG","console","info","Object","keys","root","cwd","deps","force"],"sources":["../../../src/cli/patch.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,kBAAA,QAA0B;AAEnC,eAAsBC,IAAIC,IAAA,EAA2B;EACnDC,OAAA,CAAQC,GAAA,CAAIC,WAAA,GAAc;EAC1B;MAAMC;IAAE,IAAM,MAAI,MAAM,OAAO;IAAMC,OAG/B,SADUP,kBAAM,QAAmB;IAAOQ,OACxB,GAAAD,OAAW,CAAAE,UAAA,CAAAD,OAAA;EAE/BL,OAAA,CAAQC,GAAA,CAAIM,KAAA,IACdC,OAAA,CAAQC,IAAA,CAAK,iBAAiBC,MAAA,CAAOC,IAAA,CAAKN,OAAA,IAAW,CAAC,CAAC,CAAC,GAG1D,MAAMF,KAAA,CAAM;IACVS,IAAA,EAAMZ,OAAA,CAAQa,GAAA,CAAI;IAClBC,IAAA,EAAMT,OAAA;IACNU,KAAA,EAAOhB,IAAA,CAAKgB;EACd,CAAwB;AAC1B","ignoreList":[]}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { readdir, readFile } from "node:fs/promises";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
const SECRET_PATTERNS = [
|
|
4
|
+
// api tokens / keys with known prefixes
|
|
5
|
+
["Anthropic API key", /sk-ant-[A-Za-z0-9_-]{20,}/g],
|
|
6
|
+
["OpenAI API key", /sk-proj-[A-Za-z0-9_-]{20,}/g],
|
|
7
|
+
["Stripe secret key", /sk_live_[A-Za-z0-9]{20,}/g],
|
|
8
|
+
["Stripe webhook secret", /whsec_[A-Za-z0-9]{20,}/g],
|
|
9
|
+
["GitHub token", /gh[ps]_[A-Za-z0-9]{36,}/g],
|
|
10
|
+
["GitHub PAT", /github_pat_[A-Za-z0-9_]{20,}/g],
|
|
11
|
+
["AWS access key", /(?<![A-Za-z0-9])AKIA[0-9A-Z]{16}(?![A-Za-z0-9])/g],
|
|
12
|
+
[
|
|
13
|
+
"Postmark server token",
|
|
14
|
+
/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/g
|
|
15
|
+
],
|
|
16
|
+
["Bearer token assignment", /["']Bearer\s+[A-Za-z0-9_.-]{20,}["']/g],
|
|
17
|
+
[
|
|
18
|
+
"Generic secret assignment",
|
|
19
|
+
/(?:secret|password|api_key|apikey)\s*[:=]\s*["'][A-Za-z0-9_-]{16,}["']/gi
|
|
20
|
+
],
|
|
21
|
+
// known env var names that should never be inlined
|
|
22
|
+
["BETTER_AUTH_SECRET value", /BETTER_AUTH_SECRET["']\s*[:=]\s*["'][^"']+["']/g],
|
|
23
|
+
["POSTMARK_SERVER_TOKEN value", /POSTMARK_SERVER_TOKEN["']\s*[:=]\s*["'][^"']+["']/g],
|
|
24
|
+
["ANTHROPIC_API_KEY value", /ANTHROPIC_API_KEY["']\s*[:=]\s*["'][^"']+["']/g]
|
|
25
|
+
], SAFE_UUIDS = /* @__PURE__ */ new Set([
|
|
26
|
+
"00000000-0000-0000-0000-000000000000",
|
|
27
|
+
"09259e3b-7be8-46f6-9801-106bf1866e1c",
|
|
28
|
+
// WebRTC SDP
|
|
29
|
+
"4ad15a19-80e2-4105-bf43-48039fd2963e"
|
|
30
|
+
// WebRTC SDP
|
|
31
|
+
]), BUILTIN_SAFE_PATTERNS = [
|
|
32
|
+
/sk_live_your_/,
|
|
33
|
+
/sk_live_your_key/,
|
|
34
|
+
/rk_\w+_\w+/,
|
|
35
|
+
// tamagui theme tokens
|
|
36
|
+
/sk_all_element/,
|
|
37
|
+
// DOM property names
|
|
38
|
+
/sk_personal_data/
|
|
39
|
+
// analytics property names
|
|
40
|
+
];
|
|
41
|
+
function createSafeMatcher(userPatterns) {
|
|
42
|
+
const safeStrings = new Set(SAFE_UUIDS), safeRegexes = [...BUILTIN_SAFE_PATTERNS];
|
|
43
|
+
if (userPatterns)
|
|
44
|
+
for (const p of userPatterns)
|
|
45
|
+
typeof p == "string" ? safeStrings.add(p) : safeRegexes.push(p);
|
|
46
|
+
return (match) => safeStrings.has(match) ? !0 : safeRegexes.some((p) => p.test(match));
|
|
47
|
+
}
|
|
48
|
+
async function collectJSFiles(dir) {
|
|
49
|
+
const files = [];
|
|
50
|
+
async function walk(currentDir) {
|
|
51
|
+
let entries;
|
|
52
|
+
try {
|
|
53
|
+
entries = await readdir(currentDir, { withFileTypes: !0 });
|
|
54
|
+
} catch {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
for (const entry of entries) {
|
|
58
|
+
const fullPath = join(currentDir, entry.name);
|
|
59
|
+
entry.isDirectory() ? await walk(fullPath) : entry.name.endsWith(".js") && files.push(fullPath);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return await walk(dir), files;
|
|
63
|
+
}
|
|
64
|
+
async function scanBundleForSecrets(distDir, userSafePatterns) {
|
|
65
|
+
const isSafe = createSafeMatcher(userSafePatterns), files = await collectJSFiles(distDir), findings = [];
|
|
66
|
+
for (const fullPath of files) {
|
|
67
|
+
const relativePath = fullPath.slice(distDir.length + 1);
|
|
68
|
+
let content;
|
|
69
|
+
try {
|
|
70
|
+
content = await readFile(fullPath, "utf-8");
|
|
71
|
+
} catch {
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
74
|
+
for (const [label, pattern] of SECRET_PATTERNS) {
|
|
75
|
+
pattern.lastIndex = 0;
|
|
76
|
+
let match;
|
|
77
|
+
for (; (match = pattern.exec(content)) !== null; ) {
|
|
78
|
+
const matched = match[0];
|
|
79
|
+
if (isSafe(matched)) continue;
|
|
80
|
+
const line = (content.slice(0, match.index).match(/\n/g)?.length ?? 0) + 1;
|
|
81
|
+
findings.push({
|
|
82
|
+
file: relativePath,
|
|
83
|
+
label,
|
|
84
|
+
match: matched.length > 40 ? `${matched.slice(0, 20)}...${matched.slice(-10)}` : matched,
|
|
85
|
+
line
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return { clean: findings.length === 0, findings };
|
|
91
|
+
}
|
|
92
|
+
async function runSecurityScan(clientDir, level, safePatterns) {
|
|
93
|
+
console.info(`
|
|
94
|
+
\u{1F512} scanning client bundles for leaked secrets...
|
|
95
|
+
`);
|
|
96
|
+
const { clean, findings } = await scanBundleForSecrets(clientDir, safePatterns);
|
|
97
|
+
if (clean)
|
|
98
|
+
return console.info(` \u{1F512} security scan passed \u2014 no secrets found
|
|
99
|
+
`), !0;
|
|
100
|
+
const icon = level === "error" ? "\u{1F6A8}" : "\u26A0\uFE0F", header = level === "error" ? `${icon} ${findings.length} secret(s) leaked into client bundle:` : `${icon} ${findings.length} potential secret(s) found in client bundle:`;
|
|
101
|
+
console.error(`
|
|
102
|
+
${header}
|
|
103
|
+
`);
|
|
104
|
+
for (const f of findings)
|
|
105
|
+
console.error(` ${f.label}`), console.error(` file: ${f.file}:${f.line}`), console.error(` match: ${f.match}
|
|
106
|
+
`);
|
|
107
|
+
return level === "error" ? (console.error(
|
|
108
|
+
` Set build.securityScan to 'warn' to continue building despite findings.
|
|
109
|
+
`
|
|
110
|
+
), !1) : (console.warn(
|
|
111
|
+
` Set build.securityScan to 'error' to fail builds when secrets are detected.
|
|
112
|
+
`
|
|
113
|
+
), !0);
|
|
114
|
+
}
|
|
115
|
+
export {
|
|
116
|
+
runSecurityScan,
|
|
117
|
+
scanBundleForSecrets
|
|
118
|
+
};
|
|
119
|
+
//# sourceMappingURL=securityScan.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/cli/securityScan.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { readdir, readFile } from "node:fs/promises";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
const SECRET_PATTERNS = [
|
|
4
|
+
// api tokens / keys with known prefixes
|
|
5
|
+
["Anthropic API key", /sk-ant-[A-Za-z0-9_-]{20,}/g], ["OpenAI API key", /sk-proj-[A-Za-z0-9_-]{20,}/g], ["Stripe secret key", /sk_live_[A-Za-z0-9]{20,}/g], ["Stripe webhook secret", /whsec_[A-Za-z0-9]{20,}/g], ["GitHub token", /gh[ps]_[A-Za-z0-9]{36,}/g], ["GitHub PAT", /github_pat_[A-Za-z0-9_]{20,}/g], ["AWS access key", /(?<![A-Za-z0-9])AKIA[0-9A-Z]{16}(?![A-Za-z0-9])/g], ["Postmark server token", /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/g], ["Bearer token assignment", /["']Bearer\s+[A-Za-z0-9_.-]{20,}["']/g], ["Generic secret assignment", /(?:secret|password|api_key|apikey)\s*[:=]\s*["'][A-Za-z0-9_-]{16,}["']/gi],
|
|
6
|
+
// known env var names that should never be inlined
|
|
7
|
+
["BETTER_AUTH_SECRET value", /BETTER_AUTH_SECRET["']\s*[:=]\s*["'][^"']+["']/g], ["POSTMARK_SERVER_TOKEN value", /POSTMARK_SERVER_TOKEN["']\s*[:=]\s*["'][^"']+["']/g], ["ANTHROPIC_API_KEY value", /ANTHROPIC_API_KEY["']\s*[:=]\s*["'][^"']+["']/g]],
|
|
8
|
+
SAFE_UUIDS = /* @__PURE__ */new Set(["00000000-0000-0000-0000-000000000000", "09259e3b-7be8-46f6-9801-106bf1866e1c",
|
|
9
|
+
// WebRTC SDP
|
|
10
|
+
"4ad15a19-80e2-4105-bf43-48039fd2963e"
|
|
11
|
+
// WebRTC SDP
|
|
12
|
+
]),
|
|
13
|
+
BUILTIN_SAFE_PATTERNS = [/sk_live_your_/, /sk_live_your_key/, /rk_\w+_\w+/,
|
|
14
|
+
// tamagui theme tokens
|
|
15
|
+
/sk_all_element/,
|
|
16
|
+
// DOM property names
|
|
17
|
+
/sk_personal_data/
|
|
18
|
+
// analytics property names
|
|
19
|
+
];
|
|
20
|
+
function createSafeMatcher(userPatterns) {
|
|
21
|
+
const safeStrings = new Set(SAFE_UUIDS),
|
|
22
|
+
safeRegexes = [...BUILTIN_SAFE_PATTERNS];
|
|
23
|
+
if (userPatterns) for (const p of userPatterns) typeof p == "string" ? safeStrings.add(p) : safeRegexes.push(p);
|
|
24
|
+
return match => safeStrings.has(match) ? !0 : safeRegexes.some(p => p.test(match));
|
|
25
|
+
}
|
|
26
|
+
async function collectJSFiles(dir) {
|
|
27
|
+
const files = [];
|
|
28
|
+
async function walk(currentDir) {
|
|
29
|
+
let entries;
|
|
30
|
+
try {
|
|
31
|
+
entries = await readdir(currentDir, {
|
|
32
|
+
withFileTypes: !0
|
|
33
|
+
});
|
|
34
|
+
} catch {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
for (const entry of entries) {
|
|
38
|
+
const fullPath = join(currentDir, entry.name);
|
|
39
|
+
entry.isDirectory() ? await walk(fullPath) : entry.name.endsWith(".js") && files.push(fullPath);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return await walk(dir), files;
|
|
43
|
+
}
|
|
44
|
+
async function scanBundleForSecrets(distDir, userSafePatterns) {
|
|
45
|
+
const isSafe = createSafeMatcher(userSafePatterns),
|
|
46
|
+
files = await collectJSFiles(distDir),
|
|
47
|
+
findings = [];
|
|
48
|
+
for (const fullPath of files) {
|
|
49
|
+
const relativePath = fullPath.slice(distDir.length + 1);
|
|
50
|
+
let content;
|
|
51
|
+
try {
|
|
52
|
+
content = await readFile(fullPath, "utf-8");
|
|
53
|
+
} catch {
|
|
54
|
+
continue;
|
|
55
|
+
}
|
|
56
|
+
for (const [label, pattern] of SECRET_PATTERNS) {
|
|
57
|
+
pattern.lastIndex = 0;
|
|
58
|
+
let match;
|
|
59
|
+
for (; (match = pattern.exec(content)) !== null;) {
|
|
60
|
+
const matched = match[0];
|
|
61
|
+
if (isSafe(matched)) continue;
|
|
62
|
+
const line = (content.slice(0, match.index).match(/\n/g)?.length ?? 0) + 1;
|
|
63
|
+
findings.push({
|
|
64
|
+
file: relativePath,
|
|
65
|
+
label,
|
|
66
|
+
match: matched.length > 40 ? `${matched.slice(0, 20)}...${matched.slice(-10)}` : matched,
|
|
67
|
+
line
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
clean: findings.length === 0,
|
|
74
|
+
findings
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
async function runSecurityScan(clientDir, level, safePatterns) {
|
|
78
|
+
console.info(`
|
|
79
|
+
\u{1F512} scanning client bundles for leaked secrets...
|
|
80
|
+
`);
|
|
81
|
+
const {
|
|
82
|
+
clean,
|
|
83
|
+
findings
|
|
84
|
+
} = await scanBundleForSecrets(clientDir, safePatterns);
|
|
85
|
+
if (clean) return console.info(` \u{1F512} security scan passed \u2014 no secrets found
|
|
86
|
+
`), !0;
|
|
87
|
+
const icon = level === "error" ? "\u{1F6A8}" : "\u26A0\uFE0F",
|
|
88
|
+
header = level === "error" ? `${icon} ${findings.length} secret(s) leaked into client bundle:` : `${icon} ${findings.length} potential secret(s) found in client bundle:`;
|
|
89
|
+
console.error(`
|
|
90
|
+
${header}
|
|
91
|
+
`);
|
|
92
|
+
for (const f of findings) console.error(` ${f.label}`), console.error(` file: ${f.file}:${f.line}`), console.error(` match: ${f.match}
|
|
93
|
+
`);
|
|
94
|
+
return level === "error" ? (console.error(` Set build.securityScan to 'warn' to continue building despite findings.
|
|
95
|
+
`), !1) : (console.warn(` Set build.securityScan to 'error' to fail builds when secrets are detected.
|
|
96
|
+
`), !0);
|
|
97
|
+
}
|
|
98
|
+
export { runSecurityScan, scanBundleForSecrets };
|
|
99
|
+
//# sourceMappingURL=securityScan.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["readdir","readFile","join","SECRET_PATTERNS","SAFE_UUIDS","Set","BUILTIN_SAFE_PATTERNS","createSafeMatcher","userPatterns","safeStrings","safeRegexes","p","add","push","match","has","some","test","collectJSFiles","dir","files","walk","currentDir","entries","withFileTypes","entry","fullPath","name","isDirectory","endsWith","scanBundleForSecrets","distDir","userSafePatterns","isSafe","findings","relativePath","slice","length","content","label","pattern","lastIndex","exec","matched","line","index","file","clean","runSecurityScan","clientDir","level","safePatterns","console","info","icon","header","error","f","warn"],"sources":["../../../src/cli/securityScan.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import { readdir, readFile } from "fs/promises";
|
|
2
|
+
import { join } from "path";
|
|
3
|
+
var SECRET_PATTERNS = [
|
|
4
|
+
// api tokens / keys with known prefixes
|
|
5
|
+
["Anthropic API key", /sk-ant-[A-Za-z0-9_-]{20,}/g], ["OpenAI API key", /sk-proj-[A-Za-z0-9_-]{20,}/g], ["Stripe secret key", /sk_live_[A-Za-z0-9]{20,}/g], ["Stripe webhook secret", /whsec_[A-Za-z0-9]{20,}/g], ["GitHub token", /gh[ps]_[A-Za-z0-9]{36,}/g], ["GitHub PAT", /github_pat_[A-Za-z0-9_]{20,}/g], ["AWS access key", RegExp("(?<![A-Za-z0-9])AKIA[0-9A-Z]{16}(?![A-Za-z0-9])", "g")], ["Postmark server token", /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/g], ["Bearer token assignment", /["']Bearer\s+[A-Za-z0-9_.-]{20,}["']/g], ["Generic secret assignment", /(?:secret|password|api_key|apikey)\s*[:=]\s*["'][A-Za-z0-9_-]{16,}["']/gi],
|
|
6
|
+
// known env var names that should never be inlined
|
|
7
|
+
["BETTER_AUTH_SECRET value", /BETTER_AUTH_SECRET["']\s*[:=]\s*["'][^"']+["']/g], ["POSTMARK_SERVER_TOKEN value", /POSTMARK_SERVER_TOKEN["']\s*[:=]\s*["'][^"']+["']/g], ["ANTHROPIC_API_KEY value", /ANTHROPIC_API_KEY["']\s*[:=]\s*["'][^"']+["']/g]],
|
|
8
|
+
SAFE_UUIDS = /* @__PURE__ */new Set(["00000000-0000-0000-0000-000000000000", "09259e3b-7be8-46f6-9801-106bf1866e1c",
|
|
9
|
+
// WebRTC SDP
|
|
10
|
+
"4ad15a19-80e2-4105-bf43-48039fd2963e"]),
|
|
11
|
+
BUILTIN_SAFE_PATTERNS = [/sk_live_your_/, /sk_live_your_key/, /rk_\w+_\w+/,
|
|
12
|
+
// tamagui theme tokens
|
|
13
|
+
/sk_all_element/,
|
|
14
|
+
// DOM property names
|
|
15
|
+
/sk_personal_data/];
|
|
16
|
+
function createSafeMatcher(userPatterns) {
|
|
17
|
+
var safeStrings = new Set(SAFE_UUIDS),
|
|
18
|
+
safeRegexes = [...BUILTIN_SAFE_PATTERNS];
|
|
19
|
+
if (userPatterns) {
|
|
20
|
+
var _iteratorNormalCompletion = !0,
|
|
21
|
+
_didIteratorError = !1,
|
|
22
|
+
_iteratorError = void 0;
|
|
23
|
+
try {
|
|
24
|
+
for (var _iterator = userPatterns[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
25
|
+
var p = _step.value;
|
|
26
|
+
typeof p == "string" ? safeStrings.add(p) : safeRegexes.push(p);
|
|
27
|
+
}
|
|
28
|
+
} catch (err) {
|
|
29
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
30
|
+
} finally {
|
|
31
|
+
try {
|
|
32
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
33
|
+
} finally {
|
|
34
|
+
if (_didIteratorError) throw _iteratorError;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return function (match) {
|
|
39
|
+
return safeStrings.has(match) ? !0 : safeRegexes.some(function (p2) {
|
|
40
|
+
return p2.test(match);
|
|
41
|
+
});
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
async function collectJSFiles(dir) {
|
|
45
|
+
var files = [];
|
|
46
|
+
async function walk(currentDir) {
|
|
47
|
+
var entries;
|
|
48
|
+
try {
|
|
49
|
+
entries = await readdir(currentDir, {
|
|
50
|
+
withFileTypes: !0
|
|
51
|
+
});
|
|
52
|
+
} catch {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
var _iteratorNormalCompletion = !0,
|
|
56
|
+
_didIteratorError = !1,
|
|
57
|
+
_iteratorError = void 0;
|
|
58
|
+
try {
|
|
59
|
+
for (var _iterator = entries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
60
|
+
var entry = _step.value,
|
|
61
|
+
fullPath = join(currentDir, entry.name);
|
|
62
|
+
entry.isDirectory() ? await walk(fullPath) : entry.name.endsWith(".js") && files.push(fullPath);
|
|
63
|
+
}
|
|
64
|
+
} catch (err) {
|
|
65
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
66
|
+
} finally {
|
|
67
|
+
try {
|
|
68
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
69
|
+
} finally {
|
|
70
|
+
if (_didIteratorError) throw _iteratorError;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return await walk(dir), files;
|
|
75
|
+
}
|
|
76
|
+
async function scanBundleForSecrets(distDir, userSafePatterns) {
|
|
77
|
+
var isSafe = createSafeMatcher(userSafePatterns),
|
|
78
|
+
files = await collectJSFiles(distDir),
|
|
79
|
+
findings = [],
|
|
80
|
+
_iteratorNormalCompletion = !0,
|
|
81
|
+
_didIteratorError = !1,
|
|
82
|
+
_iteratorError = void 0;
|
|
83
|
+
try {
|
|
84
|
+
for (var _iterator = files[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
85
|
+
var fullPath = _step.value,
|
|
86
|
+
relativePath = fullPath.slice(distDir.length + 1),
|
|
87
|
+
content = void 0;
|
|
88
|
+
try {
|
|
89
|
+
content = await readFile(fullPath, "utf-8");
|
|
90
|
+
} catch {
|
|
91
|
+
continue;
|
|
92
|
+
}
|
|
93
|
+
var _iteratorNormalCompletion1 = !0,
|
|
94
|
+
_didIteratorError1 = !1,
|
|
95
|
+
_iteratorError1 = void 0;
|
|
96
|
+
try {
|
|
97
|
+
for (var _iterator1 = SECRET_PATTERNS[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = !0) {
|
|
98
|
+
var [label, pattern] = _step1.value;
|
|
99
|
+
pattern.lastIndex = 0;
|
|
100
|
+
for (var match = void 0; (match = pattern.exec(content)) !== null;) {
|
|
101
|
+
var _ref,
|
|
102
|
+
_beforeMatch_match,
|
|
103
|
+
matched = match[0];
|
|
104
|
+
if (!isSafe(matched)) {
|
|
105
|
+
var beforeMatch = content.slice(0, match.index),
|
|
106
|
+
line = ((_ref = (_beforeMatch_match = beforeMatch.match(/\n/g)) === null || _beforeMatch_match === void 0 ? void 0 : _beforeMatch_match.length) !== null && _ref !== void 0 ? _ref : 0) + 1;
|
|
107
|
+
findings.push({
|
|
108
|
+
file: relativePath,
|
|
109
|
+
label,
|
|
110
|
+
match: matched.length > 40 ? `${matched.slice(0, 20)}...${matched.slice(-10)}` : matched,
|
|
111
|
+
line
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
} catch (err) {
|
|
117
|
+
_didIteratorError1 = !0, _iteratorError1 = err;
|
|
118
|
+
} finally {
|
|
119
|
+
try {
|
|
120
|
+
!_iteratorNormalCompletion1 && _iterator1.return != null && _iterator1.return();
|
|
121
|
+
} finally {
|
|
122
|
+
if (_didIteratorError1) throw _iteratorError1;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
} catch (err) {
|
|
127
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
128
|
+
} finally {
|
|
129
|
+
try {
|
|
130
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
131
|
+
} finally {
|
|
132
|
+
if (_didIteratorError) throw _iteratorError;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
return {
|
|
136
|
+
clean: findings.length === 0,
|
|
137
|
+
findings
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
async function runSecurityScan(clientDir, level, safePatterns) {
|
|
141
|
+
console.info(`
|
|
142
|
+
\u{1F512} scanning client bundles for leaked secrets...
|
|
143
|
+
`);
|
|
144
|
+
var {
|
|
145
|
+
clean,
|
|
146
|
+
findings
|
|
147
|
+
} = await scanBundleForSecrets(clientDir, safePatterns);
|
|
148
|
+
if (clean) return console.info(` \u{1F512} security scan passed \u2014 no secrets found
|
|
149
|
+
`), !0;
|
|
150
|
+
var icon = level === "error" ? "\u{1F6A8}" : "\u26A0\uFE0F",
|
|
151
|
+
header = level === "error" ? `${icon} ${findings.length} secret(s) leaked into client bundle:` : `${icon} ${findings.length} potential secret(s) found in client bundle:`;
|
|
152
|
+
console.error(`
|
|
153
|
+
${header}
|
|
154
|
+
`);
|
|
155
|
+
var _iteratorNormalCompletion = !0,
|
|
156
|
+
_didIteratorError = !1,
|
|
157
|
+
_iteratorError = void 0;
|
|
158
|
+
try {
|
|
159
|
+
for (var _iterator = findings[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
160
|
+
var f = _step.value;
|
|
161
|
+
console.error(` ${f.label}`), console.error(` file: ${f.file}:${f.line}`), console.error(` match: ${f.match}
|
|
162
|
+
`);
|
|
163
|
+
}
|
|
164
|
+
} catch (err) {
|
|
165
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
166
|
+
} finally {
|
|
167
|
+
try {
|
|
168
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
169
|
+
} finally {
|
|
170
|
+
if (_didIteratorError) throw _iteratorError;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return level === "error" ? (console.error(` Set build.securityScan to 'warn' to continue building despite findings.
|
|
174
|
+
`), !1) : (console.warn(` Set build.securityScan to 'error' to fail builds when secrets are detected.
|
|
175
|
+
`), !0);
|
|
176
|
+
}
|
|
177
|
+
export { runSecurityScan, scanBundleForSecrets };
|
|
178
|
+
//# sourceMappingURL=securityScan.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["readdir","readFile","join","SECRET_PATTERNS","RegExp","SAFE_UUIDS","Set","BUILTIN_SAFE_PATTERNS","createSafeMatcher","userPatterns","safeStrings","safeRegexes","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","p","value","add","push","err","return","match","has","some","p2","test","collectJSFiles","dir","files","walk","currentDir","entries","withFileTypes","entry","fullPath","name"],"sources":["../../../src/cli/securityScan.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,OAAA,EAASC,QAAA,QAAgB;AAClC,SAASC,IAAA,QAAY;AAGrB,IAAAC,eAAM;EAA2C;EAE/C,CACC,mBAAkB,EAClB,4BAAqB,CACrB,EACD,CACC,gBAAc,EACd,6BAAkB,CACnB,GAEE,qBACF,4BACC,EACD,CACE,yBACA,0BACF,GAEC,gBACA,2BACA,EACH,CAIE,cACA,kCACA,mBAIIC,MAAA,kDAAkC,OACtC,EACA,CACA,yFACA,GACA,mEACF,EAEA,CACE,2BAA4B,EAG5B,0EAAI,CACF;EACE;EAQJ,CAIF,4BAUA,iDAA8D,CAC5D,EAEA,CACE,6BAAI,EACJ,oDAAI,CACF,EAA2D,CAE3D,2BACF,iDACA,CACE;EAAAC,UAAM,kBAAgB,IAAAC,GAAA,CAAY,CAClC,sCACa,EAEQ,sCAEvB;EACF;EAEA,sCACO,CACT;EAAAC,qBAAA,IAEA,eAAsB,EAOpB,kBAAe,EAIf,YAAW;EACT;EACA,gBAAI;EACJ;EACE,kBAAU,CAAgC;AAE1C,SAAAC,kBAAAC,YAAA;EAAA,IACFC,WAAA,OAAAJ,GAAA,CAAAD,UAAA;IAAAM,WAAA,IAEA,GAAAJ,qBAAmB,CAEjB;EACA,IAAAE,YAAI;IAEJ,IAAAG,yBAAwB,GAAK;MAAAC,iBAAoB;MAAAC,cAAA;IAC/C;MACA,SAAIC,SAAO,GAAON,YAAG,CAAAO,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;QAIrB,IAAAS,CAAA,GAAMH,KAAA,CADcI,KAAA;QAGpB,OAAAD,CAAA,IAAS,QAAK,GAAAX,WAAA,CAAAa,GAAA,CAAAF,CAAA,IAAAV,WAAA,CAAAa,IAAA,CAAAH,CAAA;MAAA;IACN,SACNI,GAAA;MAAAZ,iBAEE,GAAQ,IAAAC,cACD,GAAAW,GAAQ;IACX,UACN;MAAA,IACD;QACH,CAAAb,yBAAA,IAAAG,SAAA,CAAAW,MAAA,YAAAX,SAAA,CAAAW,MAAA;MACF;QACF,IAAAb,iBAAA,EAEO,MAAEC,cAAgB;MAC3B;IAMA;EAKE;EAAa,iBAAAa,KAAA;IAAuD,OAAAjB,WAAA,CAAAkB,GAAA,CAAAD,KAAA,SAAAhB,WAAA,CAAAkB,IAAA,WAAAC,EAAA;MAEpE,OAAQA,EAAA,CAAAC,IAAO,CAAAJ,KAAS;IAExB,EAAI;EACF;AAAa;AAIf,eAAaK,cAAUA,CAAAC,GAAA,EAAU;EAMjC,IAAAC,KAAQ,KAAM;EAAA,eAAYC,KAAAC,UAAA;IAAI,IAAAC,OAAA;IAE9B;MACEA,OAAQ,SAAMrC,OAAQ,CAAAoC,UACtB;QACwCE,aAAA;MAG1C;IAEI;MAAA;IACF;IAKA,IAAA1B,yBAAA;MAAAC,iBAAA;MAAAC,cAAA;IAAA;MAEK,SAAAC,SAAA,GAAAsB,OAAA,CAAArB,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;QACT,IAAA2B,KAAA,GAAArB,KAAA,CAAAI,KAAA;UAAAkB,QAAA,GAAAtC,IAAA,CAAAkC,UAAA,EAAAG,KAAA,CAAAE,IAAA","ignoreList":[]}
|
|
@@ -42,11 +42,11 @@ class BuildWorkerPool {
|
|
|
42
42
|
get size() {
|
|
43
43
|
return this.workers.length;
|
|
44
44
|
}
|
|
45
|
-
// initialize all workers -
|
|
46
|
-
async initialize() {
|
|
45
|
+
// initialize all workers with pre-loaded config from main thread
|
|
46
|
+
async initialize(oneOptions) {
|
|
47
47
|
await this._ready;
|
|
48
48
|
for (const worker of this.workers)
|
|
49
|
-
worker.postMessage({ type: "init", id: this.nextId
|
|
49
|
+
worker.postMessage({ type: "init", id: this.nextId++, oneOptions });
|
|
50
50
|
await this._initialized;
|
|
51
51
|
}
|
|
52
52
|
dispatch() {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/cli/workerPool.ts"],
|
|
4
|
-
"mappings": "AAGA,SAAS,cAAc;AACvB,SAAS,YAAY;AACrB,SAAS,qBAAqB;AAC9B,SAAS,SAAS,YAAY;AAE9B,MAAM,aAAa,cAAc,YAAY,GAAG,GAC1C,YAAY,QAAQ,UAAU;AAQ7B,MAAM,gBAAgB;AAAA,EACnB,UAAoB,CAAC;AAAA,EACrB,YAAsB,CAAC;AAAA,EACvB,YAAuD,CAAC;AAAA,EACxD,cAAc,oBAAI,IAAyB;AAAA,EAC3C,SAAS;AAAA,EACT,aAAa;AAAA,EACb,YAAY;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EAEtB,YAAY,OAAO,KAAK,IAAI,GAAG,KAAK,EAAE,SAAS,CAAC,GAAG;AACjD,SAAK,SAAS,IAAI,QAAQ,CAAC,YAAY;AACrC,WAAK,gBAAgB;AAAA,IACvB,CAAC,GACD,KAAK,eAAe,IAAI,QAAQ,CAAC,YAAY;AAC3C,WAAK,sBAAsB;AAAA,IAC7B,CAAC;AAGD,UAAM,aAAa,KAAK,WAAW,qBAAqB;AAExD,aAAS,IAAI,GAAG,IAAI,MAAM,KAAK;AAC7B,YAAM,SAAS,IAAI,OAAO,UAAU;AAEpC,aAAO,GAAG,WAAW,CAAC,QAAa;AACjC,YAAI,IAAI,SAAS;AACf,eAAK,cACL,KAAK,UAAU,KAAK,MAAM,GACtB,KAAK,eAAe,QACtB,KAAK,cAAc;AAAA,iBAEZ,IAAI,SAAS;AACtB,eAAK,aACD,KAAK,cAAc,QACrB,KAAK,oBAAoB,GAE3B,KAAK,SAAS;AAAA,iBACL,IAAI,SAAS,UAAU,IAAI,SAAS,SAAS;AACtD,gBAAM,UAAU,KAAK,YAAY,IAAI,IAAI,EAAE;AAC3C,UAAI,YACF,KAAK,YAAY,OAAO,IAAI,EAAE,GAC1B,IAAI,SAAS,SACf,QAAQ,QAAQ,IAAI,MAAM,IAE1B,QAAQ,OAAO,IAAI,MAAM,IAAI,KAAK,CAAC,IAGvC,KAAK,UAAU,KAAK,MAAM,GAC1B,KAAK,SAAS;AAAA,QAChB;AAAA,MACF,CAAC,GAED,OAAO,GAAG,SAAS,CAAC,QAAQ;AAC1B,gBAAQ,MAAM,mCAAmC,GAAG;AAAA,MACtD,CAAC,GAED,KAAK,QAAQ,KAAK,MAAM;AAAA,IAC1B;AAAA,EACF;AAAA,EAEA,IAAI,OAAO;AACT,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA;AAAA,EAGA,MAAM,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -39,12 +39,13 @@ class BuildWorkerPool {
|
|
|
39
39
|
get size() {
|
|
40
40
|
return this.workers.length;
|
|
41
41
|
}
|
|
42
|
-
// initialize all workers -
|
|
43
|
-
async initialize() {
|
|
42
|
+
// initialize all workers with pre-loaded config from main thread
|
|
43
|
+
async initialize(oneOptions) {
|
|
44
44
|
await this._ready;
|
|
45
45
|
for (const worker of this.workers) worker.postMessage({
|
|
46
46
|
type: "init",
|
|
47
|
-
id: this.nextId
|
|
47
|
+
id: this.nextId++,
|
|
48
|
+
oneOptions
|
|
48
49
|
});
|
|
49
50
|
await this._initialized;
|
|
50
51
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Worker","cpus","fileURLToPath","dirname","join","__filename","import","meta","url","__dirname","BuildWorkerPool","workers","available","taskQueue","pendingById","Map","nextId","readyCount","initCount","_ready","_resolveReady","_initialized","_resolveInitialized","_terminated","constructor","size","Math","max","length","Promise","resolve","workerPath","i","worker","on","msg","type","push","dispatch","pending","get","id","delete","result","reject","Error","error","err","console","initialize","postMessage","shift","set","buildPage","args","serializedRoute","foundRoute","file","layouts","map","layout","contextKey","loaderServerPath","layoutRenderMode","middlewares","mw","terminate","all","w","pool","getWorkerPool","terminateWorkerPool"],"sources":["../../../src/cli/workerPool.ts"],"sourcesContent":[null],"mappings":"AAGA,SAASA,MAAA,QAAc;AACvB,SAASC,IAAA,QAAY;AACrB,SAASC,aAAA,QAAqB;AAC9B,SAASC,OAAA,EAASC,IAAA,QAAY;AAE9B,MAAMC,UAAA,GAAaH,aAAA,CAAcI,MAAA,CAAAC,IAAA,CAAYC,GAAG;EAC1CC,SAAA,GAAYN,OAAA,CAAQE,UAAU;AAQ7B,MAAMK,eAAA,CAAgB;EACnBC,OAAA,GAAoB,EAAC;EACrBC,SAAA,GAAsB,EAAC;EACvBC,SAAA,GAAuD,EAAC;EACxDC,WAAA,GAAc,mBAAIC,GAAA,CAAyB;EAC3CC,MAAA,GAAS;EACTC,UAAA,GAAa;EACbC,SAAA,GAAY;EACZC,MAAA;EACAC,aAAA;EACAC,YAAA;EACAC,mBAAA;EACAC,WAAA,GAAc;EAEtBC,YAAYC,IAAA,GAAOC,IAAA,CAAKC,GAAA,CAAI,GAAG1B,IAAA,CAAK,EAAE2B,MAAA,GAAS,CAAC,GAAG;IACjD,KAAKT,MAAA,GAAS,IAAIU,OAAA,CAASC,OAAA,IAAY;MACrC,KAAKV,aAAA,GAAgBU,OAAA;IACvB,CAAC,GACD,KAAKT,YAAA,GAAe,IAAIQ,OAAA,CAASC,OAAA,IAAY;MAC3C,KAAKR,mBAAA,GAAsBQ,OAAA;IAC7B,CAAC;IAGD,MAAMC,UAAA,GAAa3B,IAAA,CAAKK,SAAA,EAAW,qBAAqB;IAExD,SAASuB,CAAA,GAAI,GAAGA,CAAA,GAAIP,IAAA,EAAMO,CAAA,IAAK;MAC7B,MAAMC,MAAA,GAAS,IAAIjC,MAAA,CAAO+B,UAAU;MAEpCE,MAAA,CAAOC,EAAA,CAAG,WAAYC,GAAA,IAAa;QACjC,IAAIA,GAAA,CAAIC,IAAA,KAAS,SACf,KAAKnB,UAAA,IACL,KAAKL,SAAA,CAAUyB,IAAA,CAAKJ,MAAM,GACtB,KAAKhB,UAAA,KAAeQ,IAAA,IACtB,KAAKL,aAAA,CAAc,WAEZe,GAAA,CAAIC,IAAA,KAAS,aACtB,KAAKlB,SAAA,IACD,KAAKA,SAAA,KAAcO,IAAA,IACrB,KAAKH,mBAAA,CAAoB,GAE3B,KAAKgB,QAAA,CAAS,WACLH,GAAA,CAAIC,IAAA,KAAS,UAAUD,GAAA,CAAIC,IAAA,KAAS,SAAS;UACtD,MAAMG,OAAA,GAAU,KAAKzB,WAAA,CAAY0B,GAAA,CAAIL,GAAA,CAAIM,EAAE;UACvCF,OAAA,KACF,KAAKzB,WAAA,CAAY4B,MAAA,CAAOP,GAAA,CAAIM,EAAE,GAC1BN,GAAA,CAAIC,IAAA,KAAS,SACfG,OAAA,CAAQT,OAAA,CAAQK,GAAA,CAAIQ,MAAM,IAE1BJ,OAAA,CAAQK,MAAA,CAAO,IAAIC,KAAA,CAAMV,GAAA,CAAIW,KAAK,CAAC,IAGvC,KAAKlC,SAAA,CAAUyB,IAAA,CAAKJ,MAAM,GAC1B,KAAKK,QAAA,CAAS;QAChB;MACF,CAAC,GAEDL,MAAA,CAAOC,EAAA,CAAG,SAAUa,GAAA,IAAQ;QAC1BC,OAAA,CAAQF,KAAA,CAAM,mCAAmCC,GAAG;MACtD,CAAC,GAED,KAAKpC,OAAA,CAAQ0B,IAAA,CAAKJ,MAAM;IAC1B;EACF;EAEA,IAAIR,KAAA,EAAO;IACT,OAAO,KAAKd,OAAA,CAAQiB,MAAA;EACtB;EAAA;EAGA,MAAMqB,
|
|
1
|
+
{"version":3,"names":["Worker","cpus","fileURLToPath","dirname","join","__filename","import","meta","url","__dirname","BuildWorkerPool","workers","available","taskQueue","pendingById","Map","nextId","readyCount","initCount","_ready","_resolveReady","_initialized","_resolveInitialized","_terminated","constructor","size","Math","max","length","Promise","resolve","workerPath","i","worker","on","msg","type","push","dispatch","pending","get","id","delete","result","reject","Error","error","err","console","initialize","oneOptions","postMessage","shift","set","buildPage","args","serializedRoute","foundRoute","file","layouts","map","layout","contextKey","loaderServerPath","layoutRenderMode","middlewares","mw","terminate","all","w","pool","getWorkerPool","terminateWorkerPool"],"sources":["../../../src/cli/workerPool.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -57,8 +57,8 @@ var __filename = fileURLToPath(import.meta.url),
|
|
|
57
57
|
}, {
|
|
58
58
|
key: "initialize",
|
|
59
59
|
value:
|
|
60
|
-
// initialize all workers -
|
|
61
|
-
async function () {
|
|
60
|
+
// initialize all workers with pre-loaded config from main thread
|
|
61
|
+
async function (oneOptions) {
|
|
62
62
|
await this._ready;
|
|
63
63
|
var _iteratorNormalCompletion = !0,
|
|
64
64
|
_didIteratorError = !1,
|
|
@@ -68,7 +68,8 @@ var __filename = fileURLToPath(import.meta.url),
|
|
|
68
68
|
var worker = _step.value;
|
|
69
69
|
worker.postMessage({
|
|
70
70
|
type: "init",
|
|
71
|
-
id: this.nextId
|
|
71
|
+
id: this.nextId++,
|
|
72
|
+
oneOptions
|
|
72
73
|
});
|
|
73
74
|
}
|
|
74
75
|
} catch (err) {
|