@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
|
@@ -41,1315 +41,515 @@ function() { throw new Error("Attempted to call the default export of \"/home/ru
|
|
|
41
41
|
|
|
42
42
|
/***/ }),
|
|
43
43
|
|
|
44
|
-
/***/
|
|
45
|
-
/***/ ((module) => {
|
|
46
|
-
|
|
47
|
-
"use strict";
|
|
48
|
-
module.exports = require("next/dist/compiled/next-server/app-page.runtime.prod.js");
|
|
49
|
-
|
|
50
|
-
/***/ }),
|
|
51
|
-
|
|
52
|
-
/***/ 19121:
|
|
53
|
-
/***/ ((module) => {
|
|
54
|
-
|
|
55
|
-
"use strict";
|
|
56
|
-
module.exports = require("next/dist/server/app-render/action-async-storage.external.js");
|
|
57
|
-
|
|
58
|
-
/***/ }),
|
|
59
|
-
|
|
60
|
-
/***/ 19771:
|
|
61
|
-
/***/ ((module) => {
|
|
62
|
-
|
|
63
|
-
"use strict";
|
|
64
|
-
module.exports = require("process");
|
|
65
|
-
|
|
66
|
-
/***/ }),
|
|
67
|
-
|
|
68
|
-
/***/ 20400:
|
|
69
|
-
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
|
70
|
-
|
|
71
|
-
Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 33898));
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
/***/ }),
|
|
75
|
-
|
|
76
|
-
/***/ 21444:
|
|
44
|
+
/***/ 10597:
|
|
77
45
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
78
46
|
|
|
79
47
|
"use strict";
|
|
80
|
-
// ESM COMPAT FLAG
|
|
81
48
|
__webpack_require__.r(__webpack_exports__);
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
});
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
var
|
|
90
|
-
|
|
91
|
-
var
|
|
92
|
-
|
|
93
|
-
var
|
|
94
|
-
|
|
95
|
-
var
|
|
96
|
-
|
|
97
|
-
var
|
|
98
|
-
|
|
99
|
-
var
|
|
100
|
-
|
|
101
|
-
var
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
/*
|
|
49
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
50
|
+
/* harmony export */ __next_app__: () => (/* binding */ __next_app__),
|
|
51
|
+
/* harmony export */ handler: () => (/* binding */ handler),
|
|
52
|
+
/* harmony export */ routeModule: () => (/* binding */ routeModule)
|
|
53
|
+
/* harmony export */ });
|
|
54
|
+
/* harmony import */ var next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(80666);
|
|
55
|
+
/* harmony import */ var next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__);
|
|
56
|
+
/* harmony import */ var next_dist_server_route_kind__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(51421);
|
|
57
|
+
/* harmony import */ var next_dist_server_instrumentation_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4675);
|
|
58
|
+
/* harmony import */ var next_dist_server_lib_trace_tracer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29796);
|
|
59
|
+
/* harmony import */ var next_dist_server_lib_trace_tracer__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_trace_tracer__WEBPACK_IMPORTED_MODULE_3__);
|
|
60
|
+
/* harmony import */ var next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(54046);
|
|
61
|
+
/* harmony import */ var next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__);
|
|
62
|
+
/* harmony import */ var next_dist_server_lib_trace_constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(74928);
|
|
63
|
+
/* harmony import */ var next_dist_server_lib_trace_constants__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_trace_constants__WEBPACK_IMPORTED_MODULE_5__);
|
|
64
|
+
/* harmony import */ var next_dist_server_app_render_interop_default__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(19727);
|
|
65
|
+
/* harmony import */ var next_dist_server_app_render_strip_flight_headers__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(24268);
|
|
66
|
+
/* harmony import */ var next_dist_server_base_http_node__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(60402);
|
|
67
|
+
/* harmony import */ var next_dist_server_base_http_node__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_base_http_node__WEBPACK_IMPORTED_MODULE_8__);
|
|
68
|
+
/* harmony import */ var next_dist_server_lib_experimental_ppr__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(22040);
|
|
69
|
+
/* harmony import */ var next_dist_server_lib_experimental_ppr__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_experimental_ppr__WEBPACK_IMPORTED_MODULE_9__);
|
|
70
|
+
/* harmony import */ var next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(27186);
|
|
71
|
+
/* harmony import */ var next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10__);
|
|
72
|
+
/* harmony import */ var next_dist_server_app_render_manifests_singleton__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(49228);
|
|
73
|
+
/* harmony import */ var next_dist_server_app_render_manifests_singleton__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_app_render_manifests_singleton__WEBPACK_IMPORTED_MODULE_11__);
|
|
74
|
+
/* harmony import */ var next_dist_server_lib_streaming_metadata__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(97485);
|
|
75
|
+
/* harmony import */ var next_dist_server_lib_streaming_metadata__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_streaming_metadata__WEBPACK_IMPORTED_MODULE_12__);
|
|
76
|
+
/* harmony import */ var next_dist_shared_lib_router_utils_app_paths__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(261);
|
|
77
|
+
/* harmony import */ var next_dist_shared_lib_router_utils_app_paths__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_router_utils_app_paths__WEBPACK_IMPORTED_MODULE_13__);
|
|
78
|
+
/* harmony import */ var next_dist_server_lib_server_action_request_meta__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(80885);
|
|
79
|
+
/* harmony import */ var next_dist_server_lib_server_action_request_meta__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_server_action_request_meta__WEBPACK_IMPORTED_MODULE_14__);
|
|
80
|
+
/* harmony import */ var next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(7162);
|
|
81
|
+
/* harmony import */ var next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__);
|
|
82
|
+
/* harmony import */ var next_dist_shared_lib_router_utils_is_bot__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(26713);
|
|
83
|
+
/* harmony import */ var next_dist_shared_lib_router_utils_is_bot__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_router_utils_is_bot__WEBPACK_IMPORTED_MODULE_16__);
|
|
84
|
+
/* harmony import */ var next_dist_server_response_cache__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(70972);
|
|
85
|
+
/* harmony import */ var next_dist_server_response_cache__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_response_cache__WEBPACK_IMPORTED_MODULE_17__);
|
|
86
|
+
/* harmony import */ var next_dist_lib_fallback__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(57341);
|
|
87
|
+
/* harmony import */ var next_dist_lib_fallback__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(next_dist_lib_fallback__WEBPACK_IMPORTED_MODULE_18__);
|
|
88
|
+
/* harmony import */ var next_dist_server_render_result__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(95105);
|
|
89
|
+
/* harmony import */ var next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(38038);
|
|
90
|
+
/* harmony import */ var next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20__);
|
|
91
|
+
/* harmony import */ var next_dist_server_stream_utils_encoded_tags__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(29898);
|
|
92
|
+
/* harmony import */ var next_dist_server_stream_utils_node_web_streams_helper__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(62918);
|
|
93
|
+
/* harmony import */ var next_dist_server_stream_utils_node_web_streams_helper__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_stream_utils_node_web_streams_helper__WEBPACK_IMPORTED_MODULE_22__);
|
|
94
|
+
/* harmony import */ var next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(98798);
|
|
95
|
+
/* harmony import */ var next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__);
|
|
96
|
+
/* harmony import */ var next_dist_shared_lib_no_fallback_error_external__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(86439);
|
|
97
|
+
/* harmony import */ var next_dist_shared_lib_no_fallback_error_external__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_no_fallback_error_external__WEBPACK_IMPORTED_MODULE_24__);
|
|
98
|
+
/* harmony import */ var next_dist_shared_lib_size_limit__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(77068);
|
|
99
|
+
/* harmony import */ var next_dist_shared_lib_size_limit__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_size_limit__WEBPACK_IMPORTED_MODULE_25__);
|
|
100
|
+
/* harmony import */ var next_dist_server_lib_postponed_request_body__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(31214);
|
|
101
|
+
/* harmony import */ var next_dist_server_lib_postponed_request_body__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_postponed_request_body__WEBPACK_IMPORTED_MODULE_26__);
|
|
102
|
+
/* harmony import */ var next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(35402);
|
|
103
|
+
/* harmony import */ var next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_27___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_27__);
|
|
104
|
+
/* harmony import */ var next_dist_client_components_redirect_status_code__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(29059);
|
|
105
|
+
/* harmony import */ var next_dist_client_components_redirect_status_code__WEBPACK_IMPORTED_MODULE_28___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_redirect_status_code__WEBPACK_IMPORTED_MODULE_28__);
|
|
106
|
+
/* harmony import */ var next_dist_shared_lib_invariant_error__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(70722);
|
|
107
|
+
/* harmony import */ var next_dist_shared_lib_invariant_error__WEBPACK_IMPORTED_MODULE_29___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_invariant_error__WEBPACK_IMPORTED_MODULE_29__);
|
|
108
|
+
/* harmony import */ var next_dist_lib_scheduler__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(31182);
|
|
109
|
+
/* harmony import */ var next_dist_lib_scheduler__WEBPACK_IMPORTED_MODULE_30___default = /*#__PURE__*/__webpack_require__.n(next_dist_lib_scheduler__WEBPACK_IMPORTED_MODULE_30__);
|
|
110
|
+
/* harmony import */ var next_dist_shared_lib_router_utils_interception_routes__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(43954);
|
|
111
|
+
/* harmony import */ var next_dist_shared_lib_router_utils_interception_routes__WEBPACK_IMPORTED_MODULE_31___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_router_utils_interception_routes__WEBPACK_IMPORTED_MODULE_31__);
|
|
112
|
+
/* harmony import */ var next_dist_shared_lib_router_utils_get_segment_param__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(17891);
|
|
113
|
+
/* harmony import */ var next_dist_shared_lib_router_utils_get_segment_param__WEBPACK_IMPORTED_MODULE_32___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_router_utils_get_segment_param__WEBPACK_IMPORTED_MODULE_32__);
|
|
114
|
+
/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
115
|
+
/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_27__) if(["default","__next_app__","routeModule","handler"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_27__[__WEBPACK_IMPORT_KEY__]
|
|
116
|
+
/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
117
|
+
const module0 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 95235));
|
|
118
|
+
const module1 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 25195));
|
|
119
|
+
const module2 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 56357));
|
|
120
|
+
const module3 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 72353));
|
|
121
|
+
const module4 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.t.bind(__webpack_require__, 4253, 23));
|
|
122
|
+
const module5 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.t.bind(__webpack_require__, 49184, 23));
|
|
123
|
+
const module6 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 57149));
|
|
124
|
+
const module7 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 56357));
|
|
125
|
+
const module8 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 28310));
|
|
126
|
+
const module9 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 59406));
|
|
127
|
+
const module10 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 56357));
|
|
128
|
+
const module11 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 56357));
|
|
129
|
+
const page12 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 9839));
|
|
107
130
|
|
|
108
131
|
|
|
109
132
|
|
|
110
133
|
|
|
111
134
|
|
|
112
135
|
|
|
113
|
-
// Authentication is handled by middleware (proxy.ts)
|
|
114
|
-
// Only authenticated moderators/admins can reach this page
|
|
115
|
-
function RecentDocumentsPageWrapper() {
|
|
116
|
-
const t = (0,react_client/* useTranslations */.c)('ModerateRecent');
|
|
117
|
-
// Toolbar and settings state
|
|
118
|
-
const { activePanel } = (0,react_ui_dist/* usePanelBrowse */.ySJ)();
|
|
119
|
-
const { theme, setTheme } = (0,react_ui_dist/* useTheme */.DPo)();
|
|
120
|
-
const { showLineNumbers, toggleLineNumbers } = (0,react_ui_dist/* useLineNumbers */.cvF)();
|
|
121
|
-
const handleThemeChanged = (0,react.useCallback)(({ theme })=>{
|
|
122
|
-
setTheme(theme);
|
|
123
|
-
}, [
|
|
124
|
-
setTheme
|
|
125
|
-
]);
|
|
126
|
-
const handleLineNumbersToggled = (0,react.useCallback)(()=>{
|
|
127
|
-
toggleLineNumbers();
|
|
128
|
-
}, [
|
|
129
|
-
toggleLineNumbers
|
|
130
|
-
]);
|
|
131
|
-
(0,react_ui_dist/* useEventSubscriptions */.C$z)({
|
|
132
|
-
'settings:theme-changed': handleThemeChanged,
|
|
133
|
-
'settings:line-numbers-toggled': handleLineNumbersToggled
|
|
134
|
-
});
|
|
135
|
-
return /*#__PURE__*/ (0,react_jsx_runtime.jsx)(packages_react_ui_dist.RecentDocumentsPage, {
|
|
136
|
-
hasDocuments: false,
|
|
137
|
-
isLoading: false,
|
|
138
|
-
theme: theme,
|
|
139
|
-
showLineNumbers: showLineNumbers,
|
|
140
|
-
activePanel: activePanel,
|
|
141
|
-
translations: {
|
|
142
|
-
pageTitle: t('pageTitle'),
|
|
143
|
-
pageDescription: t('pageDescription'),
|
|
144
|
-
sectionTitle: t('sectionTitle'),
|
|
145
|
-
sectionDescription: t('sectionDescription'),
|
|
146
|
-
noDocuments: t('noDocuments'),
|
|
147
|
-
activityWillAppear: t('activityWillAppear'),
|
|
148
|
-
loading: t('loading')
|
|
149
|
-
},
|
|
150
|
-
ToolbarPanels: ToolbarPanels/* ToolbarPanels */.t,
|
|
151
|
-
Toolbar: dist/* Toolbar */.M7E
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
136
|
|
|
155
137
|
|
|
156
|
-
/***/ }),
|
|
157
138
|
|
|
158
|
-
/***/ 25197:
|
|
159
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
160
139
|
|
|
161
|
-
"use strict";
|
|
162
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
163
|
-
/* harmony export */ C$z: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.useEventSubscriptions),
|
|
164
|
-
/* harmony export */ TbX: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.SimpleNavigation)
|
|
165
|
-
/* harmony export */ });
|
|
166
|
-
/* harmony import */ var _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(76552);
|
|
167
140
|
|
|
168
141
|
|
|
169
142
|
|
|
170
|
-
/***/ }),
|
|
171
143
|
|
|
172
|
-
/***/ 25888:
|
|
173
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
174
144
|
|
|
175
|
-
"use strict";
|
|
176
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
177
|
-
/* harmony export */ Ef3: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.LeftSidebar),
|
|
178
|
-
/* harmony export */ ffs: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.AuthTokenProvider),
|
|
179
|
-
/* harmony export */ pqI: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.ApiClientProvider),
|
|
180
|
-
/* harmony export */ wi6: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.Footer)
|
|
181
|
-
/* harmony export */ });
|
|
182
|
-
/* harmony import */ var _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(76552);
|
|
183
145
|
|
|
184
146
|
|
|
185
147
|
|
|
186
|
-
/***/ }),
|
|
187
148
|
|
|
188
|
-
/***/ 26713:
|
|
189
|
-
/***/ ((module) => {
|
|
190
149
|
|
|
191
|
-
"use strict";
|
|
192
|
-
module.exports = require("next/dist/shared/lib/router/utils/is-bot");
|
|
193
150
|
|
|
194
|
-
/***/ }),
|
|
195
151
|
|
|
196
|
-
/***/ 28354:
|
|
197
|
-
/***/ ((module) => {
|
|
198
152
|
|
|
199
|
-
"use strict";
|
|
200
|
-
module.exports = require("util");
|
|
201
153
|
|
|
202
|
-
/***/ }),
|
|
203
154
|
|
|
204
|
-
/***/ 29294:
|
|
205
|
-
/***/ ((module) => {
|
|
206
155
|
|
|
207
|
-
"use strict";
|
|
208
|
-
module.exports = require("next/dist/server/app-render/work-async-storage.external.js");
|
|
209
156
|
|
|
210
|
-
|
|
157
|
+
// We inject the tree and pages here so that we can use them in the route
|
|
158
|
+
// module.
|
|
159
|
+
const tree = {
|
|
160
|
+
children: [
|
|
161
|
+
'',
|
|
162
|
+
{
|
|
163
|
+
children: [
|
|
164
|
+
'[locale]',
|
|
165
|
+
{
|
|
166
|
+
children: [
|
|
167
|
+
'moderate',
|
|
168
|
+
{
|
|
169
|
+
children: [
|
|
170
|
+
'recent',
|
|
171
|
+
{
|
|
172
|
+
children: ['__PAGE__', {}, {
|
|
173
|
+
page: [page12, "/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/moderate/recent/page.tsx"],
|
|
174
|
+
|
|
175
|
+
}]
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
'global-error': [module11, "/home/runner/work/semiont/semiont/apps/frontend/src/app/global-error.tsx"],
|
|
179
|
+
|
|
180
|
+
},
|
|
181
|
+
[]
|
|
182
|
+
]
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
'layout': [module9, "/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/moderate/layout.tsx"],
|
|
186
|
+
'global-error': [module10, "/home/runner/work/semiont/semiont/apps/frontend/src/app/global-error.tsx"],
|
|
187
|
+
|
|
188
|
+
},
|
|
189
|
+
[]
|
|
190
|
+
]
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
'layout': [module6, "/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/layout.tsx"],
|
|
194
|
+
'global-error': [module7, "/home/runner/work/semiont/semiont/apps/frontend/src/app/global-error.tsx"],
|
|
195
|
+
'not-found': [module8, "/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/not-found.tsx"],
|
|
196
|
+
|
|
197
|
+
},
|
|
198
|
+
["_not-found","_global-error","api"]
|
|
199
|
+
]
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
'layout': [module0, "/home/runner/work/semiont/semiont/apps/frontend/src/app/layout.tsx"],
|
|
203
|
+
'error': [module1, "/home/runner/work/semiont/semiont/apps/frontend/src/app/error.tsx"],
|
|
204
|
+
'global-error': [module2, "/home/runner/work/semiont/semiont/apps/frontend/src/app/global-error.tsx"],
|
|
205
|
+
'not-found': [module3, "/home/runner/work/semiont/semiont/apps/frontend/src/app/not-found.tsx"],
|
|
206
|
+
'forbidden': [module4, "next/dist/client/components/builtin/forbidden.js"],
|
|
207
|
+
'unauthorized': [module5, "next/dist/client/components/builtin/unauthorized.js"],
|
|
208
|
+
|
|
209
|
+
},
|
|
210
|
+
[]
|
|
211
|
+
]
|
|
212
|
+
}.children;
|
|
213
|
+
const __next_app_require__ = __webpack_require__
|
|
214
|
+
const __next_app_load_chunk__ = () => Promise.resolve()
|
|
215
|
+
const __next_app__ = {
|
|
216
|
+
require: __next_app_require__,
|
|
217
|
+
loadChunk: __next_app_load_chunk__
|
|
218
|
+
};
|
|
211
219
|
|
|
212
|
-
/***/ 31039:
|
|
213
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
214
220
|
|
|
215
|
-
"use strict";
|
|
216
221
|
|
|
217
|
-
// EXPORTS
|
|
218
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
219
|
-
As: () => (/* binding */ useAuth)
|
|
220
|
-
});
|
|
221
222
|
|
|
222
|
-
// UNUSED EXPORTS: usePermissions, useUserPreferences
|
|
223
223
|
|
|
224
|
-
// EXTERNAL MODULE: ../../node_modules/next-auth/react/index.js
|
|
225
|
-
var react = __webpack_require__(62341);
|
|
226
|
-
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js
|
|
227
|
-
var ssr_react = __webpack_require__(71277);
|
|
228
|
-
// EXTERNAL MODULE: ../../packages/api-client/dist/index.js
|
|
229
|
-
var dist = __webpack_require__(88887);
|
|
230
|
-
;// __barrel_optimize__?names=JWTTokenSchema,validateData!=!../../packages/api-client/dist/index.js
|
|
231
224
|
|
|
232
225
|
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
isAdmin: session?.backendUser?.isAdmin || false,
|
|
260
|
-
isModerator: session?.backendUser?.isModerator || false,
|
|
261
|
-
// Combined auth status
|
|
262
|
-
isFullyAuthenticated: isAuthenticated && hasValidBackendToken
|
|
263
|
-
};
|
|
264
|
-
}, [
|
|
265
|
-
session,
|
|
266
|
-
status
|
|
267
|
-
]);
|
|
268
|
-
return authInfo;
|
|
269
|
-
}
|
|
270
|
-
/**
|
|
271
|
-
* Hook for getting user preferences and settings
|
|
272
|
-
*/ function useUserPreferences() {
|
|
273
|
-
const { session } = useAuth();
|
|
274
|
-
return useMemo(()=>{
|
|
275
|
-
// In the future, this could fetch user preferences from backend
|
|
276
|
-
// For now, return defaults
|
|
277
|
-
return {
|
|
278
|
-
theme: 'system',
|
|
279
|
-
language: 'en',
|
|
280
|
-
timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
|
|
281
|
-
emailNotifications: true
|
|
282
|
-
};
|
|
283
|
-
}, [
|
|
284
|
-
session
|
|
285
|
-
]);
|
|
226
|
+
// Create and export the route module that will be consumed.
|
|
227
|
+
const routeModule = new next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__.AppPageRouteModule({
|
|
228
|
+
definition: {
|
|
229
|
+
kind: next_dist_server_route_kind__WEBPACK_IMPORTED_MODULE_1__.RouteKind.APP_PAGE,
|
|
230
|
+
page: "/[locale]/moderate/recent/page",
|
|
231
|
+
pathname: "/[locale]/moderate/recent",
|
|
232
|
+
// The following aren't used in production.
|
|
233
|
+
bundlePath: '',
|
|
234
|
+
filename: '',
|
|
235
|
+
appPaths: []
|
|
236
|
+
},
|
|
237
|
+
userland: {
|
|
238
|
+
loaderTree: tree
|
|
239
|
+
},
|
|
240
|
+
distDir: ".next" || 0,
|
|
241
|
+
relativeProjectDir: false || ''
|
|
242
|
+
});
|
|
243
|
+
function buildDynamicSegmentPlaceholder(param) {
|
|
244
|
+
const { repeat, optional } = (0,next_dist_shared_lib_router_utils_get_segment_param__WEBPACK_IMPORTED_MODULE_32__.getParamProperties)(param.paramType);
|
|
245
|
+
if (optional) {
|
|
246
|
+
return `[[...${param.paramName}]]`;
|
|
247
|
+
}
|
|
248
|
+
if (repeat) {
|
|
249
|
+
return `[...${param.paramName}]`;
|
|
250
|
+
}
|
|
251
|
+
return `[${param.paramName}]`;
|
|
286
252
|
}
|
|
287
253
|
/**
|
|
288
|
-
*
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
254
|
+
* Builds the cache key for the most complete prerenderable shell we can derive
|
|
255
|
+
* from the shell that matched this request. Only params that can still be
|
|
256
|
+
* filled by `generateStaticParams` are substituted; fully dynamic params stay
|
|
257
|
+
* as placeholders so a request like `/c/foo` can complete `/[one]/[two]` into
|
|
258
|
+
* `/c/[two]` rather than `/c/foo`.
|
|
259
|
+
*/ function buildCompletedShellCacheKey(fallbackPathname, remainingPrerenderableParams, params) {
|
|
260
|
+
const prerenderableParamsByName = new Map(remainingPrerenderableParams.map((param)=>[
|
|
261
|
+
param.paramName,
|
|
262
|
+
param
|
|
263
|
+
]));
|
|
264
|
+
return fallbackPathname.split('/').map((segment)=>{
|
|
265
|
+
const segmentParam = (0,next_dist_shared_lib_router_utils_get_segment_param__WEBPACK_IMPORTED_MODULE_32__.getSegmentParam)(segment);
|
|
266
|
+
if (!segmentParam) {
|
|
267
|
+
return segment;
|
|
299
268
|
}
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
/***/ }),
|
|
315
|
-
|
|
316
|
-
/***/ 32037:
|
|
317
|
-
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
318
|
-
|
|
319
|
-
"use strict";
|
|
320
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
321
|
-
/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
322
|
-
/* harmony export */ });
|
|
323
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71277);
|
|
324
|
-
|
|
325
|
-
function ArrowsRightLeftIcon({ title, titleId, ...props }, svgRef) {
|
|
326
|
-
return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
|
|
327
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
328
|
-
fill: "none",
|
|
329
|
-
viewBox: "0 0 24 24",
|
|
330
|
-
strokeWidth: 1.5,
|
|
331
|
-
stroke: "currentColor",
|
|
332
|
-
"aria-hidden": "true",
|
|
333
|
-
"data-slot": "icon",
|
|
334
|
-
ref: svgRef,
|
|
335
|
-
"aria-labelledby": titleId
|
|
336
|
-
}, props), title ? /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("title", {
|
|
337
|
-
id: titleId
|
|
338
|
-
}, title) : null, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
|
|
339
|
-
strokeLinecap: "round",
|
|
340
|
-
strokeLinejoin: "round",
|
|
341
|
-
d: "M7.5 21 3 16.5m0 0L7.5 12M3 16.5h13.5m0-13.5L21 7.5m0 0L16.5 12M21 7.5H7.5"
|
|
342
|
-
}));
|
|
343
|
-
}
|
|
344
|
-
const ForwardRef = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(ArrowsRightLeftIcon);
|
|
345
|
-
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ForwardRef);
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
/***/ }),
|
|
349
|
-
|
|
350
|
-
/***/ 33873:
|
|
351
|
-
/***/ ((module) => {
|
|
352
|
-
|
|
353
|
-
"use strict";
|
|
354
|
-
module.exports = require("path");
|
|
355
|
-
|
|
356
|
-
/***/ }),
|
|
357
|
-
|
|
358
|
-
/***/ 33898:
|
|
359
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
360
|
-
|
|
361
|
-
"use strict";
|
|
362
|
-
// ESM COMPAT FLAG
|
|
363
|
-
__webpack_require__.r(__webpack_exports__);
|
|
364
|
-
|
|
365
|
-
// EXPORTS
|
|
366
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
367
|
-
"default": () => (/* binding */ ModerateLayout)
|
|
368
|
-
});
|
|
369
|
-
|
|
370
|
-
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-jsx-runtime.js
|
|
371
|
-
var react_jsx_runtime = __webpack_require__(92692);
|
|
372
|
-
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js
|
|
373
|
-
var react = __webpack_require__(71277);
|
|
374
|
-
// EXTERNAL MODULE: ../../node_modules/next-intl/dist/esm/production/react-client/index.js
|
|
375
|
-
var react_client = __webpack_require__(56305);
|
|
376
|
-
// EXTERNAL MODULE: ../../node_modules/next-auth/react/index.js
|
|
377
|
-
var next_auth_react = __webpack_require__(62341);
|
|
378
|
-
// EXTERNAL MODULE: __barrel_optimize__?names=ApiClientProvider,AuthTokenProvider,Footer,LeftSidebar!=!../../packages/react-ui/dist/index.mjs
|
|
379
|
-
var dist = __webpack_require__(25888);
|
|
380
|
-
// EXTERNAL MODULE: ./src/i18n/routing.ts
|
|
381
|
-
var routing = __webpack_require__(99704);
|
|
382
|
-
// EXTERNAL MODULE: __barrel_optimize__?names=SimpleNavigation,useEventSubscriptions!=!../../packages/react-ui/dist/index.mjs
|
|
383
|
-
var react_ui_dist = __webpack_require__(25197);
|
|
384
|
-
;// ../../node_modules/@heroicons/react/24/outline/esm/ClockIcon.js
|
|
385
|
-
|
|
386
|
-
function ClockIcon({ title, titleId, ...props }, svgRef) {
|
|
387
|
-
return /*#__PURE__*/ react.createElement("svg", Object.assign({
|
|
388
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
389
|
-
fill: "none",
|
|
390
|
-
viewBox: "0 0 24 24",
|
|
391
|
-
strokeWidth: 1.5,
|
|
392
|
-
stroke: "currentColor",
|
|
393
|
-
"aria-hidden": "true",
|
|
394
|
-
"data-slot": "icon",
|
|
395
|
-
ref: svgRef,
|
|
396
|
-
"aria-labelledby": titleId
|
|
397
|
-
}, props), title ? /*#__PURE__*/ react.createElement("title", {
|
|
398
|
-
id: titleId
|
|
399
|
-
}, title) : null, /*#__PURE__*/ react.createElement("path", {
|
|
400
|
-
strokeLinecap: "round",
|
|
401
|
-
strokeLinejoin: "round",
|
|
402
|
-
d: "M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"
|
|
403
|
-
}));
|
|
404
|
-
}
|
|
405
|
-
const ForwardRef = /*#__PURE__*/ react.forwardRef(ClockIcon);
|
|
406
|
-
/* harmony default export */ const esm_ClockIcon = (ForwardRef);
|
|
407
|
-
|
|
408
|
-
;// ../../node_modules/@heroicons/react/24/outline/esm/TagIcon.js
|
|
409
|
-
|
|
410
|
-
function TagIcon({ title, titleId, ...props }, svgRef) {
|
|
411
|
-
return /*#__PURE__*/ react.createElement("svg", Object.assign({
|
|
412
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
413
|
-
fill: "none",
|
|
414
|
-
viewBox: "0 0 24 24",
|
|
415
|
-
strokeWidth: 1.5,
|
|
416
|
-
stroke: "currentColor",
|
|
417
|
-
"aria-hidden": "true",
|
|
418
|
-
"data-slot": "icon",
|
|
419
|
-
ref: svgRef,
|
|
420
|
-
"aria-labelledby": titleId
|
|
421
|
-
}, props), title ? /*#__PURE__*/ react.createElement("title", {
|
|
422
|
-
id: titleId
|
|
423
|
-
}, title) : null, /*#__PURE__*/ react.createElement("path", {
|
|
424
|
-
strokeLinecap: "round",
|
|
425
|
-
strokeLinejoin: "round",
|
|
426
|
-
d: "M9.568 3H5.25A2.25 2.25 0 0 0 3 5.25v4.318c0 .597.237 1.17.659 1.591l9.581 9.581c.699.699 1.78.872 2.607.33a18.095 18.095 0 0 0 5.223-5.223c.542-.827.369-1.908-.33-2.607L11.16 3.66A2.25 2.25 0 0 0 9.568 3Z"
|
|
427
|
-
}), /*#__PURE__*/ react.createElement("path", {
|
|
428
|
-
strokeLinecap: "round",
|
|
429
|
-
strokeLinejoin: "round",
|
|
430
|
-
d: "M6 6h.008v.008H6V6Z"
|
|
431
|
-
}));
|
|
432
|
-
}
|
|
433
|
-
const TagIcon_ForwardRef = /*#__PURE__*/ react.forwardRef(TagIcon);
|
|
434
|
-
/* harmony default export */ const esm_TagIcon = (TagIcon_ForwardRef);
|
|
435
|
-
|
|
436
|
-
;// ../../node_modules/@heroicons/react/24/outline/esm/BookOpenIcon.js
|
|
437
|
-
|
|
438
|
-
function BookOpenIcon({ title, titleId, ...props }, svgRef) {
|
|
439
|
-
return /*#__PURE__*/ react.createElement("svg", Object.assign({
|
|
440
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
441
|
-
fill: "none",
|
|
442
|
-
viewBox: "0 0 24 24",
|
|
443
|
-
strokeWidth: 1.5,
|
|
444
|
-
stroke: "currentColor",
|
|
445
|
-
"aria-hidden": "true",
|
|
446
|
-
"data-slot": "icon",
|
|
447
|
-
ref: svgRef,
|
|
448
|
-
"aria-labelledby": titleId
|
|
449
|
-
}, props), title ? /*#__PURE__*/ react.createElement("title", {
|
|
450
|
-
id: titleId
|
|
451
|
-
}, title) : null, /*#__PURE__*/ react.createElement("path", {
|
|
452
|
-
strokeLinecap: "round",
|
|
453
|
-
strokeLinejoin: "round",
|
|
454
|
-
d: "M12 6.042A8.967 8.967 0 0 0 6 3.75c-1.052 0-2.062.18-3 .512v14.25A8.987 8.987 0 0 1 6 18c2.305 0 4.408.867 6 2.292m0-14.25a8.966 8.966 0 0 1 6-2.292c1.052 0 2.062.18 3 .512v14.25A8.987 8.987 0 0 0 18 18a8.967 8.967 0 0 0-6 2.292m0-14.25v14.25"
|
|
455
|
-
}));
|
|
269
|
+
const remainingParam = prerenderableParamsByName.get(segmentParam.paramName);
|
|
270
|
+
if (!remainingParam) {
|
|
271
|
+
return segment;
|
|
272
|
+
}
|
|
273
|
+
const value = params == null ? void 0 : params[remainingParam.paramName];
|
|
274
|
+
if (!value) {
|
|
275
|
+
return segment;
|
|
276
|
+
}
|
|
277
|
+
const encodedValue = Array.isArray(value) ? value.map((item)=>encodeURIComponent(item)).join('/') : encodeURIComponent(value);
|
|
278
|
+
return segment.replace(buildDynamicSegmentPlaceholder(remainingParam), encodedValue);
|
|
279
|
+
}).join('/') || '/';
|
|
456
280
|
}
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
const
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
// Handle sidebar toggle events
|
|
479
|
-
const handleSidebarToggle = (0,react.useCallback)(()=>{
|
|
480
|
-
toggleCollapsed();
|
|
481
|
-
}, [
|
|
482
|
-
toggleCollapsed
|
|
483
|
-
]);
|
|
484
|
-
// Subscribe to sidebar toggle events
|
|
485
|
-
(0,react_ui_dist/* useEventSubscriptions */.C$z)({
|
|
486
|
-
'browse:sidebar-toggle': handleSidebarToggle
|
|
281
|
+
async function handler(req, res, ctx) {
|
|
282
|
+
var _this, _prerenderManifest_routes_resolvedPathname, _prerenderInfo_fallbackRootParams, _prerenderInfo_fallbackRouteParams;
|
|
283
|
+
if (ctx.requestMeta) {
|
|
284
|
+
(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.setRequestMeta)(req, ctx.requestMeta);
|
|
285
|
+
}
|
|
286
|
+
if (routeModule.isDev) {
|
|
287
|
+
(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.addRequestMeta)(req, 'devRequestTimingInternalsEnd', process.hrtime.bigint());
|
|
288
|
+
}
|
|
289
|
+
const isMinimalMode = Boolean((0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'minimalMode'));
|
|
290
|
+
let srcPage = "/[locale]/moderate/recent/page";
|
|
291
|
+
// turbopack doesn't normalize `/index` in the page name
|
|
292
|
+
// so we need to to process dynamic routes properly
|
|
293
|
+
// TODO: fix turbopack providing differing value from webpack
|
|
294
|
+
if (false) {} else if (srcPage === '/index') {
|
|
295
|
+
// we always normalize /index specifically
|
|
296
|
+
srcPage = '/';
|
|
297
|
+
}
|
|
298
|
+
const multiZoneDraftMode = false;
|
|
299
|
+
const prepareResult = await routeModule.prepare(req, res, {
|
|
300
|
+
srcPage,
|
|
301
|
+
multiZoneDraftMode
|
|
487
302
|
});
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
303
|
+
if (!prepareResult) {
|
|
304
|
+
res.statusCode = 400;
|
|
305
|
+
res.end('Bad Request');
|
|
306
|
+
ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());
|
|
307
|
+
return null;
|
|
308
|
+
}
|
|
309
|
+
const { buildId, query, params, pageIsDynamic, buildManifest, nextFontManifest, reactLoadableManifest, serverActionsManifest, clientReferenceManifest, subresourceIntegrityManifest, prerenderManifest, isDraftMode, resolvedPathname, revalidateOnlyGenerated, routerServerContext, nextConfig, parsedUrl, interceptionRoutePatterns, deploymentId, clientAssetToken } = prepareResult;
|
|
310
|
+
const normalizedSrcPage = (0,next_dist_shared_lib_router_utils_app_paths__WEBPACK_IMPORTED_MODULE_13__.normalizeAppPath)(srcPage);
|
|
311
|
+
let { isOnDemandRevalidate } = prepareResult;
|
|
312
|
+
// We use the resolvedPathname instead of the parsedUrl.pathname because it
|
|
313
|
+
// is not rewritten as resolvedPathname is. This will ensure that the correct
|
|
314
|
+
// prerender info is used instead of using the original pathname as the
|
|
315
|
+
// source. If however PPR is enabled and cacheComponents is disabled, we
|
|
316
|
+
// treat the pathname as dynamic. Currently, there's a bug in the PPR
|
|
317
|
+
// implementation that incorrectly leaves %%drp placeholders in the output of
|
|
318
|
+
// parallel routes. This is addressed with cacheComponents.
|
|
319
|
+
const prerenderMatch = nextConfig.experimental.ppr && !nextConfig.cacheComponents && (0,next_dist_shared_lib_router_utils_interception_routes__WEBPACK_IMPORTED_MODULE_31__.isInterceptionRouteAppPath)(resolvedPathname) ? null : routeModule.match(resolvedPathname, prerenderManifest);
|
|
320
|
+
const prerenderInfo = (prerenderMatch == null ? void 0 : prerenderMatch.route) ?? null;
|
|
321
|
+
const isPrerendered = !!prerenderManifest.routes[resolvedPathname];
|
|
322
|
+
const userAgent = req.headers['user-agent'] || '';
|
|
323
|
+
const botType = (0,next_dist_shared_lib_router_utils_is_bot__WEBPACK_IMPORTED_MODULE_16__.getBotType)(userAgent);
|
|
324
|
+
const isHtmlBot = (0,next_dist_server_lib_streaming_metadata__WEBPACK_IMPORTED_MODULE_12__.isHtmlBotRequest)(req);
|
|
325
|
+
/**
|
|
326
|
+
* If true, this indicates that the request being made is for an app
|
|
327
|
+
* prefetch request.
|
|
328
|
+
*/ const isPrefetchRSCRequest = (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'isPrefetchRSCRequest') ?? req.headers[next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__.NEXT_ROUTER_PREFETCH_HEADER] === '1' // exclude runtime prefetches, which use '2'
|
|
329
|
+
;
|
|
330
|
+
// NOTE: Don't delete headers[RSC] yet, it still needs to be used in renderToHTML later
|
|
331
|
+
const isRSCRequest = (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'isRSCRequest') ?? Boolean(req.headers[next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__.RSC_HEADER]);
|
|
332
|
+
const isPossibleServerAction = (0,next_dist_server_lib_server_action_request_meta__WEBPACK_IMPORTED_MODULE_14__.getIsPossibleServerAction)(req);
|
|
333
|
+
/**
|
|
334
|
+
* If the route being rendered is an app page, and the ppr feature has been
|
|
335
|
+
* enabled, then the given route _could_ support PPR.
|
|
336
|
+
*/ const couldSupportPPR = (0,next_dist_server_lib_experimental_ppr__WEBPACK_IMPORTED_MODULE_9__.checkIsAppPPREnabled)(nextConfig.experimental.ppr);
|
|
337
|
+
// Stash postponed state for server actions when in minimal mode.
|
|
338
|
+
// We extract it here so the RDC is available for the re-render after the action completes.
|
|
339
|
+
const resumeStateLengthHeader = req.headers[next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20__.NEXT_RESUME_STATE_LENGTH_HEADER];
|
|
340
|
+
if (!(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'postponed') && isMinimalMode && couldSupportPPR && isPossibleServerAction && resumeStateLengthHeader && typeof resumeStateLengthHeader === 'string') {
|
|
341
|
+
const stateLength = parseInt(resumeStateLengthHeader, 10);
|
|
342
|
+
const { maxPostponedStateSize, maxPostponedStateSizeBytes } = (0,next_dist_server_lib_postponed_request_body__WEBPACK_IMPORTED_MODULE_26__.getMaxPostponedStateSize)(nextConfig.experimental.maxPostponedStateSize);
|
|
343
|
+
if (!isNaN(stateLength) && stateLength > 0) {
|
|
344
|
+
var _nextConfig_experimental_serverActions;
|
|
345
|
+
if (stateLength > maxPostponedStateSizeBytes) {
|
|
346
|
+
res.statusCode = 413;
|
|
347
|
+
res.end((0,next_dist_server_lib_postponed_request_body__WEBPACK_IMPORTED_MODULE_26__.getPostponedStateExceededErrorMessage)(maxPostponedStateSize));
|
|
348
|
+
ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());
|
|
349
|
+
return null;
|
|
350
|
+
}
|
|
351
|
+
// Calculate max total body size to prevent buffering excessively large
|
|
352
|
+
// payloads before the action handler checks. We use stateLength (not
|
|
353
|
+
// maxPostponedStateSizeBytes) so the postponed state doesn't eat into
|
|
354
|
+
// the action body budget - it's already validated above.
|
|
355
|
+
const defaultActionBodySizeLimit = '1 MB';
|
|
356
|
+
const actionBodySizeLimit = ((_nextConfig_experimental_serverActions = nextConfig.experimental.serverActions) == null ? void 0 : _nextConfig_experimental_serverActions.bodySizeLimit) ?? defaultActionBodySizeLimit;
|
|
357
|
+
const actionBodySizeLimitBytes = actionBodySizeLimit !== defaultActionBodySizeLimit ? (__webpack_require__(32683).parse)(actionBodySizeLimit) : 1024 * 1024 // 1 MB
|
|
358
|
+
;
|
|
359
|
+
const maxTotalBodySize = stateLength + actionBodySizeLimitBytes;
|
|
360
|
+
const fullBody = await (0,next_dist_server_lib_postponed_request_body__WEBPACK_IMPORTED_MODULE_26__.readBodyWithSizeLimit)(req, maxTotalBodySize);
|
|
361
|
+
if (fullBody === null) {
|
|
362
|
+
res.statusCode = 413;
|
|
363
|
+
res.end(`Request body exceeded limit. ` + `To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit`);
|
|
364
|
+
ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());
|
|
365
|
+
return null;
|
|
366
|
+
}
|
|
367
|
+
if (fullBody.length >= stateLength) {
|
|
368
|
+
// Extract postponed state from the beginning
|
|
369
|
+
const postponedState = fullBody.subarray(0, stateLength).toString('utf8');
|
|
370
|
+
(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.addRequestMeta)(req, 'postponed', postponedState);
|
|
371
|
+
// Store the remaining action body for the action handler
|
|
372
|
+
const actionBody = fullBody.subarray(stateLength);
|
|
373
|
+
(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.addRequestMeta)(req, 'actionBody', actionBody);
|
|
374
|
+
} else {
|
|
375
|
+
throw Object.defineProperty(new Error(`invariant: expected ${stateLength} bytes of postponed state but only received ${fullBody.length} bytes`), "__NEXT_ERROR_CODE", {
|
|
376
|
+
value: "E979",
|
|
377
|
+
enumerable: false,
|
|
378
|
+
configurable: true
|
|
379
|
+
});
|
|
380
|
+
}
|
|
512
381
|
}
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
bars: Bars3Icon/* default */.A
|
|
526
|
-
},
|
|
527
|
-
collapseSidebarLabel: tSidebar('collapseSidebar'),
|
|
528
|
-
expandSidebarLabel: tSidebar('expandSidebar')
|
|
529
|
-
});
|
|
530
|
-
}
|
|
531
|
-
|
|
532
|
-
// EXTERNAL MODULE: ./src/components/CookiePreferences.tsx
|
|
533
|
-
var CookiePreferences = __webpack_require__(80386);
|
|
534
|
-
// EXTERNAL MODULE: ./src/contexts/KeyboardShortcutsContext.tsx + 3 modules
|
|
535
|
-
var KeyboardShortcutsContext = __webpack_require__(40953);
|
|
536
|
-
// EXTERNAL MODULE: ./src/lib/routing.ts
|
|
537
|
-
var lib_routing = __webpack_require__(46391);
|
|
538
|
-
// EXTERNAL MODULE: ./src/hooks/useAuth.ts + 1 modules
|
|
539
|
-
var useAuth = __webpack_require__(31039);
|
|
540
|
-
;// ./src/app/[locale]/moderate/layout.tsx
|
|
541
|
-
/* __next_internal_client_entry_do_not_use__ default auto */
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
// Note: Authentication is handled by middleware.ts for all moderate routes
|
|
552
|
-
// This ensures centralized security and returns 404 for unauthorized users
|
|
553
|
-
function ModerateLayout({ children }) {
|
|
554
|
-
const t = (0,react_client/* useTranslations */.c)('Footer');
|
|
555
|
-
const tNav = (0,react_client/* useTranslations */.c)('Navigation');
|
|
556
|
-
const tHome = (0,react_client/* useTranslations */.c)('Home');
|
|
557
|
-
const keyboardContext = (0,react.useContext)(KeyboardShortcutsContext/* KeyboardShortcutsContext */.GZ);
|
|
558
|
-
const { isAuthenticated, isAdmin, isModerator } = (0,useAuth/* useAuth */.As)();
|
|
559
|
-
const { data: session } = (0,next_auth_react.useSession)();
|
|
560
|
-
// Extract auth token from session
|
|
561
|
-
const authToken = session?.backendToken || null;
|
|
562
|
-
// Middleware has already verified moderator/admin access
|
|
563
|
-
return /*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist/* AuthTokenProvider */.ffs, {
|
|
564
|
-
token: authToken,
|
|
565
|
-
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist/* ApiClientProvider */.pqI, {
|
|
566
|
-
baseUrl: "",
|
|
567
|
-
children: /*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
568
|
-
className: "min-h-screen bg-gray-50 dark:bg-gray-900 flex flex-col",
|
|
569
|
-
children: [
|
|
570
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
571
|
-
className: "flex flex-1",
|
|
572
|
-
children: [
|
|
573
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist/* LeftSidebar */.Ef3, {
|
|
574
|
-
Link: lib_routing/* Link */.N,
|
|
575
|
-
routes: lib_routing/* routes */.J,
|
|
576
|
-
t: tNav,
|
|
577
|
-
tHome: tHome,
|
|
578
|
-
brandingLink: "/",
|
|
579
|
-
collapsible: true,
|
|
580
|
-
storageKey: "moderation-sidebar-collapsed",
|
|
581
|
-
isAuthenticated: isAuthenticated,
|
|
582
|
-
isAdmin: isAdmin,
|
|
583
|
-
isModerator: isModerator,
|
|
584
|
-
children: (isCollapsed, toggleCollapsed, navigationMenu)=>/*#__PURE__*/ (0,react_jsx_runtime.jsx)(ModerationNavigation, {
|
|
585
|
-
isCollapsed: isCollapsed,
|
|
586
|
-
toggleCollapsed: toggleCollapsed,
|
|
587
|
-
navigationMenu: navigationMenu
|
|
588
|
-
})
|
|
589
|
-
}),
|
|
590
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("main", {
|
|
591
|
-
className: "flex-1 p-6 flex flex-col",
|
|
592
|
-
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
593
|
-
className: "max-w-7xl mx-auto flex-1 flex flex-col w-full",
|
|
594
|
-
children: children
|
|
595
|
-
})
|
|
596
|
-
})
|
|
597
|
-
]
|
|
598
|
-
}),
|
|
599
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist/* Footer */.wi6, {
|
|
600
|
-
Link: lib_routing/* Link */.N,
|
|
601
|
-
routes: lib_routing/* routes */.J,
|
|
602
|
-
t: t,
|
|
603
|
-
CookiePreferences: CookiePreferences/* CookiePreferences */.f,
|
|
604
|
-
...keyboardContext?.openKeyboardHelp && {
|
|
605
|
-
onOpenKeyboardHelp: keyboardContext.openKeyboardHelp
|
|
606
|
-
}
|
|
607
|
-
})
|
|
608
|
-
]
|
|
609
|
-
})
|
|
610
|
-
})
|
|
611
|
-
});
|
|
612
|
-
}
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
/***/ }),
|
|
616
|
-
|
|
617
|
-
/***/ 34901:
|
|
618
|
-
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
|
619
|
-
|
|
620
|
-
Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 9839));
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
/***/ }),
|
|
624
|
-
|
|
625
|
-
/***/ 36297:
|
|
626
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
627
|
-
|
|
628
|
-
"use strict";
|
|
629
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
630
|
-
/* harmony export */ M7E: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.Toolbar)
|
|
631
|
-
/* harmony export */ });
|
|
632
|
-
/* harmony import */ var _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(76552);
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
/***/ }),
|
|
637
|
-
|
|
638
|
-
/***/ 41025:
|
|
639
|
-
/***/ ((module) => {
|
|
640
|
-
|
|
641
|
-
"use strict";
|
|
642
|
-
module.exports = require("next/dist/server/app-render/dynamic-access-async-storage.external.js");
|
|
643
|
-
|
|
644
|
-
/***/ }),
|
|
645
|
-
|
|
646
|
-
/***/ 43954:
|
|
647
|
-
/***/ ((module) => {
|
|
648
|
-
|
|
649
|
-
"use strict";
|
|
650
|
-
module.exports = require("next/dist/shared/lib/router/utils/interception-routes");
|
|
651
|
-
|
|
652
|
-
/***/ }),
|
|
653
|
-
|
|
654
|
-
/***/ 50436:
|
|
655
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
656
|
-
|
|
657
|
-
"use strict";
|
|
658
|
-
|
|
659
|
-
// EXPORTS
|
|
660
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
661
|
-
t: () => (/* binding */ ToolbarPanels)
|
|
662
|
-
});
|
|
663
|
-
|
|
664
|
-
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-jsx-runtime.js
|
|
665
|
-
var react_jsx_runtime = __webpack_require__(92692);
|
|
666
|
-
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js
|
|
667
|
-
var react = __webpack_require__(71277);
|
|
668
|
-
// EXTERNAL MODULE: ../../packages/react-ui/dist/index.mjs + 27 modules
|
|
669
|
-
var dist = __webpack_require__(76552);
|
|
670
|
-
;// __barrel_optimize__?names=ResizeHandle,SettingsPanel,useEventSubscriptions,usePanelWidth!=!../../packages/react-ui/dist/index.mjs
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
// EXTERNAL MODULE: ../../node_modules/next-auth/react/index.js
|
|
674
|
-
var next_auth_react = __webpack_require__(62341);
|
|
675
|
-
// EXTERNAL MODULE: ../../node_modules/next/dist/api/image.js
|
|
676
|
-
var api_image = __webpack_require__(93523);
|
|
677
|
-
// EXTERNAL MODULE: ../../node_modules/next-intl/dist/esm/production/react-client/index.js
|
|
678
|
-
var react_client = __webpack_require__(56305);
|
|
679
|
-
;// __barrel_optimize__?names=formatTime,sanitizeImageURL,useSessionExpiry!=!../../packages/react-ui/dist/index.mjs
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
// EXTERNAL MODULE: ./src/hooks/useAuth.ts + 1 modules
|
|
683
|
-
var useAuth = __webpack_require__(31039);
|
|
684
|
-
;// ./src/components/UserPanel.tsx
|
|
685
|
-
/* __next_internal_client_entry_do_not_use__ UserPanel auto */
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
// Fallback avatar when image fails to load or is invalid
|
|
693
|
-
const FALLBACK_AVATAR = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTYiIGN5PSIxNiIgcj0iMTYiIGZpbGw9IiM2QjcyODAiLz4KPHBhdGggZD0iTTE2IDE2QzE4LjIwOTEgMTYgMjAgMTQuMjA5MSAyMCAxMkMyMCA5Ljc5MDg2IDE4LjIwOTEgOCAxNiA4QzEzLjc5MDkgOCAxMiA5Ljc5MDg2IDEyIDEyQzEyIDE0LjIwOTEgMTMuNzkwOSAxNiAxNiAxNloiIGZpbGw9IiNFNUU3RUIiLz4KPHBhdGggZD0iTTI0IDI1QzI0IDIxLjY4NjMgMjAuNDE4MyAxOSAxNiAxOUMxMS41ODE3IDE5IDggMjEuNjg2MyA4IDI1IiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPg==';
|
|
694
|
-
function UserPanel() {
|
|
695
|
-
const t = (0,react_client/* useTranslations */.c)('UserPanel');
|
|
696
|
-
const { displayName, avatarUrl, userDomain, isAdmin, isModerator } = (0,useAuth/* useAuth */.As)();
|
|
697
|
-
const [imageError, setImageError] = (0,react.useState)(false);
|
|
698
|
-
const { timeRemaining } = (0,dist.useSessionExpiry)();
|
|
699
|
-
const sessionTimeFormatted = (0,dist.formatTime)(timeRemaining) ?? 'Unknown';
|
|
700
|
-
// Sanitize and validate the profile image URL
|
|
701
|
-
const profileImageUrl = (()=>{
|
|
702
|
-
if (!avatarUrl || imageError) {
|
|
703
|
-
return FALLBACK_AVATAR;
|
|
382
|
+
}
|
|
383
|
+
if (!(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'postponed') && couldSupportPPR && req.headers[next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20__.NEXT_RESUME_HEADER] === '1' && req.method === 'POST') {
|
|
384
|
+
const { maxPostponedStateSize, maxPostponedStateSizeBytes } = (0,next_dist_server_lib_postponed_request_body__WEBPACK_IMPORTED_MODULE_26__.getMaxPostponedStateSize)(nextConfig.experimental.maxPostponedStateSize);
|
|
385
|
+
// Decode the postponed state from the request body, it will come as
|
|
386
|
+
// an array of buffers, so collect them and then concat them to form
|
|
387
|
+
// the string.
|
|
388
|
+
const body = await (0,next_dist_server_lib_postponed_request_body__WEBPACK_IMPORTED_MODULE_26__.readBodyWithSizeLimit)(req, maxPostponedStateSizeBytes);
|
|
389
|
+
if (body === null) {
|
|
390
|
+
res.statusCode = 413;
|
|
391
|
+
res.end((0,next_dist_server_lib_postponed_request_body__WEBPACK_IMPORTED_MODULE_26__.getPostponedStateExceededErrorMessage)(maxPostponedStateSize));
|
|
392
|
+
ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());
|
|
393
|
+
return null;
|
|
704
394
|
}
|
|
705
|
-
const
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
395
|
+
const postponed = body.toString('utf8');
|
|
396
|
+
(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.addRequestMeta)(req, 'postponed', postponed);
|
|
397
|
+
}
|
|
398
|
+
// When enabled, this will allow the use of the `?__nextppronly` query to
|
|
399
|
+
// enable debugging of the static shell.
|
|
400
|
+
const hasDebugStaticShellQuery = false && 0;
|
|
401
|
+
// When enabled, this will allow the use of the `?__nextppronly` query
|
|
402
|
+
// to enable debugging of the fallback shell.
|
|
403
|
+
const hasDebugFallbackShellQuery = hasDebugStaticShellQuery && query.__nextppronly === 'fallback';
|
|
404
|
+
// Whether the testing API is exposed (dev mode or explicit flag)
|
|
405
|
+
const exposeTestingApi = routeModule.isDev === true || nextConfig.experimental.exposeTestingApiInProductionBuild === true;
|
|
406
|
+
// Enable the Instant Navigation Testing API. Renders only the prefetched
|
|
407
|
+
// portion of the page, excluding dynamic content. This allows tests to
|
|
408
|
+
// assert on the prefetched UI state deterministically.
|
|
409
|
+
// - Header: Used for client-side navigations where we can set request headers
|
|
410
|
+
// - Cookie: Used for MPA navigations (page reload, full page load) where we
|
|
411
|
+
// can't set request headers. Only applies to document requests (no RSC
|
|
412
|
+
// header) - RSC requests should proceed normally even during a locked scope,
|
|
413
|
+
// with blocking happening on the client side.
|
|
414
|
+
const isInstantNavigationTest = exposeTestingApi && (req.headers[next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__.NEXT_INSTANT_PREFETCH_HEADER] === '1' || req.headers[next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__.RSC_HEADER] === undefined && typeof req.headers.cookie === 'string' && req.headers.cookie.includes(next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__.NEXT_INSTANT_TEST_COOKIE + '='));
|
|
415
|
+
// This page supports PPR if it is marked as being `PARTIALLY_STATIC` in the
|
|
416
|
+
// prerender manifest and this is an app page.
|
|
417
|
+
const isRoutePPREnabled = // When the instant navigation testing API is active, enable the PPR
|
|
418
|
+
// prerender path even without Cache Components. In dev mode without CC,
|
|
419
|
+
// static pages need this path to produce buffered segment data (the
|
|
420
|
+
// legacy prerender path hangs in dev mode).
|
|
421
|
+
(couldSupportPPR || isInstantNavigationTest) && (((_this = prerenderManifest.routes[normalizedSrcPage] ?? prerenderManifest.dynamicRoutes[normalizedSrcPage]) == null ? void 0 : _this.renderingMode) === 'PARTIALLY_STATIC' || // Ideally we'd want to check the appConfig to see if this page has PPR
|
|
422
|
+
// enabled or not, but that would require plumbing the appConfig through
|
|
423
|
+
// to the server during development. We assume that the page supports it
|
|
424
|
+
// but only during development or when the testing API is exposed.
|
|
425
|
+
(hasDebugStaticShellQuery || isInstantNavigationTest) && (exposeTestingApi || (routerServerContext == null ? void 0 : routerServerContext.experimentalTestProxy) === true));
|
|
426
|
+
const isDebugStaticShell = (hasDebugStaticShellQuery || isInstantNavigationTest) && isRoutePPREnabled;
|
|
427
|
+
// We should enable debugging dynamic accesses when the static shell
|
|
428
|
+
// debugging has been enabled and we're also in development mode.
|
|
429
|
+
const isDebugDynamicAccesses = isDebugStaticShell && routeModule.isDev === true;
|
|
430
|
+
const isDebugFallbackShell = hasDebugFallbackShellQuery && isRoutePPREnabled;
|
|
431
|
+
// If we're in minimal mode, then try to get the postponed information from
|
|
432
|
+
// the request metadata. If available, use it for resuming the postponed
|
|
433
|
+
// render.
|
|
434
|
+
const minimalPostponed = isRoutePPREnabled ? (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'postponed') : undefined;
|
|
435
|
+
// If PPR is enabled, and this is a RSC request (but not a prefetch), then
|
|
436
|
+
// we can use this fact to only generate the flight data for the request
|
|
437
|
+
// because we can't cache the HTML (as it's also dynamic).
|
|
438
|
+
const staticPrefetchDataRoute = (_prerenderManifest_routes_resolvedPathname = prerenderManifest.routes[resolvedPathname]) == null ? void 0 : _prerenderManifest_routes_resolvedPathname.prefetchDataRoute;
|
|
439
|
+
let isDynamicRSCRequest = isRoutePPREnabled && isRSCRequest && !isPrefetchRSCRequest && // If generated at build time, treat the RSC request as static
|
|
440
|
+
// so we can serve the prebuilt .rsc without a dynamic render.
|
|
441
|
+
// Only do this for routes that have a concrete prefetchDataRoute.
|
|
442
|
+
!staticPrefetchDataRoute;
|
|
443
|
+
// During a PPR revalidation, the RSC request is not dynamic if we do not have the postponed data.
|
|
444
|
+
// We only attach the postponed data during a resume. If there's no postponed data, then it must be a revalidation.
|
|
445
|
+
// This is to ensure that we don't bypass the cache during a revalidation.
|
|
446
|
+
if (isMinimalMode) {
|
|
447
|
+
isDynamicRSCRequest = isDynamicRSCRequest && !!minimalPostponed;
|
|
448
|
+
}
|
|
449
|
+
// Need to read this before it's stripped by stripFlightHeaders. We don't
|
|
450
|
+
// need to transfer it to the request meta because it's only read
|
|
451
|
+
// within this function; the static segment data should have already been
|
|
452
|
+
// generated, so we will always either return a static response or a 404.
|
|
453
|
+
const segmentPrefetchHeader = (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'segmentPrefetchRSCRequest');
|
|
454
|
+
// TODO: investigate existing bug with shouldServeStreamingMetadata always
|
|
455
|
+
// being true for a revalidate due to modifying the base-server this.renderOpts
|
|
456
|
+
// when fixing this to correct logic it causes hydration issue since we set
|
|
457
|
+
// serveStreamingMetadata to true during export
|
|
458
|
+
const serveStreamingMetadata = botType && isRoutePPREnabled ? false : !userAgent ? true : (0,next_dist_server_lib_streaming_metadata__WEBPACK_IMPORTED_MODULE_12__.shouldServeStreamingMetadata)(userAgent, nextConfig.htmlLimitedBots);
|
|
459
|
+
const isSSG = Boolean((prerenderInfo || isPrerendered || prerenderManifest.routes[normalizedSrcPage]) && // If this is a bot request and PPR is enabled, then we don't want
|
|
460
|
+
// to serve a static response. This applies to both DOM bots (like Googlebot)
|
|
461
|
+
// and HTML-limited bots.
|
|
462
|
+
!(botType && isRoutePPREnabled));
|
|
463
|
+
// When a page supports cacheComponents, we can support RDC for Navigations
|
|
464
|
+
const supportsRDCForNavigations = isRoutePPREnabled && nextConfig.cacheComponents === true;
|
|
465
|
+
// In development, we always want to generate dynamic HTML.
|
|
466
|
+
const supportsDynamicResponse = // If we're in development, we always support dynamic HTML, unless it's
|
|
467
|
+
// a data request, in which case we only produce static HTML.
|
|
468
|
+
routeModule.isDev === true || // If this is not SSG or does not have static paths, then it supports
|
|
469
|
+
// dynamic HTML.
|
|
470
|
+
!isSSG || // If this request has provided postponed data, it supports dynamic
|
|
471
|
+
// HTML.
|
|
472
|
+
typeof minimalPostponed === 'string' || // If this handler supports onCacheEntryV2, then we can only support
|
|
473
|
+
// dynamic responses if it's a dynamic RSC request and not in minimal mode. If it
|
|
474
|
+
// doesn't support it we must fallback to the default behavior.
|
|
475
|
+
(supportsRDCForNavigations && (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'onCacheEntryV2') ? // which will generate the RDC for the route. When resuming a Dynamic
|
|
476
|
+
// RSC request, we'll pass the minimal postponed data to the render
|
|
477
|
+
// which will trigger the `supportsDynamicResponse` to be true.
|
|
478
|
+
isDynamicRSCRequest && !isMinimalMode : isDynamicRSCRequest);
|
|
479
|
+
// When bots request PPR page, perform the full dynamic rendering.
|
|
480
|
+
// This applies to both DOM bots (like Googlebot) and HTML-limited bots.
|
|
481
|
+
const shouldWaitOnAllReady = Boolean(botType) && isRoutePPREnabled;
|
|
482
|
+
const remainingPrerenderableParams = (prerenderInfo == null ? void 0 : prerenderInfo.remainingPrerenderableParams) ?? [];
|
|
483
|
+
const hasUnresolvedRootFallbackParams = (prerenderInfo == null ? void 0 : prerenderInfo.fallback) === null && (((_prerenderInfo_fallbackRootParams = prerenderInfo.fallbackRootParams) == null ? void 0 : _prerenderInfo_fallbackRootParams.length) ?? 0) > 0;
|
|
484
|
+
let ssgCacheKey = null;
|
|
485
|
+
if (!isDraftMode && isSSG && !supportsDynamicResponse && !isPossibleServerAction && !minimalPostponed && !isDynamicRSCRequest) {
|
|
486
|
+
// For normal SSG routes we cache by the fully resolved pathname. For
|
|
487
|
+
// partial fallbacks we instead derive the cache key from the shell
|
|
488
|
+
// that matched this request so `/prefix/[one]/[two]` can specialize into
|
|
489
|
+
// `/prefix/c/[two]` without promoting all the way to `/prefix/c/foo`.
|
|
490
|
+
const fallbackPathname = prerenderMatch ? typeof (prerenderInfo == null ? void 0 : prerenderInfo.fallback) === 'string' ? prerenderInfo.fallback : prerenderMatch.source : null;
|
|
491
|
+
if (nextConfig.experimental.partialFallbacks === true && fallbackPathname && (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams) && !hasUnresolvedRootFallbackParams) {
|
|
492
|
+
if (remainingPrerenderableParams.length > 0) {
|
|
493
|
+
const completedShellCacheKey = buildCompletedShellCacheKey(fallbackPathname, remainingPrerenderableParams, params);
|
|
494
|
+
// If applying the current request params doesn't make the shell any
|
|
495
|
+
// more complete, then this shell is already at its most complete
|
|
496
|
+
// form and should remain shared rather than creating a new cache entry.
|
|
497
|
+
ssgCacheKey = completedShellCacheKey !== fallbackPathname ? completedShellCacheKey : null;
|
|
498
|
+
}
|
|
499
|
+
} else {
|
|
500
|
+
ssgCacheKey = resolvedPathname;
|
|
709
501
|
}
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
502
|
+
}
|
|
503
|
+
// the staticPathKey differs from ssgCacheKey since
|
|
504
|
+
// ssgCacheKey is null in dev since we're always in "dynamic"
|
|
505
|
+
// mode in dev to bypass the cache. It can also be null for partial
|
|
506
|
+
// fallback shells that should remain shared and must not create a
|
|
507
|
+
// param-specific ISR entry, but we still need to honor fallback handling.
|
|
508
|
+
let staticPathKey = ssgCacheKey;
|
|
509
|
+
if (!staticPathKey && (routeModule.isDev || isSSG && pageIsDynamic && (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams))) {
|
|
510
|
+
staticPathKey = resolvedPathname;
|
|
511
|
+
}
|
|
512
|
+
// If this is a request for an app path that should be statically generated
|
|
513
|
+
// and we aren't in the edge runtime, strip the flight headers so it will
|
|
514
|
+
// generate the static response.
|
|
515
|
+
if (!routeModule.isDev && !isDraftMode && isSSG && isRSCRequest && !isDynamicRSCRequest) {
|
|
516
|
+
(0,next_dist_server_app_render_strip_flight_headers__WEBPACK_IMPORTED_MODULE_7__/* .stripFlightHeaders */ .d)(req.headers);
|
|
517
|
+
}
|
|
518
|
+
const ComponentMod = {
|
|
519
|
+
...next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_27__,
|
|
520
|
+
tree,
|
|
521
|
+
handler,
|
|
522
|
+
routeModule,
|
|
523
|
+
__next_app__
|
|
524
|
+
};
|
|
525
|
+
// Before rendering (which initializes component tree modules), we have to
|
|
526
|
+
// set the reference manifests to our global store so Server Action's
|
|
527
|
+
// encryption util can access to them at the top level of the page module.
|
|
528
|
+
if (serverActionsManifest && clientReferenceManifest) {
|
|
529
|
+
(0,next_dist_server_app_render_manifests_singleton__WEBPACK_IMPORTED_MODULE_11__.setManifestsSingleton)({
|
|
530
|
+
page: srcPage,
|
|
531
|
+
clientReferenceManifest,
|
|
532
|
+
serverActionsManifest
|
|
715
533
|
});
|
|
716
|
-
}
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsx)(api_image["default"], {
|
|
731
|
-
src: profileImageUrl,
|
|
732
|
-
alt: t('profileAlt', {
|
|
733
|
-
name: displayName || t('user')
|
|
734
|
-
}),
|
|
735
|
-
width: 48,
|
|
736
|
-
height: 48,
|
|
737
|
-
className: "w-12 h-12 rounded-full object-cover",
|
|
738
|
-
onError: ()=>setImageError(true),
|
|
739
|
-
unoptimized: profileImageUrl === FALLBACK_AVATAR,
|
|
740
|
-
sizes: "48px",
|
|
741
|
-
quality: 85
|
|
742
|
-
}),
|
|
743
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
744
|
-
className: "flex-1 min-w-0",
|
|
745
|
-
children: [
|
|
746
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
747
|
-
className: "semiont-panel-text",
|
|
748
|
-
children: displayName || t('user')
|
|
749
|
-
}),
|
|
750
|
-
userDomain && /*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
751
|
-
className: "semiont-panel-text-secondary",
|
|
752
|
-
children: [
|
|
753
|
-
"@",
|
|
754
|
-
userDomain
|
|
755
|
-
]
|
|
756
|
-
})
|
|
757
|
-
]
|
|
758
|
-
})
|
|
759
|
-
]
|
|
760
|
-
}),
|
|
761
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
762
|
-
children: [
|
|
763
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("label", {
|
|
764
|
-
className: "semiont-panel-label",
|
|
765
|
-
children: t('session')
|
|
766
|
-
}),
|
|
767
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
768
|
-
className: "semiont-session-box",
|
|
769
|
-
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
770
|
-
className: "semiont-panel-hint",
|
|
771
|
-
children: t('expiresIn', {
|
|
772
|
-
time: sessionTimeFormatted
|
|
773
|
-
})
|
|
774
|
-
})
|
|
775
|
-
})
|
|
776
|
-
]
|
|
777
|
-
}),
|
|
778
|
-
(isAdmin || isModerator) && /*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
779
|
-
children: [
|
|
780
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("label", {
|
|
781
|
-
className: "semiont-panel-label",
|
|
782
|
-
children: t('privileges')
|
|
783
|
-
}),
|
|
784
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
785
|
-
className: "space-y-1",
|
|
786
|
-
children: [
|
|
787
|
-
isAdmin && /*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
788
|
-
className: "semiont-privilege-badge semiont-privilege-badge--admin",
|
|
789
|
-
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)("span", {
|
|
790
|
-
className: "semiont-privilege-text",
|
|
791
|
-
children: t('administrator')
|
|
792
|
-
})
|
|
793
|
-
}),
|
|
794
|
-
isModerator && /*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
795
|
-
className: "semiont-privilege-badge semiont-privilege-badge--moderator",
|
|
796
|
-
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)("span", {
|
|
797
|
-
className: "semiont-privilege-text",
|
|
798
|
-
children: t('moderator')
|
|
799
|
-
})
|
|
800
|
-
})
|
|
801
|
-
]
|
|
802
|
-
})
|
|
803
|
-
]
|
|
804
|
-
}),
|
|
805
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
806
|
-
className: "semiont-panel-divider",
|
|
807
|
-
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)("button", {
|
|
808
|
-
onClick: handleSignOut,
|
|
809
|
-
className: "semiont-signout-button",
|
|
810
|
-
children: t('signOut')
|
|
811
|
-
})
|
|
812
|
-
})
|
|
813
|
-
]
|
|
814
|
-
})
|
|
815
|
-
]
|
|
816
|
-
});
|
|
817
|
-
}
|
|
818
|
-
|
|
819
|
-
// EXTERNAL MODULE: ../../node_modules/use-intl/dist/esm/production/react.js + 18 modules
|
|
820
|
-
var production_react = __webpack_require__(23211);
|
|
821
|
-
// EXTERNAL MODULE: ./src/i18n/routing.ts
|
|
822
|
-
var routing = __webpack_require__(99704);
|
|
823
|
-
;// __barrel_optimize__?names=COMMON_PANELS!=!../../packages/react-ui/dist/index.mjs
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
;// ./src/components/toolbar/ToolbarPanels.tsx
|
|
827
|
-
/* __next_internal_client_entry_do_not_use__ ToolbarPanels auto */
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
/**
|
|
835
|
-
* Renders the toolbar panel container with common panels (user, settings)
|
|
836
|
-
* and any context-specific panels passed as children.
|
|
837
|
-
*
|
|
838
|
-
* Settings changes are handled via GlobalSettingsEventBus - no callbacks needed.
|
|
839
|
-
*
|
|
840
|
-
* @example
|
|
841
|
-
* // Simple context (compose, discover, moderate, admin pages)
|
|
842
|
-
* <ToolbarPanels
|
|
843
|
-
* activePanel={activePanel}
|
|
844
|
-
* theme={theme}
|
|
845
|
-
* showLineNumbers={showLineNumbers}
|
|
846
|
-
* />
|
|
847
|
-
*
|
|
848
|
-
* @example
|
|
849
|
-
* // Document context with custom panels
|
|
850
|
-
* <ToolbarPanels
|
|
851
|
-
* activePanel={activePanel}
|
|
852
|
-
* theme={theme}
|
|
853
|
-
* showLineNumbers={showLineNumbers}
|
|
854
|
-
* >
|
|
855
|
-
* {activePanel === 'annotations' && <UnifiedAnnotationsPanel ... />}
|
|
856
|
-
* {activePanel === 'history' && <AnnotationHistory ... />}
|
|
857
|
-
* {activePanel === 'info' && <ResourceInfoPanel ... />}
|
|
858
|
-
* {activePanel === 'collaboration' && <CollaborationPanel ... />}
|
|
859
|
-
* {activePanel === 'jsonld' && <JsonLdPanel ... />}
|
|
860
|
-
* </ToolbarPanels>
|
|
861
|
-
*/ function ToolbarPanels({ activePanel, theme, showLineNumbers, hoverDelayMs, children }) {
|
|
862
|
-
const locale = (0,production_react/* useLocale */.Ym)();
|
|
863
|
-
const router = (0,routing/* useRouter */.rd)();
|
|
864
|
-
const pathname = (0,routing/* usePathname */.a8)();
|
|
865
|
-
const [isPending, startTransition] = (0,react.useTransition)();
|
|
866
|
-
// Panel width management with localStorage persistence
|
|
867
|
-
const { width, setWidth, minWidth, maxWidth } = (0,dist.usePanelWidth)();
|
|
868
|
-
// Handle locale change events
|
|
869
|
-
const handleLocaleChanged = (0,react.useCallback)(({ locale: newLocale })=>{
|
|
870
|
-
if (!pathname) return;
|
|
871
|
-
startTransition(()=>{
|
|
872
|
-
// The router from @/i18n/routing is locale-aware and will handle the locale prefix
|
|
873
|
-
router.replace(pathname, {
|
|
874
|
-
locale: newLocale
|
|
875
|
-
});
|
|
876
|
-
});
|
|
877
|
-
}, [
|
|
878
|
-
pathname,
|
|
879
|
-
router,
|
|
880
|
-
startTransition
|
|
881
|
-
]);
|
|
882
|
-
// Subscribe to locale change events
|
|
883
|
-
(0,dist.useEventSubscriptions)({
|
|
884
|
-
'settings:locale-changed': handleLocaleChanged
|
|
885
|
-
});
|
|
886
|
-
// Don't render container if no panel is active
|
|
887
|
-
if (!activePanel) {
|
|
888
|
-
return null;
|
|
889
|
-
}
|
|
890
|
-
// In simple context (no children), only user and settings panels are valid.
|
|
891
|
-
// If a resource-specific panel is still active from a previous route, hide the container.
|
|
892
|
-
if (!children && !dist.COMMON_PANELS.includes(activePanel)) {
|
|
893
|
-
return null;
|
|
894
|
-
}
|
|
895
|
-
return /*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
896
|
-
className: "semiont-toolbar-panels",
|
|
897
|
-
style: {
|
|
898
|
-
width: `${width}px`,
|
|
899
|
-
position: 'relative'
|
|
900
|
-
},
|
|
901
|
-
children: [
|
|
902
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist.ResizeHandle, {
|
|
903
|
-
onResize: setWidth,
|
|
904
|
-
minWidth: minWidth,
|
|
905
|
-
maxWidth: maxWidth,
|
|
906
|
-
position: "left",
|
|
907
|
-
ariaLabel: "Resize right panel"
|
|
908
|
-
}),
|
|
909
|
-
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
910
|
-
className: "semiont-toolbar-panels__content",
|
|
911
|
-
children: [
|
|
912
|
-
children,
|
|
913
|
-
activePanel === 'user' && /*#__PURE__*/ (0,react_jsx_runtime.jsx)(UserPanel, {}),
|
|
914
|
-
activePanel === 'settings' && /*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist.SettingsPanel, {
|
|
915
|
-
showLineNumbers: showLineNumbers,
|
|
916
|
-
theme: theme,
|
|
917
|
-
hoverDelayMs: hoverDelayMs,
|
|
918
|
-
locale: locale,
|
|
919
|
-
isPendingLocaleChange: isPending
|
|
920
|
-
})
|
|
921
|
-
]
|
|
922
|
-
})
|
|
923
|
-
]
|
|
924
|
-
});
|
|
925
|
-
}
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
/***/ }),
|
|
929
|
-
|
|
930
|
-
/***/ 55511:
|
|
931
|
-
/***/ ((module) => {
|
|
932
|
-
|
|
933
|
-
"use strict";
|
|
934
|
-
module.exports = require("crypto");
|
|
935
|
-
|
|
936
|
-
/***/ }),
|
|
937
|
-
|
|
938
|
-
/***/ 56677:
|
|
939
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
940
|
-
|
|
941
|
-
"use strict";
|
|
942
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
943
|
-
/* harmony export */ C$z: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.useEventSubscriptions),
|
|
944
|
-
/* harmony export */ DPo: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.useTheme),
|
|
945
|
-
/* harmony export */ cvF: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.useLineNumbers),
|
|
946
|
-
/* harmony export */ ySJ: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.usePanelBrowse)
|
|
947
|
-
/* harmony export */ });
|
|
948
|
-
/* harmony import */ var _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(76552);
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
/***/ }),
|
|
953
|
-
|
|
954
|
-
/***/ 59406:
|
|
955
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
956
|
-
|
|
957
|
-
"use strict";
|
|
958
|
-
__webpack_require__.r(__webpack_exports__);
|
|
959
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
960
|
-
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
961
|
-
/* harmony export */ });
|
|
962
|
-
/* harmony import */ var react_server_dom_webpack_server__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(30274);
|
|
963
|
-
/* harmony import */ var react_server_dom_webpack_server__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_server_dom_webpack_server__WEBPACK_IMPORTED_MODULE_0__);
|
|
964
|
-
// This file is generated by the Webpack next-flight-loader.
|
|
965
|
-
|
|
966
|
-
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react_server_dom_webpack_server__WEBPACK_IMPORTED_MODULE_0__.registerClientReference)(
|
|
967
|
-
function() { throw new Error("Attempted to call the default export of \"/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/moderate/layout.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component."); },
|
|
968
|
-
"/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/moderate/layout.tsx",
|
|
969
|
-
"default",
|
|
970
|
-
));
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
/***/ }),
|
|
974
|
-
|
|
975
|
-
/***/ 62256:
|
|
976
|
-
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
|
977
|
-
|
|
978
|
-
Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 59406));
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
/***/ }),
|
|
982
|
-
|
|
983
|
-
/***/ 63033:
|
|
984
|
-
/***/ ((module) => {
|
|
985
|
-
|
|
986
|
-
"use strict";
|
|
987
|
-
module.exports = require("next/dist/server/app-render/work-unit-async-storage.external.js");
|
|
988
|
-
|
|
989
|
-
/***/ }),
|
|
990
|
-
|
|
991
|
-
/***/ 69407:
|
|
992
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
993
|
-
|
|
994
|
-
"use strict";
|
|
995
|
-
__webpack_require__.r(__webpack_exports__);
|
|
996
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
997
|
-
/* harmony export */ GlobalError: () => (/* reexport safe */ _home_runner_work_semiont_semiont_apps_frontend_src_app_global_error_tsx__WEBPACK_IMPORTED_MODULE_25__["default"]),
|
|
998
|
-
/* harmony export */ __next_app__: () => (/* binding */ __next_app__),
|
|
999
|
-
/* harmony export */ handler: () => (/* binding */ handler),
|
|
1000
|
-
/* harmony export */ routeModule: () => (/* binding */ routeModule)
|
|
1001
|
-
/* harmony export */ });
|
|
1002
|
-
/* harmony import */ var next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(80666);
|
|
1003
|
-
/* harmony import */ var next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__);
|
|
1004
|
-
/* harmony import */ var next_dist_server_route_kind__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(51421);
|
|
1005
|
-
/* harmony import */ var next_dist_server_instrumentation_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4675);
|
|
1006
|
-
/* harmony import */ var next_dist_server_lib_trace_tracer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29796);
|
|
1007
|
-
/* harmony import */ var next_dist_server_lib_trace_tracer__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_trace_tracer__WEBPACK_IMPORTED_MODULE_3__);
|
|
1008
|
-
/* harmony import */ var next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(54046);
|
|
1009
|
-
/* harmony import */ var next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__);
|
|
1010
|
-
/* harmony import */ var next_dist_server_lib_trace_constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(74928);
|
|
1011
|
-
/* harmony import */ var next_dist_server_lib_trace_constants__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_trace_constants__WEBPACK_IMPORTED_MODULE_5__);
|
|
1012
|
-
/* harmony import */ var next_dist_server_app_render_interop_default__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(19727);
|
|
1013
|
-
/* harmony import */ var next_dist_server_app_render_strip_flight_headers__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(24268);
|
|
1014
|
-
/* harmony import */ var next_dist_server_base_http_node__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(60402);
|
|
1015
|
-
/* harmony import */ var next_dist_server_base_http_node__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_base_http_node__WEBPACK_IMPORTED_MODULE_8__);
|
|
1016
|
-
/* harmony import */ var next_dist_server_lib_experimental_ppr__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(22040);
|
|
1017
|
-
/* harmony import */ var next_dist_server_lib_experimental_ppr__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_experimental_ppr__WEBPACK_IMPORTED_MODULE_9__);
|
|
1018
|
-
/* harmony import */ var next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(27186);
|
|
1019
|
-
/* harmony import */ var next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10__);
|
|
1020
|
-
/* harmony import */ var next_dist_server_app_render_manifests_singleton__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(49228);
|
|
1021
|
-
/* harmony import */ var next_dist_server_app_render_manifests_singleton__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_app_render_manifests_singleton__WEBPACK_IMPORTED_MODULE_11__);
|
|
1022
|
-
/* harmony import */ var next_dist_server_lib_streaming_metadata__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(97485);
|
|
1023
|
-
/* harmony import */ var next_dist_server_lib_streaming_metadata__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_streaming_metadata__WEBPACK_IMPORTED_MODULE_12__);
|
|
1024
|
-
/* harmony import */ var next_dist_shared_lib_router_utils_app_paths__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(261);
|
|
1025
|
-
/* harmony import */ var next_dist_shared_lib_router_utils_app_paths__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_router_utils_app_paths__WEBPACK_IMPORTED_MODULE_13__);
|
|
1026
|
-
/* harmony import */ var next_dist_server_lib_server_action_request_meta__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(80885);
|
|
1027
|
-
/* harmony import */ var next_dist_server_lib_server_action_request_meta__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_lib_server_action_request_meta__WEBPACK_IMPORTED_MODULE_14__);
|
|
1028
|
-
/* harmony import */ var next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(7162);
|
|
1029
|
-
/* harmony import */ var next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__);
|
|
1030
|
-
/* harmony import */ var next_dist_shared_lib_router_utils_is_bot__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(26713);
|
|
1031
|
-
/* harmony import */ var next_dist_shared_lib_router_utils_is_bot__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_router_utils_is_bot__WEBPACK_IMPORTED_MODULE_16__);
|
|
1032
|
-
/* harmony import */ var next_dist_server_response_cache__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(70972);
|
|
1033
|
-
/* harmony import */ var next_dist_server_response_cache__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_response_cache__WEBPACK_IMPORTED_MODULE_17__);
|
|
1034
|
-
/* harmony import */ var next_dist_lib_fallback__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(57341);
|
|
1035
|
-
/* harmony import */ var next_dist_lib_fallback__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(next_dist_lib_fallback__WEBPACK_IMPORTED_MODULE_18__);
|
|
1036
|
-
/* harmony import */ var next_dist_server_render_result__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(95105);
|
|
1037
|
-
/* harmony import */ var next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(38038);
|
|
1038
|
-
/* harmony import */ var next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20__);
|
|
1039
|
-
/* harmony import */ var next_dist_server_stream_utils_encoded_tags__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(29898);
|
|
1040
|
-
/* harmony import */ var next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(98798);
|
|
1041
|
-
/* harmony import */ var next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_22__);
|
|
1042
|
-
/* harmony import */ var next_dist_shared_lib_no_fallback_error_external__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(86439);
|
|
1043
|
-
/* harmony import */ var next_dist_shared_lib_no_fallback_error_external__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_no_fallback_error_external__WEBPACK_IMPORTED_MODULE_23__);
|
|
1044
|
-
/* harmony import */ var next_dist_shared_lib_size_limit__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(77068);
|
|
1045
|
-
/* harmony import */ var next_dist_shared_lib_size_limit__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_size_limit__WEBPACK_IMPORTED_MODULE_24__);
|
|
1046
|
-
/* harmony import */ var _home_runner_work_semiont_semiont_apps_frontend_src_app_global_error_tsx__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(56357);
|
|
1047
|
-
/* harmony import */ var next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(35402);
|
|
1048
|
-
/* harmony import */ var next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_26__);
|
|
1049
|
-
/* harmony import */ var next_dist_client_components_redirect_status_code__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(29059);
|
|
1050
|
-
/* harmony import */ var next_dist_client_components_redirect_status_code__WEBPACK_IMPORTED_MODULE_27___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_redirect_status_code__WEBPACK_IMPORTED_MODULE_27__);
|
|
1051
|
-
/* harmony import */ var next_dist_shared_lib_invariant_error__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(70722);
|
|
1052
|
-
/* harmony import */ var next_dist_shared_lib_invariant_error__WEBPACK_IMPORTED_MODULE_28___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_invariant_error__WEBPACK_IMPORTED_MODULE_28__);
|
|
1053
|
-
/* harmony import */ var next_dist_lib_scheduler__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(31182);
|
|
1054
|
-
/* harmony import */ var next_dist_lib_scheduler__WEBPACK_IMPORTED_MODULE_29___default = /*#__PURE__*/__webpack_require__.n(next_dist_lib_scheduler__WEBPACK_IMPORTED_MODULE_29__);
|
|
1055
|
-
/* harmony import */ var next_dist_shared_lib_router_utils_interception_routes__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(43954);
|
|
1056
|
-
/* harmony import */ var next_dist_shared_lib_router_utils_interception_routes__WEBPACK_IMPORTED_MODULE_30___default = /*#__PURE__*/__webpack_require__.n(next_dist_shared_lib_router_utils_interception_routes__WEBPACK_IMPORTED_MODULE_30__);
|
|
1057
|
-
/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
1058
|
-
/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_26__) if(["default","GlobalError","__next_app__","routeModule","handler"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_26__[__WEBPACK_IMPORT_KEY__]
|
|
1059
|
-
/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
1060
|
-
const module0 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 95235));
|
|
1061
|
-
const module1 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 25195));
|
|
1062
|
-
const module2 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 56357));
|
|
1063
|
-
const module3 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 72353));
|
|
1064
|
-
const module4 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.t.bind(__webpack_require__, 4253, 23));
|
|
1065
|
-
const module5 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.t.bind(__webpack_require__, 49184, 23));
|
|
1066
|
-
const module6 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 57149));
|
|
1067
|
-
const module7 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 28310));
|
|
1068
|
-
const module8 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 59406));
|
|
1069
|
-
const page9 = () => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 9839));
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
// We inject the tree and pages here so that we can use them in the route
|
|
1096
|
-
// module.
|
|
1097
|
-
const tree = {
|
|
1098
|
-
children: [
|
|
1099
|
-
'',
|
|
1100
|
-
{
|
|
1101
|
-
children: [
|
|
1102
|
-
'[locale]',
|
|
1103
|
-
{
|
|
1104
|
-
children: [
|
|
1105
|
-
'moderate',
|
|
1106
|
-
{
|
|
1107
|
-
children: [
|
|
1108
|
-
'recent',
|
|
1109
|
-
{
|
|
1110
|
-
children: ['__PAGE__', {}, {
|
|
1111
|
-
page: [page9, "/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/moderate/recent/page.tsx"],
|
|
1112
|
-
|
|
1113
|
-
}]
|
|
1114
|
-
},
|
|
1115
|
-
{
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
}
|
|
1119
|
-
]
|
|
1120
|
-
},
|
|
1121
|
-
{
|
|
1122
|
-
'layout': [module8, "/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/moderate/layout.tsx"],
|
|
1123
|
-
|
|
1124
|
-
}
|
|
1125
|
-
]
|
|
1126
|
-
},
|
|
1127
|
-
{
|
|
1128
|
-
'layout': [module6, "/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/layout.tsx"],
|
|
1129
|
-
'not-found': [module7, "/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/not-found.tsx"],
|
|
1130
|
-
|
|
1131
|
-
}
|
|
1132
|
-
]
|
|
1133
|
-
},
|
|
1134
|
-
{
|
|
1135
|
-
'layout': [module0, "/home/runner/work/semiont/semiont/apps/frontend/src/app/layout.tsx"],
|
|
1136
|
-
'error': [module1, "/home/runner/work/semiont/semiont/apps/frontend/src/app/error.tsx"],
|
|
1137
|
-
'global-error': [module2, "/home/runner/work/semiont/semiont/apps/frontend/src/app/global-error.tsx"],
|
|
1138
|
-
'not-found': [module3, "/home/runner/work/semiont/semiont/apps/frontend/src/app/not-found.tsx"],
|
|
1139
|
-
'forbidden': [module4, "next/dist/client/components/builtin/forbidden.js"],
|
|
1140
|
-
'unauthorized': [module5, "next/dist/client/components/builtin/unauthorized.js"],
|
|
1141
|
-
|
|
1142
|
-
}
|
|
1143
|
-
]
|
|
1144
|
-
}.children;
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
const __next_app_require__ = __webpack_require__
|
|
1148
|
-
const __next_app_load_chunk__ = () => Promise.resolve()
|
|
1149
|
-
const __next_app__ = {
|
|
1150
|
-
require: __next_app_require__,
|
|
1151
|
-
loadChunk: __next_app_load_chunk__
|
|
1152
|
-
};
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
// Create and export the route module that will be consumed.
|
|
1160
|
-
const routeModule = new next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__.AppPageRouteModule({
|
|
1161
|
-
definition: {
|
|
1162
|
-
kind: next_dist_server_route_kind__WEBPACK_IMPORTED_MODULE_1__.RouteKind.APP_PAGE,
|
|
1163
|
-
page: "/[locale]/moderate/recent/page",
|
|
1164
|
-
pathname: "/[locale]/moderate/recent",
|
|
1165
|
-
// The following aren't used in production.
|
|
1166
|
-
bundlePath: '',
|
|
1167
|
-
filename: '',
|
|
1168
|
-
appPaths: []
|
|
1169
|
-
},
|
|
1170
|
-
userland: {
|
|
1171
|
-
loaderTree: tree
|
|
1172
|
-
},
|
|
1173
|
-
distDir: ".next" || 0,
|
|
1174
|
-
relativeProjectDir: false || ''
|
|
1175
|
-
});
|
|
1176
|
-
async function handler(req, res, ctx) {
|
|
1177
|
-
var _this;
|
|
1178
|
-
if (routeModule.isDev) {
|
|
1179
|
-
(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.addRequestMeta)(req, 'devRequestTimingInternalsEnd', process.hrtime.bigint());
|
|
1180
|
-
}
|
|
1181
|
-
const isMinimalMode = Boolean( false || (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'minimalMode'));
|
|
1182
|
-
let srcPage = "/[locale]/moderate/recent/page";
|
|
1183
|
-
// turbopack doesn't normalize `/index` in the page name
|
|
1184
|
-
// so we need to to process dynamic routes properly
|
|
1185
|
-
// TODO: fix turbopack providing differing value from webpack
|
|
1186
|
-
if (false) {} else if (srcPage === '/index') {
|
|
1187
|
-
// we always normalize /index specifically
|
|
1188
|
-
srcPage = '/';
|
|
1189
|
-
}
|
|
1190
|
-
const multiZoneDraftMode = false;
|
|
1191
|
-
const prepareResult = await routeModule.prepare(req, res, {
|
|
1192
|
-
srcPage,
|
|
1193
|
-
multiZoneDraftMode
|
|
1194
|
-
});
|
|
1195
|
-
if (!prepareResult) {
|
|
1196
|
-
res.statusCode = 400;
|
|
1197
|
-
res.end('Bad Request');
|
|
1198
|
-
ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());
|
|
1199
|
-
return null;
|
|
1200
|
-
}
|
|
1201
|
-
const { buildId, query, params, pageIsDynamic, buildManifest, nextFontManifest, reactLoadableManifest, serverActionsManifest, clientReferenceManifest, subresourceIntegrityManifest, prerenderManifest, isDraftMode, resolvedPathname, revalidateOnlyGenerated, routerServerContext, nextConfig, parsedUrl, interceptionRoutePatterns, deploymentId } = prepareResult;
|
|
1202
|
-
const normalizedSrcPage = (0,next_dist_shared_lib_router_utils_app_paths__WEBPACK_IMPORTED_MODULE_13__.normalizeAppPath)(srcPage);
|
|
1203
|
-
let { isOnDemandRevalidate } = prepareResult;
|
|
1204
|
-
// We use the resolvedPathname instead of the parsedUrl.pathname because it
|
|
1205
|
-
// is not rewritten as resolvedPathname is. This will ensure that the correct
|
|
1206
|
-
// prerender info is used instead of using the original pathname as the
|
|
1207
|
-
// source. If however PPR is enabled and cacheComponents is disabled, we
|
|
1208
|
-
// treat the pathname as dynamic. Currently, there's a bug in the PPR
|
|
1209
|
-
// implementation that incorrectly leaves %%drp placeholders in the output of
|
|
1210
|
-
// parallel routes. This is addressed with cacheComponents.
|
|
1211
|
-
const prerenderInfo = nextConfig.experimental.ppr && !nextConfig.cacheComponents && (0,next_dist_shared_lib_router_utils_interception_routes__WEBPACK_IMPORTED_MODULE_30__.isInterceptionRouteAppPath)(resolvedPathname) ? null : routeModule.match(resolvedPathname, prerenderManifest);
|
|
1212
|
-
const isPrerendered = !!prerenderManifest.routes[resolvedPathname];
|
|
1213
|
-
const userAgent = req.headers['user-agent'] || '';
|
|
1214
|
-
const botType = (0,next_dist_shared_lib_router_utils_is_bot__WEBPACK_IMPORTED_MODULE_16__.getBotType)(userAgent);
|
|
1215
|
-
const isHtmlBot = (0,next_dist_server_lib_streaming_metadata__WEBPACK_IMPORTED_MODULE_12__.isHtmlBotRequest)(req);
|
|
1216
|
-
/**
|
|
1217
|
-
* If true, this indicates that the request being made is for an app
|
|
1218
|
-
* prefetch request.
|
|
1219
|
-
*/ const isPrefetchRSCRequest = (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'isPrefetchRSCRequest') ?? req.headers[next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__.NEXT_ROUTER_PREFETCH_HEADER] === '1' // exclude runtime prefetches, which use '2'
|
|
1220
|
-
;
|
|
1221
|
-
// NOTE: Don't delete headers[RSC] yet, it still needs to be used in renderToHTML later
|
|
1222
|
-
const isRSCRequest = (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'isRSCRequest') ?? Boolean(req.headers[next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__.RSC_HEADER]);
|
|
1223
|
-
const isPossibleServerAction = (0,next_dist_server_lib_server_action_request_meta__WEBPACK_IMPORTED_MODULE_14__.getIsPossibleServerAction)(req);
|
|
1224
|
-
/**
|
|
1225
|
-
* If the route being rendered is an app page, and the ppr feature has been
|
|
1226
|
-
* enabled, then the given route _could_ support PPR.
|
|
1227
|
-
*/ const couldSupportPPR = (0,next_dist_server_lib_experimental_ppr__WEBPACK_IMPORTED_MODULE_9__.checkIsAppPPREnabled)(nextConfig.experimental.ppr);
|
|
1228
|
-
if (!(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'postponed') && couldSupportPPR && req.headers[next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20__.NEXT_RESUME_HEADER] === '1' && req.method === 'POST') {
|
|
1229
|
-
// Decode the postponed state from the request body, it will come as
|
|
1230
|
-
// an array of buffers, so collect them and then concat them to form
|
|
1231
|
-
// the string.
|
|
1232
|
-
const body = [];
|
|
1233
|
-
for await (const chunk of req){
|
|
1234
|
-
body.push(chunk);
|
|
1235
|
-
}
|
|
1236
|
-
const postponed = Buffer.concat(body).toString('utf8');
|
|
1237
|
-
(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.addRequestMeta)(req, 'postponed', postponed);
|
|
1238
|
-
}
|
|
1239
|
-
// When enabled, this will allow the use of the `?__nextppronly` query to
|
|
1240
|
-
// enable debugging of the static shell.
|
|
1241
|
-
const hasDebugStaticShellQuery = false && 0;
|
|
1242
|
-
// When enabled, this will allow the use of the `?__nextppronly` query
|
|
1243
|
-
// to enable debugging of the fallback shell.
|
|
1244
|
-
const hasDebugFallbackShellQuery = hasDebugStaticShellQuery && query.__nextppronly === 'fallback';
|
|
1245
|
-
// This page supports PPR if it is marked as being `PARTIALLY_STATIC` in the
|
|
1246
|
-
// prerender manifest and this is an app page.
|
|
1247
|
-
const isRoutePPREnabled = couldSupportPPR && (((_this = prerenderManifest.routes[normalizedSrcPage] ?? prerenderManifest.dynamicRoutes[normalizedSrcPage]) == null ? void 0 : _this.renderingMode) === 'PARTIALLY_STATIC' || // Ideally we'd want to check the appConfig to see if this page has PPR
|
|
1248
|
-
// enabled or not, but that would require plumbing the appConfig through
|
|
1249
|
-
// to the server during development. We assume that the page supports it
|
|
1250
|
-
// but only during development.
|
|
1251
|
-
hasDebugStaticShellQuery && (routeModule.isDev === true || (routerServerContext == null ? void 0 : routerServerContext.experimentalTestProxy) === true));
|
|
1252
|
-
const isDebugStaticShell = hasDebugStaticShellQuery && isRoutePPREnabled;
|
|
1253
|
-
// We should enable debugging dynamic accesses when the static shell
|
|
1254
|
-
// debugging has been enabled and we're also in development mode.
|
|
1255
|
-
const isDebugDynamicAccesses = isDebugStaticShell && routeModule.isDev === true;
|
|
1256
|
-
const isDebugFallbackShell = hasDebugFallbackShellQuery && isRoutePPREnabled;
|
|
1257
|
-
// If we're in minimal mode, then try to get the postponed information from
|
|
1258
|
-
// the request metadata. If available, use it for resuming the postponed
|
|
1259
|
-
// render.
|
|
1260
|
-
const minimalPostponed = isRoutePPREnabled ? (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'postponed') : undefined;
|
|
1261
|
-
// If PPR is enabled, and this is a RSC request (but not a prefetch), then
|
|
1262
|
-
// we can use this fact to only generate the flight data for the request
|
|
1263
|
-
// because we can't cache the HTML (as it's also dynamic).
|
|
1264
|
-
let isDynamicRSCRequest = isRoutePPREnabled && isRSCRequest && !isPrefetchRSCRequest;
|
|
1265
|
-
// During a PPR revalidation, the RSC request is not dynamic if we do not have the postponed data.
|
|
1266
|
-
// We only attach the postponed data during a resume. If there's no postponed data, then it must be a revalidation.
|
|
1267
|
-
// This is to ensure that we don't bypass the cache during a revalidation.
|
|
1268
|
-
if (isMinimalMode) {
|
|
1269
|
-
isDynamicRSCRequest = isDynamicRSCRequest && !!minimalPostponed;
|
|
1270
|
-
}
|
|
1271
|
-
// Need to read this before it's stripped by stripFlightHeaders. We don't
|
|
1272
|
-
// need to transfer it to the request meta because it's only read
|
|
1273
|
-
// within this function; the static segment data should have already been
|
|
1274
|
-
// generated, so we will always either return a static response or a 404.
|
|
1275
|
-
const segmentPrefetchHeader = (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'segmentPrefetchRSCRequest');
|
|
1276
|
-
// TODO: investigate existing bug with shouldServeStreamingMetadata always
|
|
1277
|
-
// being true for a revalidate due to modifying the base-server this.renderOpts
|
|
1278
|
-
// when fixing this to correct logic it causes hydration issue since we set
|
|
1279
|
-
// serveStreamingMetadata to true during export
|
|
1280
|
-
const serveStreamingMetadata = isHtmlBot && isRoutePPREnabled ? false : !userAgent ? true : (0,next_dist_server_lib_streaming_metadata__WEBPACK_IMPORTED_MODULE_12__.shouldServeStreamingMetadata)(userAgent, nextConfig.htmlLimitedBots);
|
|
1281
|
-
const isSSG = Boolean((prerenderInfo || isPrerendered || prerenderManifest.routes[normalizedSrcPage]) && // If this is a html bot request and PPR is enabled, then we don't want
|
|
1282
|
-
// to serve a static response.
|
|
1283
|
-
!(isHtmlBot && isRoutePPREnabled));
|
|
1284
|
-
// When a page supports cacheComponents, we can support RDC for Navigations
|
|
1285
|
-
const supportsRDCForNavigations = isRoutePPREnabled && nextConfig.cacheComponents === true;
|
|
1286
|
-
// In development, we always want to generate dynamic HTML.
|
|
1287
|
-
const supportsDynamicResponse = // If we're in development, we always support dynamic HTML, unless it's
|
|
1288
|
-
// a data request, in which case we only produce static HTML.
|
|
1289
|
-
routeModule.isDev === true || // If this is not SSG or does not have static paths, then it supports
|
|
1290
|
-
// dynamic HTML.
|
|
1291
|
-
!isSSG || // If this request has provided postponed data, it supports dynamic
|
|
1292
|
-
// HTML.
|
|
1293
|
-
typeof minimalPostponed === 'string' || // If this handler supports onCacheEntryV2, then we can only support
|
|
1294
|
-
// dynamic responses if it's a dynamic RSC request and not in minimal mode. If it
|
|
1295
|
-
// doesn't support it we must fallback to the default behavior.
|
|
1296
|
-
(supportsRDCForNavigations && (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'onCacheEntryV2') ? // which will generate the RDC for the route. When resuming a Dynamic
|
|
1297
|
-
// RSC request, we'll pass the minimal postponed data to the render
|
|
1298
|
-
// which will trigger the `supportsDynamicResponse` to be true.
|
|
1299
|
-
isDynamicRSCRequest && !isMinimalMode : isDynamicRSCRequest);
|
|
1300
|
-
// When html bots request PPR page, perform the full dynamic rendering.
|
|
1301
|
-
const shouldWaitOnAllReady = isHtmlBot && isRoutePPREnabled;
|
|
1302
|
-
let ssgCacheKey = null;
|
|
1303
|
-
if (!isDraftMode && isSSG && !supportsDynamicResponse && !isPossibleServerAction && !minimalPostponed && !isDynamicRSCRequest) {
|
|
1304
|
-
ssgCacheKey = resolvedPathname;
|
|
1305
|
-
}
|
|
1306
|
-
// the staticPathKey differs from ssgCacheKey since
|
|
1307
|
-
// ssgCacheKey is null in dev since we're always in "dynamic"
|
|
1308
|
-
// mode in dev to bypass the cache, but we still need to honor
|
|
1309
|
-
// dynamicParams = false in dev mode
|
|
1310
|
-
let staticPathKey = ssgCacheKey;
|
|
1311
|
-
if (!staticPathKey && routeModule.isDev) {
|
|
1312
|
-
staticPathKey = resolvedPathname;
|
|
1313
|
-
}
|
|
1314
|
-
// If this is a request for an app path that should be statically generated
|
|
1315
|
-
// and we aren't in the edge runtime, strip the flight headers so it will
|
|
1316
|
-
// generate the static response.
|
|
1317
|
-
if (!routeModule.isDev && !isDraftMode && isSSG && isRSCRequest && !isDynamicRSCRequest) {
|
|
1318
|
-
(0,next_dist_server_app_render_strip_flight_headers__WEBPACK_IMPORTED_MODULE_7__/* .stripFlightHeaders */ .d)(req.headers);
|
|
1319
|
-
}
|
|
1320
|
-
const ComponentMod = {
|
|
1321
|
-
...next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_26__,
|
|
1322
|
-
tree,
|
|
1323
|
-
GlobalError: _home_runner_work_semiont_semiont_apps_frontend_src_app_global_error_tsx__WEBPACK_IMPORTED_MODULE_25__["default"],
|
|
1324
|
-
handler,
|
|
1325
|
-
routeModule,
|
|
1326
|
-
__next_app__
|
|
1327
|
-
};
|
|
1328
|
-
// Before rendering (which initializes component tree modules), we have to
|
|
1329
|
-
// set the reference manifests to our global store so Server Action's
|
|
1330
|
-
// encryption util can access to them at the top level of the page module.
|
|
1331
|
-
if (serverActionsManifest && clientReferenceManifest) {
|
|
1332
|
-
(0,next_dist_server_app_render_manifests_singleton__WEBPACK_IMPORTED_MODULE_11__.setManifestsSingleton)({
|
|
1333
|
-
page: srcPage,
|
|
1334
|
-
clientReferenceManifest,
|
|
1335
|
-
serverActionsManifest
|
|
1336
|
-
});
|
|
1337
|
-
}
|
|
1338
|
-
const method = req.method || 'GET';
|
|
1339
|
-
const tracer = (0,next_dist_server_lib_trace_tracer__WEBPACK_IMPORTED_MODULE_3__.getTracer)();
|
|
1340
|
-
const activeSpan = tracer.getActiveScopeSpan();
|
|
1341
|
-
const render404 = async ()=>{
|
|
1342
|
-
// TODO: should route-module itself handle rendering the 404
|
|
1343
|
-
if (routerServerContext == null ? void 0 : routerServerContext.render404) {
|
|
1344
|
-
await routerServerContext.render404(req, res, parsedUrl, false);
|
|
1345
|
-
} else {
|
|
1346
|
-
res.end('This page could not be found');
|
|
1347
|
-
}
|
|
1348
|
-
return null;
|
|
534
|
+
}
|
|
535
|
+
const method = req.method || 'GET';
|
|
536
|
+
const tracer = (0,next_dist_server_lib_trace_tracer__WEBPACK_IMPORTED_MODULE_3__.getTracer)();
|
|
537
|
+
const activeSpan = tracer.getActiveScopeSpan();
|
|
538
|
+
const isWrappedByNextServer = Boolean(routerServerContext == null ? void 0 : routerServerContext.isWrappedByNextServer);
|
|
539
|
+
const remainingFallbackRouteParams = nextConfig.experimental.partialFallbacks === true && remainingPrerenderableParams.length > 0 ? (prerenderInfo == null ? void 0 : (_prerenderInfo_fallbackRouteParams = prerenderInfo.fallbackRouteParams) == null ? void 0 : _prerenderInfo_fallbackRouteParams.filter((param)=>!remainingPrerenderableParams.some((prerenderableParam)=>prerenderableParam.paramName === param.paramName))) ?? [] : [];
|
|
540
|
+
const render404 = async ()=>{
|
|
541
|
+
// TODO: should route-module itself handle rendering the 404
|
|
542
|
+
if (routerServerContext == null ? void 0 : routerServerContext.render404) {
|
|
543
|
+
await routerServerContext.render404(req, res, parsedUrl, false);
|
|
544
|
+
} else {
|
|
545
|
+
res.end('This page could not be found');
|
|
546
|
+
}
|
|
547
|
+
return null;
|
|
1349
548
|
};
|
|
1350
549
|
try {
|
|
1351
550
|
const varyHeader = routeModule.getVaryHeader(resolvedPathname, interceptionRoutePatterns);
|
|
1352
551
|
res.setHeader('Vary', varyHeader);
|
|
552
|
+
let parentSpan;
|
|
1353
553
|
const invokeRouteModule = async (span, context)=>{
|
|
1354
554
|
const nextReq = new next_dist_server_base_http_node__WEBPACK_IMPORTED_MODULE_8__.NodeNextRequest(req);
|
|
1355
555
|
const nextRes = new next_dist_server_base_http_node__WEBPACK_IMPORTED_MODULE_8__.NodeNextResponse(res);
|
|
@@ -1377,19 +577,29 @@ async function handler(req, res, ctx) {
|
|
|
1377
577
|
'next.span_name': name
|
|
1378
578
|
});
|
|
1379
579
|
span.updateName(name);
|
|
580
|
+
// Propagate http.route to the parent span if one exists (e.g.
|
|
581
|
+
// a platform-created HTTP span in adapter deployments).
|
|
582
|
+
if (parentSpan && parentSpan !== span) {
|
|
583
|
+
parentSpan.setAttribute('http.route', route);
|
|
584
|
+
parentSpan.updateName(name);
|
|
585
|
+
}
|
|
1380
586
|
} else {
|
|
1381
587
|
span.updateName(`${method} ${srcPage}`);
|
|
1382
588
|
}
|
|
1383
589
|
});
|
|
1384
590
|
};
|
|
1385
|
-
const incrementalCache = (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'incrementalCache');
|
|
591
|
+
const incrementalCache = (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'incrementalCache') || await routeModule.getIncrementalCache(req, nextConfig, prerenderManifest, isMinimalMode);
|
|
592
|
+
incrementalCache == null ? void 0 : incrementalCache.resetRequestCache();
|
|
593
|
+
globalThis.__incrementalCache = incrementalCache;
|
|
1386
594
|
const doRender = async ({ span, postponed, fallbackRouteParams, forceStaticRender })=>{
|
|
1387
595
|
const context = {
|
|
1388
596
|
query,
|
|
1389
597
|
params,
|
|
1390
598
|
page: normalizedSrcPage,
|
|
1391
599
|
sharedContext: {
|
|
1392
|
-
buildId
|
|
600
|
+
buildId,
|
|
601
|
+
deploymentId,
|
|
602
|
+
clientAssetToken
|
|
1393
603
|
},
|
|
1394
604
|
serverComponentsHmrCache: (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'serverComponentsHmrCache'),
|
|
1395
605
|
fallbackRouteParams,
|
|
@@ -1425,7 +635,6 @@ async function handler(req, res, ctx) {
|
|
|
1425
635
|
trailingSlash: nextConfig.trailingSlash,
|
|
1426
636
|
images: nextConfig.images,
|
|
1427
637
|
previewProps: prerenderManifest.preview,
|
|
1428
|
-
deploymentId: deploymentId,
|
|
1429
638
|
enableTainting: nextConfig.experimental.taint,
|
|
1430
639
|
htmlLimitedBots: nextConfig.htmlLimitedBots,
|
|
1431
640
|
reactMaxHeadersLength: nextConfig.reactMaxHeadersLength,
|
|
@@ -1434,8 +643,9 @@ async function handler(req, res, ctx) {
|
|
|
1434
643
|
cacheLifeProfiles: nextConfig.cacheLife,
|
|
1435
644
|
basePath: nextConfig.basePath,
|
|
1436
645
|
serverActions: nextConfig.experimental.serverActions,
|
|
646
|
+
logServerFunctions: typeof nextConfig.logging === 'object' && Boolean(nextConfig.logging.serverFunctions),
|
|
1437
647
|
...isDebugStaticShell || isDebugDynamicAccesses || isDebugFallbackShell ? {
|
|
1438
|
-
|
|
648
|
+
isBuildTimePrerendering: true,
|
|
1439
649
|
supportsDynamicResponse: false,
|
|
1440
650
|
isStaticGeneration: true,
|
|
1441
651
|
isDebugDynamicAccesses: isDebugDynamicAccesses
|
|
@@ -1446,11 +656,14 @@ async function handler(req, res, ctx) {
|
|
|
1446
656
|
expireTime: nextConfig.expireTime,
|
|
1447
657
|
staleTimes: nextConfig.experimental.staleTimes,
|
|
1448
658
|
dynamicOnHover: Boolean(nextConfig.experimental.dynamicOnHover),
|
|
659
|
+
optimisticRouting: Boolean(nextConfig.experimental.optimisticRouting),
|
|
1449
660
|
inlineCss: Boolean(nextConfig.experimental.inlineCss),
|
|
661
|
+
prefetchInlining: nextConfig.experimental.prefetchInlining ?? false,
|
|
1450
662
|
authInterrupts: Boolean(nextConfig.experimental.authInterrupts),
|
|
663
|
+
cachedNavigations: Boolean(nextConfig.experimental.cachedNavigations),
|
|
1451
664
|
clientTraceMetadata: nextConfig.experimental.clientTraceMetadata || [],
|
|
1452
665
|
clientParamParsingOrigins: nextConfig.experimental.clientParamParsingOrigins,
|
|
1453
|
-
maxPostponedStateSizeBytes: (0,
|
|
666
|
+
maxPostponedStateSizeBytes: (0,next_dist_shared_lib_size_limit__WEBPACK_IMPORTED_MODULE_25__.parseMaxPostponedStateSize)(nextConfig.experimental.maxPostponedStateSize)
|
|
1454
667
|
},
|
|
1455
668
|
waitUntil: ctx.waitUntil,
|
|
1456
669
|
onClose: (cb)=>{
|
|
@@ -1458,15 +671,9 @@ async function handler(req, res, ctx) {
|
|
|
1458
671
|
},
|
|
1459
672
|
onAfterTaskError: ()=>{},
|
|
1460
673
|
onInstrumentationRequestError: (error, _request, errorContext, silenceLog)=>routeModule.onRequestError(req, error, errorContext, silenceLog, routerServerContext),
|
|
1461
|
-
err: (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'invokeError')
|
|
1462
|
-
dev: routeModule.isDev
|
|
674
|
+
err: (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'invokeError')
|
|
1463
675
|
}
|
|
1464
676
|
};
|
|
1465
|
-
if (isDebugStaticShell || isDebugDynamicAccesses) {
|
|
1466
|
-
context.renderOpts.nextExport = true;
|
|
1467
|
-
context.renderOpts.supportsDynamicResponse = false;
|
|
1468
|
-
context.renderOpts.isDebugDynamicAccesses = isDebugDynamicAccesses;
|
|
1469
|
-
}
|
|
1470
677
|
// When we're revalidating in the background, we should not allow dynamic
|
|
1471
678
|
// responses.
|
|
1472
679
|
if (forceStaticRender) {
|
|
@@ -1529,6 +736,16 @@ async function handler(req, res, ctx) {
|
|
|
1529
736
|
if (prerenderInfo) {
|
|
1530
737
|
fallbackMode = (0,next_dist_lib_fallback__WEBPACK_IMPORTED_MODULE_18__.parseFallbackField)(prerenderInfo.fallback);
|
|
1531
738
|
}
|
|
739
|
+
if (nextConfig.experimental.partialFallbacks === true && (prerenderInfo == null ? void 0 : prerenderInfo.fallback) === null && !hasUnresolvedRootFallbackParams && remainingPrerenderableParams.length > 0) {
|
|
740
|
+
// Generic source shells without unresolved root params don't have a
|
|
741
|
+
// concrete fallback file of their own, so they're marked as blocking.
|
|
742
|
+
// When we can complete the shell into a more specific
|
|
743
|
+
// prerendered shell for this request, treat it like a prerender
|
|
744
|
+
// fallback so we can serve that shell instead of blocking on the full
|
|
745
|
+
// route. Root-param shells stay blocking, since unknown root branches
|
|
746
|
+
// should not inherit a shell from another generated branch.
|
|
747
|
+
fallbackMode = next_dist_lib_fallback__WEBPACK_IMPORTED_MODULE_18__.FallbackMode.PRERENDER;
|
|
748
|
+
}
|
|
1532
749
|
// When serving a HTML bot request, we want to serve a blocking render and
|
|
1533
750
|
// not the prerendered page. This ensures that the correct content is served
|
|
1534
751
|
// to the bot in the head.
|
|
@@ -1553,10 +770,10 @@ async function handler(req, res, ctx) {
|
|
|
1553
770
|
// getStaticPaths.
|
|
1554
771
|
(isProduction || prerenderInfo) && // When fallback isn't present, abort this render so we 404
|
|
1555
772
|
fallbackMode === next_dist_lib_fallback__WEBPACK_IMPORTED_MODULE_18__.FallbackMode.NOT_FOUND) {
|
|
1556
|
-
if (nextConfig.
|
|
773
|
+
if (nextConfig.adapterPath) {
|
|
1557
774
|
return await render404();
|
|
1558
775
|
}
|
|
1559
|
-
throw new
|
|
776
|
+
throw new next_dist_shared_lib_no_fallback_error_external__WEBPACK_IMPORTED_MODULE_24__.NoFallbackError();
|
|
1560
777
|
}
|
|
1561
778
|
// When cacheComponents is enabled, we can use the fallback
|
|
1562
779
|
// response if the request is not a dynamic RSC request because the
|
|
@@ -1565,10 +782,19 @@ async function handler(req, res, ctx) {
|
|
|
1565
782
|
// contains param references, and therefore we can't use the fallback.
|
|
1566
783
|
if (isRoutePPREnabled && (nextConfig.cacheComponents ? !isDynamicRSCRequest : !isRSCRequest)) {
|
|
1567
784
|
const cacheKey = isProduction && typeof (prerenderInfo == null ? void 0 : prerenderInfo.fallback) === 'string' ? prerenderInfo.fallback : normalizedSrcPage;
|
|
1568
|
-
const fallbackRouteParams = //
|
|
1569
|
-
//
|
|
1570
|
-
|
|
785
|
+
const fallbackRouteParams = // In production or when debugging the static shell (e.g. instant
|
|
786
|
+
// navigation testing), use the prerender manifest's fallback
|
|
787
|
+
// route params which correctly identifies which params are
|
|
788
|
+
// unknown. Note: in dev, this block is only entered for
|
|
789
|
+
// non-prerendered URLs (guarded by the outer condition).
|
|
790
|
+
(isProduction || isDebugStaticShell) && (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams) ? (0,next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10__.createOpaqueFallbackRouteParams)(prerenderInfo.fallbackRouteParams) : // fallback (simulating the worst-case shell).
|
|
1571
791
|
isDebugFallbackShell ? (0,next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10__.getFallbackRouteParams)(normalizedSrcPage, routeModule) : null;
|
|
792
|
+
// When rendering a debug static shell, override the fallback
|
|
793
|
+
// params on the request so that the staged rendering correctly
|
|
794
|
+
// defers params that are not statically known.
|
|
795
|
+
if (isDebugStaticShell && fallbackRouteParams) {
|
|
796
|
+
(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.addRequestMeta)(req, 'fallbackParams', fallbackRouteParams);
|
|
797
|
+
}
|
|
1572
798
|
// We use the response cache here to handle the revalidation and
|
|
1573
799
|
// management of the fallback shell.
|
|
1574
800
|
const fallbackResponse = await routeModule.handleResponse({
|
|
@@ -1584,8 +810,12 @@ async function handler(req, res, ctx) {
|
|
|
1584
810
|
// We pass `undefined` as rendering a fallback isn't resumed
|
|
1585
811
|
// here.
|
|
1586
812
|
postponed: undefined,
|
|
813
|
+
// Always serve the shell that matched this request
|
|
814
|
+
// immediately. If there are still prerenderable params left,
|
|
815
|
+
// the background path below will complete the shell into a
|
|
816
|
+
// more specific cache entry for later requests.
|
|
1587
817
|
fallbackRouteParams,
|
|
1588
|
-
forceStaticRender:
|
|
818
|
+
forceStaticRender: true
|
|
1589
819
|
}),
|
|
1590
820
|
waitUntil: ctx.waitUntil,
|
|
1591
821
|
isMinimalMode
|
|
@@ -1594,6 +824,39 @@ async function handler(req, res, ctx) {
|
|
|
1594
824
|
if (fallbackResponse === null) return null;
|
|
1595
825
|
// Otherwise, if we did get a fallback response, we should return it.
|
|
1596
826
|
if (fallbackResponse) {
|
|
827
|
+
if (!isMinimalMode && isRoutePPREnabled && // Match the build-time contract: only fallback shells that can
|
|
828
|
+
// still be completed with prerenderable params should upgrade.
|
|
829
|
+
remainingPrerenderableParams.length > 0 && nextConfig.experimental.partialFallbacks === true && ssgCacheKey && incrementalCache && !isOnDemandRevalidate && !isDebugFallbackShell && // The testing API relies on deterministic shell behavior, so
|
|
830
|
+
// don't upgrade fallback shells in the background when it's
|
|
831
|
+
// exposed.
|
|
832
|
+
!exposeTestingApi && // Instant Navigation Testing API requests intentionally keep
|
|
833
|
+
// the route in shell mode; don't upgrade these in background.
|
|
834
|
+
!isInstantNavigationTest && // Avoid background revalidate during prefetches; this can trigger
|
|
835
|
+
// static prerender errors that surface as 500s for the prefetch
|
|
836
|
+
// request itself.
|
|
837
|
+
!isPrefetchRSCRequest) {
|
|
838
|
+
(0,next_dist_lib_scheduler__WEBPACK_IMPORTED_MODULE_30__.scheduleOnNextTick)(async ()=>{
|
|
839
|
+
const responseCache = routeModule.getResponseCache(req);
|
|
840
|
+
try {
|
|
841
|
+
// Only the params that were just specialized should be
|
|
842
|
+
// removed from the fallback render. Any remaining fallback
|
|
843
|
+
// params stay deferred so the revalidated result is a more
|
|
844
|
+
// specific shell (e.g. `/prefix/c/[two]`), not a fully
|
|
845
|
+
// concrete route (`/prefix/c/foo`).
|
|
846
|
+
await responseCache.revalidate(ssgCacheKey, incrementalCache, isRoutePPREnabled, false, (c)=>{
|
|
847
|
+
return doRender({
|
|
848
|
+
span: c.span,
|
|
849
|
+
postponed: undefined,
|
|
850
|
+
fallbackRouteParams: remainingFallbackRouteParams.length > 0 ? (0,next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10__.createOpaqueFallbackRouteParams)(remainingFallbackRouteParams) : null,
|
|
851
|
+
forceStaticRender: true
|
|
852
|
+
});
|
|
853
|
+
}, // We don't have a prior entry for this param-specific shell.
|
|
854
|
+
null, hasResolved, ctx.waitUntil);
|
|
855
|
+
} catch (err) {
|
|
856
|
+
console.error('Error revalidating the page in the background', err);
|
|
857
|
+
}
|
|
858
|
+
});
|
|
859
|
+
}
|
|
1597
860
|
// Remove the cache control from the response to prevent it from being
|
|
1598
861
|
// used in the surrounding cache.
|
|
1599
862
|
delete fallbackResponse.cacheControl;
|
|
@@ -1604,12 +867,15 @@ async function handler(req, res, ctx) {
|
|
|
1604
867
|
// Only requests that aren't revalidating can be resumed. If we have the
|
|
1605
868
|
// minimal postponed data, then we should resume the render with it.
|
|
1606
869
|
let postponed = !isOnDemandRevalidate && !isRevalidating && minimalPostponed ? minimalPostponed : undefined;
|
|
1607
|
-
// If this is a dynamic RSC request
|
|
1608
|
-
// the static render (if available). This
|
|
1609
|
-
// resume data cache (RDC) from the static
|
|
1610
|
-
// is consistent between the static and
|
|
870
|
+
// If this is a dynamic RSC request or a server action request, we should
|
|
871
|
+
// use the postponed data from the static render (if available). This
|
|
872
|
+
// ensures that we can utilize the resume data cache (RDC) from the static
|
|
873
|
+
// render to ensure that the data is consistent between the static and
|
|
874
|
+
// dynamic renders (for navigations) or when re-rendering after a server
|
|
875
|
+
// action.
|
|
1611
876
|
if (// Only enable RDC for Navigations if the feature is enabled.
|
|
1612
|
-
supportsRDCForNavigations && "nodejs" !== 'edge' && !isMinimalMode && incrementalCache &&
|
|
877
|
+
supportsRDCForNavigations && "nodejs" !== 'edge' && !isMinimalMode && incrementalCache && // Include both dynamic RSC requests (navigations) and server actions
|
|
878
|
+
(isDynamicRSCRequest || isPossibleServerAction) && // We don't typically trigger an on-demand revalidation for dynamic RSC
|
|
1613
879
|
// requests, as we're typically revalidating the page in the background
|
|
1614
880
|
// instead. However, if the cache entry is stale, we should trigger a
|
|
1615
881
|
// background revalidation on dynamic RSC requests. This prevents us
|
|
@@ -1634,7 +900,7 @@ async function handler(req, res, ctx) {
|
|
|
1634
900
|
(incrementalCacheEntry.isStale === -1 || incrementalCacheEntry.isStale === true)) {
|
|
1635
901
|
// We want to schedule this on the next tick to ensure that the
|
|
1636
902
|
// render is not blocked on it.
|
|
1637
|
-
(0,
|
|
903
|
+
(0,next_dist_lib_scheduler__WEBPACK_IMPORTED_MODULE_30__.scheduleOnNextTick)(async ()=>{
|
|
1638
904
|
const responseCache = routeModule.getResponseCache(req);
|
|
1639
905
|
try {
|
|
1640
906
|
await responseCache.revalidate(resolvedPathname, incrementalCache, isRoutePPREnabled, false, (c)=>responseGenerator({
|
|
@@ -1671,11 +937,21 @@ async function handler(req, res, ctx) {
|
|
|
1671
937
|
}
|
|
1672
938
|
};
|
|
1673
939
|
}
|
|
1674
|
-
const fallbackRouteParams = //
|
|
1675
|
-
//
|
|
1676
|
-
//
|
|
1677
|
-
isProduction && (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams)
|
|
1678
|
-
|
|
940
|
+
const fallbackRouteParams = // In production or when debugging the static shell for a
|
|
941
|
+
// non-prerendered URL, use the prerender manifest's fallback route
|
|
942
|
+
// params which correctly identifies which params are unknown.
|
|
943
|
+
(isProduction && (0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.getRequestMeta)(req, 'renderFallbackShell') || isDebugStaticShell && !isPrerendered) && (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams) ? (0,next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10__.createOpaqueFallbackRouteParams)(prerenderInfo.fallbackRouteParams) : isDebugFallbackShell ? (0,next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10__.getFallbackRouteParams)(normalizedSrcPage, routeModule) : null;
|
|
944
|
+
// For staged dynamic rendering (Cached Navigations) and debug static
|
|
945
|
+
// shell rendering, pass the fallback params via request meta so the
|
|
946
|
+
// RequestStore knows which params to defer. We don't pass them as
|
|
947
|
+
// fallbackRouteParams because that would replace actual param values
|
|
948
|
+
// with opaque placeholders during segment resolution.
|
|
949
|
+
if ((isProduction || isDebugStaticShell) && nextConfig.cacheComponents && !isPrerendered && (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams)) {
|
|
950
|
+
const fallbackParams = (0,next_dist_server_request_fallback_params__WEBPACK_IMPORTED_MODULE_10__.createOpaqueFallbackRouteParams)(prerenderInfo.fallbackRouteParams);
|
|
951
|
+
if (fallbackParams) {
|
|
952
|
+
(0,next_dist_server_request_meta__WEBPACK_IMPORTED_MODULE_4__.addRequestMeta)(req, 'fallbackParams', fallbackParams);
|
|
953
|
+
}
|
|
954
|
+
}
|
|
1679
955
|
// Perform the render.
|
|
1680
956
|
return doRender({
|
|
1681
957
|
span,
|
|
@@ -1706,7 +982,7 @@ async function handler(req, res, ctx) {
|
|
|
1706
982
|
}
|
|
1707
983
|
// In dev, we should not cache pages for any reason.
|
|
1708
984
|
if (routeModule.isDev) {
|
|
1709
|
-
res.setHeader('Cache-Control', 'no-
|
|
985
|
+
res.setHeader('Cache-Control', 'no-cache, must-revalidate');
|
|
1710
986
|
}
|
|
1711
987
|
if (!cacheEntry) {
|
|
1712
988
|
if (ssgCacheKey) {
|
|
@@ -1732,6 +1008,16 @@ async function handler(req, res, ctx) {
|
|
|
1732
1008
|
});
|
|
1733
1009
|
}
|
|
1734
1010
|
const didPostpone = typeof cacheEntry.value.postponed === 'string';
|
|
1011
|
+
// Set the build ID header for RSC navigation requests when deploymentId is configured. This
|
|
1012
|
+
// corresponds with maybeAppendBuildIdToRSCPayload in app-render.tsx which omits the build ID
|
|
1013
|
+
// from the RSC payload when deploymentId is set (relying on this header instead). Server
|
|
1014
|
+
// actions are excluded here because action redirect responses get the deployment ID header
|
|
1015
|
+
// from the pre-fetched redirect target (via createRedirectRenderResult in action-handler.ts
|
|
1016
|
+
// which copies headers from the internal RSC fetch).
|
|
1017
|
+
// For static prerenders served from CDN, routes-manifest.json adds a header.
|
|
1018
|
+
if (isRSCRequest && !isPossibleServerAction && deploymentId) {
|
|
1019
|
+
res.setHeader(next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20__.NEXT_NAV_DEPLOYMENT_ID_HEADER, deploymentId);
|
|
1020
|
+
}
|
|
1735
1021
|
if (isSSG && // We don't want to send a cache header for requests that contain dynamic
|
|
1736
1022
|
// data. If this is a Dynamic RSC request or wasn't a Prefetch RSC
|
|
1737
1023
|
// request, then we should set the cache header.
|
|
@@ -1792,7 +1078,7 @@ async function handler(req, res, ctx) {
|
|
|
1792
1078
|
};
|
|
1793
1079
|
} else {
|
|
1794
1080
|
cacheControl = {
|
|
1795
|
-
revalidate: next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20__.
|
|
1081
|
+
revalidate: next_dist_lib_constants__WEBPACK_IMPORTED_MODULE_20__.CACHE_ONE_YEAR_SECONDS,
|
|
1796
1082
|
expire: undefined
|
|
1797
1083
|
};
|
|
1798
1084
|
}
|
|
@@ -1820,7 +1106,7 @@ async function handler(req, res, ctx) {
|
|
|
1820
1106
|
const matchedSegment = cachedData.segmentData.get(segmentPrefetchHeader);
|
|
1821
1107
|
if (matchedSegment !== undefined) {
|
|
1822
1108
|
// Cache hit
|
|
1823
|
-
return (0,
|
|
1109
|
+
return (0,next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__.sendRenderResult)({
|
|
1824
1110
|
req,
|
|
1825
1111
|
res,
|
|
1826
1112
|
generateEtags: nextConfig.generateEtags,
|
|
@@ -1836,7 +1122,7 @@ async function handler(req, res, ctx) {
|
|
|
1836
1122
|
// don't bother to respond with 404, because these requests are only
|
|
1837
1123
|
// issued as part of a prefetch.
|
|
1838
1124
|
res.statusCode = 204;
|
|
1839
|
-
return (0,
|
|
1125
|
+
return (0,next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__.sendRenderResult)({
|
|
1840
1126
|
req,
|
|
1841
1127
|
res,
|
|
1842
1128
|
generateEtags: nextConfig.generateEtags,
|
|
@@ -1891,7 +1177,7 @@ async function handler(req, res, ctx) {
|
|
|
1891
1177
|
res.statusCode = cachedData.status;
|
|
1892
1178
|
}
|
|
1893
1179
|
// Redirect information is encoded in RSC payload, so we don't need to use redirect status codes
|
|
1894
|
-
if (!isMinimalMode && cachedData.status &&
|
|
1180
|
+
if (!isMinimalMode && cachedData.status && next_dist_client_components_redirect_status_code__WEBPACK_IMPORTED_MODULE_28__.RedirectStatusCode[cachedData.status] && isRSCRequest) {
|
|
1895
1181
|
res.statusCode = 200;
|
|
1896
1182
|
}
|
|
1897
1183
|
// Mark that the request did postpone.
|
|
@@ -1909,7 +1195,7 @@ async function handler(req, res, ctx) {
|
|
|
1909
1195
|
if (cachedData.html.contentType !== next_dist_client_components_app_router_headers__WEBPACK_IMPORTED_MODULE_15__.RSC_CONTENT_TYPE_HEADER) {
|
|
1910
1196
|
if (nextConfig.cacheComponents) {
|
|
1911
1197
|
res.statusCode = 404;
|
|
1912
|
-
return (0,
|
|
1198
|
+
return (0,next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__.sendRenderResult)({
|
|
1913
1199
|
req,
|
|
1914
1200
|
res,
|
|
1915
1201
|
generateEtags: nextConfig.generateEtags,
|
|
@@ -1919,14 +1205,14 @@ async function handler(req, res, ctx) {
|
|
|
1919
1205
|
});
|
|
1920
1206
|
} else {
|
|
1921
1207
|
// Otherwise this case is not expected.
|
|
1922
|
-
throw Object.defineProperty(new
|
|
1208
|
+
throw Object.defineProperty(new next_dist_shared_lib_invariant_error__WEBPACK_IMPORTED_MODULE_29__.InvariantError(`Expected RSC response, got ${cachedData.html.contentType}`), "__NEXT_ERROR_CODE", {
|
|
1923
1209
|
value: "E789",
|
|
1924
1210
|
enumerable: false,
|
|
1925
1211
|
configurable: true
|
|
1926
1212
|
});
|
|
1927
1213
|
}
|
|
1928
1214
|
}
|
|
1929
|
-
return (0,
|
|
1215
|
+
return (0,next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__.sendRenderResult)({
|
|
1930
1216
|
req,
|
|
1931
1217
|
res,
|
|
1932
1218
|
generateEtags: nextConfig.generateEtags,
|
|
@@ -1937,7 +1223,7 @@ async function handler(req, res, ctx) {
|
|
|
1937
1223
|
}
|
|
1938
1224
|
// As this isn't a prefetch request, we should serve the static flight
|
|
1939
1225
|
// data.
|
|
1940
|
-
return (0,
|
|
1226
|
+
return (0,next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__.sendRenderResult)({
|
|
1941
1227
|
req,
|
|
1942
1228
|
res,
|
|
1943
1229
|
generateEtags: nextConfig.generateEtags,
|
|
@@ -1948,6 +1234,27 @@ async function handler(req, res, ctx) {
|
|
|
1948
1234
|
}
|
|
1949
1235
|
// This is a request for HTML data.
|
|
1950
1236
|
const body = cachedData.html;
|
|
1237
|
+
// Instant Navigation Testing API: serve the static shell with an
|
|
1238
|
+
// injected script that sets self.__next_instant_test and kicks off a
|
|
1239
|
+
// static RSC fetch for hydration. The transform stream also appends
|
|
1240
|
+
// closing </body></html> tags so the browser can parse the full document.
|
|
1241
|
+
// In dev mode, also inject self.__next_r so the HMR WebSocket and
|
|
1242
|
+
// debug channel can initialize.
|
|
1243
|
+
if (isInstantNavigationTest && isDebugStaticShell) {
|
|
1244
|
+
const instantTestRequestId = routeModule.isDev === true ? crypto.randomUUID() : null;
|
|
1245
|
+
body.pipeThrough((0,next_dist_server_stream_utils_node_web_streams_helper__WEBPACK_IMPORTED_MODULE_22__.createInstantTestScriptInsertionTransformStream)(instantTestRequestId));
|
|
1246
|
+
return (0,next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__.sendRenderResult)({
|
|
1247
|
+
req,
|
|
1248
|
+
res,
|
|
1249
|
+
generateEtags: nextConfig.generateEtags,
|
|
1250
|
+
poweredByHeader: nextConfig.poweredByHeader,
|
|
1251
|
+
result: body,
|
|
1252
|
+
cacheControl: {
|
|
1253
|
+
revalidate: 0,
|
|
1254
|
+
expire: undefined
|
|
1255
|
+
}
|
|
1256
|
+
});
|
|
1257
|
+
}
|
|
1951
1258
|
// If there's no postponed state, we should just serve the HTML. This
|
|
1952
1259
|
// should also be the case for a resume request because it's completed
|
|
1953
1260
|
// as a server render (rather than a static render).
|
|
@@ -1956,7 +1263,7 @@ async function handler(req, res, ctx) {
|
|
|
1956
1263
|
// that's between the static and dynamic parts so we can compare the
|
|
1957
1264
|
// chunks and add assertions.
|
|
1958
1265
|
if (false) {}
|
|
1959
|
-
return (0,
|
|
1266
|
+
return (0,next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__.sendRenderResult)({
|
|
1960
1267
|
req,
|
|
1961
1268
|
res,
|
|
1962
1269
|
generateEtags: nextConfig.generateEtags,
|
|
@@ -1978,7 +1285,7 @@ async function handler(req, res, ctx) {
|
|
|
1978
1285
|
controller.close();
|
|
1979
1286
|
}
|
|
1980
1287
|
}));
|
|
1981
|
-
return (0,
|
|
1288
|
+
return (0,next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__.sendRenderResult)({
|
|
1982
1289
|
req,
|
|
1983
1290
|
res,
|
|
1984
1291
|
generateEtags: nextConfig.generateEtags,
|
|
@@ -2035,7 +1342,7 @@ async function handler(req, res, ctx) {
|
|
|
2035
1342
|
console.error("couldn't abort transformer", e);
|
|
2036
1343
|
});
|
|
2037
1344
|
});
|
|
2038
|
-
return (0,
|
|
1345
|
+
return (0,next_dist_server_send_payload__WEBPACK_IMPORTED_MODULE_23__.sendRenderResult)({
|
|
2039
1346
|
req,
|
|
2040
1347
|
res,
|
|
2041
1348
|
generateEtags: nextConfig.generateEtags,
|
|
@@ -2050,53 +1357,1009 @@ async function handler(req, res, ctx) {
|
|
|
2050
1357
|
}
|
|
2051
1358
|
});
|
|
2052
1359
|
};
|
|
2053
|
-
// TODO: activeSpan code path is for when wrapped by
|
|
2054
|
-
// next-server can be removed when this is no longer used
|
|
2055
|
-
if (activeSpan) {
|
|
2056
|
-
await handleResponse(activeSpan);
|
|
2057
|
-
} else {
|
|
2058
|
-
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
|
|
2062
|
-
|
|
2063
|
-
'http.
|
|
2064
|
-
|
|
2065
|
-
|
|
1360
|
+
// TODO: activeSpan code path is for when wrapped by
|
|
1361
|
+
// next-server can be removed when this is no longer used
|
|
1362
|
+
if (isWrappedByNextServer && activeSpan) {
|
|
1363
|
+
await handleResponse(activeSpan);
|
|
1364
|
+
} else {
|
|
1365
|
+
parentSpan = tracer.getActiveScopeSpan();
|
|
1366
|
+
return await tracer.withPropagatedContext(req.headers, ()=>tracer.trace(next_dist_server_lib_trace_constants__WEBPACK_IMPORTED_MODULE_5__.BaseServerSpan.handleRequest, {
|
|
1367
|
+
spanName: `${method} ${srcPage}`,
|
|
1368
|
+
kind: next_dist_server_lib_trace_tracer__WEBPACK_IMPORTED_MODULE_3__.SpanKind.SERVER,
|
|
1369
|
+
attributes: {
|
|
1370
|
+
'http.method': method,
|
|
1371
|
+
'http.target': req.url
|
|
1372
|
+
}
|
|
1373
|
+
}, handleResponse), undefined, !isWrappedByNextServer);
|
|
1374
|
+
}
|
|
1375
|
+
} catch (err) {
|
|
1376
|
+
if (!(err instanceof next_dist_shared_lib_no_fallback_error_external__WEBPACK_IMPORTED_MODULE_24__.NoFallbackError)) {
|
|
1377
|
+
const silenceLog = false;
|
|
1378
|
+
await routeModule.onRequestError(req, err, {
|
|
1379
|
+
routerKind: 'App Router',
|
|
1380
|
+
routePath: srcPage,
|
|
1381
|
+
routeType: 'render',
|
|
1382
|
+
revalidateReason: (0,next_dist_server_instrumentation_utils__WEBPACK_IMPORTED_MODULE_2__/* .getRevalidateReason */ .c)({
|
|
1383
|
+
isStaticGeneration: isSSG,
|
|
1384
|
+
isOnDemandRevalidate
|
|
1385
|
+
})
|
|
1386
|
+
}, silenceLog, routerServerContext);
|
|
1387
|
+
}
|
|
1388
|
+
// rethrow so that we can handle serving error page
|
|
1389
|
+
throw err;
|
|
1390
|
+
}
|
|
1391
|
+
}
|
|
1392
|
+
// TODO: omit this from production builds, only test builds should include it
|
|
1393
|
+
/**
|
|
1394
|
+
* Creates a readable stream that emits a PPR boundary sentinel.
|
|
1395
|
+
*
|
|
1396
|
+
* @returns A readable stream that emits a PPR boundary sentinel.
|
|
1397
|
+
*/ function createPPRBoundarySentinel() {
|
|
1398
|
+
return new ReadableStream({
|
|
1399
|
+
start (controller) {
|
|
1400
|
+
controller.enqueue(new TextEncoder().encode('<!-- PPR_BOUNDARY_SENTINEL -->'));
|
|
1401
|
+
controller.close();
|
|
1402
|
+
}
|
|
1403
|
+
});
|
|
1404
|
+
}
|
|
1405
|
+
|
|
1406
|
+
//# sourceMappingURL=app-page.js.map
|
|
1407
|
+
|
|
1408
|
+
|
|
1409
|
+
/***/ }),
|
|
1410
|
+
|
|
1411
|
+
/***/ 10846:
|
|
1412
|
+
/***/ ((module) => {
|
|
1413
|
+
|
|
1414
|
+
"use strict";
|
|
1415
|
+
module.exports = require("next/dist/compiled/next-server/app-page.runtime.prod.js");
|
|
1416
|
+
|
|
1417
|
+
/***/ }),
|
|
1418
|
+
|
|
1419
|
+
/***/ 17891:
|
|
1420
|
+
/***/ ((module) => {
|
|
1421
|
+
|
|
1422
|
+
"use strict";
|
|
1423
|
+
module.exports = require("next/dist/shared/lib/router/utils/get-segment-param");
|
|
1424
|
+
|
|
1425
|
+
/***/ }),
|
|
1426
|
+
|
|
1427
|
+
/***/ 19121:
|
|
1428
|
+
/***/ ((module) => {
|
|
1429
|
+
|
|
1430
|
+
"use strict";
|
|
1431
|
+
module.exports = require("next/dist/server/app-render/action-async-storage.external.js");
|
|
1432
|
+
|
|
1433
|
+
/***/ }),
|
|
1434
|
+
|
|
1435
|
+
/***/ 19771:
|
|
1436
|
+
/***/ ((module) => {
|
|
1437
|
+
|
|
1438
|
+
"use strict";
|
|
1439
|
+
module.exports = require("process");
|
|
1440
|
+
|
|
1441
|
+
/***/ }),
|
|
1442
|
+
|
|
1443
|
+
/***/ 20400:
|
|
1444
|
+
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
|
1445
|
+
|
|
1446
|
+
Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 33898));
|
|
1447
|
+
|
|
1448
|
+
|
|
1449
|
+
/***/ }),
|
|
1450
|
+
|
|
1451
|
+
/***/ 21444:
|
|
1452
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
1453
|
+
|
|
1454
|
+
"use strict";
|
|
1455
|
+
// ESM COMPAT FLAG
|
|
1456
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1457
|
+
|
|
1458
|
+
// EXPORTS
|
|
1459
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
1460
|
+
"default": () => (/* binding */ RecentDocumentsPageWrapper)
|
|
1461
|
+
});
|
|
1462
|
+
|
|
1463
|
+
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-jsx-runtime.js
|
|
1464
|
+
var react_jsx_runtime = __webpack_require__(92692);
|
|
1465
|
+
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js
|
|
1466
|
+
var react = __webpack_require__(71277);
|
|
1467
|
+
// EXTERNAL MODULE: ../../node_modules/next-intl/dist/esm/production/react-client/index.js
|
|
1468
|
+
var react_client = __webpack_require__(56305);
|
|
1469
|
+
// EXTERNAL MODULE: __barrel_optimize__?names=Toolbar!=!../../packages/react-ui/dist/index.mjs
|
|
1470
|
+
var dist = __webpack_require__(36297);
|
|
1471
|
+
// EXTERNAL MODULE: ./src/components/toolbar/ToolbarPanels.tsx + 4 modules
|
|
1472
|
+
var ToolbarPanels = __webpack_require__(50436);
|
|
1473
|
+
// EXTERNAL MODULE: __barrel_optimize__?names=useEventSubscriptions,useLineNumbers,usePanelBrowse,useTheme!=!../../packages/react-ui/dist/index.mjs
|
|
1474
|
+
var react_ui_dist = __webpack_require__(56677);
|
|
1475
|
+
// EXTERNAL MODULE: ../../packages/react-ui/dist/index.mjs + 27 modules
|
|
1476
|
+
var packages_react_ui_dist = __webpack_require__(76552);
|
|
1477
|
+
;// __barrel_optimize__?names=RecentDocumentsPage!=!../../packages/react-ui/dist/index.mjs
|
|
1478
|
+
|
|
1479
|
+
|
|
1480
|
+
;// ./src/app/[locale]/moderate/recent/page.tsx
|
|
1481
|
+
/* __next_internal_client_entry_do_not_use__ default auto */
|
|
1482
|
+
|
|
1483
|
+
|
|
1484
|
+
|
|
1485
|
+
|
|
1486
|
+
|
|
1487
|
+
|
|
1488
|
+
// Authentication is handled by middleware (proxy.ts)
|
|
1489
|
+
// Only authenticated moderators/admins can reach this page
|
|
1490
|
+
function RecentDocumentsPageWrapper() {
|
|
1491
|
+
const t = (0,react_client/* useTranslations */.c)('ModerateRecent');
|
|
1492
|
+
// Toolbar and settings state
|
|
1493
|
+
const { activePanel } = (0,react_ui_dist/* usePanelBrowse */.ySJ)();
|
|
1494
|
+
const { theme, setTheme } = (0,react_ui_dist/* useTheme */.DPo)();
|
|
1495
|
+
const { showLineNumbers, toggleLineNumbers } = (0,react_ui_dist/* useLineNumbers */.cvF)();
|
|
1496
|
+
const handleThemeChanged = (0,react.useCallback)(({ theme })=>{
|
|
1497
|
+
setTheme(theme);
|
|
1498
|
+
}, [
|
|
1499
|
+
setTheme
|
|
1500
|
+
]);
|
|
1501
|
+
const handleLineNumbersToggled = (0,react.useCallback)(()=>{
|
|
1502
|
+
toggleLineNumbers();
|
|
1503
|
+
}, [
|
|
1504
|
+
toggleLineNumbers
|
|
1505
|
+
]);
|
|
1506
|
+
(0,react_ui_dist/* useEventSubscriptions */.C$z)({
|
|
1507
|
+
'settings:theme-changed': handleThemeChanged,
|
|
1508
|
+
'settings:line-numbers-toggled': handleLineNumbersToggled
|
|
1509
|
+
});
|
|
1510
|
+
return /*#__PURE__*/ (0,react_jsx_runtime.jsx)(packages_react_ui_dist.RecentDocumentsPage, {
|
|
1511
|
+
hasDocuments: false,
|
|
1512
|
+
isLoading: false,
|
|
1513
|
+
theme: theme,
|
|
1514
|
+
showLineNumbers: showLineNumbers,
|
|
1515
|
+
activePanel: activePanel,
|
|
1516
|
+
translations: {
|
|
1517
|
+
pageTitle: t('pageTitle'),
|
|
1518
|
+
pageDescription: t('pageDescription'),
|
|
1519
|
+
sectionTitle: t('sectionTitle'),
|
|
1520
|
+
sectionDescription: t('sectionDescription'),
|
|
1521
|
+
noDocuments: t('noDocuments'),
|
|
1522
|
+
activityWillAppear: t('activityWillAppear'),
|
|
1523
|
+
loading: t('loading')
|
|
1524
|
+
},
|
|
1525
|
+
ToolbarPanels: ToolbarPanels/* ToolbarPanels */.t,
|
|
1526
|
+
Toolbar: dist/* Toolbar */.M7E
|
|
1527
|
+
});
|
|
1528
|
+
}
|
|
1529
|
+
|
|
1530
|
+
|
|
1531
|
+
/***/ }),
|
|
1532
|
+
|
|
1533
|
+
/***/ 25197:
|
|
1534
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
1535
|
+
|
|
1536
|
+
"use strict";
|
|
1537
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1538
|
+
/* harmony export */ C$z: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.useEventSubscriptions),
|
|
1539
|
+
/* harmony export */ TbX: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.SimpleNavigation)
|
|
1540
|
+
/* harmony export */ });
|
|
1541
|
+
/* harmony import */ var _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(76552);
|
|
1542
|
+
|
|
1543
|
+
|
|
1544
|
+
|
|
1545
|
+
/***/ }),
|
|
1546
|
+
|
|
1547
|
+
/***/ 25888:
|
|
1548
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
1549
|
+
|
|
1550
|
+
"use strict";
|
|
1551
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1552
|
+
/* harmony export */ Ef3: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.LeftSidebar),
|
|
1553
|
+
/* harmony export */ ffs: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.AuthTokenProvider),
|
|
1554
|
+
/* harmony export */ pqI: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.ApiClientProvider),
|
|
1555
|
+
/* harmony export */ wi6: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.Footer)
|
|
1556
|
+
/* harmony export */ });
|
|
1557
|
+
/* harmony import */ var _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(76552);
|
|
1558
|
+
|
|
1559
|
+
|
|
1560
|
+
|
|
1561
|
+
/***/ }),
|
|
1562
|
+
|
|
1563
|
+
/***/ 26713:
|
|
1564
|
+
/***/ ((module) => {
|
|
1565
|
+
|
|
1566
|
+
"use strict";
|
|
1567
|
+
module.exports = require("next/dist/shared/lib/router/utils/is-bot");
|
|
1568
|
+
|
|
1569
|
+
/***/ }),
|
|
1570
|
+
|
|
1571
|
+
/***/ 28354:
|
|
1572
|
+
/***/ ((module) => {
|
|
1573
|
+
|
|
1574
|
+
"use strict";
|
|
1575
|
+
module.exports = require("util");
|
|
1576
|
+
|
|
1577
|
+
/***/ }),
|
|
1578
|
+
|
|
1579
|
+
/***/ 29294:
|
|
1580
|
+
/***/ ((module) => {
|
|
1581
|
+
|
|
1582
|
+
"use strict";
|
|
1583
|
+
module.exports = require("next/dist/server/app-render/work-async-storage.external.js");
|
|
1584
|
+
|
|
1585
|
+
/***/ }),
|
|
1586
|
+
|
|
1587
|
+
/***/ 31039:
|
|
1588
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
1589
|
+
|
|
1590
|
+
"use strict";
|
|
1591
|
+
|
|
1592
|
+
// EXPORTS
|
|
1593
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
1594
|
+
As: () => (/* binding */ useAuth)
|
|
1595
|
+
});
|
|
1596
|
+
|
|
1597
|
+
// UNUSED EXPORTS: usePermissions, useUserPreferences
|
|
1598
|
+
|
|
1599
|
+
// EXTERNAL MODULE: ../../node_modules/next-auth/react/index.js
|
|
1600
|
+
var react = __webpack_require__(62341);
|
|
1601
|
+
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js
|
|
1602
|
+
var ssr_react = __webpack_require__(71277);
|
|
1603
|
+
// EXTERNAL MODULE: ../../packages/api-client/dist/index.js
|
|
1604
|
+
var dist = __webpack_require__(88887);
|
|
1605
|
+
;// __barrel_optimize__?names=JWTTokenSchema,validateData!=!../../packages/api-client/dist/index.js
|
|
1606
|
+
|
|
1607
|
+
|
|
1608
|
+
;// ./src/hooks/useAuth.ts
|
|
1609
|
+
/* __next_internal_client_entry_do_not_use__ useAuth,useUserPreferences,usePermissions auto */
|
|
1610
|
+
|
|
1611
|
+
|
|
1612
|
+
/**
|
|
1613
|
+
* Enhanced authentication hook with validation and user information
|
|
1614
|
+
*/ function useAuth() {
|
|
1615
|
+
const { data: session, status } = (0,react.useSession)();
|
|
1616
|
+
const authInfo = (0,ssr_react.useMemo)(()=>{
|
|
1617
|
+
const isLoading = status === 'loading';
|
|
1618
|
+
const isAuthenticated = !!session?.user;
|
|
1619
|
+
// Validate backend token if present
|
|
1620
|
+
const hasValidBackendToken = session?.backendToken ? (0,dist/* validateData */.lv)(dist/* JWTTokenSchema */.k3, session.backendToken).success : false;
|
|
1621
|
+
return {
|
|
1622
|
+
// Session data
|
|
1623
|
+
session,
|
|
1624
|
+
user: session?.user,
|
|
1625
|
+
backendUser: session?.backendUser,
|
|
1626
|
+
// Status flags
|
|
1627
|
+
isLoading,
|
|
1628
|
+
isAuthenticated,
|
|
1629
|
+
hasValidBackendToken,
|
|
1630
|
+
// Computed properties
|
|
1631
|
+
userDomain: session?.backendUser?.domain || session?.user?.email?.split('@')[1],
|
|
1632
|
+
displayName: session?.user?.name || session?.user?.email?.split('@')[0] || 'User',
|
|
1633
|
+
avatarUrl: session?.user?.image,
|
|
1634
|
+
isAdmin: session?.backendUser?.isAdmin || false,
|
|
1635
|
+
isModerator: session?.backendUser?.isModerator || false,
|
|
1636
|
+
// Combined auth status
|
|
1637
|
+
isFullyAuthenticated: isAuthenticated && hasValidBackendToken
|
|
1638
|
+
};
|
|
1639
|
+
}, [
|
|
1640
|
+
session,
|
|
1641
|
+
status
|
|
1642
|
+
]);
|
|
1643
|
+
return authInfo;
|
|
1644
|
+
}
|
|
1645
|
+
/**
|
|
1646
|
+
* Hook for getting user preferences and settings
|
|
1647
|
+
*/ function useUserPreferences() {
|
|
1648
|
+
const { session } = useAuth();
|
|
1649
|
+
return useMemo(()=>{
|
|
1650
|
+
// In the future, this could fetch user preferences from backend
|
|
1651
|
+
// For now, return defaults
|
|
1652
|
+
return {
|
|
1653
|
+
theme: 'system',
|
|
1654
|
+
language: 'en',
|
|
1655
|
+
timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
|
|
1656
|
+
emailNotifications: true
|
|
1657
|
+
};
|
|
1658
|
+
}, [
|
|
1659
|
+
session
|
|
1660
|
+
]);
|
|
1661
|
+
}
|
|
1662
|
+
/**
|
|
1663
|
+
* Hook for checking user permissions (future expansion)
|
|
1664
|
+
*/ function usePermissions() {
|
|
1665
|
+
const { backendUser, isFullyAuthenticated } = useAuth();
|
|
1666
|
+
return useMemo(()=>{
|
|
1667
|
+
if (!isFullyAuthenticated || !backendUser) {
|
|
1668
|
+
return {
|
|
1669
|
+
canRead: false,
|
|
1670
|
+
canWrite: false,
|
|
1671
|
+
canAdmin: false,
|
|
1672
|
+
canManageUsers: false
|
|
1673
|
+
};
|
|
1674
|
+
}
|
|
1675
|
+
// Basic permissions - in the future this would come from backend
|
|
1676
|
+
return {
|
|
1677
|
+
canRead: true,
|
|
1678
|
+
canWrite: true,
|
|
1679
|
+
canAdmin: false,
|
|
1680
|
+
canManageUsers: false
|
|
1681
|
+
};
|
|
1682
|
+
}, [
|
|
1683
|
+
backendUser,
|
|
1684
|
+
isFullyAuthenticated
|
|
1685
|
+
]);
|
|
1686
|
+
}
|
|
1687
|
+
|
|
1688
|
+
|
|
1689
|
+
/***/ }),
|
|
1690
|
+
|
|
1691
|
+
/***/ 32037:
|
|
1692
|
+
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
1693
|
+
|
|
1694
|
+
"use strict";
|
|
1695
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1696
|
+
/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
1697
|
+
/* harmony export */ });
|
|
1698
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71277);
|
|
1699
|
+
|
|
1700
|
+
function ArrowsRightLeftIcon({ title, titleId, ...props }, svgRef) {
|
|
1701
|
+
return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("svg", Object.assign({
|
|
1702
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1703
|
+
fill: "none",
|
|
1704
|
+
viewBox: "0 0 24 24",
|
|
1705
|
+
strokeWidth: 1.5,
|
|
1706
|
+
stroke: "currentColor",
|
|
1707
|
+
"aria-hidden": "true",
|
|
1708
|
+
"data-slot": "icon",
|
|
1709
|
+
ref: svgRef,
|
|
1710
|
+
"aria-labelledby": titleId
|
|
1711
|
+
}, props), title ? /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("title", {
|
|
1712
|
+
id: titleId
|
|
1713
|
+
}, title) : null, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("path", {
|
|
1714
|
+
strokeLinecap: "round",
|
|
1715
|
+
strokeLinejoin: "round",
|
|
1716
|
+
d: "M7.5 21 3 16.5m0 0L7.5 12M3 16.5h13.5m0-13.5L21 7.5m0 0L16.5 12M21 7.5H7.5"
|
|
1717
|
+
}));
|
|
1718
|
+
}
|
|
1719
|
+
const ForwardRef = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(ArrowsRightLeftIcon);
|
|
1720
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ForwardRef);
|
|
1721
|
+
|
|
1722
|
+
|
|
1723
|
+
/***/ }),
|
|
1724
|
+
|
|
1725
|
+
/***/ 33873:
|
|
1726
|
+
/***/ ((module) => {
|
|
1727
|
+
|
|
1728
|
+
"use strict";
|
|
1729
|
+
module.exports = require("path");
|
|
1730
|
+
|
|
1731
|
+
/***/ }),
|
|
1732
|
+
|
|
1733
|
+
/***/ 33898:
|
|
1734
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
1735
|
+
|
|
1736
|
+
"use strict";
|
|
1737
|
+
// ESM COMPAT FLAG
|
|
1738
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1739
|
+
|
|
1740
|
+
// EXPORTS
|
|
1741
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
1742
|
+
"default": () => (/* binding */ ModerateLayout)
|
|
1743
|
+
});
|
|
1744
|
+
|
|
1745
|
+
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-jsx-runtime.js
|
|
1746
|
+
var react_jsx_runtime = __webpack_require__(92692);
|
|
1747
|
+
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js
|
|
1748
|
+
var react = __webpack_require__(71277);
|
|
1749
|
+
// EXTERNAL MODULE: ../../node_modules/next-intl/dist/esm/production/react-client/index.js
|
|
1750
|
+
var react_client = __webpack_require__(56305);
|
|
1751
|
+
// EXTERNAL MODULE: ../../node_modules/next-auth/react/index.js
|
|
1752
|
+
var next_auth_react = __webpack_require__(62341);
|
|
1753
|
+
// EXTERNAL MODULE: __barrel_optimize__?names=ApiClientProvider,AuthTokenProvider,Footer,LeftSidebar!=!../../packages/react-ui/dist/index.mjs
|
|
1754
|
+
var dist = __webpack_require__(25888);
|
|
1755
|
+
// EXTERNAL MODULE: ./src/i18n/routing.ts
|
|
1756
|
+
var routing = __webpack_require__(99704);
|
|
1757
|
+
// EXTERNAL MODULE: __barrel_optimize__?names=SimpleNavigation,useEventSubscriptions!=!../../packages/react-ui/dist/index.mjs
|
|
1758
|
+
var react_ui_dist = __webpack_require__(25197);
|
|
1759
|
+
;// ../../node_modules/@heroicons/react/24/outline/esm/ClockIcon.js
|
|
1760
|
+
|
|
1761
|
+
function ClockIcon({ title, titleId, ...props }, svgRef) {
|
|
1762
|
+
return /*#__PURE__*/ react.createElement("svg", Object.assign({
|
|
1763
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1764
|
+
fill: "none",
|
|
1765
|
+
viewBox: "0 0 24 24",
|
|
1766
|
+
strokeWidth: 1.5,
|
|
1767
|
+
stroke: "currentColor",
|
|
1768
|
+
"aria-hidden": "true",
|
|
1769
|
+
"data-slot": "icon",
|
|
1770
|
+
ref: svgRef,
|
|
1771
|
+
"aria-labelledby": titleId
|
|
1772
|
+
}, props), title ? /*#__PURE__*/ react.createElement("title", {
|
|
1773
|
+
id: titleId
|
|
1774
|
+
}, title) : null, /*#__PURE__*/ react.createElement("path", {
|
|
1775
|
+
strokeLinecap: "round",
|
|
1776
|
+
strokeLinejoin: "round",
|
|
1777
|
+
d: "M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"
|
|
1778
|
+
}));
|
|
1779
|
+
}
|
|
1780
|
+
const ForwardRef = /*#__PURE__*/ react.forwardRef(ClockIcon);
|
|
1781
|
+
/* harmony default export */ const esm_ClockIcon = (ForwardRef);
|
|
1782
|
+
|
|
1783
|
+
;// ../../node_modules/@heroicons/react/24/outline/esm/TagIcon.js
|
|
1784
|
+
|
|
1785
|
+
function TagIcon({ title, titleId, ...props }, svgRef) {
|
|
1786
|
+
return /*#__PURE__*/ react.createElement("svg", Object.assign({
|
|
1787
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1788
|
+
fill: "none",
|
|
1789
|
+
viewBox: "0 0 24 24",
|
|
1790
|
+
strokeWidth: 1.5,
|
|
1791
|
+
stroke: "currentColor",
|
|
1792
|
+
"aria-hidden": "true",
|
|
1793
|
+
"data-slot": "icon",
|
|
1794
|
+
ref: svgRef,
|
|
1795
|
+
"aria-labelledby": titleId
|
|
1796
|
+
}, props), title ? /*#__PURE__*/ react.createElement("title", {
|
|
1797
|
+
id: titleId
|
|
1798
|
+
}, title) : null, /*#__PURE__*/ react.createElement("path", {
|
|
1799
|
+
strokeLinecap: "round",
|
|
1800
|
+
strokeLinejoin: "round",
|
|
1801
|
+
d: "M9.568 3H5.25A2.25 2.25 0 0 0 3 5.25v4.318c0 .597.237 1.17.659 1.591l9.581 9.581c.699.699 1.78.872 2.607.33a18.095 18.095 0 0 0 5.223-5.223c.542-.827.369-1.908-.33-2.607L11.16 3.66A2.25 2.25 0 0 0 9.568 3Z"
|
|
1802
|
+
}), /*#__PURE__*/ react.createElement("path", {
|
|
1803
|
+
strokeLinecap: "round",
|
|
1804
|
+
strokeLinejoin: "round",
|
|
1805
|
+
d: "M6 6h.008v.008H6V6Z"
|
|
1806
|
+
}));
|
|
1807
|
+
}
|
|
1808
|
+
const TagIcon_ForwardRef = /*#__PURE__*/ react.forwardRef(TagIcon);
|
|
1809
|
+
/* harmony default export */ const esm_TagIcon = (TagIcon_ForwardRef);
|
|
1810
|
+
|
|
1811
|
+
;// ../../node_modules/@heroicons/react/24/outline/esm/BookOpenIcon.js
|
|
1812
|
+
|
|
1813
|
+
function BookOpenIcon({ title, titleId, ...props }, svgRef) {
|
|
1814
|
+
return /*#__PURE__*/ react.createElement("svg", Object.assign({
|
|
1815
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1816
|
+
fill: "none",
|
|
1817
|
+
viewBox: "0 0 24 24",
|
|
1818
|
+
strokeWidth: 1.5,
|
|
1819
|
+
stroke: "currentColor",
|
|
1820
|
+
"aria-hidden": "true",
|
|
1821
|
+
"data-slot": "icon",
|
|
1822
|
+
ref: svgRef,
|
|
1823
|
+
"aria-labelledby": titleId
|
|
1824
|
+
}, props), title ? /*#__PURE__*/ react.createElement("title", {
|
|
1825
|
+
id: titleId
|
|
1826
|
+
}, title) : null, /*#__PURE__*/ react.createElement("path", {
|
|
1827
|
+
strokeLinecap: "round",
|
|
1828
|
+
strokeLinejoin: "round",
|
|
1829
|
+
d: "M12 6.042A8.967 8.967 0 0 0 6 3.75c-1.052 0-2.062.18-3 .512v14.25A8.987 8.987 0 0 1 6 18c2.305 0 4.408.867 6 2.292m0-14.25a8.966 8.966 0 0 1 6-2.292c1.052 0 2.062.18 3 .512v14.25A8.987 8.987 0 0 0 18 18a8.967 8.967 0 0 0-6 2.292m0-14.25v14.25"
|
|
1830
|
+
}));
|
|
1831
|
+
}
|
|
1832
|
+
const BookOpenIcon_ForwardRef = /*#__PURE__*/ react.forwardRef(BookOpenIcon);
|
|
1833
|
+
/* harmony default export */ const esm_BookOpenIcon = (BookOpenIcon_ForwardRef);
|
|
1834
|
+
|
|
1835
|
+
// EXTERNAL MODULE: ../../node_modules/@heroicons/react/24/outline/esm/ArrowsRightLeftIcon.js
|
|
1836
|
+
var ArrowsRightLeftIcon = __webpack_require__(32037);
|
|
1837
|
+
// EXTERNAL MODULE: ../../node_modules/@heroicons/react/24/outline/esm/ChevronLeftIcon.js
|
|
1838
|
+
var ChevronLeftIcon = __webpack_require__(71062);
|
|
1839
|
+
// EXTERNAL MODULE: ../../node_modules/@heroicons/react/24/outline/esm/Bars3Icon.js
|
|
1840
|
+
var Bars3Icon = __webpack_require__(67255);
|
|
1841
|
+
;// ./src/components/moderation/ModerationNavigation.tsx
|
|
1842
|
+
/* __next_internal_client_entry_do_not_use__ ModerationNavigation auto */
|
|
1843
|
+
|
|
1844
|
+
|
|
1845
|
+
|
|
1846
|
+
|
|
1847
|
+
|
|
1848
|
+
|
|
1849
|
+
function ModerationNavigation({ isCollapsed, toggleCollapsed, navigationMenu }) {
|
|
1850
|
+
const t = (0,react_client/* useTranslations */.c)('Moderation');
|
|
1851
|
+
const tSidebar = (0,react_client/* useTranslations */.c)('Sidebar');
|
|
1852
|
+
const pathname = (0,routing/* usePathname */.a8)();
|
|
1853
|
+
// Handle sidebar toggle events
|
|
1854
|
+
const handleSidebarToggle = (0,react.useCallback)(()=>{
|
|
1855
|
+
toggleCollapsed();
|
|
1856
|
+
}, [
|
|
1857
|
+
toggleCollapsed
|
|
1858
|
+
]);
|
|
1859
|
+
// Subscribe to sidebar toggle events
|
|
1860
|
+
(0,react_ui_dist/* useEventSubscriptions */.C$z)({
|
|
1861
|
+
'browse:sidebar-toggle': handleSidebarToggle
|
|
1862
|
+
});
|
|
1863
|
+
const navigation = [
|
|
1864
|
+
{
|
|
1865
|
+
name: t('recentResources'),
|
|
1866
|
+
href: '/moderate/recent',
|
|
1867
|
+
icon: esm_ClockIcon,
|
|
1868
|
+
description: t('recentResourcesDescription')
|
|
1869
|
+
},
|
|
1870
|
+
{
|
|
1871
|
+
name: t('entityTags'),
|
|
1872
|
+
href: '/moderate/entity-tags',
|
|
1873
|
+
icon: esm_TagIcon,
|
|
1874
|
+
description: t('entityTagsDescription')
|
|
1875
|
+
},
|
|
1876
|
+
{
|
|
1877
|
+
name: t('tagSchemas'),
|
|
1878
|
+
href: '/moderate/tag-schemas',
|
|
1879
|
+
icon: esm_BookOpenIcon,
|
|
1880
|
+
description: t('tagSchemasDescription')
|
|
1881
|
+
},
|
|
1882
|
+
{
|
|
1883
|
+
name: t('linkedData'),
|
|
1884
|
+
href: '/moderate/linked-data',
|
|
1885
|
+
icon: ArrowsRightLeftIcon/* default */.A,
|
|
1886
|
+
description: t('linkedDataDescription')
|
|
2066
1887
|
}
|
|
2067
|
-
|
|
2068
|
-
|
|
2069
|
-
|
|
2070
|
-
|
|
2071
|
-
|
|
2072
|
-
|
|
2073
|
-
|
|
2074
|
-
|
|
2075
|
-
|
|
2076
|
-
|
|
2077
|
-
|
|
2078
|
-
|
|
1888
|
+
];
|
|
1889
|
+
return /*#__PURE__*/ (0,react_jsx_runtime.jsx)(react_ui_dist/* SimpleNavigation */.TbX, {
|
|
1890
|
+
title: t('title'),
|
|
1891
|
+
items: navigation,
|
|
1892
|
+
currentPath: pathname,
|
|
1893
|
+
LinkComponent: routing/* Link */.N_,
|
|
1894
|
+
...navigationMenu && {
|
|
1895
|
+
dropdownContent: navigationMenu
|
|
1896
|
+
},
|
|
1897
|
+
isCollapsed: isCollapsed,
|
|
1898
|
+
icons: {
|
|
1899
|
+
chevronLeft: ChevronLeftIcon/* default */.A,
|
|
1900
|
+
bars: Bars3Icon/* default */.A
|
|
1901
|
+
},
|
|
1902
|
+
collapseSidebarLabel: tSidebar('collapseSidebar'),
|
|
1903
|
+
expandSidebarLabel: tSidebar('expandSidebar')
|
|
1904
|
+
});
|
|
1905
|
+
}
|
|
1906
|
+
|
|
1907
|
+
// EXTERNAL MODULE: ./src/components/CookiePreferences.tsx
|
|
1908
|
+
var CookiePreferences = __webpack_require__(80386);
|
|
1909
|
+
// EXTERNAL MODULE: ./src/contexts/KeyboardShortcutsContext.tsx + 3 modules
|
|
1910
|
+
var KeyboardShortcutsContext = __webpack_require__(40953);
|
|
1911
|
+
// EXTERNAL MODULE: ./src/lib/routing.ts
|
|
1912
|
+
var lib_routing = __webpack_require__(46391);
|
|
1913
|
+
// EXTERNAL MODULE: ./src/hooks/useAuth.ts + 1 modules
|
|
1914
|
+
var useAuth = __webpack_require__(31039);
|
|
1915
|
+
;// ./src/app/[locale]/moderate/layout.tsx
|
|
1916
|
+
/* __next_internal_client_entry_do_not_use__ default auto */
|
|
1917
|
+
|
|
1918
|
+
|
|
1919
|
+
|
|
1920
|
+
|
|
1921
|
+
|
|
1922
|
+
|
|
1923
|
+
|
|
1924
|
+
|
|
1925
|
+
|
|
1926
|
+
// Note: Authentication is handled by middleware.ts for all moderate routes
|
|
1927
|
+
// This ensures centralized security and returns 404 for unauthorized users
|
|
1928
|
+
function ModerateLayout({ children }) {
|
|
1929
|
+
const t = (0,react_client/* useTranslations */.c)('Footer');
|
|
1930
|
+
const tNav = (0,react_client/* useTranslations */.c)('Navigation');
|
|
1931
|
+
const tHome = (0,react_client/* useTranslations */.c)('Home');
|
|
1932
|
+
const keyboardContext = (0,react.useContext)(KeyboardShortcutsContext/* KeyboardShortcutsContext */.GZ);
|
|
1933
|
+
const { isAuthenticated, isAdmin, isModerator } = (0,useAuth/* useAuth */.As)();
|
|
1934
|
+
const { data: session } = (0,next_auth_react.useSession)();
|
|
1935
|
+
// Extract auth token from session
|
|
1936
|
+
const authToken = session?.backendToken || null;
|
|
1937
|
+
// Middleware has already verified moderator/admin access
|
|
1938
|
+
return /*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist/* AuthTokenProvider */.ffs, {
|
|
1939
|
+
token: authToken,
|
|
1940
|
+
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist/* ApiClientProvider */.pqI, {
|
|
1941
|
+
baseUrl: "",
|
|
1942
|
+
children: /*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
1943
|
+
className: "min-h-screen bg-gray-50 dark:bg-gray-900 flex flex-col",
|
|
1944
|
+
children: [
|
|
1945
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
1946
|
+
className: "flex flex-1",
|
|
1947
|
+
children: [
|
|
1948
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist/* LeftSidebar */.Ef3, {
|
|
1949
|
+
Link: lib_routing/* Link */.N,
|
|
1950
|
+
routes: lib_routing/* routes */.J,
|
|
1951
|
+
t: tNav,
|
|
1952
|
+
tHome: tHome,
|
|
1953
|
+
brandingLink: "/",
|
|
1954
|
+
collapsible: true,
|
|
1955
|
+
storageKey: "moderation-sidebar-collapsed",
|
|
1956
|
+
isAuthenticated: isAuthenticated,
|
|
1957
|
+
isAdmin: isAdmin,
|
|
1958
|
+
isModerator: isModerator,
|
|
1959
|
+
children: (isCollapsed, toggleCollapsed, navigationMenu)=>/*#__PURE__*/ (0,react_jsx_runtime.jsx)(ModerationNavigation, {
|
|
1960
|
+
isCollapsed: isCollapsed,
|
|
1961
|
+
toggleCollapsed: toggleCollapsed,
|
|
1962
|
+
navigationMenu: navigationMenu
|
|
1963
|
+
})
|
|
1964
|
+
}),
|
|
1965
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("main", {
|
|
1966
|
+
className: "flex-1 p-6 flex flex-col",
|
|
1967
|
+
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
1968
|
+
className: "max-w-7xl mx-auto flex-1 flex flex-col w-full",
|
|
1969
|
+
children: children
|
|
1970
|
+
})
|
|
1971
|
+
})
|
|
1972
|
+
]
|
|
1973
|
+
}),
|
|
1974
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist/* Footer */.wi6, {
|
|
1975
|
+
Link: lib_routing/* Link */.N,
|
|
1976
|
+
routes: lib_routing/* routes */.J,
|
|
1977
|
+
t: t,
|
|
1978
|
+
CookiePreferences: CookiePreferences/* CookiePreferences */.f,
|
|
1979
|
+
...keyboardContext?.openKeyboardHelp && {
|
|
1980
|
+
onOpenKeyboardHelp: keyboardContext.openKeyboardHelp
|
|
1981
|
+
}
|
|
1982
|
+
})
|
|
1983
|
+
]
|
|
1984
|
+
})
|
|
1985
|
+
})
|
|
1986
|
+
});
|
|
1987
|
+
}
|
|
1988
|
+
|
|
1989
|
+
|
|
1990
|
+
/***/ }),
|
|
1991
|
+
|
|
1992
|
+
/***/ 34901:
|
|
1993
|
+
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
|
1994
|
+
|
|
1995
|
+
Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 9839));
|
|
1996
|
+
|
|
1997
|
+
|
|
1998
|
+
/***/ }),
|
|
1999
|
+
|
|
2000
|
+
/***/ 36297:
|
|
2001
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
2002
|
+
|
|
2003
|
+
"use strict";
|
|
2004
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
2005
|
+
/* harmony export */ M7E: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.Toolbar)
|
|
2006
|
+
/* harmony export */ });
|
|
2007
|
+
/* harmony import */ var _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(76552);
|
|
2008
|
+
|
|
2009
|
+
|
|
2010
|
+
|
|
2011
|
+
/***/ }),
|
|
2012
|
+
|
|
2013
|
+
/***/ 41025:
|
|
2014
|
+
/***/ ((module) => {
|
|
2015
|
+
|
|
2016
|
+
"use strict";
|
|
2017
|
+
module.exports = require("next/dist/server/app-render/dynamic-access-async-storage.external.js");
|
|
2018
|
+
|
|
2019
|
+
/***/ }),
|
|
2020
|
+
|
|
2021
|
+
/***/ 43954:
|
|
2022
|
+
/***/ ((module) => {
|
|
2023
|
+
|
|
2024
|
+
"use strict";
|
|
2025
|
+
module.exports = require("next/dist/shared/lib/router/utils/interception-routes");
|
|
2026
|
+
|
|
2027
|
+
/***/ }),
|
|
2028
|
+
|
|
2029
|
+
/***/ 50436:
|
|
2030
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
2031
|
+
|
|
2032
|
+
"use strict";
|
|
2033
|
+
|
|
2034
|
+
// EXPORTS
|
|
2035
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
2036
|
+
t: () => (/* binding */ ToolbarPanels)
|
|
2037
|
+
});
|
|
2038
|
+
|
|
2039
|
+
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-jsx-runtime.js
|
|
2040
|
+
var react_jsx_runtime = __webpack_require__(92692);
|
|
2041
|
+
// EXTERNAL MODULE: ../../node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js
|
|
2042
|
+
var react = __webpack_require__(71277);
|
|
2043
|
+
// EXTERNAL MODULE: ../../packages/react-ui/dist/index.mjs + 27 modules
|
|
2044
|
+
var dist = __webpack_require__(76552);
|
|
2045
|
+
;// __barrel_optimize__?names=ResizeHandle,SettingsPanel,useEventSubscriptions,usePanelWidth!=!../../packages/react-ui/dist/index.mjs
|
|
2046
|
+
|
|
2047
|
+
|
|
2048
|
+
// EXTERNAL MODULE: ../../node_modules/next-auth/react/index.js
|
|
2049
|
+
var next_auth_react = __webpack_require__(62341);
|
|
2050
|
+
// EXTERNAL MODULE: ../../node_modules/next/dist/api/image.js
|
|
2051
|
+
var api_image = __webpack_require__(93523);
|
|
2052
|
+
// EXTERNAL MODULE: ../../node_modules/next-intl/dist/esm/production/react-client/index.js
|
|
2053
|
+
var react_client = __webpack_require__(56305);
|
|
2054
|
+
;// __barrel_optimize__?names=formatTime,sanitizeImageURL,useSessionExpiry!=!../../packages/react-ui/dist/index.mjs
|
|
2055
|
+
|
|
2056
|
+
|
|
2057
|
+
// EXTERNAL MODULE: ./src/hooks/useAuth.ts + 1 modules
|
|
2058
|
+
var useAuth = __webpack_require__(31039);
|
|
2059
|
+
;// ./src/components/UserPanel.tsx
|
|
2060
|
+
/* __next_internal_client_entry_do_not_use__ UserPanel auto */
|
|
2061
|
+
|
|
2062
|
+
|
|
2063
|
+
|
|
2064
|
+
|
|
2065
|
+
|
|
2066
|
+
|
|
2067
|
+
// Fallback avatar when image fails to load or is invalid
|
|
2068
|
+
const FALLBACK_AVATAR = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTYiIGN5PSIxNiIgcj0iMTYiIGZpbGw9IiM2QjcyODAiLz4KPHBhdGggZD0iTTE2IDE2QzE4LjIwOTEgMTYgMjAgMTQuMjA5MSAyMCAxMkMyMCA5Ljc5MDg2IDE4LjIwOTEgOCAxNiA4QzEzLjc5MDkgOCAxMiA5Ljc5MDg2IDEyIDEyQzEyIDE0LjIwOTEgMTMuNzkwOSAxNiAxNiAxNloiIGZpbGw9IiNFNUU3RUIiLz4KPHBhdGggZD0iTTI0IDI1QzI0IDIxLjY4NjMgMjAuNDE4MyAxOSAxNiAxOUMxMS41ODE3IDE5IDggMjEuNjg2MyA4IDI1IiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPg==';
|
|
2069
|
+
function UserPanel() {
|
|
2070
|
+
const t = (0,react_client/* useTranslations */.c)('UserPanel');
|
|
2071
|
+
const { displayName, avatarUrl, userDomain, isAdmin, isModerator } = (0,useAuth/* useAuth */.As)();
|
|
2072
|
+
const [imageError, setImageError] = (0,react.useState)(false);
|
|
2073
|
+
const { timeRemaining } = (0,dist.useSessionExpiry)();
|
|
2074
|
+
const sessionTimeFormatted = (0,dist.formatTime)(timeRemaining) ?? 'Unknown';
|
|
2075
|
+
// Sanitize and validate the profile image URL
|
|
2076
|
+
const profileImageUrl = (()=>{
|
|
2077
|
+
if (!avatarUrl || imageError) {
|
|
2078
|
+
return FALLBACK_AVATAR;
|
|
2079
2079
|
}
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2080
|
+
const sanitized = (0,dist.sanitizeImageURL)(avatarUrl);
|
|
2081
|
+
if (!sanitized) {
|
|
2082
|
+
console.warn('Invalid profile image URL detected, using fallback');
|
|
2083
|
+
return FALLBACK_AVATAR;
|
|
2084
|
+
}
|
|
2085
|
+
return sanitized;
|
|
2086
|
+
})();
|
|
2087
|
+
const handleSignOut = async ()=>{
|
|
2088
|
+
await (0,next_auth_react.signOut)({
|
|
2089
|
+
callbackUrl: '/'
|
|
2090
|
+
});
|
|
2091
|
+
};
|
|
2092
|
+
return /*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
2093
|
+
className: "semiont-user-panel",
|
|
2094
|
+
children: [
|
|
2095
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("h3", {
|
|
2096
|
+
className: "semiont-user-panel__title",
|
|
2097
|
+
children: t('account')
|
|
2098
|
+
}),
|
|
2099
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
2100
|
+
className: "space-y-4",
|
|
2101
|
+
children: [
|
|
2102
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
2103
|
+
className: "flex items-center gap-3",
|
|
2104
|
+
children: [
|
|
2105
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)(api_image["default"], {
|
|
2106
|
+
src: profileImageUrl,
|
|
2107
|
+
alt: t('profileAlt', {
|
|
2108
|
+
name: displayName || t('user')
|
|
2109
|
+
}),
|
|
2110
|
+
width: 48,
|
|
2111
|
+
height: 48,
|
|
2112
|
+
className: "w-12 h-12 rounded-full object-cover",
|
|
2113
|
+
onError: ()=>setImageError(true),
|
|
2114
|
+
unoptimized: profileImageUrl === FALLBACK_AVATAR,
|
|
2115
|
+
sizes: "48px",
|
|
2116
|
+
quality: 85
|
|
2117
|
+
}),
|
|
2118
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
2119
|
+
className: "flex-1 min-w-0",
|
|
2120
|
+
children: [
|
|
2121
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
2122
|
+
className: "semiont-panel-text",
|
|
2123
|
+
children: displayName || t('user')
|
|
2124
|
+
}),
|
|
2125
|
+
userDomain && /*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
2126
|
+
className: "semiont-panel-text-secondary",
|
|
2127
|
+
children: [
|
|
2128
|
+
"@",
|
|
2129
|
+
userDomain
|
|
2130
|
+
]
|
|
2131
|
+
})
|
|
2132
|
+
]
|
|
2133
|
+
})
|
|
2134
|
+
]
|
|
2135
|
+
}),
|
|
2136
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
2137
|
+
children: [
|
|
2138
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("label", {
|
|
2139
|
+
className: "semiont-panel-label",
|
|
2140
|
+
children: t('session')
|
|
2141
|
+
}),
|
|
2142
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
2143
|
+
className: "semiont-session-box",
|
|
2144
|
+
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
2145
|
+
className: "semiont-panel-hint",
|
|
2146
|
+
children: t('expiresIn', {
|
|
2147
|
+
time: sessionTimeFormatted
|
|
2148
|
+
})
|
|
2149
|
+
})
|
|
2150
|
+
})
|
|
2151
|
+
]
|
|
2152
|
+
}),
|
|
2153
|
+
(isAdmin || isModerator) && /*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
2154
|
+
children: [
|
|
2155
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("label", {
|
|
2156
|
+
className: "semiont-panel-label",
|
|
2157
|
+
children: t('privileges')
|
|
2158
|
+
}),
|
|
2159
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
2160
|
+
className: "space-y-1",
|
|
2161
|
+
children: [
|
|
2162
|
+
isAdmin && /*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
2163
|
+
className: "semiont-privilege-badge semiont-privilege-badge--admin",
|
|
2164
|
+
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)("span", {
|
|
2165
|
+
className: "semiont-privilege-text",
|
|
2166
|
+
children: t('administrator')
|
|
2167
|
+
})
|
|
2168
|
+
}),
|
|
2169
|
+
isModerator && /*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
2170
|
+
className: "semiont-privilege-badge semiont-privilege-badge--moderator",
|
|
2171
|
+
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)("span", {
|
|
2172
|
+
className: "semiont-privilege-text",
|
|
2173
|
+
children: t('moderator')
|
|
2174
|
+
})
|
|
2175
|
+
})
|
|
2176
|
+
]
|
|
2177
|
+
})
|
|
2178
|
+
]
|
|
2179
|
+
}),
|
|
2180
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)("div", {
|
|
2181
|
+
className: "semiont-panel-divider",
|
|
2182
|
+
children: /*#__PURE__*/ (0,react_jsx_runtime.jsx)("button", {
|
|
2183
|
+
onClick: handleSignOut,
|
|
2184
|
+
className: "semiont-signout-button",
|
|
2185
|
+
children: t('signOut')
|
|
2186
|
+
})
|
|
2187
|
+
})
|
|
2188
|
+
]
|
|
2189
|
+
})
|
|
2190
|
+
]
|
|
2191
|
+
});
|
|
2083
2192
|
}
|
|
2084
|
-
|
|
2193
|
+
|
|
2194
|
+
// EXTERNAL MODULE: ../../node_modules/use-intl/dist/esm/production/react.js + 18 modules
|
|
2195
|
+
var production_react = __webpack_require__(23211);
|
|
2196
|
+
// EXTERNAL MODULE: ./src/i18n/routing.ts
|
|
2197
|
+
var routing = __webpack_require__(99704);
|
|
2198
|
+
;// __barrel_optimize__?names=COMMON_PANELS!=!../../packages/react-ui/dist/index.mjs
|
|
2199
|
+
|
|
2200
|
+
|
|
2201
|
+
;// ./src/components/toolbar/ToolbarPanels.tsx
|
|
2202
|
+
/* __next_internal_client_entry_do_not_use__ ToolbarPanels auto */
|
|
2203
|
+
|
|
2204
|
+
|
|
2205
|
+
|
|
2206
|
+
|
|
2207
|
+
|
|
2208
|
+
|
|
2085
2209
|
/**
|
|
2086
|
-
*
|
|
2210
|
+
* Renders the toolbar panel container with common panels (user, settings)
|
|
2211
|
+
* and any context-specific panels passed as children.
|
|
2087
2212
|
*
|
|
2088
|
-
*
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
|
|
2093
|
-
|
|
2094
|
-
|
|
2213
|
+
* Settings changes are handled via GlobalSettingsEventBus - no callbacks needed.
|
|
2214
|
+
*
|
|
2215
|
+
* @example
|
|
2216
|
+
* // Simple context (compose, discover, moderate, admin pages)
|
|
2217
|
+
* <ToolbarPanels
|
|
2218
|
+
* activePanel={activePanel}
|
|
2219
|
+
* theme={theme}
|
|
2220
|
+
* showLineNumbers={showLineNumbers}
|
|
2221
|
+
* />
|
|
2222
|
+
*
|
|
2223
|
+
* @example
|
|
2224
|
+
* // Document context with custom panels
|
|
2225
|
+
* <ToolbarPanels
|
|
2226
|
+
* activePanel={activePanel}
|
|
2227
|
+
* theme={theme}
|
|
2228
|
+
* showLineNumbers={showLineNumbers}
|
|
2229
|
+
* >
|
|
2230
|
+
* {activePanel === 'annotations' && <UnifiedAnnotationsPanel ... />}
|
|
2231
|
+
* {activePanel === 'history' && <AnnotationHistory ... />}
|
|
2232
|
+
* {activePanel === 'info' && <ResourceInfoPanel ... />}
|
|
2233
|
+
* {activePanel === 'collaboration' && <CollaborationPanel ... />}
|
|
2234
|
+
* {activePanel === 'jsonld' && <JsonLdPanel ... />}
|
|
2235
|
+
* </ToolbarPanels>
|
|
2236
|
+
*/ function ToolbarPanels({ activePanel, theme, showLineNumbers, hoverDelayMs, children }) {
|
|
2237
|
+
const locale = (0,production_react/* useLocale */.Ym)();
|
|
2238
|
+
const router = (0,routing/* useRouter */.rd)();
|
|
2239
|
+
const pathname = (0,routing/* usePathname */.a8)();
|
|
2240
|
+
const [isPending, startTransition] = (0,react.useTransition)();
|
|
2241
|
+
// Panel width management with localStorage persistence
|
|
2242
|
+
const { width, setWidth, minWidth, maxWidth } = (0,dist.usePanelWidth)();
|
|
2243
|
+
// Handle locale change events
|
|
2244
|
+
const handleLocaleChanged = (0,react.useCallback)(({ locale: newLocale })=>{
|
|
2245
|
+
if (!pathname) return;
|
|
2246
|
+
startTransition(()=>{
|
|
2247
|
+
// The router from @/i18n/routing is locale-aware and will handle the locale prefix
|
|
2248
|
+
router.replace(pathname, {
|
|
2249
|
+
locale: newLocale
|
|
2250
|
+
});
|
|
2251
|
+
});
|
|
2252
|
+
}, [
|
|
2253
|
+
pathname,
|
|
2254
|
+
router,
|
|
2255
|
+
startTransition
|
|
2256
|
+
]);
|
|
2257
|
+
// Subscribe to locale change events
|
|
2258
|
+
(0,dist.useEventSubscriptions)({
|
|
2259
|
+
'settings:locale-changed': handleLocaleChanged
|
|
2260
|
+
});
|
|
2261
|
+
// Don't render container if no panel is active
|
|
2262
|
+
if (!activePanel) {
|
|
2263
|
+
return null;
|
|
2264
|
+
}
|
|
2265
|
+
// In simple context (no children), only user and settings panels are valid.
|
|
2266
|
+
// If a resource-specific panel is still active from a previous route, hide the container.
|
|
2267
|
+
if (!children && !dist.COMMON_PANELS.includes(activePanel)) {
|
|
2268
|
+
return null;
|
|
2269
|
+
}
|
|
2270
|
+
return /*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
2271
|
+
className: "semiont-toolbar-panels",
|
|
2272
|
+
style: {
|
|
2273
|
+
width: `${width}px`,
|
|
2274
|
+
position: 'relative'
|
|
2275
|
+
},
|
|
2276
|
+
children: [
|
|
2277
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist.ResizeHandle, {
|
|
2278
|
+
onResize: setWidth,
|
|
2279
|
+
minWidth: minWidth,
|
|
2280
|
+
maxWidth: maxWidth,
|
|
2281
|
+
position: "left",
|
|
2282
|
+
ariaLabel: "Resize right panel"
|
|
2283
|
+
}),
|
|
2284
|
+
/*#__PURE__*/ (0,react_jsx_runtime.jsxs)("div", {
|
|
2285
|
+
className: "semiont-toolbar-panels__content",
|
|
2286
|
+
children: [
|
|
2287
|
+
children,
|
|
2288
|
+
activePanel === 'user' && /*#__PURE__*/ (0,react_jsx_runtime.jsx)(UserPanel, {}),
|
|
2289
|
+
activePanel === 'settings' && /*#__PURE__*/ (0,react_jsx_runtime.jsx)(dist.SettingsPanel, {
|
|
2290
|
+
showLineNumbers: showLineNumbers,
|
|
2291
|
+
theme: theme,
|
|
2292
|
+
hoverDelayMs: hoverDelayMs,
|
|
2293
|
+
locale: locale,
|
|
2294
|
+
isPendingLocaleChange: isPending
|
|
2295
|
+
})
|
|
2296
|
+
]
|
|
2297
|
+
})
|
|
2298
|
+
]
|
|
2095
2299
|
});
|
|
2096
2300
|
}
|
|
2097
2301
|
|
|
2098
|
-
//# sourceMappingURL=app-page.js.map
|
|
2099
2302
|
|
|
2303
|
+
/***/ }),
|
|
2304
|
+
|
|
2305
|
+
/***/ 55511:
|
|
2306
|
+
/***/ ((module) => {
|
|
2307
|
+
|
|
2308
|
+
"use strict";
|
|
2309
|
+
module.exports = require("crypto");
|
|
2310
|
+
|
|
2311
|
+
/***/ }),
|
|
2312
|
+
|
|
2313
|
+
/***/ 56677:
|
|
2314
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
2315
|
+
|
|
2316
|
+
"use strict";
|
|
2317
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
2318
|
+
/* harmony export */ C$z: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.useEventSubscriptions),
|
|
2319
|
+
/* harmony export */ DPo: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.useTheme),
|
|
2320
|
+
/* harmony export */ cvF: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.useLineNumbers),
|
|
2321
|
+
/* harmony export */ ySJ: () => (/* reexport safe */ _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__.usePanelBrowse)
|
|
2322
|
+
/* harmony export */ });
|
|
2323
|
+
/* harmony import */ var _home_runner_work_semiont_semiont_packages_react_ui_dist_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(76552);
|
|
2324
|
+
|
|
2325
|
+
|
|
2326
|
+
|
|
2327
|
+
/***/ }),
|
|
2328
|
+
|
|
2329
|
+
/***/ 59406:
|
|
2330
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
2331
|
+
|
|
2332
|
+
"use strict";
|
|
2333
|
+
__webpack_require__.r(__webpack_exports__);
|
|
2334
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
2335
|
+
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
2336
|
+
/* harmony export */ });
|
|
2337
|
+
/* harmony import */ var react_server_dom_webpack_server__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(30274);
|
|
2338
|
+
/* harmony import */ var react_server_dom_webpack_server__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_server_dom_webpack_server__WEBPACK_IMPORTED_MODULE_0__);
|
|
2339
|
+
// This file is generated by the Webpack next-flight-loader.
|
|
2340
|
+
|
|
2341
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react_server_dom_webpack_server__WEBPACK_IMPORTED_MODULE_0__.registerClientReference)(
|
|
2342
|
+
function() { throw new Error("Attempted to call the default export of \"/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/moderate/layout.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component."); },
|
|
2343
|
+
"/home/runner/work/semiont/semiont/apps/frontend/src/app/[locale]/moderate/layout.tsx",
|
|
2344
|
+
"default",
|
|
2345
|
+
));
|
|
2346
|
+
|
|
2347
|
+
|
|
2348
|
+
/***/ }),
|
|
2349
|
+
|
|
2350
|
+
/***/ 62256:
|
|
2351
|
+
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
|
2352
|
+
|
|
2353
|
+
Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 59406));
|
|
2354
|
+
|
|
2355
|
+
|
|
2356
|
+
/***/ }),
|
|
2357
|
+
|
|
2358
|
+
/***/ 63033:
|
|
2359
|
+
/***/ ((module) => {
|
|
2360
|
+
|
|
2361
|
+
"use strict";
|
|
2362
|
+
module.exports = require("next/dist/server/app-render/work-unit-async-storage.external.js");
|
|
2100
2363
|
|
|
2101
2364
|
/***/ }),
|
|
2102
2365
|
|
|
@@ -2147,7 +2410,7 @@ module.exports = require("next/dist/shared/lib/no-fallback-error.external");
|
|
|
2147
2410
|
var __webpack_require__ = require("../../../../webpack-runtime.js");
|
|
2148
2411
|
__webpack_require__.C(exports);
|
|
2149
2412
|
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
|
2150
|
-
var __webpack_exports__ = __webpack_require__.X(0, [
|
|
2413
|
+
var __webpack_exports__ = __webpack_require__.X(0, [8569,4741,9927,7420,2617,3144,8255,9988], () => (__webpack_exec__(10597)));
|
|
2151
2414
|
module.exports = __webpack_exports__;
|
|
2152
2415
|
|
|
2153
2416
|
})();
|