Next.js website for Rocky Mountain Vending company featuring: - Product catalog with Stripe integration - Service areas and parts pages - Admin dashboard with Clerk authentication - SEO optimized pages with JSON-LD structured data Co-authored-by: Cursor <cursoragent@cursor.com>
1 line
No EOL
57 KiB
Text
1 line
No EOL
57 KiB
Text
{"version":3,"sources":["../../src/build/entries.ts"],"sourcesContent":["import type { ClientPagesLoaderOptions } from './webpack/loaders/next-client-pages-loader'\nimport type { MiddlewareLoaderOptions } from './webpack/loaders/next-middleware-loader'\nimport type { EdgeSSRLoaderQuery } from './webpack/loaders/next-edge-ssr-loader'\nimport type { EdgeAppRouteLoaderQuery } from './webpack/loaders/next-edge-app-route-loader'\nimport type { NextConfigComplete } from '../server/config-shared'\nimport type { webpack } from 'next/dist/compiled/webpack/webpack'\nimport type {\n ProxyConfig,\n ProxyMatcher,\n PageStaticInfo,\n} from './analysis/get-page-static-info'\nimport type { LoadedEnvFiles } from '@next/env'\nimport type { AppLoaderOptions } from './webpack/loaders/next-app-loader'\n\nimport { posix, join, normalize } from 'path'\nimport { stringify } from 'querystring'\nimport {\n PAGES_DIR_ALIAS,\n ROOT_DIR_ALIAS,\n APP_DIR_ALIAS,\n WEBPACK_LAYERS,\n INSTRUMENTATION_HOOK_FILENAME,\n} from '../lib/constants'\nimport { isAPIRoute } from '../lib/is-api-route'\nimport { isEdgeRuntime } from '../lib/is-edge-runtime'\nimport {\n APP_CLIENT_INTERNALS,\n RSC_MODULE_TYPES,\n UNDERSCORE_NOT_FOUND_ROUTE,\n} from '../shared/lib/constants'\nimport {\n CLIENT_STATIC_FILES_RUNTIME_MAIN,\n CLIENT_STATIC_FILES_RUNTIME_MAIN_APP,\n CLIENT_STATIC_FILES_RUNTIME_POLYFILLS,\n CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH,\n COMPILER_NAMES,\n EDGE_RUNTIME_WEBPACK,\n} from '../shared/lib/constants'\nimport type { CompilerNameValues } from '../shared/lib/constants'\nimport type { __ApiPreviewProps } from '../server/api-utils'\nimport {\n isMiddlewareFile,\n isMiddlewareFilename,\n isProxyFile,\n isInstrumentationHookFile,\n isInstrumentationHookFilename,\n} from './utils'\nimport { getPageStaticInfo } from './analysis/get-page-static-info'\nimport { normalizePathSep } from '../shared/lib/page-path/normalize-path-sep'\nimport { normalizePagePath } from '../shared/lib/page-path/normalize-page-path'\nimport type { ServerRuntime } from '../types'\nimport { normalizeAppPath } from '../shared/lib/router/utils/app-paths'\nimport { encodeMatchers } from './webpack/loaders/next-middleware-loader'\nimport type { EdgeFunctionLoaderOptions } from './webpack/loaders/next-edge-function-loader'\nimport { isAppRouteRoute } from '../lib/is-app-route-route'\nimport {\n normalizeMetadataPageToRoute,\n normalizeMetadataRoute,\n} from '../lib/metadata/get-metadata-route'\nimport { getRouteLoaderEntry } from './webpack/loaders/next-route-loader'\nimport {\n isInternalComponent,\n isNonRoutePagesPage,\n} from '../lib/is-internal-component'\nimport { isMetadataRouteFile } from '../lib/metadata/is-metadata-route'\nimport { RouteKind } from '../server/route-kind'\nimport { encodeToBase64 } from './webpack/loaders/utils'\nimport { normalizeCatchAllRoutes } from './normalize-catchall-routes'\nimport type { PageExtensions } from './page-extensions-type'\nimport type { MappedPages } from './build-context'\nimport { PAGE_TYPES } from '../lib/page-types'\nimport { recursiveReadDir } from '../lib/recursive-readdir'\nimport type { createValidFileMatcher } from '../server/lib/find-page-file'\nimport { isReservedPage } from './utils'\nimport { isParallelRouteSegment } from '../shared/lib/segment'\nimport { ensureLeadingSlash } from '../shared/lib/page-path/ensure-leading-slash'\nimport {\n UNDERSCORE_NOT_FOUND_ROUTE_ENTRY,\n UNDERSCORE_GLOBAL_ERROR_ROUTE,\n UNDERSCORE_GLOBAL_ERROR_ROUTE_ENTRY,\n} from '../shared/lib/entry-constants'\nimport { getStaticInfoIncludingLayouts } from './get-static-info-including-layouts'\n\n/**\n * Collect app pages, layouts, and default files from the app directory\n * @param appDir - The app directory path\n * @param validFileMatcher - File matcher object\n * @returns Object containing appPaths, layoutPaths, and defaultPaths arrays\n */\nexport async function collectAppFiles(\n appDir: string,\n validFileMatcher: ReturnType<typeof createValidFileMatcher>\n): Promise<{\n appPaths: string[]\n layoutPaths: string[]\n defaultPaths: string[]\n}> {\n // Collect app pages, layouts, and default files in a single directory traversal\n const allAppFiles = await recursiveReadDir(appDir, {\n pathnameFilter: (absolutePath) =>\n validFileMatcher.isAppRouterPage(absolutePath) ||\n validFileMatcher.isRootNotFound(absolutePath) ||\n validFileMatcher.isAppLayoutPage(absolutePath) ||\n validFileMatcher.isAppDefaultPage(absolutePath),\n ignorePartFilter: (part) => part.startsWith('_'),\n })\n\n // Separate app pages, layouts, and defaults\n const appPaths = allAppFiles.filter(\n (absolutePath) =>\n validFileMatcher.isAppRouterPage(absolutePath) ||\n validFileMatcher.isRootNotFound(absolutePath)\n )\n const layoutPaths = allAppFiles.filter((absolutePath) =>\n validFileMatcher.isAppLayoutPage(absolutePath)\n )\n const defaultPaths = allAppFiles.filter((absolutePath) =>\n validFileMatcher.isAppDefaultPage(absolutePath)\n )\n\n return { appPaths, layoutPaths, defaultPaths }\n}\n\n/**\n * Collect pages from the pages directory\n * @param pagesDir - The pages directory path\n * @param validFileMatcher - File matcher object\n * @returns Array of page file paths\n */\nexport async function collectPagesFiles(\n pagesDir: string,\n validFileMatcher: ReturnType<typeof createValidFileMatcher>\n): Promise<string[]> {\n return recursiveReadDir(pagesDir, {\n pathnameFilter: validFileMatcher.isPageFile,\n })\n}\n\n// Types for route processing\nexport type RouteInfo = {\n route: string\n filePath: string\n}\n\nexport type SlotInfo = {\n name: string\n parent: string\n}\n\n/**\n * Create a relative file path from a mapped page path\n * @param baseDir - The base directory path\n * @param filePath - The mapped file path (with private prefix)\n * @param prefix - The directory prefix ('pages' or 'app')\n * @param isSrcDir - Whether the project uses src directory structure\n * @returns The relative file path\n */\nexport function createRelativeFilePath(\n baseDir: string,\n filePath: string,\n prefix: 'pages' | 'app',\n isSrcDir: boolean\n): string {\n const privatePrefix =\n prefix === 'pages' ? 'private-next-pages' : 'private-next-app-dir'\n const srcPrefix = isSrcDir ? 'src/' : ''\n return join(\n baseDir,\n filePath.replace(new RegExp(`^${privatePrefix}/`), `${srcPrefix}${prefix}/`)\n )\n}\n\n/**\n * Process pages routes from mapped pages\n * @param mappedPages - The mapped pages object\n * @param baseDir - The base directory path\n * @param isSrcDir - Whether the project uses src directory structure\n * @returns Object containing pageRoutes and pageApiRoutes\n */\nexport function processPageRoutes(\n mappedPages: { [page: string]: string },\n baseDir: string,\n isSrcDir: boolean\n): {\n pageRoutes: RouteInfo[]\n pageApiRoutes: RouteInfo[]\n} {\n const pageRoutes: RouteInfo[] = []\n const pageApiRoutes: RouteInfo[] = []\n\n for (const [route, filePath] of Object.entries(mappedPages)) {\n const relativeFilePath = createRelativeFilePath(\n baseDir,\n filePath,\n 'pages',\n isSrcDir\n )\n\n if (route.startsWith('/api/')) {\n pageApiRoutes.push({\n route: normalizePathSep(route),\n filePath: relativeFilePath,\n })\n } else {\n // Filter out _app, _error, _document\n if (isReservedPage(route)) continue\n\n pageRoutes.push({\n route: normalizePathSep(route),\n filePath: relativeFilePath,\n })\n }\n }\n\n return { pageRoutes, pageApiRoutes }\n}\n\n/**\n * Extract slots from app routes\n * @param mappedAppPages - The mapped app pages object\n * @returns Array of slot information\n */\nexport function extractSlotsFromAppRoutes(mappedAppPages: {\n [page: string]: string\n}): SlotInfo[] {\n const slots: SlotInfo[] = []\n\n for (const [page] of Object.entries(mappedAppPages)) {\n if (\n page === UNDERSCORE_NOT_FOUND_ROUTE_ENTRY ||\n page === UNDERSCORE_GLOBAL_ERROR_ROUTE_ENTRY\n ) {\n continue\n }\n\n const segments = page.split('/')\n for (let i = segments.length - 1; i >= 0; i--) {\n const segment = segments[i]\n if (isParallelRouteSegment(segment)) {\n const parentPath = normalizeAppPath(segments.slice(0, i).join('/'))\n const slotName = segment.slice(1)\n\n // Check if the slot already exists\n if (slots.some((s) => s.name === slotName && s.parent === parentPath))\n continue\n\n slots.push({\n name: slotName,\n parent: parentPath,\n })\n break\n }\n }\n }\n\n return slots\n}\n\n/**\n * Extract slots from default files\n * @param mappedDefaultFiles - The mapped default files object\n * @returns Array of slot information\n */\nexport function extractSlotsFromDefaultFiles(mappedDefaultFiles: {\n [page: string]: string\n}): SlotInfo[] {\n const slots: SlotInfo[] = []\n\n for (const [route] of Object.entries(mappedDefaultFiles)) {\n const segments = route.split('/')\n for (let i = segments.length - 1; i >= 0; i--) {\n const segment = segments[i]\n if (isParallelRouteSegment(segment)) {\n const parentPath = normalizeAppPath(segments.slice(0, i).join('/'))\n const slotName = segment.slice(1)\n\n // Check if the slot already exists\n if (slots.some((s) => s.name === slotName && s.parent === parentPath))\n continue\n\n slots.push({\n name: slotName,\n parent: parentPath,\n })\n break\n }\n }\n }\n\n return slots\n}\n\n/**\n * Combine and deduplicate slot arrays using a Set\n * @param slotArrays - Arrays of slot information to combine\n * @returns Deduplicated array of slots\n */\nexport function combineSlots(...slotArrays: SlotInfo[][]): SlotInfo[] {\n const slotSet = new Set<string>()\n const result: SlotInfo[] = []\n\n for (const slots of slotArrays) {\n for (const slot of slots) {\n const key = `${slot.name}:${slot.parent}`\n if (!slotSet.has(key)) {\n slotSet.add(key)\n result.push(slot)\n }\n }\n }\n\n return result\n}\n\n/**\n * Process app routes from mapped app pages\n * @param mappedAppPages - The mapped app pages object\n * @param validFileMatcher - File matcher object\n * @param baseDir - The base directory path\n * @param isSrcDir - Whether the project uses src directory structure\n * @returns Array of route information\n */\nexport function processAppRoutes(\n mappedAppPages: { [page: string]: string },\n validFileMatcher: ReturnType<typeof createValidFileMatcher>,\n baseDir: string,\n isSrcDir: boolean\n): {\n appRoutes: RouteInfo[]\n appRouteHandlers: RouteInfo[]\n} {\n const appRoutes: RouteInfo[] = []\n const appRouteHandlers: RouteInfo[] = []\n\n for (const [page, filePath] of Object.entries(mappedAppPages)) {\n if (\n page === UNDERSCORE_NOT_FOUND_ROUTE_ENTRY ||\n page === UNDERSCORE_GLOBAL_ERROR_ROUTE_ENTRY\n ) {\n continue\n }\n\n const relativeFilePath = createRelativeFilePath(\n baseDir,\n filePath,\n 'app',\n isSrcDir\n )\n\n if (validFileMatcher.isAppRouterRoute(filePath)) {\n appRouteHandlers.push({\n route: normalizeAppPath(normalizePathSep(page)),\n filePath: relativeFilePath,\n })\n } else {\n appRoutes.push({\n route: normalizeAppPath(normalizePathSep(page)),\n filePath: relativeFilePath,\n })\n }\n }\n\n return { appRoutes, appRouteHandlers }\n}\n\n/**\n * Process layout routes from mapped app layouts\n * @param mappedAppLayouts - The mapped app layouts object\n * @param baseDir - The base directory path\n * @param isSrcDir - Whether the project uses src directory structure\n * @returns Array of layout route information\n */\nexport function processLayoutRoutes(\n mappedAppLayouts: { [page: string]: string },\n baseDir: string,\n isSrcDir: boolean\n): RouteInfo[] {\n const layoutRoutes: RouteInfo[] = []\n\n for (const [route, filePath] of Object.entries(mappedAppLayouts)) {\n const relativeFilePath = createRelativeFilePath(\n baseDir,\n filePath,\n 'app',\n isSrcDir\n )\n layoutRoutes.push({\n route: ensureLeadingSlash(\n normalizeAppPath(normalizePathSep(route)).replace(/\\/layout$/, '')\n ),\n filePath: relativeFilePath,\n })\n }\n\n return layoutRoutes\n}\n\ntype ObjectValue<T> = T extends { [key: string]: infer V } ? V : never\n\n/**\n * For a given page path removes the provided extensions.\n */\nexport function getPageFromPath(\n pagePath: string,\n pageExtensions: PageExtensions\n) {\n let page = normalizePathSep(\n pagePath.replace(new RegExp(`\\\\.+(${pageExtensions.join('|')})$`), '')\n )\n\n page = page.replace(/\\/index$/, '')\n\n return page === '' ? '/' : page\n}\n\nexport function getPageFilePath({\n absolutePagePath,\n pagesDir,\n appDir,\n rootDir,\n}: {\n absolutePagePath: string\n pagesDir: string | undefined\n appDir: string | undefined\n rootDir: string\n}) {\n if (absolutePagePath.startsWith(PAGES_DIR_ALIAS) && pagesDir) {\n return absolutePagePath.replace(PAGES_DIR_ALIAS, pagesDir)\n }\n\n if (absolutePagePath.startsWith(APP_DIR_ALIAS) && appDir) {\n return absolutePagePath.replace(APP_DIR_ALIAS, appDir)\n }\n\n if (absolutePagePath.startsWith(ROOT_DIR_ALIAS)) {\n return absolutePagePath.replace(ROOT_DIR_ALIAS, rootDir)\n }\n\n return require.resolve(absolutePagePath)\n}\n\n/**\n * Creates a mapping of route to page file path for a given list of page paths.\n * For example ['/middleware.ts'] is turned into { '/middleware': `${ROOT_DIR_ALIAS}/middleware.ts` }\n */\nexport async function createPagesMapping({\n isDev,\n pageExtensions,\n pagePaths,\n pagesType,\n pagesDir,\n appDir,\n appDirOnly,\n}: {\n isDev: boolean\n pageExtensions: PageExtensions\n pagePaths: string[]\n pagesType: PAGE_TYPES\n pagesDir: string | undefined\n appDir: string | undefined\n appDirOnly: boolean\n}): Promise<MappedPages> {\n const isAppRoute = pagesType === 'app'\n const pages: MappedPages = {}\n const promises = pagePaths.map<Promise<void>>(async (pagePath) => {\n // Do not process .d.ts files as routes\n if (pagePath.endsWith('.d.ts') && pageExtensions.includes('ts')) {\n return\n }\n\n let pageKey = getPageFromPath(pagePath, pageExtensions)\n if (isAppRoute) {\n pageKey = pageKey.replace(/%5F/g, '_')\n if (pageKey === UNDERSCORE_NOT_FOUND_ROUTE) {\n pageKey = UNDERSCORE_NOT_FOUND_ROUTE_ENTRY\n }\n if (pageKey === UNDERSCORE_GLOBAL_ERROR_ROUTE) {\n pageKey = UNDERSCORE_GLOBAL_ERROR_ROUTE_ENTRY\n }\n }\n\n const normalizedPath = normalizePathSep(\n join(\n pagesType === 'pages'\n ? PAGES_DIR_ALIAS\n : pagesType === 'app'\n ? APP_DIR_ALIAS\n : ROOT_DIR_ALIAS,\n pagePath\n )\n )\n\n let route = pagesType === 'app' ? normalizeMetadataRoute(pageKey) : pageKey\n\n if (\n pagesType === 'app' &&\n isMetadataRouteFile(pagePath, pageExtensions, true)\n ) {\n const filePath = join(appDir!, pagePath)\n const staticInfo = await getPageStaticInfo({\n nextConfig: {},\n pageFilePath: filePath,\n isDev,\n page: pageKey,\n pageType: pagesType,\n })\n\n route = normalizeMetadataPageToRoute(\n route,\n !!(staticInfo.generateImageMetadata || staticInfo.generateSitemaps)\n )\n }\n\n pages[route] = normalizedPath\n })\n\n await Promise.all(promises)\n\n switch (pagesType) {\n case PAGE_TYPES.ROOT: {\n return pages\n }\n case PAGE_TYPES.APP: {\n const hasAppPages = Object.keys(pages).length > 0\n // Whether to emit App router 500.html entry, which only presents in production and only app router presents\n const hasAppGlobalError = !isDev && appDirOnly\n return {\n // If there's any app pages existed, add a default /_not-found route as 404.\n // If there's any custom /_not-found page, it will override the default one.\n ...(hasAppPages && {\n [UNDERSCORE_NOT_FOUND_ROUTE_ENTRY]: require.resolve(\n 'next/dist/client/components/builtin/global-not-found'\n ),\n }),\n ...(hasAppGlobalError && {\n [UNDERSCORE_GLOBAL_ERROR_ROUTE_ENTRY]: require.resolve(\n 'next/dist/client/components/builtin/app-error'\n ),\n }),\n ...pages,\n }\n }\n case PAGE_TYPES.PAGES: {\n if (isDev) {\n delete pages['/_app']\n delete pages['/_error']\n delete pages['/_document']\n }\n\n // In development we always alias these to allow Webpack to fallback to\n // the correct source file so that HMR can work properly when a file is\n // added or removed.\n const root = isDev && pagesDir ? PAGES_DIR_ALIAS : 'next/dist/pages'\n\n return {\n // Don't add default pages entries if this is an app-router-only build\n ...((isDev || !appDirOnly) && {\n '/_app': `${root}/_app`,\n '/_error': `${root}/_error`,\n '/_document': `${root}/_document`,\n ...pages,\n }),\n }\n }\n default: {\n return {}\n }\n }\n}\n\nexport interface CreateEntrypointsParams {\n buildId: string\n config: NextConfigComplete\n envFiles: LoadedEnvFiles\n isDev: boolean\n pages: MappedPages\n pagesDir?: string\n previewMode: __ApiPreviewProps\n rootDir: string\n rootPaths?: MappedPages\n appDir?: string\n appPaths?: MappedPages\n pageExtensions: PageExtensions\n hasInstrumentationHook?: boolean\n}\n\nexport function getEdgeServerEntry(opts: {\n rootDir: string\n absolutePagePath: string\n buildId: string\n bundlePath: string\n config: NextConfigComplete\n isDev: boolean\n isServerComponent: boolean\n page: string\n pages: MappedPages\n middleware?: Partial<ProxyConfig>\n pagesType: PAGE_TYPES\n appDirLoader?: string\n hasInstrumentationHook?: boolean\n preferredRegion: string | string[] | undefined\n middlewareConfig?: ProxyConfig\n}) {\n if (\n opts.pagesType === 'app' &&\n isAppRouteRoute(opts.page) &&\n opts.appDirLoader\n ) {\n const loaderParams: EdgeAppRouteLoaderQuery = {\n absolutePagePath: opts.absolutePagePath,\n page: opts.page,\n appDirLoader: Buffer.from(opts.appDirLoader || '').toString('base64'),\n nextConfig: Buffer.from(JSON.stringify(opts.config)).toString('base64'),\n preferredRegion: opts.preferredRegion,\n middlewareConfig: Buffer.from(\n JSON.stringify(opts.middlewareConfig || {})\n ).toString('base64'),\n cacheHandlers: JSON.stringify(opts.config.cacheHandlers || {}),\n }\n\n return {\n import: `next-edge-app-route-loader?${stringify(loaderParams)}!`,\n layer: WEBPACK_LAYERS.reactServerComponents,\n }\n }\n\n if (isMiddlewareFile(opts.page)) {\n const loaderParams: MiddlewareLoaderOptions = {\n absolutePagePath: opts.absolutePagePath,\n page: opts.page,\n rootDir: opts.rootDir,\n matchers: opts.middleware?.matchers\n ? encodeMatchers(opts.middleware.matchers)\n : '',\n preferredRegion: opts.preferredRegion,\n middlewareConfig: Buffer.from(\n JSON.stringify(opts.middlewareConfig || {})\n ).toString('base64'),\n }\n\n return {\n import: `next-middleware-loader?${stringify(loaderParams)}!`,\n layer: WEBPACK_LAYERS.middleware,\n filename: opts.isDev ? 'middleware.js' : undefined,\n }\n }\n\n if (isAPIRoute(opts.page)) {\n const loaderParams: EdgeFunctionLoaderOptions = {\n absolutePagePath: opts.absolutePagePath,\n page: opts.page,\n rootDir: opts.rootDir,\n preferredRegion: opts.preferredRegion,\n middlewareConfig: Buffer.from(\n JSON.stringify(opts.middlewareConfig || {})\n ).toString('base64'),\n }\n\n return {\n import: `next-edge-function-loader?${stringify(loaderParams)}!`,\n layer: WEBPACK_LAYERS.apiEdge,\n }\n }\n\n const loaderParams: EdgeSSRLoaderQuery = {\n absolute500Path: opts.pages['/500'] || '',\n absoluteAppPath: opts.pages['/_app'],\n absoluteDocumentPath: opts.pages['/_document'],\n absoluteErrorPath: opts.pages['/_error'],\n absolutePagePath: opts.absolutePagePath,\n dev: opts.isDev,\n isServerComponent: opts.isServerComponent,\n page: opts.page,\n stringifiedConfig: Buffer.from(JSON.stringify(opts.config)).toString(\n 'base64'\n ),\n pagesType: opts.pagesType,\n appDirLoader: Buffer.from(opts.appDirLoader || '').toString('base64'),\n sriEnabled: !opts.isDev && !!opts.config.experimental.sri?.algorithm,\n cacheHandler: opts.config.cacheHandler,\n preferredRegion: opts.preferredRegion,\n middlewareConfig: Buffer.from(\n JSON.stringify(opts.middlewareConfig || {})\n ).toString('base64'),\n serverActions: opts.config.experimental.serverActions,\n cacheHandlers: JSON.stringify(opts.config.cacheHandlers || {}),\n }\n\n return {\n import: `next-edge-ssr-loader?${JSON.stringify(loaderParams)}!`,\n // The Edge bundle includes the server in its entrypoint, so it has to\n // be in the SSR layer — we later convert the page request to the RSC layer\n // via a webpack rule.\n layer: opts.appDirLoader ? WEBPACK_LAYERS.serverSideRendering : undefined,\n }\n}\n\nexport function getInstrumentationEntry(opts: {\n absolutePagePath: string\n isEdgeServer: boolean\n isDev: boolean\n}) {\n // the '../' is needed to make sure the file is not chunked\n const filename = `${\n opts.isEdgeServer ? 'edge-' : opts.isDev ? '' : '../'\n }${INSTRUMENTATION_HOOK_FILENAME}.js`\n\n return {\n import: opts.absolutePagePath,\n filename,\n layer: WEBPACK_LAYERS.instrument,\n }\n}\n\nexport function getAppLoader() {\n return process.env.BUILTIN_APP_LOADER\n ? `builtin:next-app-loader`\n : 'next-app-loader'\n}\n\nexport function getAppEntry(opts: Readonly<AppLoaderOptions>) {\n if (process.env.NEXT_RSPACK && process.env.BUILTIN_APP_LOADER) {\n ;(opts as any).projectRoot = normalize(join(__dirname, '../../..'))\n }\n return {\n import: `${getAppLoader()}?${stringify(opts)}!`,\n layer: WEBPACK_LAYERS.reactServerComponents,\n }\n}\n\nexport function getClientEntry(opts: {\n absolutePagePath: string\n page: string\n}) {\n const loaderOptions: ClientPagesLoaderOptions = {\n absolutePagePath: opts.absolutePagePath,\n page: opts.page,\n }\n\n const pageLoader = `next-client-pages-loader?${stringify(loaderOptions)}!`\n\n // Make sure next/router is a dependency of _app or else chunk splitting\n // might cause the router to not be able to load causing hydration\n // to fail\n return opts.page === '/_app'\n ? [pageLoader, require.resolve('../client/router')]\n : pageLoader\n}\n\nexport function runDependingOnPageType<T>(params: {\n onClient: () => T\n onEdgeServer: () => T\n onServer: () => T\n page: string\n pageRuntime: ServerRuntime\n pageType?: PAGE_TYPES\n}): void {\n if (\n params.pageType === PAGE_TYPES.ROOT &&\n isInstrumentationHookFile(params.page)\n ) {\n params.onServer()\n params.onEdgeServer()\n return\n }\n\n if (isProxyFile(params.page)) {\n params.onServer()\n return\n }\n\n if (isMiddlewareFile(params.page)) {\n if (params.pageRuntime === 'nodejs') {\n params.onServer()\n return\n } else {\n params.onEdgeServer()\n return\n }\n }\n\n if (isAPIRoute(params.page)) {\n if (isEdgeRuntime(params.pageRuntime)) {\n params.onEdgeServer()\n return\n }\n\n params.onServer()\n return\n }\n if (params.page === '/_document') {\n params.onServer()\n return\n }\n if (\n params.page === '/_app' ||\n params.page === '/_error' ||\n params.page === '/404' ||\n params.page === '/500'\n ) {\n params.onClient()\n params.onServer()\n return\n }\n if (isEdgeRuntime(params.pageRuntime)) {\n params.onClient()\n params.onEdgeServer()\n return\n }\n\n params.onClient()\n params.onServer()\n return\n}\n\nexport async function createEntrypoints(\n params: CreateEntrypointsParams\n): Promise<{\n client: webpack.EntryObject\n server: webpack.EntryObject\n edgeServer: webpack.EntryObject\n middlewareMatchers: undefined\n}> {\n const {\n config,\n pages,\n pagesDir,\n isDev,\n rootDir,\n rootPaths,\n appDir,\n appPaths,\n pageExtensions,\n } = params\n const edgeServer: webpack.EntryObject = {}\n const server: webpack.EntryObject = {}\n const client: webpack.EntryObject = {}\n let middlewareMatchers: ProxyMatcher[] | undefined = undefined\n\n let appPathsPerRoute: Record<string, string[]> = {}\n if (appDir && appPaths) {\n for (const pathname in appPaths) {\n const normalizedPath = normalizeAppPath(pathname)\n const actualPath = appPaths[pathname]\n if (!appPathsPerRoute[normalizedPath]) {\n appPathsPerRoute[normalizedPath] = []\n }\n appPathsPerRoute[normalizedPath].push(\n // TODO-APP: refactor to pass the page path from createPagesMapping instead.\n getPageFromPath(actualPath, pageExtensions).replace(APP_DIR_ALIAS, '')\n )\n }\n\n // TODO: find a better place to do this\n normalizeCatchAllRoutes(appPathsPerRoute)\n\n // Make sure to sort parallel routes to make the result deterministic.\n appPathsPerRoute = Object.fromEntries(\n Object.entries(appPathsPerRoute).map(([k, v]) => [k, v.sort()])\n )\n }\n\n const getEntryHandler =\n (mappings: MappedPages, pagesType: PAGE_TYPES): ((page: string) => void) =>\n async (page) => {\n const bundleFile = normalizePagePath(page)\n const clientBundlePath = posix.join(pagesType, bundleFile)\n const serverBundlePath =\n pagesType === PAGE_TYPES.PAGES\n ? posix.join('pages', bundleFile)\n : pagesType === PAGE_TYPES.APP\n ? posix.join('app', bundleFile)\n : bundleFile.slice(1)\n\n const absolutePagePath = mappings[page]\n\n // Handle paths that have aliases\n const pageFilePath = getPageFilePath({\n absolutePagePath,\n pagesDir,\n appDir,\n rootDir,\n })\n\n const isInsideAppDir =\n !!appDir &&\n (absolutePagePath.startsWith(APP_DIR_ALIAS) ||\n absolutePagePath.startsWith(appDir))\n\n const staticInfo: PageStaticInfo = await getStaticInfoIncludingLayouts({\n isInsideAppDir,\n pageExtensions,\n pageFilePath,\n appDir,\n config,\n isDev,\n page,\n })\n\n // TODO(timneutkens): remove this\n const isServerComponent =\n isInsideAppDir && staticInfo.rsc !== RSC_MODULE_TYPES.client\n\n if (isMiddlewareFile(page)) {\n middlewareMatchers = staticInfo.middleware?.matchers ?? [\n { regexp: '.*', originalSource: '/:path*' },\n ]\n }\n\n const isInstrumentation =\n isInstrumentationHookFile(page) && pagesType === PAGE_TYPES.ROOT\n\n runDependingOnPageType({\n page,\n pageRuntime: staticInfo.runtime,\n pageType: pagesType,\n onClient: () => {\n if (isServerComponent || isInsideAppDir) {\n // We skip the initial entries for server component pages and let the\n // server compiler inject them instead.\n } else {\n client[clientBundlePath] = getClientEntry({\n absolutePagePath,\n page,\n })\n }\n },\n onServer: () => {\n if (pagesType === 'app' && appDir) {\n const matchedAppPaths = appPathsPerRoute[normalizeAppPath(page)]\n server[serverBundlePath] = getAppEntry({\n page,\n name: serverBundlePath,\n pagePath: absolutePagePath,\n appDir,\n appPaths: matchedAppPaths,\n pageExtensions,\n basePath: config.basePath,\n assetPrefix: config.assetPrefix,\n nextConfigOutput: config.output,\n preferredRegion: staticInfo.preferredRegion,\n middlewareConfig: encodeToBase64(staticInfo.middleware || {}),\n isGlobalNotFoundEnabled: config.experimental.globalNotFound\n ? true\n : undefined,\n })\n } else if (isInstrumentation) {\n server[serverBundlePath.replace('src/', '')] =\n getInstrumentationEntry({\n absolutePagePath,\n isEdgeServer: false,\n isDev: false,\n })\n } else if (isMiddlewareFile(page)) {\n server[serverBundlePath.replace('src/', '')] = getEdgeServerEntry({\n ...params,\n rootDir,\n absolutePagePath: absolutePagePath,\n bundlePath: clientBundlePath,\n isDev: false,\n isServerComponent,\n page,\n middleware: staticInfo?.middleware,\n pagesType,\n preferredRegion: staticInfo.preferredRegion,\n middlewareConfig: staticInfo.middleware,\n })\n } else if (isAPIRoute(page)) {\n server[serverBundlePath] = [\n getRouteLoaderEntry({\n kind: RouteKind.PAGES_API,\n page,\n absolutePagePath,\n preferredRegion: staticInfo.preferredRegion,\n middlewareConfig: staticInfo.middleware || {},\n }),\n ]\n } else if (\n !isMiddlewareFile(page) &&\n !isInternalComponent(absolutePagePath) &&\n !isNonRoutePagesPage(page)\n ) {\n server[serverBundlePath] = [\n getRouteLoaderEntry({\n kind: RouteKind.PAGES,\n page,\n pages,\n absolutePagePath,\n preferredRegion: staticInfo.preferredRegion,\n middlewareConfig: staticInfo.middleware ?? {},\n }),\n ]\n } else {\n server[serverBundlePath] = [absolutePagePath]\n }\n },\n onEdgeServer: () => {\n let appDirLoader: string = ''\n if (isInstrumentation) {\n edgeServer[serverBundlePath.replace('src/', '')] =\n getInstrumentationEntry({\n absolutePagePath,\n isEdgeServer: true,\n isDev: false,\n })\n } else {\n if (pagesType === 'app') {\n const matchedAppPaths = appPathsPerRoute[normalizeAppPath(page)]\n appDirLoader = getAppEntry({\n name: serverBundlePath,\n page,\n pagePath: absolutePagePath,\n appDir: appDir!,\n appPaths: matchedAppPaths,\n pageExtensions,\n basePath: config.basePath,\n assetPrefix: config.assetPrefix,\n nextConfigOutput: config.output,\n // This isn't used with edge as it needs to be set on the entry module, which will be the `edgeServerEntry` instead.\n // Still passing it here for consistency.\n preferredRegion: staticInfo.preferredRegion,\n middlewareConfig: Buffer.from(\n JSON.stringify(staticInfo.middleware || {})\n ).toString('base64'),\n isGlobalNotFoundEnabled: config.experimental.globalNotFound\n ? true\n : undefined,\n }).import\n }\n edgeServer[serverBundlePath] = getEdgeServerEntry({\n ...params,\n rootDir,\n absolutePagePath: absolutePagePath,\n bundlePath: clientBundlePath,\n isDev: false,\n isServerComponent,\n page,\n middleware: staticInfo?.middleware,\n pagesType,\n appDirLoader,\n preferredRegion: staticInfo.preferredRegion,\n middlewareConfig: staticInfo.middleware,\n })\n }\n },\n })\n }\n\n const promises: Promise<void[]>[] = []\n\n if (appPaths) {\n const entryHandler = getEntryHandler(appPaths, PAGE_TYPES.APP)\n promises.push(Promise.all(Object.keys(appPaths).map(entryHandler)))\n }\n if (rootPaths) {\n promises.push(\n Promise.all(\n Object.keys(rootPaths).map(getEntryHandler(rootPaths, PAGE_TYPES.ROOT))\n )\n )\n }\n promises.push(\n Promise.all(\n Object.keys(pages).map(getEntryHandler(pages, PAGE_TYPES.PAGES))\n )\n )\n\n await Promise.all(promises)\n\n // Optimization: If there's only one instrumentation hook in edge compiler, which means there's no edge server entry.\n // We remove the edge instrumentation entry from edge compiler as it can be pure server side.\n if (edgeServer.instrumentation && Object.keys(edgeServer).length === 1) {\n delete edgeServer.instrumentation\n }\n\n return {\n client,\n server,\n edgeServer,\n middlewareMatchers,\n }\n}\n\nexport function finalizeEntrypoint({\n name,\n compilerType,\n value,\n isServerComponent,\n hasAppDir,\n}: {\n compilerType: CompilerNameValues\n name: string\n value: ObjectValue<webpack.EntryObject>\n isServerComponent?: boolean\n hasAppDir?: boolean\n}): ObjectValue<webpack.EntryObject> {\n const entry =\n typeof value !== 'object' || Array.isArray(value)\n ? { import: value }\n : value\n\n const isApi = name.startsWith('pages/api/')\n const isInstrumentation = isInstrumentationHookFilename(name)\n\n switch (compilerType) {\n case COMPILER_NAMES.server: {\n const layer = isApi\n ? WEBPACK_LAYERS.apiNode\n : isInstrumentation\n ? WEBPACK_LAYERS.instrument\n : isServerComponent\n ? WEBPACK_LAYERS.reactServerComponents\n : name.startsWith('pages/')\n ? WEBPACK_LAYERS.pagesDirNode\n : undefined\n\n return {\n publicPath: isApi ? '' : undefined,\n runtime: isApi ? 'webpack-api-runtime' : 'webpack-runtime',\n layer,\n ...entry,\n }\n }\n case COMPILER_NAMES.edgeServer: {\n return {\n layer: isApi\n ? WEBPACK_LAYERS.apiEdge\n : isMiddlewareFilename(name) || isInstrumentation\n ? WEBPACK_LAYERS.middleware\n : name.startsWith('pages/')\n ? WEBPACK_LAYERS.pagesDirEdge\n : undefined,\n library: { name: ['_ENTRIES', `middleware_[name]`], type: 'assign' },\n runtime: EDGE_RUNTIME_WEBPACK,\n asyncChunks: false,\n ...entry,\n }\n }\n case COMPILER_NAMES.client: {\n const isAppLayer =\n hasAppDir &&\n (name === CLIENT_STATIC_FILES_RUNTIME_MAIN_APP ||\n name === APP_CLIENT_INTERNALS ||\n name.startsWith('app/'))\n\n if (\n // Client special cases\n name !== CLIENT_STATIC_FILES_RUNTIME_POLYFILLS &&\n name !== CLIENT_STATIC_FILES_RUNTIME_MAIN &&\n name !== CLIENT_STATIC_FILES_RUNTIME_MAIN_APP &&\n name !== CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH\n ) {\n if (isAppLayer) {\n return {\n dependOn: CLIENT_STATIC_FILES_RUNTIME_MAIN_APP,\n layer: WEBPACK_LAYERS.appPagesBrowser,\n ...entry,\n }\n }\n\n return {\n dependOn:\n name.startsWith('pages/') && name !== 'pages/_app'\n ? 'pages/_app'\n : CLIENT_STATIC_FILES_RUNTIME_MAIN,\n layer: WEBPACK_LAYERS.pagesDirBrowser,\n ...entry,\n }\n }\n\n if (isAppLayer) {\n return {\n layer: WEBPACK_LAYERS.appPagesBrowser,\n ...entry,\n }\n }\n\n return {\n layer: WEBPACK_LAYERS.pagesDirBrowser,\n ...entry,\n }\n }\n default:\n return compilerType satisfies never\n }\n}\n"],"names":["collectAppFiles","collectPagesFiles","combineSlots","createEntrypoints","createPagesMapping","createRelativeFilePath","extractSlotsFromAppRoutes","extractSlotsFromDefaultFiles","finalizeEntrypoint","getAppEntry","getAppLoader","getClientEntry","getEdgeServerEntry","getInstrumentationEntry","getPageFilePath","getPageFromPath","processAppRoutes","processLayoutRoutes","processPageRoutes","runDependingOnPageType","appDir","validFileMatcher","allAppFiles","recursiveReadDir","pathnameFilter","absolutePath","isAppRouterPage","isRootNotFound","isAppLayoutPage","isAppDefaultPage","ignorePartFilter","part","startsWith","appPaths","filter","layoutPaths","defaultPaths","pagesDir","isPageFile","baseDir","filePath","prefix","isSrcDir","privatePrefix","srcPrefix","join","replace","RegExp","mappedPages","pageRoutes","pageApiRoutes","route","Object","entries","relativeFilePath","push","normalizePathSep","isReservedPage","mappedAppPages","slots","page","UNDERSCORE_NOT_FOUND_ROUTE_ENTRY","UNDERSCORE_GLOBAL_ERROR_ROUTE_ENTRY","segments","split","i","length","segment","isParallelRouteSegment","parentPath","normalizeAppPath","slice","slotName","some","s","name","parent","mappedDefaultFiles","slotArrays","slotSet","Set","result","slot","key","has","add","appRoutes","appRouteHandlers","isAppRouterRoute","mappedAppLayouts","layoutRoutes","ensureLeadingSlash","pagePath","pageExtensions","absolutePagePath","rootDir","PAGES_DIR_ALIAS","APP_DIR_ALIAS","ROOT_DIR_ALIAS","require","resolve","isDev","pagePaths","pagesType","appDirOnly","isAppRoute","pages","promises","map","endsWith","includes","pageKey","UNDERSCORE_NOT_FOUND_ROUTE","UNDERSCORE_GLOBAL_ERROR_ROUTE","normalizedPath","normalizeMetadataRoute","isMetadataRouteFile","staticInfo","getPageStaticInfo","nextConfig","pageFilePath","pageType","normalizeMetadataPageToRoute","generateImageMetadata","generateSitemaps","Promise","all","PAGE_TYPES","ROOT","APP","hasAppPages","keys","hasAppGlobalError","PAGES","root","opts","isAppRouteRoute","appDirLoader","loaderParams","Buffer","from","toString","JSON","stringify","config","preferredRegion","middlewareConfig","cacheHandlers","import","layer","WEBPACK_LAYERS","reactServerComponents","isMiddlewareFile","matchers","middleware","encodeMatchers","filename","undefined","isAPIRoute","apiEdge","absolute500Path","absoluteAppPath","absoluteDocumentPath","absoluteErrorPath","dev","isServerComponent","stringifiedConfig","sriEnabled","experimental","sri","algorithm","cacheHandler","serverActions","serverSideRendering","isEdgeServer","INSTRUMENTATION_HOOK_FILENAME","instrument","process","env","BUILTIN_APP_LOADER","NEXT_RSPACK","projectRoot","normalize","__dirname","loaderOptions","pageLoader","params","isInstrumentationHookFile","onServer","onEdgeServer","isProxyFile","pageRuntime","isEdgeRuntime","onClient","rootPaths","edgeServer","server","client","middlewareMatchers","appPathsPerRoute","pathname","actualPath","normalizeCatchAllRoutes","fromEntries","k","v","sort","getEntryHandler","mappings","bundleFile","normalizePagePath","clientBundlePath","posix","serverBundlePath","isInsideAppDir","getStaticInfoIncludingLayouts","rsc","RSC_MODULE_TYPES","regexp","originalSource","isInstrumentation","runtime","matchedAppPaths","basePath","assetPrefix","nextConfigOutput","output","encodeToBase64","isGlobalNotFoundEnabled","globalNotFound","bundlePath","getRouteLoaderEntry","kind","RouteKind","PAGES_API","isInternalComponent","isNonRoutePagesPage","entryHandler","instrumentation","compilerType","value","hasAppDir","entry","Array","isArray","isApi","isInstrumentationHookFilename","COMPILER_NAMES","apiNode","pagesDirNode","publicPath","isMiddlewareFilename","pagesDirEdge","library","type","EDGE_RUNTIME_WEBPACK","asyncChunks","isAppLayer","CLIENT_STATIC_FILES_RUNTIME_MAIN_APP","APP_CLIENT_INTERNALS","CLIENT_STATIC_FILES_RUNTIME_POLYFILLS","CLIENT_STATIC_FILES_RUNTIME_MAIN","CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH","dependOn","appPagesBrowser","pagesDirBrowser"],"mappings":"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","ignoreList":[0]} |