@semiont/frontend 0.3.2 → 0.3.4
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/package.json +1 -1
- package/standalone/apps/frontend/.next/BUILD_ID +1 -1
- package/standalone/apps/frontend/.next/app-path-routes-manifest.json +5 -5
- package/standalone/apps/frontend/.next/build-manifest.json +6 -6
- package/standalone/apps/frontend/.next/prerender-manifest.json +3 -3
- package/standalone/apps/frontend/.next/react-loadable-manifest.json +2 -2
- package/standalone/apps/frontend/.next/required-server-files.json +18 -6
- package/standalone/apps/frontend/.next/routes-manifest.json +1 -0
- package/standalone/apps/frontend/.next/server/app/[locale]/about/page.js +776 -516
- package/standalone/apps/frontend/.next/server/app/[locale]/about/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/about/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/devops/page.js +1718 -1455
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/devops/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/devops/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/exchange/page.js +724 -461
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/exchange/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/exchange/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/page.js +370 -109
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/security/page.js +581 -318
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/security/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/security/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/users/page.js +449 -186
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/users/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/admin/users/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/error/page.js +430 -168
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/error/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/error/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/mcp-setup/route.js +31 -16
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/mcp-setup/route.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/mcp-setup/route_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/signin/page.js +388 -126
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/signin/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/signin/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/signup/page.js +537 -275
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/signup/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/signup/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/welcome/page.js +388 -126
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/welcome/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/auth/welcome/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/know/compose/page.js +745 -482
- package/standalone/apps/frontend/.next/server/app/[locale]/know/compose/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/know/compose/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/know/discover/page.js +366 -103
- package/standalone/apps/frontend/.next/server/app/[locale]/know/discover/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/know/discover/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/know/page.js +600 -339
- package/standalone/apps/frontend/.next/server/app/[locale]/know/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/know/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/know/resource/[id]/page.js +956 -691
- package/standalone/apps/frontend/.next/server/app/[locale]/know/resource/[id]/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/know/resource/[id]/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/entity-tags/page.js +1699 -1436
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/entity-tags/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/entity-tags/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/linked-data/page.js +390 -127
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/linked-data/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/linked-data/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/page.js +1779 -1518
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/recent/page.js +1601 -1338
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/recent/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/recent/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/tag-schemas/page.js +2048 -1785
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/tag-schemas/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/moderate/tag-schemas/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/page.js +462 -204
- package/standalone/apps/frontend/.next/server/app/[locale]/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/privacy/page.js +476 -216
- package/standalone/apps/frontend/.next/server/app/[locale]/privacy/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/privacy/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/terms/page.js +489 -229
- package/standalone/apps/frontend/.next/server/app/[locale]/terms/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/[locale]/terms/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/_global-error/page.js +627 -240
- package/standalone/apps/frontend/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/_global-error.html +1 -2
- package/standalone/apps/frontend/.next/server/app/_global-error.rsc +13 -9
- package/standalone/apps/frontend/.next/server/app/_global-error.segments/_full.segment.rsc +13 -9
- package/standalone/apps/frontend/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/standalone/apps/frontend/.next/server/app/_global-error.segments/_global-error.segment.rsc +2 -1
- package/standalone/apps/frontend/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/standalone/apps/frontend/.next/server/app/_global-error.segments/_index.segment.rsc +2 -1
- package/standalone/apps/frontend/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/standalone/apps/frontend/.next/server/app/_not-found/page.js +814 -559
- package/standalone/apps/frontend/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/_not-found.html +1 -1
- package/standalone/apps/frontend/.next/server/app/_not-found.rsc +8 -6
- package/standalone/apps/frontend/.next/server/app/_not-found.segments/_full.segment.rsc +8 -6
- package/standalone/apps/frontend/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/standalone/apps/frontend/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/standalone/apps/frontend/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/standalone/apps/frontend/.next/server/app/_not-found.segments/_not-found.segment.rsc +2 -1
- package/standalone/apps/frontend/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/standalone/apps/frontend/.next/server/app/api/auth/[...nextauth]/route.js +54 -39
- package/standalone/apps/frontend/.next/server/app/api/auth/[...nextauth]/route.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/api/auth/[...nextauth]/route_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/api/cookies/consent/route.js +49 -34
- package/standalone/apps/frontend/.next/server/app/api/cookies/consent/route.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/api/cookies/consent/route_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/api/cookies/export/route.js +24 -9
- package/standalone/apps/frontend/.next/server/app/api/cookies/export/route.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/api/cookies/export/route_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app/api/resources/[id]/route.js +24 -9
- package/standalone/apps/frontend/.next/server/app/api/resources/[id]/route.js.nft.json +1 -1
- package/standalone/apps/frontend/.next/server/app/api/resources/[id]/route_client-reference-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/app-paths-manifest.json +5 -5
- package/standalone/apps/frontend/.next/server/chunks/2617.js +43 -7
- package/standalone/apps/frontend/.next/server/chunks/3144.js +7 -3
- package/standalone/apps/frontend/.next/server/chunks/4741.js +60 -252
- package/standalone/apps/frontend/.next/server/chunks/730.js +1 -1
- package/standalone/apps/frontend/.next/server/chunks/7420.js +21 -288
- package/standalone/apps/frontend/.next/server/chunks/7873.js +24 -2
- package/standalone/apps/frontend/.next/server/chunks/{7246.js → 8569.js} +1169 -282
- package/standalone/apps/frontend/.next/server/chunks/{2628.js → 9927.js} +11422 -4290
- package/standalone/apps/frontend/.next/server/middleware-build-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/standalone/apps/frontend/.next/server/middleware.js +17991 -10692
- package/standalone/apps/frontend/.next/server/pages/404.html +1 -1
- package/standalone/apps/frontend/.next/server/pages/500.html +1 -2
- package/standalone/apps/frontend/.next/server/prefetch-hints.json +1 -0
- package/standalone/apps/frontend/.next/server/server-reference-manifest.json +1 -1
- package/standalone/apps/frontend/.next/static/I_XveRdyStDMqYJPcAAy5/_buildManifest.js +1 -0
- package/standalone/apps/frontend/.next/static/chunks/1315.3f76aa23520d903e.js +1 -0
- package/standalone/apps/frontend/.next/static/chunks/{432.4c1d971431c60454.js → 432.8cb455bfe72957a9.js} +1 -1
- package/standalone/apps/frontend/.next/static/chunks/87c73c54-e11922cda838f8cc.js +1 -0
- package/standalone/apps/frontend/.next/static/chunks/{891cff7f-c20ce667b1225aa7.js → 891cff7f-d7677a8f46c597cc.js} +1 -1
- package/standalone/apps/frontend/.next/static/chunks/app/[locale]/admin/{layout-4b67f7b5d5ba4728.js → layout-956ba0ffa1199bff.js} +1 -1
- package/standalone/apps/frontend/.next/static/chunks/app/[locale]/know/{layout-f76e1916749e66f6.js → layout-262d8dd6c6e33738.js} +1 -1
- package/standalone/apps/frontend/.next/static/chunks/app/[locale]/{layout-a403fd7a4877cc04.js → layout-c072ce8c7aeaa92e.js} +1 -1
- package/standalone/apps/frontend/.next/static/chunks/app/[locale]/moderate/{layout-2d4e9c2be4b4a4c7.js → layout-b60605082e447f42.js} +1 -1
- package/standalone/apps/frontend/.next/static/chunks/common-42653c14d34c8864.js +69 -0
- package/standalone/apps/frontend/.next/static/chunks/framework-b879567b90d34fb5.js +1 -0
- package/standalone/apps/frontend/.next/static/chunks/vendors-63213253c18580f4.js +40 -0
- package/standalone/apps/frontend/.next/static/chunks/{webpack-abf2ad17f175f867.js → webpack-a0284d55d288650f.js} +1 -1
- package/standalone/apps/frontend/package.json +5 -5
- package/standalone/apps/frontend/server.js +1 -1
- package/standalone/node_modules/@next/env/package.json +1 -1
- package/standalone/node_modules/next/dist/build/adapter/setup-node-env.external.js +15 -0
- package/standalone/node_modules/next/dist/build/analysis/extract-const-value.js +78 -63
- package/standalone/node_modules/next/dist/build/analysis/get-page-static-info.js +64 -40
- package/standalone/node_modules/next/dist/build/create-compiler-aliases.js +2 -0
- package/standalone/node_modules/next/dist/build/define-env.js +29 -11
- package/standalone/node_modules/next/dist/build/duration-to-string.js +1 -1
- package/standalone/node_modules/next/dist/build/entries.js +55 -295
- package/standalone/node_modules/next/dist/build/file-classifier.js +76 -0
- package/standalone/node_modules/next/dist/build/get-supported-browsers.js +38 -0
- package/standalone/node_modules/next/dist/build/load-jsconfig.js +7 -7
- package/standalone/node_modules/next/dist/build/lockfile.js +90 -9
- package/standalone/node_modules/next/dist/build/next-config-ts/transpile-config.js +128 -49
- package/standalone/node_modules/next/dist/build/print-build-errors.js +72 -0
- package/standalone/node_modules/next/dist/build/route-discovery.js +353 -0
- package/standalone/node_modules/next/dist/build/segment-config/app/app-segment-config.js +34 -17
- package/standalone/node_modules/next/dist/build/static-paths/app.js +68 -15
- package/standalone/node_modules/next/dist/build/static-paths/pages.js +3 -3
- package/standalone/node_modules/next/dist/build/swc/index.js +125 -48
- package/standalone/node_modules/next/dist/build/swc/loaderWorkerPool.js +40 -0
- package/standalone/node_modules/next/dist/build/swc/options.js +23 -6
- package/standalone/node_modules/next/dist/build/utils.js +48 -94
- package/standalone/node_modules/next/dist/build/webpack/config/blocks/css/index.js +14 -3
- package/standalone/node_modules/next/dist/build/webpack/config/blocks/css/loaders/global.js +4 -2
- package/standalone/node_modules/next/dist/build/webpack/config/blocks/css/loaders/modules.js +4 -2
- package/standalone/node_modules/next/dist/build/webpack/config/blocks/css/loaders/next-font.js +1 -0
- package/standalone/node_modules/next/dist/build/webpack/config/blocks/css/plugins.js +5 -5
- package/standalone/node_modules/next/dist/build/webpack/config/index.js +3 -2
- package/standalone/node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js +2 -1
- package/standalone/node_modules/next/dist/build/webpack/loaders/css-loader/src/plugins/postcss-url-parser.js +8 -1
- package/standalone/node_modules/next/dist/build/webpack/loaders/lightningcss-loader/src/loader.js +13 -4
- package/standalone/node_modules/next/dist/build/webpack/loaders/next-middleware-loader.js +3 -1
- package/standalone/node_modules/next/dist/build/webpack/plugins/build-manifest-plugin-utils.js +2 -16
- package/standalone/node_modules/next/dist/build/webpack/plugins/build-manifest-plugin.js +2 -2
- package/standalone/node_modules/next/dist/build/webpack/plugins/deferred-entries-plugin.js +106 -0
- package/standalone/node_modules/next/dist/build/webpack/plugins/flight-client-entry-plugin.js +16 -8
- package/standalone/node_modules/next/dist/build/webpack/plugins/flight-manifest-plugin.js +24 -11
- package/standalone/node_modules/next/dist/build/webpack/plugins/middleware-plugin.js +21 -2
- package/standalone/node_modules/next/dist/build/webpack/plugins/next-types-plugin/index.js +6 -5
- package/standalone/node_modules/next/dist/build/webpack/plugins/nextjs-require-cache-hot-reloader.js +10 -14
- package/standalone/node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/parseNotFoundError.js +18 -4
- package/standalone/node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/parseScss.js +5 -4
- package/standalone/node_modules/next/dist/build/webpack-config.js +18 -8
- package/standalone/node_modules/next/dist/cli/next-test.js +4 -3
- package/standalone/node_modules/next/dist/client/app-find-source-map-url.js +2 -1
- package/standalone/node_modules/next/dist/client/components/app-router-headers.js +10 -0
- package/standalone/node_modules/next/dist/client/components/app-router-instance.js +82 -4
- package/standalone/node_modules/next/dist/client/components/app-router.js +39 -20
- package/standalone/node_modules/next/dist/client/components/builtin/app-error.js +29 -65
- package/standalone/node_modules/next/dist/client/components/builtin/error-styles.js +165 -0
- package/standalone/node_modules/next/dist/client/components/builtin/global-error.js +56 -38
- package/standalone/node_modules/next/dist/client/components/error-boundary.js +16 -6
- package/standalone/node_modules/next/dist/client/components/forbidden.js +1 -1
- package/standalone/node_modules/next/dist/client/components/handle-isr-error.js +3 -4
- package/standalone/node_modules/next/dist/client/components/links.js +7 -0
- package/standalone/node_modules/next/dist/client/components/navigation-untracked.js +2 -0
- package/standalone/node_modules/next/dist/client/components/navigation.js +27 -0
- package/standalone/node_modules/next/dist/client/components/navigation.react-server.js +5 -2
- package/standalone/node_modules/next/dist/client/components/not-found.js +1 -1
- package/standalone/node_modules/next/dist/client/components/redirect-boundary.js +1 -1
- package/standalone/node_modules/next/dist/client/components/redirect-error.js +0 -9
- package/standalone/node_modules/next/dist/client/components/redirect.js +2 -2
- package/standalone/node_modules/next/dist/client/components/router-reducer/compute-changed-path.js +73 -0
- package/standalone/node_modules/next/dist/client/components/router-reducer/create-initial-router-state.js +102 -8
- package/standalone/node_modules/next/dist/client/components/router-reducer/fetch-server-response.js +165 -48
- package/standalone/node_modules/next/dist/client/components/router-reducer/is-navigating-to-new-root-layout.js +19 -11
- package/standalone/node_modules/next/dist/client/components/router-reducer/ppr-navigations.js +669 -457
- package/standalone/node_modules/next/dist/client/components/router-reducer/reducers/committed-state.js +49 -0
- package/standalone/node_modules/next/dist/client/components/router-reducer/reducers/find-head-in-cache.js +19 -20
- package/standalone/node_modules/next/dist/client/components/router-reducer/reducers/navigate-reducer.js +5 -117
- package/standalone/node_modules/next/dist/client/components/router-reducer/reducers/refresh-reducer.js +34 -19
- package/standalone/node_modules/next/dist/client/components/router-reducer/reducers/restore-reducer.js +16 -32
- package/standalone/node_modules/next/dist/client/components/router-reducer/reducers/server-action-reducer.js +85 -57
- package/standalone/node_modules/next/dist/client/components/router-reducer/reducers/server-patch-reducer.js +12 -10
- package/standalone/node_modules/next/dist/client/components/router-reducer/router-reducer-types.js +10 -1
- package/standalone/node_modules/next/dist/client/components/router-reducer/router-reducer.js +1 -1
- package/standalone/node_modules/next/dist/client/components/segment-cache/bfcache.js +128 -0
- package/standalone/node_modules/next/dist/client/components/segment-cache/cache.js +732 -231
- package/standalone/node_modules/next/dist/client/components/segment-cache/lru.js +13 -6
- package/standalone/node_modules/next/dist/client/components/segment-cache/navigation-testing-lock.js +194 -0
- package/standalone/node_modules/next/dist/client/components/segment-cache/navigation.js +388 -250
- package/standalone/node_modules/next/dist/client/components/segment-cache/optimistic-routes.js +543 -0
- package/standalone/node_modules/next/dist/client/components/segment-cache/scheduler.js +154 -55
- package/standalone/node_modules/next/dist/client/components/segment-cache/vary-path.js +63 -1
- package/standalone/node_modules/next/dist/client/components/unauthorized.js +1 -1
- package/standalone/node_modules/next/dist/client/components/use-action-queue.js +49 -3
- package/standalone/node_modules/next/dist/client/dev/hot-reloader/app/hot-reloader-app.js +9 -1
- package/standalone/node_modules/next/dist/client/flight-data-helpers.js +42 -29
- package/standalone/node_modules/next/dist/client/lib/javascript-url.js +32 -0
- package/standalone/node_modules/next/dist/client/lib/promise.js +53 -0
- package/standalone/node_modules/next/dist/client/{app-build-id.js → navigation-build-id.js} +17 -13
- package/standalone/node_modules/next/dist/client/react-client-callbacks/on-recoverable-error.js +14 -0
- package/standalone/node_modules/next/dist/client/route-loader.js +9 -46
- package/standalone/node_modules/next/dist/client/router.js +1 -1
- package/standalone/node_modules/next/dist/compiled/@next/font/dist/google/font-data.json +74 -3
- package/standalone/node_modules/next/dist/compiled/babel/bundle.js +1 -1
- package/standalone/node_modules/next/dist/compiled/babel-packages/packages-bundle.js +4 -4
- package/standalone/node_modules/next/dist/compiled/browserslist/index.js +1 -1
- package/standalone/node_modules/next/dist/compiled/http-proxy/index.js +5 -5
- package/standalone/node_modules/next/dist/compiled/next-devtools/index.js +2209 -23
- package/standalone/node_modules/next/dist/compiled/next-server/app-page-experimental.runtime.prod.js +42 -12
- package/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +42 -12
- package/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +42 -12
- package/standalone/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js +42 -12
- package/standalone/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js +2 -2
- package/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +10 -10
- package/standalone/node_modules/next/dist/compiled/next-server/pages.runtime.prod.js +10 -10
- package/standalone/node_modules/next/dist/compiled/react-is/package.json +1 -1
- package/standalone/node_modules/next/dist/compiled/tar/index.min.js +1 -0
- package/standalone/node_modules/next/dist/compiled/tar/package.json +1 -1
- package/standalone/node_modules/next/dist/compiled/unistore/unistore.js +1 -1
- package/standalone/node_modules/next/dist/lib/bundler.js +97 -0
- package/standalone/node_modules/next/dist/lib/constants.js +19 -4
- package/standalone/node_modules/next/dist/lib/download-swc.js +2 -2
- package/standalone/node_modules/next/dist/lib/find-root.js +11 -7
- package/standalone/node_modules/next/dist/lib/format-server-error.js +1 -0
- package/standalone/node_modules/next/dist/lib/generate-interception-routes-rewrites.js +3 -20
- package/standalone/node_modules/next/dist/lib/interop-default.js +1 -0
- package/standalone/node_modules/next/dist/lib/is-interception-route-rewrite.js +18 -0
- package/standalone/node_modules/next/dist/lib/load-custom-routes.js +49 -5
- package/standalone/node_modules/next/dist/lib/memory/trace.js +109 -0
- package/standalone/node_modules/next/dist/lib/metadata/get-metadata-route.js +11 -2
- package/standalone/node_modules/next/dist/lib/needs-experimental-react.js +2 -2
- package/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +5 -5
- package/standalone/node_modules/next/dist/lib/try-to-parse-path.js +1 -2
- package/standalone/node_modules/next/dist/lib/turbopack-warning.js +0 -1
- package/standalone/node_modules/next/dist/lib/typescript/diagnosticFormatter.js +6 -3
- package/standalone/node_modules/next/dist/lib/typescript/getTypeScriptConfiguration.js +1 -1
- package/standalone/node_modules/next/dist/lib/typescript/missingDependencyError.js +1 -1
- package/standalone/node_modules/next/dist/lib/typescript/runTypeCheck.js +6 -8
- package/standalone/node_modules/next/dist/lib/typescript/type-paths.js +7 -12
- package/standalone/node_modules/next/dist/lib/typescript/writeAppTypeDeclarations.js +17 -7
- package/standalone/node_modules/next/dist/lib/typescript/writeConfigurationDefaults.js +9 -12
- package/standalone/node_modules/next/dist/lib/verify-typescript-setup.js +66 -16
- package/standalone/node_modules/next/dist/next-devtools/server/shared.js +6 -10
- package/standalone/node_modules/next/dist/next-devtools/shared/webpack-module-path.js +4 -4
- package/standalone/node_modules/next/dist/next-devtools/userspace/app/app-dev-overlay-error-boundary.js +22 -4
- package/standalone/node_modules/next/dist/next-devtools/userspace/app/errors/stitched-error.js +7 -1
- package/standalone/node_modules/next/dist/next-devtools/userspace/app/forward-logs.js +18 -13
- package/standalone/node_modules/next/dist/next-devtools/userspace/app/segment-explorer-node.js +7 -4
- package/standalone/node_modules/next/dist/server/app-render/action-handler.js +83 -15
- package/standalone/node_modules/next/dist/server/app-render/app-render-prerender-utils.js +0 -82
- package/standalone/node_modules/next/dist/server/app-render/app-render-render-utils.js +45 -81
- package/standalone/node_modules/next/dist/server/app-render/app-render.js +1746 -803
- package/standalone/node_modules/next/dist/server/app-render/create-component-tree.js +136 -50
- package/standalone/node_modules/next/dist/server/app-render/create-error-handler.js +6 -4
- package/standalone/node_modules/next/dist/server/app-render/create-flight-router-state-from-loader-tree.js +52 -26
- package/standalone/node_modules/next/dist/server/app-render/csrf-protection.js +14 -3
- package/standalone/node_modules/next/dist/server/app-render/debug-channel-server.js +30 -0
- package/standalone/node_modules/next/dist/server/app-render/debug-channel-server.web.js +71 -0
- package/standalone/node_modules/next/dist/server/app-render/dynamic-rendering.js +353 -37
- package/standalone/node_modules/next/dist/server/app-render/get-asset-query-string.js +2 -2
- package/standalone/node_modules/next/dist/server/app-render/get-layer-assets.js +1 -1
- package/standalone/node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js +13 -0
- package/standalone/node_modules/next/dist/server/app-render/instant-validation/boundary-tracking.js +18 -0
- package/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-config.js +181 -0
- package/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-samples-client.js +128 -0
- package/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-samples.js +432 -0
- package/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-validation-error.js +33 -0
- package/standalone/node_modules/next/dist/server/app-render/instant-validation/stream-utils.js +96 -0
- package/standalone/node_modules/next/dist/server/app-render/manifests-singleton.js +8 -1
- package/standalone/node_modules/next/dist/server/app-render/postponed-state.js +2 -1
- package/standalone/node_modules/next/dist/server/app-render/prospective-render-utils.js +1 -0
- package/standalone/node_modules/next/dist/server/app-render/segment-explorer-path.js +35 -10
- package/standalone/node_modules/next/dist/server/app-render/staged-rendering.js +142 -72
- package/standalone/node_modules/next/dist/server/app-render/stale-time.js +111 -0
- package/standalone/node_modules/next/dist/server/app-render/stream-ops.js +106 -0
- package/standalone/node_modules/next/dist/server/app-render/stream-ops.web.js +163 -0
- package/standalone/node_modules/next/dist/server/app-render/types.js +10 -4
- package/standalone/node_modules/next/dist/server/app-render/use-flight-response.js +3 -1
- package/standalone/node_modules/next/dist/server/app-render/vary-params.js +336 -0
- package/standalone/node_modules/next/dist/server/app-render/walk-tree-with-flight-router-state.js +59 -12
- package/standalone/node_modules/next/dist/server/app-render/work-unit-async-storage.external.js +54 -26
- package/standalone/node_modules/next/dist/server/async-storage/request-store.js +4 -4
- package/standalone/node_modules/next/dist/server/async-storage/work-store.js +2 -5
- package/standalone/node_modules/next/dist/server/base-server.js +65 -53
- package/standalone/node_modules/next/dist/server/config-schema.js +93 -8
- package/standalone/node_modules/next/dist/server/config-shared.js +57 -7
- package/standalone/node_modules/next/dist/server/config.js +96 -25
- package/standalone/node_modules/next/dist/server/dev/browser-logs/file-logger.js +9 -6
- package/standalone/node_modules/next/dist/server/dev/browser-logs/receive-logs.js +46 -0
- package/standalone/node_modules/next/dist/server/dev/browser-logs/source-map.js +1 -4
- package/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +264 -33
- package/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +8 -4
- package/standalone/node_modules/next/dist/server/dev/log-requests.js +10 -2
- package/standalone/node_modules/next/dist/server/dev/middleware-turbopack.js +20 -10
- package/standalone/node_modules/next/dist/server/dev/middleware-webpack.js +13 -3
- package/standalone/node_modules/next/dist/server/dev/next-dev-server.js +19 -6
- package/standalone/node_modules/next/dist/server/dev/on-demand-entry-handler.js +69 -0
- package/standalone/node_modules/next/dist/server/dev/require-cache.js +51 -21
- package/standalone/node_modules/next/dist/server/dev/server-action-logger.js +37 -0
- package/standalone/node_modules/next/dist/server/dev/static-paths-worker.js +1 -0
- package/standalone/node_modules/next/dist/server/dev/turbopack-utils.js +6 -15
- package/standalone/node_modules/next/dist/server/dynamic-rendering-utils.js +22 -0
- package/standalone/node_modules/next/dist/server/image-optimizer.js +157 -27
- package/standalone/node_modules/next/dist/server/lib/app-info-log.js +16 -38
- package/standalone/node_modules/next/dist/server/lib/cache-control.js +1 -1
- package/standalone/node_modules/next/dist/server/lib/clone-response.js +16 -16
- package/standalone/node_modules/next/dist/server/lib/cpu-profile.js +47 -16
- package/standalone/node_modules/next/dist/server/lib/dev-bundler-service.js +2 -2
- package/standalone/node_modules/next/dist/server/lib/disk-lru-cache.external.js +57 -0
- package/standalone/node_modules/next/dist/server/lib/find-page-file.js +27 -7
- package/standalone/node_modules/next/dist/server/lib/implicit-tags.js +3 -3
- package/standalone/node_modules/next/dist/server/lib/incremental-cache/file-system-cache.js +5 -3
- package/standalone/node_modules/next/dist/server/lib/incremental-cache/index.js +32 -10
- package/standalone/node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js +18 -1
- package/standalone/node_modules/next/dist/server/lib/install-code-frame.js +22 -0
- package/standalone/node_modules/next/dist/server/lib/lru-cache.js +9 -1
- package/standalone/node_modules/next/dist/server/lib/patch-fetch.js +40 -7
- package/standalone/node_modules/next/dist/server/lib/postponed-request-body.js +64 -0
- package/standalone/node_modules/next/dist/server/lib/render-server.js +4 -1
- package/standalone/node_modules/next/dist/server/lib/router-server.js +24 -13
- package/standalone/node_modules/next/dist/server/lib/router-utils/block-cross-site-dev.js +110 -0
- package/standalone/node_modules/next/dist/server/lib/router-utils/filesystem.js +16 -15
- package/standalone/node_modules/next/dist/server/lib/router-utils/resolve-routes.js +32 -11
- package/standalone/node_modules/next/dist/server/lib/router-utils/route-types-utils.js +3 -3
- package/standalone/node_modules/next/dist/server/lib/router-utils/setup-dev-bundler.js +71 -71
- package/standalone/node_modules/next/dist/server/lib/router-utils/typegen.js +247 -2
- package/standalone/node_modules/next/dist/server/lib/server-ipc/utils.js +2 -1
- package/standalone/node_modules/next/dist/server/lib/start-server.js +73 -39
- package/standalone/node_modules/next/dist/server/lib/trace/tracer.js +11 -1
- package/standalone/node_modules/next/dist/server/lib/utils.js +40 -11
- package/standalone/node_modules/next/dist/server/load-components.js +2 -0
- package/standalone/node_modules/next/dist/server/load-manifest.external.js +37 -17
- package/standalone/node_modules/next/dist/server/mcp/tools/get-errors.js +11 -4
- package/standalone/node_modules/next/dist/server/mcp/tools/get-logs.js +9 -3
- package/standalone/node_modules/next/dist/server/mcp/tools/get-page-metadata.js +52 -44
- package/standalone/node_modules/next/dist/server/mcp/tools/get-project-metadata.js +6 -2
- package/standalone/node_modules/next/dist/server/mcp/tools/get-routes.js +44 -79
- package/standalone/node_modules/next/dist/server/mcp/tools/get-server-action-by-id.js +12 -4
- package/standalone/node_modules/next/dist/server/mcp/tools/utils/format-errors.js +62 -72
- package/standalone/node_modules/next/dist/server/next-server.js +69 -99
- package/standalone/node_modules/next/dist/server/next.js +3 -0
- package/standalone/node_modules/next/dist/server/node-environment-extensions/console-dim.external.js +61 -6
- package/standalone/node_modules/next/dist/server/node-environment-extensions/date.js +4 -4
- package/standalone/node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js +13 -6
- package/standalone/node_modules/next/dist/server/node-environment-extensions/{utils.js → io-utils.js} +14 -5
- package/standalone/node_modules/next/dist/server/node-environment-extensions/node-crypto.js +8 -8
- package/standalone/node_modules/next/dist/server/node-environment-extensions/process-error-handlers.js +91 -0
- package/standalone/node_modules/next/dist/server/node-environment-extensions/random.js +2 -2
- package/standalone/node_modules/next/dist/server/node-environment-extensions/{unhandled-rejection.js → unhandled-rejection.external.js} +23 -4
- package/standalone/node_modules/next/dist/server/node-environment-extensions/web-crypto.js +3 -3
- package/standalone/node_modules/next/dist/server/node-environment.js +1 -1
- package/standalone/node_modules/next/dist/server/normalizers/request/segment-prefix-rsc.js +2 -1
- package/standalone/node_modules/next/dist/server/patch-error-inspect.js +37 -20
- package/standalone/node_modules/next/dist/server/render-result.js +9 -0
- package/standalone/node_modules/next/dist/server/render.js +27 -25
- package/standalone/node_modules/next/dist/server/require-hook.js +19 -8
- package/standalone/node_modules/next/dist/server/response-cache/utils.js +1 -0
- package/standalone/node_modules/next/dist/server/resume-data-cache/cache-store.js +35 -23
- package/standalone/node_modules/next/dist/server/resume-data-cache/resume-data-cache.js +16 -7
- package/standalone/node_modules/next/dist/server/revalidation-utils.js +12 -7
- package/standalone/node_modules/next/dist/server/route-matcher-providers/dev/dev-app-page-route-matcher-provider.js +2 -1
- package/standalone/node_modules/next/dist/server/route-modules/app-page/helpers/prerender-manifest-matcher.js +4 -1
- package/standalone/node_modules/next/dist/server/route-modules/app-page/module.js +31 -1
- package/standalone/node_modules/next/dist/server/route-modules/app-page/normalize-request-url.js +25 -0
- package/standalone/node_modules/next/dist/server/route-modules/pages/pages-handler.js +31 -8
- package/standalone/node_modules/next/dist/server/route-modules/route-module.js +71 -18
- package/standalone/node_modules/next/dist/server/stream-utils/encoded-tags.js +8 -0
- package/standalone/node_modules/next/dist/server/stream-utils/node-web-streams-helper.js +239 -58
- package/standalone/node_modules/next/dist/server/stream-utils/uint8array-helpers.js +7 -2
- package/standalone/node_modules/next/dist/server/typescript/constant.js +1 -0
- package/standalone/node_modules/next/dist/server/typescript/rules/config.js +14 -3
- package/standalone/node_modules/next/dist/server/web/adapter.js +7 -3
- package/standalone/node_modules/next/dist/server/web/next-url.js +6 -2
- package/standalone/node_modules/next/dist/server/web/sandbox/sandbox.js +3 -0
- package/standalone/node_modules/next/dist/shared/lib/app-router-types.js +30 -11
- package/standalone/node_modules/next/dist/shared/lib/constants.js +7 -7
- package/standalone/node_modules/next/dist/shared/lib/deployment-id.js +37 -10
- package/standalone/node_modules/next/dist/shared/lib/errors/canary-only-config-error.js +1 -1
- package/standalone/node_modules/next/dist/shared/lib/errors/code-frame.js +20 -0
- package/standalone/node_modules/next/dist/shared/lib/format-webpack-messages.js +22 -2
- package/standalone/node_modules/next/dist/shared/lib/image-config.js +3 -1
- package/standalone/node_modules/next/dist/shared/lib/is-internal.js +2 -0
- package/standalone/node_modules/next/dist/shared/lib/magic-identifier.js +6 -6
- package/standalone/node_modules/next/dist/shared/lib/router/router.js +32 -0
- package/standalone/node_modules/next/dist/shared/lib/router/utils/app-paths.js +11 -0
- package/standalone/node_modules/next/dist/shared/lib/router/utils/get-dynamic-param.js +11 -4
- package/standalone/node_modules/next/dist/shared/lib/router/utils/parse-loader-tree.js +3 -2
- package/standalone/node_modules/next/dist/shared/lib/router/utils/parse-relative-url.js +9 -2
- package/standalone/node_modules/next/dist/shared/lib/router/utils/parse-url.js +8 -2
- package/standalone/node_modules/next/dist/shared/lib/segment-cache/vary-params-decoding.js +32 -0
- package/standalone/node_modules/next/dist/shared/lib/server-reference-info.js +4 -0
- package/standalone/node_modules/next/dist/shared/lib/size-limit.js +6 -1
- package/standalone/node_modules/next/dist/shared/lib/turbopack/compilation-events.js +47 -10
- package/standalone/node_modules/next/dist/shared/lib/turbopack/manifest-loader.js +90 -116
- package/standalone/node_modules/next/dist/shared/lib/turbopack/utils.js +14 -26
- package/standalone/node_modules/next/dist/shared/lib/utils/reflect-utils.js +69 -0
- package/standalone/node_modules/next/dist/shared/lib/utils.js +2 -2
- package/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
- package/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
- package/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
- package/standalone/node_modules/next/dist/trace/index.js +4 -0
- package/standalone/node_modules/next/dist/trace/report/to-json-build.js +11 -108
- package/standalone/node_modules/next/dist/trace/report/to-json.js +52 -38
- package/standalone/node_modules/next/dist/trace/trace.js +15 -1
- package/standalone/node_modules/next/package.json +21 -23
- package/standalone/node_modules/react/cjs/react.development.js +1284 -0
- package/standalone/package.json +3 -3
- package/standalone/packages/core/package.json +1 -1
- package/standalone/apps/frontend/.next/static/chunks/1315.18c68981a2eab4fe.js +0 -1
- package/standalone/apps/frontend/.next/static/chunks/87c73c54-c5fda2db2a4bd732.js +0 -1
- package/standalone/apps/frontend/.next/static/chunks/common-d9b436492e46bb05.js +0 -69
- package/standalone/apps/frontend/.next/static/chunks/framework-86c2a58f458066a5.js +0 -1
- package/standalone/apps/frontend/.next/static/chunks/vendors-c7197feb11002a6e.js +0 -10
- package/standalone/apps/frontend/.next/static/kMwuefB4Z1_6Xta5NPqs1/_buildManifest.js +0 -1
- package/standalone/node_modules/next/dist/client/components/router-reducer/handle-mutable.js +0 -66
- package/standalone/node_modules/next/dist/compiled/babel/code-frame.js +0 -1
- package/standalone/node_modules/next/dist/compiled/babel-code-frame/index.js +0 -1
- package/standalone/node_modules/next/dist/compiled/babel-code-frame/package.json +0 -1
- package/standalone/node_modules/next/dist/compiled/tar/index.js +0 -1
- package/standalone/node_modules/next/dist/server/app-render/staged-validation.js +0 -32
- package/standalone/node_modules/next/dist/server/lib/router-utils/block-cross-site.js +0 -76
- package/standalone/node_modules/next/dist/shared/lib/segment-cache/output-export-prefetch-encoding.js +0 -52
- package/standalone/node_modules/typescript/lib/typescript.js +0 -200276
- package/standalone/node_modules/typescript/package.json +0 -120
- /package/standalone/apps/frontend/.next/static/{kMwuefB4Z1_6Xta5NPqs1 → I_XveRdyStDMqYJPcAAy5}/_ssgManifest.js +0 -0
|
@@ -91,6 +91,7 @@ const _servestatic = require("./serve-static");
|
|
|
91
91
|
const _log = /*#__PURE__*/ _interop_require_wildcard(require("../build/output/log"));
|
|
92
92
|
const _iserror = /*#__PURE__*/ _interop_require_default(require("../lib/is-error"));
|
|
93
93
|
const _isprivateip = require("./is-private-ip");
|
|
94
|
+
const _disklrucacheexternal = require("./lib/disk-lru-cache.external");
|
|
94
95
|
const _url1 = require("../lib/url");
|
|
95
96
|
const _invarianterror = require("../shared/lib/invariant-error");
|
|
96
97
|
const _promises = require("dns/promises");
|
|
@@ -175,6 +176,24 @@ const BLUR_IMG_SIZE = 8 // should match `next-image-loader`
|
|
|
175
176
|
const BLUR_QUALITY = 70 // should match `next-image-loader`
|
|
176
177
|
;
|
|
177
178
|
let _sharp;
|
|
179
|
+
async function initCacheEntries(cacheDir) {
|
|
180
|
+
const cacheKeys = await _fs.promises.readdir(cacheDir).catch(()=>[]);
|
|
181
|
+
const entries = [];
|
|
182
|
+
for (const cacheKey of cacheKeys){
|
|
183
|
+
try {
|
|
184
|
+
const { expireAt, buffer } = await readFromCacheDir(cacheDir, cacheKey);
|
|
185
|
+
entries.push({
|
|
186
|
+
key: cacheKey,
|
|
187
|
+
size: buffer.byteLength,
|
|
188
|
+
expireAt
|
|
189
|
+
});
|
|
190
|
+
} catch {
|
|
191
|
+
// Skip entries that can't be read from disk
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
// Sort oldest-first so we can replay them chronologically into LRU
|
|
195
|
+
return entries.sort((a, b)=>a.expireAt - b.expireAt);
|
|
196
|
+
}
|
|
178
197
|
function getSharp(concurrency) {
|
|
179
198
|
if (_sharp) {
|
|
180
199
|
return _sharp;
|
|
@@ -228,7 +247,8 @@ function getImageEtag(image) {
|
|
|
228
247
|
image
|
|
229
248
|
]);
|
|
230
249
|
}
|
|
231
|
-
async function writeToCacheDir(
|
|
250
|
+
async function writeToCacheDir(cacheDir, cacheKey, extension, maxAge, expireAt, buffer, etag, upstreamEtag) {
|
|
251
|
+
const dir = (0, _path.join)(/* turbopackIgnore: true */ cacheDir, cacheKey);
|
|
232
252
|
const filename = (0, _path.join)(/* turbopackIgnore: true */ dir, `${maxAge}.${expireAt}.${etag}.${upstreamEtag}.${extension}`);
|
|
233
253
|
await _fs.promises.rm(dir, {
|
|
234
254
|
recursive: true,
|
|
@@ -239,6 +259,39 @@ async function writeToCacheDir(dir, extension, maxAge, expireAt, buffer, etag, u
|
|
|
239
259
|
});
|
|
240
260
|
await _fs.promises.writeFile(filename, buffer);
|
|
241
261
|
}
|
|
262
|
+
async function readFromCacheDir(cacheDir, cacheKey) {
|
|
263
|
+
const dir = (0, _path.join)(/* turbopackIgnore: true */ cacheDir, cacheKey);
|
|
264
|
+
const files = await _fs.promises.readdir(dir);
|
|
265
|
+
const file = files[0];
|
|
266
|
+
if (!file) {
|
|
267
|
+
throw Object.defineProperty(new Error(`Invariant: cache entry "${cacheKey}" not found in dir "${cacheDir}"`), "__NEXT_ERROR_CODE", {
|
|
268
|
+
value: "E1069",
|
|
269
|
+
enumerable: false,
|
|
270
|
+
configurable: true
|
|
271
|
+
});
|
|
272
|
+
}
|
|
273
|
+
const [maxAgeSt, expireAtSt, etag, upstreamEtag, extension] = file.split('.', 5);
|
|
274
|
+
const filePath = (0, _path.join)(/* turbopackIgnore: true */ dir, file);
|
|
275
|
+
const buffer = await _fs.promises.readFile(/* turbopackIgnore: true */ filePath);
|
|
276
|
+
const expireAt = Number(expireAtSt);
|
|
277
|
+
const maxAge = Number(maxAgeSt);
|
|
278
|
+
return {
|
|
279
|
+
maxAge,
|
|
280
|
+
expireAt,
|
|
281
|
+
etag,
|
|
282
|
+
upstreamEtag,
|
|
283
|
+
buffer,
|
|
284
|
+
extension
|
|
285
|
+
};
|
|
286
|
+
}
|
|
287
|
+
async function deleteFromCacheDir(cacheDir, cacheKey) {
|
|
288
|
+
return _fs.promises.rm((0, _path.join)(/* turbopackIgnore: true */ cacheDir, cacheKey), {
|
|
289
|
+
recursive: true,
|
|
290
|
+
force: true
|
|
291
|
+
}).catch((err)=>{
|
|
292
|
+
_log.error(`Failed to delete cache key ${cacheKey}`, err);
|
|
293
|
+
});
|
|
294
|
+
}
|
|
242
295
|
async function detectContentType(buffer, skipMetadata, concurrency) {
|
|
243
296
|
if (buffer.byteLength === 0) {
|
|
244
297
|
return null;
|
|
@@ -630,45 +683,81 @@ class ImageOptimizerCache {
|
|
|
630
683
|
mimeType
|
|
631
684
|
]);
|
|
632
685
|
}
|
|
633
|
-
constructor({ distDir, nextConfig }){
|
|
686
|
+
constructor({ distDir, nextConfig, cacheHandler }){
|
|
634
687
|
this.cacheDir = (0, _path.join)(/* turbopackIgnore: true */ distDir, 'cache', 'images');
|
|
635
688
|
this.nextConfig = nextConfig;
|
|
689
|
+
this.cacheHandler = cacheHandler;
|
|
690
|
+
// Eagerly start LRU initialization for filesystem cache
|
|
691
|
+
if (!cacheHandler && nextConfig.images.maximumDiskCacheSize !== 0 && nextConfig.experimental.isrFlushToDisk) {
|
|
692
|
+
this.isDiskCacheEnabled = true;
|
|
693
|
+
this.cacheDiskLRU = (0, _disklrucacheexternal.getOrInitDiskLRU)(this.cacheDir, nextConfig.images.maximumDiskCacheSize, initCacheEntries, deleteFromCacheDir);
|
|
694
|
+
}
|
|
636
695
|
}
|
|
637
696
|
async get(cacheKey) {
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
697
|
+
// If a custom cache handler is provided, use it
|
|
698
|
+
if (this.cacheHandler) {
|
|
699
|
+
try {
|
|
700
|
+
const cacheData = await this.cacheHandler.get(cacheKey, {
|
|
701
|
+
kind: _responsecache.IncrementalCacheKind.IMAGE,
|
|
702
|
+
isFallback: false
|
|
703
|
+
});
|
|
704
|
+
if (!(cacheData == null ? void 0 : cacheData.value)) {
|
|
705
|
+
return null;
|
|
706
|
+
}
|
|
707
|
+
if (cacheData.value.kind !== _responsecache.CachedRouteKind.IMAGE) {
|
|
708
|
+
return null;
|
|
709
|
+
}
|
|
710
|
+
const now = Date.now();
|
|
711
|
+
const lastModified = cacheData.lastModified || now;
|
|
712
|
+
const revalidate = typeof cacheData.value.revalidate === 'number' ? cacheData.value.revalidate : this.nextConfig.images.minimumCacheTTL;
|
|
713
|
+
const revalidateAfter = Math.max(revalidate, this.nextConfig.images.minimumCacheTTL) * 1000 + lastModified;
|
|
714
|
+
const isStale = revalidateAfter < now;
|
|
647
715
|
return {
|
|
648
|
-
value:
|
|
649
|
-
|
|
650
|
-
etag,
|
|
651
|
-
buffer,
|
|
652
|
-
extension,
|
|
653
|
-
upstreamEtag
|
|
654
|
-
},
|
|
655
|
-
revalidateAfter: Math.max(maxAge, this.nextConfig.images.minimumCacheTTL) * 1000 + Date.now(),
|
|
716
|
+
value: cacheData.value,
|
|
717
|
+
revalidateAfter,
|
|
656
718
|
cacheControl: {
|
|
657
|
-
revalidate
|
|
719
|
+
revalidate,
|
|
658
720
|
expire: undefined
|
|
659
721
|
},
|
|
660
|
-
isStale
|
|
722
|
+
isStale
|
|
661
723
|
};
|
|
724
|
+
} catch (_) {
|
|
725
|
+
// failed to get from custom cache handler, treat as cache miss
|
|
662
726
|
}
|
|
727
|
+
return null;
|
|
728
|
+
}
|
|
729
|
+
// If the filesystem cache is disabled, return early
|
|
730
|
+
if (!this.isDiskCacheEnabled) {
|
|
731
|
+
return null;
|
|
732
|
+
}
|
|
733
|
+
// Fall back to filesystem cache
|
|
734
|
+
try {
|
|
735
|
+
const now = Date.now();
|
|
736
|
+
const { maxAge, expireAt, etag, upstreamEtag, buffer, extension } = await readFromCacheDir(this.cacheDir, cacheKey);
|
|
737
|
+
// Promote entry in LRU (mark as recently used)
|
|
738
|
+
const lru = await this.cacheDiskLRU;
|
|
739
|
+
lru == null ? void 0 : lru.get(cacheKey);
|
|
740
|
+
return {
|
|
741
|
+
value: {
|
|
742
|
+
kind: _responsecache.CachedRouteKind.IMAGE,
|
|
743
|
+
etag,
|
|
744
|
+
buffer,
|
|
745
|
+
extension,
|
|
746
|
+
upstreamEtag
|
|
747
|
+
},
|
|
748
|
+
revalidateAfter: Math.max(maxAge, this.nextConfig.images.minimumCacheTTL) * 1000 + Date.now(),
|
|
749
|
+
cacheControl: {
|
|
750
|
+
revalidate: maxAge,
|
|
751
|
+
expire: undefined
|
|
752
|
+
},
|
|
753
|
+
isStale: now > expireAt
|
|
754
|
+
};
|
|
663
755
|
} catch (_) {
|
|
664
756
|
// failed to read from cache dir, treat as cache miss
|
|
665
757
|
}
|
|
666
758
|
return null;
|
|
667
759
|
}
|
|
668
760
|
async set(cacheKey, value, { cacheControl }) {
|
|
669
|
-
if (!this.nextConfig.experimental.isrFlushToDisk) {
|
|
670
|
-
return;
|
|
671
|
-
}
|
|
672
761
|
if ((value == null ? void 0 : value.kind) !== _responsecache.CachedRouteKind.IMAGE) {
|
|
673
762
|
throw Object.defineProperty(new Error('invariant attempted to set non-image to image-cache'), "__NEXT_ERROR_CODE", {
|
|
674
763
|
value: "E366",
|
|
@@ -684,9 +773,43 @@ class ImageOptimizerCache {
|
|
|
684
773
|
configurable: true
|
|
685
774
|
});
|
|
686
775
|
}
|
|
776
|
+
// If a custom cache handler is provided, use it
|
|
777
|
+
if (this.cacheHandler) {
|
|
778
|
+
try {
|
|
779
|
+
// Apply minimumCacheTTL at write time, similar to the implementation in the fallback filesystem cache
|
|
780
|
+
const effectiveRevalidate = Math.max(revalidate, this.nextConfig.images.minimumCacheTTL);
|
|
781
|
+
const valueWithRevalidate = {
|
|
782
|
+
...value,
|
|
783
|
+
revalidate: effectiveRevalidate
|
|
784
|
+
};
|
|
785
|
+
await this.cacheHandler.set(cacheKey, valueWithRevalidate, {
|
|
786
|
+
cacheControl: {
|
|
787
|
+
revalidate: effectiveRevalidate,
|
|
788
|
+
expire: cacheControl == null ? void 0 : cacheControl.expire
|
|
789
|
+
}
|
|
790
|
+
});
|
|
791
|
+
} catch (err) {
|
|
792
|
+
_log.error(`Failed to write image to custom cache ${cacheKey}`, err);
|
|
793
|
+
}
|
|
794
|
+
return;
|
|
795
|
+
}
|
|
796
|
+
// If the filesystem cache is disabled, return early
|
|
797
|
+
if (!this.isDiskCacheEnabled) {
|
|
798
|
+
return;
|
|
799
|
+
}
|
|
800
|
+
// Fall back to filesystem cache
|
|
687
801
|
const expireAt = Math.max(revalidate, this.nextConfig.images.minimumCacheTTL) * 1000 + Date.now();
|
|
688
802
|
try {
|
|
689
|
-
|
|
803
|
+
const lru = await this.cacheDiskLRU;
|
|
804
|
+
const success = lru == null ? void 0 : lru.set(cacheKey, value.buffer.byteLength);
|
|
805
|
+
if (success === false) {
|
|
806
|
+
throw Object.defineProperty(new Error(`image of size ${value.buffer.byteLength} could not be tracked by lru cache`), "__NEXT_ERROR_CODE", {
|
|
807
|
+
value: "E1070",
|
|
808
|
+
enumerable: false,
|
|
809
|
+
configurable: true
|
|
810
|
+
});
|
|
811
|
+
}
|
|
812
|
+
await writeToCacheDir(this.cacheDir, cacheKey, value.extension, revalidate, expireAt, value.buffer, value.etag, value.upstreamEtag);
|
|
690
813
|
} catch (err) {
|
|
691
814
|
_log.error(`Failed to write image to cache ${cacheKey}`, err);
|
|
692
815
|
}
|
|
@@ -889,9 +1012,11 @@ async function fetchExternalImage(href, dangerouslyAllowLocalIP, maximumResponse
|
|
|
889
1012
|
}
|
|
890
1013
|
async function fetchInternalImage(href, _req, _res, handleRequest) {
|
|
891
1014
|
try {
|
|
1015
|
+
// Coerce HEAD to GET to avoid issues with the image optimizer
|
|
1016
|
+
const method = !_req.method || _req.method === 'HEAD' ? 'GET' : _req.method;
|
|
892
1017
|
const mocked = (0, _mockrequest.createRequestResponseMocks)({
|
|
893
1018
|
url: href,
|
|
894
|
-
method
|
|
1019
|
+
method,
|
|
895
1020
|
socket: _req.socket
|
|
896
1021
|
});
|
|
897
1022
|
await handleRequest(mocked.req, mocked.res, _url.default.parse(href, true));
|
|
@@ -1076,7 +1201,12 @@ function sendResponse(req, res, url, extension, buffer, etag, isStatic, xCache,
|
|
|
1076
1201
|
const result = setResponseHeaders(req, res, url, etag, contentType, isStatic, xCache, imagesConfig, maxAge, isDev);
|
|
1077
1202
|
if (!result.finished) {
|
|
1078
1203
|
res.setHeader('Content-Length', Buffer.byteLength(buffer));
|
|
1079
|
-
|
|
1204
|
+
// A response body must not be sent for HEAD requests
|
|
1205
|
+
if (req.method === 'HEAD') {
|
|
1206
|
+
res.end();
|
|
1207
|
+
} else {
|
|
1208
|
+
res.end(buffer);
|
|
1209
|
+
}
|
|
1080
1210
|
}
|
|
1081
1211
|
}
|
|
1082
1212
|
async function getImageSize(buffer) {
|
|
@@ -3,7 +3,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
5
|
0 && (module.exports = {
|
|
6
|
-
|
|
6
|
+
getEnvInfo: null,
|
|
7
|
+
logExperimentalInfo: null,
|
|
7
8
|
logStartInfo: null
|
|
8
9
|
});
|
|
9
10
|
function _export(target, all) {
|
|
@@ -13,8 +14,11 @@ function _export(target, all) {
|
|
|
13
14
|
});
|
|
14
15
|
}
|
|
15
16
|
_export(exports, {
|
|
16
|
-
|
|
17
|
-
return
|
|
17
|
+
getEnvInfo: function() {
|
|
18
|
+
return getEnvInfo;
|
|
19
|
+
},
|
|
20
|
+
logExperimentalInfo: function() {
|
|
21
|
+
return logExperimentalInfo;
|
|
18
22
|
},
|
|
19
23
|
logStartInfo: function() {
|
|
20
24
|
return logStartInfo;
|
|
@@ -24,14 +28,7 @@ const _env = require("@next/env");
|
|
|
24
28
|
const _inspector = /*#__PURE__*/ _interop_require_wildcard(require("inspector"));
|
|
25
29
|
const _log = /*#__PURE__*/ _interop_require_wildcard(require("../../build/output/log"));
|
|
26
30
|
const _picocolors = require("../../lib/picocolors");
|
|
27
|
-
const _constants = require("../../shared/lib/constants");
|
|
28
|
-
const _config = /*#__PURE__*/ _interop_require_default(require("../config"));
|
|
29
31
|
const _configschema = require("../config-schema");
|
|
30
|
-
function _interop_require_default(obj) {
|
|
31
|
-
return obj && obj.__esModule ? obj : {
|
|
32
|
-
default: obj
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
32
|
function _getRequireWildcardCache(nodeInterop) {
|
|
36
33
|
if (typeof WeakMap !== "function") return null;
|
|
37
34
|
var cacheBabelInterop = new WeakMap();
|
|
@@ -73,7 +70,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
73
70
|
}
|
|
74
71
|
return newObj;
|
|
75
72
|
}
|
|
76
|
-
function logStartInfo({ networkUrl, appUrl, envInfo,
|
|
73
|
+
function logStartInfo({ networkUrl, appUrl, envInfo, logBundler }) {
|
|
77
74
|
let versionSuffix = '';
|
|
78
75
|
const parts = [];
|
|
79
76
|
if (logBundler) {
|
|
@@ -85,13 +82,10 @@ function logStartInfo({ networkUrl, appUrl, envInfo, experimentalFeatures, logBu
|
|
|
85
82
|
parts.push('webpack');
|
|
86
83
|
}
|
|
87
84
|
}
|
|
88
|
-
if (cacheComponents) {
|
|
89
|
-
parts.push('Cache Components');
|
|
90
|
-
}
|
|
91
85
|
if (parts.length > 0) {
|
|
92
86
|
versionSuffix = ` (${parts.join(', ')})`;
|
|
93
87
|
}
|
|
94
|
-
_log.bootstrap(`${(0, _picocolors.bold)((0, _picocolors.purple)(`${_log.prefixes.ready} Next.js ${"16.
|
|
88
|
+
_log.bootstrap(`${(0, _picocolors.bold)((0, _picocolors.purple)(`${_log.prefixes.ready} Next.js ${"16.2.0"}`))}${versionSuffix}`);
|
|
95
89
|
if (appUrl) {
|
|
96
90
|
_log.bootstrap(`- Local: ${appUrl}`);
|
|
97
91
|
}
|
|
@@ -108,6 +102,11 @@ function logStartInfo({ networkUrl, appUrl, envInfo, experimentalFeatures, logBu
|
|
|
108
102
|
_log.bootstrap(`- Debugger port: ${debugPort}`);
|
|
109
103
|
}
|
|
110
104
|
if (envInfo == null ? void 0 : envInfo.length) _log.bootstrap(`- Environments: ${envInfo.join(', ')}`);
|
|
105
|
+
}
|
|
106
|
+
function logExperimentalInfo({ experimentalFeatures, cacheComponents }) {
|
|
107
|
+
if (cacheComponents) {
|
|
108
|
+
_log.bootstrap(`- Cache Components enabled`);
|
|
109
|
+
}
|
|
111
110
|
if (experimentalFeatures == null ? void 0 : experimentalFeatures.length) {
|
|
112
111
|
_log.bootstrap(`- Experiments (use with caution):`);
|
|
113
112
|
for (const exp of experimentalFeatures){
|
|
@@ -125,30 +124,9 @@ function logStartInfo({ networkUrl, appUrl, envInfo, experimentalFeatures, logBu
|
|
|
125
124
|
// New line after the bootstrap info
|
|
126
125
|
_log.info('');
|
|
127
126
|
}
|
|
128
|
-
|
|
129
|
-
let experimentalFeatures = [];
|
|
130
|
-
let cacheComponents = false;
|
|
131
|
-
const config = await (0, _config.default)(dev ? _constants.PHASE_DEVELOPMENT_SERVER : _constants.PHASE_PRODUCTION_BUILD, dir, {
|
|
132
|
-
reportExperimentalFeatures (features) {
|
|
133
|
-
experimentalFeatures = features.sort(({ key: a }, { key: b })=>a.localeCompare(b));
|
|
134
|
-
},
|
|
135
|
-
debugPrerender,
|
|
136
|
-
silent: false
|
|
137
|
-
});
|
|
138
|
-
cacheComponents = !!config.cacheComponents;
|
|
139
|
-
// we need to reset env if we are going to create
|
|
140
|
-
// the worker process with the esm loader so that the
|
|
141
|
-
// initial env state is correct
|
|
142
|
-
let envInfo = [];
|
|
127
|
+
function getEnvInfo(dir) {
|
|
143
128
|
const { loadedEnvFiles } = (0, _env.loadEnvConfig)(dir, true, console, false);
|
|
144
|
-
|
|
145
|
-
envInfo = loadedEnvFiles.map((f)=>f.path);
|
|
146
|
-
}
|
|
147
|
-
return {
|
|
148
|
-
envInfo,
|
|
149
|
-
experimentalFeatures,
|
|
150
|
-
cacheComponents
|
|
151
|
-
};
|
|
129
|
+
return loadedEnvFiles.map((f)=>f.path);
|
|
152
130
|
}
|
|
153
131
|
|
|
154
132
|
//# sourceMappingURL=app-info-log.js.map
|
|
@@ -16,7 +16,7 @@ function getCacheControlHeader({ revalidate, expire }) {
|
|
|
16
16
|
} else if (typeof revalidate === 'number') {
|
|
17
17
|
return `s-maxage=${revalidate}${swrHeader}`;
|
|
18
18
|
}
|
|
19
|
-
return `s-maxage=${_constants.
|
|
19
|
+
return `s-maxage=${_constants.CACHE_ONE_YEAR_SECONDS}${swrHeader}`;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
//# sourceMappingURL=cache-control.js.map
|
|
@@ -40,22 +40,6 @@ function cloneResponse(original) {
|
|
|
40
40
|
enumerable: true,
|
|
41
41
|
writable: false
|
|
42
42
|
});
|
|
43
|
-
// The Fetch Standard allows users to skip consuming the response body by
|
|
44
|
-
// relying on garbage collection to release connection resources.
|
|
45
|
-
// https://github.com/nodejs/undici?tab=readme-ov-file#garbage-collection
|
|
46
|
-
//
|
|
47
|
-
// To cancel the stream you then need to cancel both resulting branches.
|
|
48
|
-
// Teeing a stream will generally lock it for the duration, preventing other
|
|
49
|
-
// readers from locking it.
|
|
50
|
-
// https://developer.mozilla.org/en-US/docs/Web/API/ReadableStream/tee
|
|
51
|
-
// cloned2 is stored in a react cache and cloned for subsequent requests.
|
|
52
|
-
// It is the original request, and is is garbage collected by a
|
|
53
|
-
// FinalizationRegistry in Undici, but since we're tee-ing the stream
|
|
54
|
-
// ourselves, we need to cancel clone1's stream (the response returned from
|
|
55
|
-
// our dedupe fetch) when clone1 is reclaimed, otherwise we leak memory.
|
|
56
|
-
if (registry && cloned1.body) {
|
|
57
|
-
registry.register(cloned1, new WeakRef(cloned1.body));
|
|
58
|
-
}
|
|
59
43
|
const cloned2 = new Response(body2, {
|
|
60
44
|
status: original.status,
|
|
61
45
|
statusText: original.statusText,
|
|
@@ -68,6 +52,22 @@ function cloneResponse(original) {
|
|
|
68
52
|
enumerable: true,
|
|
69
53
|
writable: false
|
|
70
54
|
});
|
|
55
|
+
// The Fetch Standard allows users to skip consuming the response body by
|
|
56
|
+
// relying on garbage collection to release connection resources.
|
|
57
|
+
// https://github.com/nodejs/undici?tab=readme-ov-file#garbage-collection
|
|
58
|
+
//
|
|
59
|
+
// To cancel the stream you then need to cancel both resulting branches.
|
|
60
|
+
// Teeing a stream will generally lock it for the duration, preventing other
|
|
61
|
+
// readers from locking it.
|
|
62
|
+
// https://developer.mozilla.org/en-US/docs/Web/API/ReadableStream/tee
|
|
63
|
+
if (registry) {
|
|
64
|
+
if (cloned1.body) {
|
|
65
|
+
registry.register(cloned1, new WeakRef(cloned1.body));
|
|
66
|
+
}
|
|
67
|
+
if (cloned2.body) {
|
|
68
|
+
registry.register(cloned2, new WeakRef(cloned2.body));
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
71
|
return [
|
|
72
72
|
cloned1,
|
|
73
73
|
cloned2
|
|
@@ -1,28 +1,59 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "saveCpuProfile", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return saveCpuProfile;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
2
11
|
const privateCpuProfileName = process.env.__NEXT_PRIVATE_CPU_PROFILE;
|
|
3
12
|
const isCpuProfileEnabled = process.env.NEXT_CPU_PROF || privateCpuProfileName;
|
|
13
|
+
const cpuProfileDir = process.env.NEXT_CPU_PROF_DIR;
|
|
14
|
+
let session = null;
|
|
15
|
+
let profileSaved = false;
|
|
4
16
|
if (isCpuProfileEnabled) {
|
|
5
17
|
const { Session } = require('inspector');
|
|
6
|
-
|
|
7
|
-
const session = new Session();
|
|
18
|
+
session = new Session();
|
|
8
19
|
session.connect();
|
|
9
20
|
session.post('Profiler.enable');
|
|
10
21
|
session.post('Profiler.start');
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const filename = `${privateCpuProfileName || 'CPU.main'}.${Date.now()}.cpuprofile`;
|
|
19
|
-
fs.writeFileSync(`./${filename}`, JSON.stringify(param.profile));
|
|
20
|
-
process.exit(0);
|
|
21
|
-
});
|
|
22
|
+
process.on('exit', ()=>{
|
|
23
|
+
saveCpuProfile();
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
function saveCpuProfile() {
|
|
27
|
+
if (!session || profileSaved || !isCpuProfileEnabled) {
|
|
28
|
+
return;
|
|
22
29
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
30
|
+
profileSaved = true;
|
|
31
|
+
const fs = require('fs');
|
|
32
|
+
const path = require('path');
|
|
33
|
+
session.post('Profiler.stop', (error, param)=>{
|
|
34
|
+
if (error) {
|
|
35
|
+
console.error('Cannot generate CPU profiling:', error);
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, 19);
|
|
39
|
+
const baseName = privateCpuProfileName || 'cpu-profile';
|
|
40
|
+
const filename = `${baseName}-${timestamp}.cpuprofile`;
|
|
41
|
+
let outputPath;
|
|
42
|
+
if (cpuProfileDir) {
|
|
43
|
+
if (!fs.existsSync(cpuProfileDir)) {
|
|
44
|
+
fs.mkdirSync(cpuProfileDir, {
|
|
45
|
+
recursive: true
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
outputPath = path.join(cpuProfileDir, filename);
|
|
49
|
+
} else {
|
|
50
|
+
outputPath = `./${filename}`;
|
|
51
|
+
}
|
|
52
|
+
fs.writeFileSync(outputPath, JSON.stringify(param.profile));
|
|
53
|
+
const { green } = require('../../lib/picocolors');
|
|
54
|
+
console.log(`\n${green('CPU profile saved:')} ${outputPath}`);
|
|
55
|
+
console.log('Open in Chrome DevTools → Performance tab → Load profile');
|
|
56
|
+
});
|
|
26
57
|
}
|
|
27
58
|
|
|
28
59
|
//# sourceMappingURL=cpu-profile.js.map
|
|
@@ -46,10 +46,10 @@ class DevBundlerService {
|
|
|
46
46
|
// Return the very first error we found.
|
|
47
47
|
return errors[0];
|
|
48
48
|
}
|
|
49
|
-
async revalidate({ urlPath,
|
|
49
|
+
async revalidate({ urlPath, headers, opts: revalidateOpts }) {
|
|
50
50
|
const mocked = (0, _mockrequest.createRequestResponseMocks)({
|
|
51
51
|
url: urlPath,
|
|
52
|
-
headers
|
|
52
|
+
headers
|
|
53
53
|
});
|
|
54
54
|
await this.handler(mocked.req, mocked.res);
|
|
55
55
|
await mocked.res.hasStreamed;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
0 && (module.exports = {
|
|
6
|
+
getOrInitDiskLRU: null,
|
|
7
|
+
resetDiskLRU: null
|
|
8
|
+
});
|
|
9
|
+
function _export(target, all) {
|
|
10
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: all[name]
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
_export(exports, {
|
|
16
|
+
getOrInitDiskLRU: function() {
|
|
17
|
+
return getOrInitDiskLRU;
|
|
18
|
+
},
|
|
19
|
+
resetDiskLRU: function() {
|
|
20
|
+
return resetDiskLRU;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
const _fs = require("fs");
|
|
24
|
+
const _lrucache = require("./lru-cache");
|
|
25
|
+
/**
|
|
26
|
+
* Module-level LRU singleton for disk cache eviction.
|
|
27
|
+
* Initialized once on first `set()`, shared across all consumers.
|
|
28
|
+
* Once resolved, the promise stays resolved — subsequent calls just await the cached result.
|
|
29
|
+
*/ let _diskLRUPromise = null;
|
|
30
|
+
async function getOrInitDiskLRU(cacheDir, maxDiskSize, readEntries, evictEntry) {
|
|
31
|
+
if (!_diskLRUPromise) {
|
|
32
|
+
_diskLRUPromise = (async ()=>{
|
|
33
|
+
let maxSize = maxDiskSize;
|
|
34
|
+
if (typeof maxSize === 'undefined') {
|
|
35
|
+
// Ensure cacheDir exists before checking disk space
|
|
36
|
+
await _fs.promises.mkdir(cacheDir, {
|
|
37
|
+
recursive: true
|
|
38
|
+
});
|
|
39
|
+
// Since config was not provided, default to 50% of available disk space
|
|
40
|
+
const { bavail, bsize } = await _fs.promises.statfs(cacheDir);
|
|
41
|
+
maxSize = Math.floor(bavail * bsize / 2);
|
|
42
|
+
}
|
|
43
|
+
const lru = new _lrucache.LRUCache(maxSize, (size)=>size, (cacheKey)=>evictEntry(cacheDir, cacheKey));
|
|
44
|
+
const entries = await readEntries(cacheDir);
|
|
45
|
+
for (const entry of entries){
|
|
46
|
+
lru.set(entry.key, entry.size);
|
|
47
|
+
}
|
|
48
|
+
return lru;
|
|
49
|
+
})();
|
|
50
|
+
}
|
|
51
|
+
return _diskLRUPromise;
|
|
52
|
+
}
|
|
53
|
+
function resetDiskLRU() {
|
|
54
|
+
_diskLRUPromise = null;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
//# sourceMappingURL=disk-lru-cache.external.js.map
|
|
@@ -28,6 +28,7 @@ const _fs = require("fs");
|
|
|
28
28
|
const _log = require("../../build/output/log");
|
|
29
29
|
const _picocolors = require("../../lib/picocolors");
|
|
30
30
|
const _ismetadataroute = require("../../lib/metadata/is-metadata-route");
|
|
31
|
+
const _escaperegexp = require("../../shared/lib/escape-regexp");
|
|
31
32
|
async function isTrueCasePagePath(pagePath, pagesDir) {
|
|
32
33
|
const pageSegments = (0, _path.normalize)(pagePath).split(_path.sep).filter(Boolean);
|
|
33
34
|
const segmentExistsPromises = pageSegments.map(async (segment, i)=>{
|
|
@@ -61,13 +62,32 @@ async function findPageFile(pagesDir, normalizedPagePath, pageExtensions, isAppD
|
|
|
61
62
|
return existingPath;
|
|
62
63
|
}
|
|
63
64
|
function createValidFileMatcher(pageExtensions, appDirPath) {
|
|
64
|
-
|
|
65
|
-
const
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
const
|
|
69
|
-
|
|
70
|
-
|
|
65
|
+
// Helper to create extension regex pattern
|
|
66
|
+
const extPattern = `(?:${pageExtensions.map((extension)=>(0, _escaperegexp.escapeStringRegexp)(extension)).join('|')})`;
|
|
67
|
+
// Pattern factory for "leaf" files that can appear at start of path or after separator
|
|
68
|
+
// e.g., 'page.tsx', '/path/page.tsx', '\\path\\route.js'
|
|
69
|
+
const createLeafPattern = (fileNames)=>{
|
|
70
|
+
const names = fileNames.length === 1 ? fileNames[0] : `(${fileNames.join('|')})`;
|
|
71
|
+
return new RegExp(`(^${names}|[\\\\/]${names})\\.${extPattern}$`);
|
|
72
|
+
};
|
|
73
|
+
// Pattern factory for root-only files (no path separator allowed)
|
|
74
|
+
const createRootOnlyPattern = (fileName)=>new RegExp(`^${fileName}\\.${extPattern}$`);
|
|
75
|
+
// All file matching patterns
|
|
76
|
+
const validExtensionFileRegex = new RegExp(`\\.${extPattern}$`);
|
|
77
|
+
const leafOnlyPageFileRegex = createLeafPattern([
|
|
78
|
+
'page',
|
|
79
|
+
'route'
|
|
80
|
+
]);
|
|
81
|
+
const leafOnlyRouteFileRegex = createLeafPattern([
|
|
82
|
+
'route'
|
|
83
|
+
]);
|
|
84
|
+
const leafOnlyLayoutFileRegex = createLeafPattern([
|
|
85
|
+
'layout'
|
|
86
|
+
]);
|
|
87
|
+
const leafOnlyDefaultFileRegex = createLeafPattern([
|
|
88
|
+
'default'
|
|
89
|
+
]);
|
|
90
|
+
const rootNotFoundFileRegex = createRootOnlyPattern('not-found');
|
|
71
91
|
/** TODO-METADATA: support other metadata routes
|
|
72
92
|
* regex for:
|
|
73
93
|
*
|
|
@@ -47,7 +47,7 @@ const getDerivedTags = (pathname)=>{
|
|
|
47
47
|
}
|
|
48
48
|
return expirationsByCacheKind;
|
|
49
49
|
}
|
|
50
|
-
async function getImplicitTags(page,
|
|
50
|
+
async function getImplicitTags(page, pathname, fallbackRouteParams) {
|
|
51
51
|
const tags = new Set();
|
|
52
52
|
// Add the derived tags from the page.
|
|
53
53
|
const derivedTags = getDerivedTags(page);
|
|
@@ -57,8 +57,8 @@ async function getImplicitTags(page, url, fallbackRouteParams) {
|
|
|
57
57
|
}
|
|
58
58
|
// Add the tags from the pathname. If the route has unknown params, we don't
|
|
59
59
|
// want to add the pathname as a tag, as it will be invalid.
|
|
60
|
-
if (
|
|
61
|
-
const tag = `${_constants.NEXT_CACHE_IMPLICIT_TAG_ID}${
|
|
60
|
+
if (pathname && (!fallbackRouteParams || fallbackRouteParams.size === 0)) {
|
|
61
|
+
const tag = `${_constants.NEXT_CACHE_IMPLICIT_TAG_ID}${pathname}`;
|
|
62
62
|
tags.add(tag);
|
|
63
63
|
}
|
|
64
64
|
if (tags.has(`${_constants.NEXT_CACHE_IMPLICIT_TAG_ID}/`)) {
|
|
@@ -164,7 +164,7 @@ class FileSystemCache {
|
|
|
164
164
|
}));
|
|
165
165
|
}
|
|
166
166
|
let rscData;
|
|
167
|
-
if (!ctx.isFallback && !ctx.isRoutePPREnabled) {
|
|
167
|
+
if (!ctx.isFallback && (!ctx.isRoutePPREnabled || (meta == null ? void 0 : meta.postponed) == null)) {
|
|
168
168
|
rscData = await this.fs.readFile(this.getFilePath(`${key}${_constants.RSC_SUFFIX}`, _responsecache.IncrementalCacheKind.APP_PAGE));
|
|
169
169
|
}
|
|
170
170
|
data = {
|
|
@@ -268,7 +268,8 @@ class FileSystemCache {
|
|
|
268
268
|
headers: data.headers,
|
|
269
269
|
status: data.status,
|
|
270
270
|
postponed: undefined,
|
|
271
|
-
segmentPaths: undefined
|
|
271
|
+
segmentPaths: undefined,
|
|
272
|
+
prefetchHints: undefined
|
|
272
273
|
};
|
|
273
274
|
writer.append(filePath.replace(/\.body$/, _constants.NEXT_META_SUFFIX), JSON.stringify(meta, null, 2));
|
|
274
275
|
} else if (data.kind === _responsecache.CachedRouteKind.PAGES || data.kind === _responsecache.CachedRouteKind.APP_PAGE) {
|
|
@@ -294,7 +295,8 @@ class FileSystemCache {
|
|
|
294
295
|
headers: data.headers,
|
|
295
296
|
status: data.status,
|
|
296
297
|
postponed: data.postponed,
|
|
297
|
-
segmentPaths
|
|
298
|
+
segmentPaths,
|
|
299
|
+
prefetchHints: undefined
|
|
298
300
|
};
|
|
299
301
|
writer.append(htmlPath.replace(/\.html$/, _constants.NEXT_META_SUFFIX), JSON.stringify(meta));
|
|
300
302
|
}
|