Rocky_Mountain_Vending/.pnpm-store/v10/files/fd/965e1a580fb4a1603d02171910201e1188b96f500f61d4f36f65e56cc9d6877deb465c56374f524866194ae02ccb43fafa4cafa78e4f737a476de8a5c71343
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
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>
2026-02-12 16:22:15 -07:00

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":["posix","join","normalize","stringify","PAGES_DIR_ALIAS","ROOT_DIR_ALIAS","APP_DIR_ALIAS","WEBPACK_LAYERS","INSTRUMENTATION_HOOK_FILENAME","isAPIRoute","isEdgeRuntime","APP_CLIENT_INTERNALS","RSC_MODULE_TYPES","UNDERSCORE_NOT_FOUND_ROUTE","CLIENT_STATIC_FILES_RUNTIME_MAIN","CLIENT_STATIC_FILES_RUNTIME_MAIN_APP","CLIENT_STATIC_FILES_RUNTIME_POLYFILLS","CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH","COMPILER_NAMES","EDGE_RUNTIME_WEBPACK","isMiddlewareFile","isMiddlewareFilename","isProxyFile","isInstrumentationHookFile","isInstrumentationHookFilename","getPageStaticInfo","normalizePathSep","normalizePagePath","normalizeAppPath","encodeMatchers","isAppRouteRoute","normalizeMetadataPageToRoute","normalizeMetadataRoute","getRouteLoaderEntry","isInternalComponent","isNonRoutePagesPage","isMetadataRouteFile","RouteKind","encodeToBase64","normalizeCatchAllRoutes","PAGE_TYPES","recursiveReadDir","isReservedPage","isParallelRouteSegment","ensureLeadingSlash","UNDERSCORE_NOT_FOUND_ROUTE_ENTRY","UNDERSCORE_GLOBAL_ERROR_ROUTE","UNDERSCORE_GLOBAL_ERROR_ROUTE_ENTRY","getStaticInfoIncludingLayouts","collectAppFiles","appDir","validFileMatcher","allAppFiles","pathnameFilter","absolutePath","isAppRouterPage","isRootNotFound","isAppLayoutPage","isAppDefaultPage","ignorePartFilter","part","startsWith","appPaths","filter","layoutPaths","defaultPaths","collectPagesFiles","pagesDir","isPageFile","createRelativeFilePath","baseDir","filePath","prefix","isSrcDir","privatePrefix","srcPrefix","replace","RegExp","processPageRoutes","mappedPages","pageRoutes","pageApiRoutes","route","Object","entries","relativeFilePath","push","extractSlotsFromAppRoutes","mappedAppPages","slots","page","segments","split","i","length","segment","parentPath","slice","slotName","some","s","name","parent","extractSlotsFromDefaultFiles","mappedDefaultFiles","combineSlots","slotArrays","slotSet","Set","result","slot","key","has","add","processAppRoutes","appRoutes","appRouteHandlers","isAppRouterRoute","processLayoutRoutes","mappedAppLayouts","layoutRoutes","getPageFromPath","pagePath","pageExtensions","getPageFilePath","absolutePagePath","rootDir","require","resolve","createPagesMapping","isDev","pagePaths","pagesType","appDirOnly","isAppRoute","pages","promises","map","endsWith","includes","pageKey","normalizedPath","staticInfo","nextConfig","pageFilePath","pageType","generateImageMetadata","generateSitemaps","Promise","all","ROOT","APP","hasAppPages","keys","hasAppGlobalError","PAGES","root","getEdgeServerEntry","opts","appDirLoader","loaderParams","Buffer","from","toString","JSON","config","preferredRegion","middlewareConfig","cacheHandlers","import","layer","reactServerComponents","matchers","middleware","filename","undefined","apiEdge","absolute500Path","absoluteAppPath","absoluteDocumentPath","absoluteErrorPath","dev","isServerComponent","stringifiedConfig","sriEnabled","experimental","sri","algorithm","cacheHandler","serverActions","serverSideRendering","getInstrumentationEntry","isEdgeServer","instrument","getAppLoader","process","env","BUILTIN_APP_LOADER","getAppEntry","NEXT_RSPACK","projectRoot","__dirname","getClientEntry","loaderOptions","pageLoader","runDependingOnPageType","params","onServer","onEdgeServer","pageRuntime","onClient","createEntrypoints","rootPaths","edgeServer","server","client","middlewareMatchers","appPathsPerRoute","pathname","actualPath","fromEntries","k","v","sort","getEntryHandler","mappings","bundleFile","clientBundlePath","serverBundlePath","isInsideAppDir","rsc","regexp","originalSource","isInstrumentation","runtime","matchedAppPaths","basePath","assetPrefix","nextConfigOutput","output","isGlobalNotFoundEnabled","globalNotFound","bundlePath","kind","PAGES_API","entryHandler","instrumentation","finalizeEntrypoint","compilerType","value","hasAppDir","entry","Array","isArray","isApi","apiNode","pagesDirNode","publicPath","pagesDirEdge","library","type","asyncChunks","isAppLayer","dependOn","appPagesBrowser","pagesDirBrowser"],"mappings":"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","ignoreList":[0]}