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
45 KiB
Text
1 line
No EOL
45 KiB
Text
{"version":3,"sources":["../../../../src/shared/lib/turbopack/manifest-loader.ts"],"sourcesContent":["import type {\n EdgeFunctionDefinition,\n MiddlewareManifest,\n} from '../../../build/webpack/plugins/middleware-plugin'\nimport type {\n StatsAsset,\n StatsChunk,\n StatsChunkGroup,\n StatsModule,\n StatsCompilation as WebpackStats,\n} from 'webpack'\nimport type { BuildManifest } from '../../../server/get-page-files'\nimport type { PagesManifest } from '../../../build/webpack/plugins/pages-manifest-plugin'\nimport type { ActionManifest } from '../../../build/webpack/plugins/flight-client-entry-plugin'\nimport type { NextFontManifest } from '../../../build/webpack/plugins/next-font-manifest-plugin'\nimport type { REACT_LOADABLE_MANIFEST } from '../constants'\nimport {\n APP_PATHS_MANIFEST,\n BUILD_MANIFEST,\n INTERCEPTION_ROUTE_REWRITE_MANIFEST,\n MIDDLEWARE_BUILD_MANIFEST,\n MIDDLEWARE_MANIFEST,\n NEXT_FONT_MANIFEST,\n PAGES_MANIFEST,\n SERVER_REFERENCE_MANIFEST,\n TURBOPACK_CLIENT_BUILD_MANIFEST,\n TURBOPACK_CLIENT_MIDDLEWARE_MANIFEST,\n WEBPACK_STATS,\n} from '../constants'\nimport { join, posix } from 'path'\nimport { readFileSync } from 'fs'\nimport type { SetupOpts } from '../../../server/lib/router-utils/setup-dev-bundler'\nimport { deleteCache } from '../../../server/dev/require-cache'\nimport { writeFileAtomic } from '../../../lib/fs/write-atomic'\nimport { isInterceptionRouteRewrite } from '../../../lib/generate-interception-routes-rewrites'\nimport getAssetPathFromRoute from '../router/utils/get-asset-path-from-route'\nimport { getEntryKey, type EntryKey } from './entry-key'\nimport type { CustomRoutes } from '../../../lib/load-custom-routes'\nimport { getSortedRoutes } from '../router/utils'\nimport { existsSync } from 'fs'\nimport {\n addMetadataIdToRoute,\n addRouteSuffix,\n removeRouteSuffix,\n} from '../../../server/dev/turbopack-utils'\nimport { tryToParsePath } from '../../../lib/try-to-parse-path'\nimport { safePathToRegexp } from '../router/utils/route-match-utils'\nimport type { Entrypoints } from '../../../build/swc/types'\nimport {\n normalizeRewritesForBuildManifest,\n type ClientBuildManifest,\n srcEmptySsgManifest,\n processRoute,\n createEdgeRuntimeManifest,\n} from '../../../build/webpack/plugins/build-manifest-plugin-utils'\n\ninterface InstrumentationDefinition {\n files: string[]\n name: 'instrumentation'\n}\n\ntype TurbopackMiddlewareManifest = MiddlewareManifest & {\n instrumentation?: InstrumentationDefinition\n}\n\ntype ManifestName =\n | typeof MIDDLEWARE_MANIFEST\n | typeof BUILD_MANIFEST\n | typeof PAGES_MANIFEST\n | typeof WEBPACK_STATS\n | typeof APP_PATHS_MANIFEST\n | `${typeof SERVER_REFERENCE_MANIFEST}.json`\n | `${typeof NEXT_FONT_MANIFEST}.json`\n | typeof REACT_LOADABLE_MANIFEST\n | typeof TURBOPACK_CLIENT_BUILD_MANIFEST\n\nconst getManifestPath = (\n page: string,\n distDir: string,\n name: ManifestName,\n type: string,\n firstCall: boolean\n) => {\n let manifestPath = posix.join(\n distDir,\n `server`,\n type,\n type === 'middleware' || type === 'instrumentation'\n ? ''\n : type === 'app'\n ? page\n : getAssetPathFromRoute(page),\n name\n )\n\n if (firstCall) {\n const isSitemapRoute = /[\\\\/]sitemap(.xml)?\\/route$/.test(page)\n // Check the ambiguity of /sitemap and /sitemap.xml\n if (isSitemapRoute && !existsSync(manifestPath)) {\n manifestPath = getManifestPath(\n page.replace(/\\/sitemap\\/route$/, '/sitemap.xml/route'),\n distDir,\n name,\n type,\n false\n )\n }\n // existsSync is faster than using the async version\n if (!existsSync(manifestPath) && page.endsWith('/route')) {\n // TODO: Improve implementation of metadata routes, currently it requires this extra check for the variants of the files that can be written.\n let metadataPage = addRouteSuffix(\n addMetadataIdToRoute(removeRouteSuffix(page))\n )\n manifestPath = getManifestPath(metadataPage, distDir, name, type, false)\n }\n }\n\n return manifestPath\n}\n\nfunction readPartialManifestContent(\n distDir: string,\n name: ManifestName,\n pageName: string,\n type: 'pages' | 'app' | 'middleware' | 'instrumentation' = 'pages'\n): string {\n const page = pageName\n const manifestPath = getManifestPath(page, distDir, name, type, true)\n return readFileSync(posix.join(manifestPath), 'utf-8')\n}\n\n/// Helper class that stores a map of manifests and tracks if they have changed\n/// since the last time they were written to disk. This is used to avoid\n/// unnecessary writes to disk.\nclass ManifestsMap<K, V> {\n private rawMap = new Map<K, string>()\n private map = new Map<K, V>()\n private extraInvalidationKey: string | undefined = undefined\n private changed = true\n\n set(key: K, value: string) {\n if (this.rawMap.get(key) === value) return\n this.changed = true\n this.rawMap.set(key, value)\n this.map.set(key, JSON.parse(value))\n }\n\n delete(key: K) {\n if (this.map.has(key)) {\n this.changed = true\n this.rawMap.delete(key)\n this.map.delete(key)\n }\n }\n\n get(key: K) {\n return this.map.get(key)\n }\n\n takeChanged(extraInvalidationKey?: any) {\n let changed = this.changed\n if (extraInvalidationKey !== undefined) {\n const stringified = JSON.stringify(extraInvalidationKey)\n if (this.extraInvalidationKey !== stringified) {\n this.extraInvalidationKey = stringified\n changed = true\n }\n }\n this.changed = false\n return changed\n }\n\n values() {\n return this.map.values()\n }\n}\n\nexport class TurbopackManifestLoader {\n private actionManifests: ManifestsMap<EntryKey, ActionManifest> =\n new ManifestsMap()\n private appPathsManifests: ManifestsMap<EntryKey, PagesManifest> =\n new ManifestsMap()\n private buildManifests: ManifestsMap<EntryKey, BuildManifest> =\n new ManifestsMap()\n private clientBuildManifests: ManifestsMap<EntryKey, ClientBuildManifest> =\n new ManifestsMap()\n private fontManifests: ManifestsMap<EntryKey, NextFontManifest> =\n new ManifestsMap()\n private middlewareManifests: ManifestsMap<\n EntryKey,\n TurbopackMiddlewareManifest\n > = new ManifestsMap()\n private pagesManifests: ManifestsMap<string, PagesManifest> =\n new ManifestsMap()\n private webpackStats: ManifestsMap<EntryKey, WebpackStats> =\n new ManifestsMap()\n private encryptionKey: string\n /// interceptionRewrites that have been written to disk\n /// This is used to avoid unnecessary writes if the rewrites haven't changed\n private cachedInterceptionRewrites: string | undefined = undefined\n\n private readonly distDir: string\n private readonly buildId: string\n\n constructor({\n distDir,\n buildId,\n encryptionKey,\n }: {\n buildId: string\n distDir: string\n encryptionKey: string\n }) {\n this.distDir = distDir\n this.buildId = buildId\n this.encryptionKey = encryptionKey\n }\n\n delete(key: EntryKey) {\n this.actionManifests.delete(key)\n this.appPathsManifests.delete(key)\n this.buildManifests.delete(key)\n this.clientBuildManifests.delete(key)\n this.fontManifests.delete(key)\n this.middlewareManifests.delete(key)\n this.pagesManifests.delete(key)\n this.webpackStats.delete(key)\n }\n\n loadActionManifest(pageName: string): void {\n this.actionManifests.set(\n getEntryKey('app', 'server', pageName),\n readPartialManifestContent(\n this.distDir,\n `${SERVER_REFERENCE_MANIFEST}.json`,\n pageName,\n 'app'\n )\n )\n }\n\n private mergeActionManifests(manifests: Iterable<ActionManifest>) {\n type ActionEntries = ActionManifest['edge' | 'node']\n const manifest: ActionManifest = {\n node: {},\n edge: {},\n encryptionKey: this.encryptionKey,\n }\n\n function mergeActionIds(\n actionEntries: ActionEntries,\n other: ActionEntries\n ): void {\n for (const key in other) {\n const action = (actionEntries[key] ??= {\n workers: {},\n layer: {},\n })\n action.filename = other[key].filename\n action.exportedName = other[key].exportedName\n Object.assign(action.workers, other[key].workers)\n Object.assign(action.layer, other[key].layer)\n }\n }\n\n for (const m of manifests) {\n mergeActionIds(manifest.node, m.node)\n mergeActionIds(manifest.edge, m.edge)\n }\n for (const key in manifest.node) {\n const entry = manifest.node[key]\n entry.workers = sortObjectByKey(entry.workers)\n entry.layer = sortObjectByKey(entry.layer)\n }\n for (const key in manifest.edge) {\n const entry = manifest.edge[key]\n entry.workers = sortObjectByKey(entry.workers)\n entry.layer = sortObjectByKey(entry.layer)\n }\n\n return manifest\n }\n\n private writeActionManifest(): void {\n if (!this.actionManifests.takeChanged()) {\n return\n }\n const actionManifest = this.mergeActionManifests(\n this.actionManifests.values()\n )\n const actionManifestJsonPath = join(\n this.distDir,\n 'server',\n `${SERVER_REFERENCE_MANIFEST}.json`\n )\n const actionManifestJsPath = join(\n this.distDir,\n 'server',\n `${SERVER_REFERENCE_MANIFEST}.js`\n )\n const json = JSON.stringify(actionManifest, null, 2)\n deleteCache(actionManifestJsonPath)\n deleteCache(actionManifestJsPath)\n writeFileAtomic(actionManifestJsonPath, json)\n writeFileAtomic(\n actionManifestJsPath,\n `self.__RSC_SERVER_MANIFEST=${JSON.stringify(json)}`\n )\n }\n\n loadAppPathsManifest(pageName: string): void {\n this.appPathsManifests.set(\n getEntryKey('app', 'server', pageName),\n readPartialManifestContent(\n this.distDir,\n APP_PATHS_MANIFEST,\n pageName,\n 'app'\n )\n )\n }\n\n private writeAppPathsManifest(): void {\n if (!this.appPathsManifests.takeChanged()) {\n return\n }\n const appPathsManifest = this.mergePagesManifests(\n this.appPathsManifests.values()\n )\n const appPathsManifestPath = join(\n this.distDir,\n 'server',\n APP_PATHS_MANIFEST\n )\n deleteCache(appPathsManifestPath)\n writeFileAtomic(\n appPathsManifestPath,\n JSON.stringify(appPathsManifest, null, 2)\n )\n }\n\n private writeWebpackStats(): void {\n if (!this.webpackStats.takeChanged()) {\n return\n }\n const webpackStats = this.mergeWebpackStats(this.webpackStats.values())\n const path = join(this.distDir, 'server', WEBPACK_STATS)\n deleteCache(path)\n writeFileAtomic(path, JSON.stringify(webpackStats, null, 2))\n }\n\n loadBuildManifest(pageName: string, type: 'app' | 'pages' = 'pages'): void {\n this.buildManifests.set(\n getEntryKey(type, 'server', pageName),\n readPartialManifestContent(this.distDir, BUILD_MANIFEST, pageName, type)\n )\n }\n\n loadClientBuildManifest(\n pageName: string,\n type: 'app' | 'pages' = 'pages'\n ): void {\n this.clientBuildManifests.set(\n getEntryKey(type, 'server', pageName),\n readPartialManifestContent(\n this.distDir,\n TURBOPACK_CLIENT_BUILD_MANIFEST,\n pageName,\n type\n )\n )\n }\n\n loadWebpackStats(pageName: string, type: 'app' | 'pages' = 'pages'): void {\n this.webpackStats.set(\n getEntryKey(type, 'client', pageName),\n readPartialManifestContent(this.distDir, WEBPACK_STATS, pageName, type)\n )\n }\n\n private mergeWebpackStats(statsFiles: Iterable<WebpackStats>): WebpackStats {\n const entrypoints: Record<string, StatsChunkGroup> = {}\n const assets: Map<string, StatsAsset> = new Map()\n const chunks: Map<string | number, StatsChunk> = new Map()\n const modules: Map<string | number, StatsModule> = new Map()\n\n for (const statsFile of statsFiles) {\n if (statsFile.entrypoints) {\n for (const [k, v] of Object.entries(statsFile.entrypoints)) {\n if (!entrypoints[k]) {\n entrypoints[k] = v\n }\n }\n }\n\n if (statsFile.assets) {\n for (const asset of statsFile.assets) {\n if (!assets.has(asset.name)) {\n assets.set(asset.name, asset)\n }\n }\n }\n\n if (statsFile.chunks) {\n for (const chunk of statsFile.chunks) {\n if (!chunks.has(chunk.id!)) {\n chunks.set(chunk.id!, chunk)\n }\n }\n }\n\n if (statsFile.modules) {\n for (const module of statsFile.modules) {\n const id = module.id\n if (id != null) {\n // Merge the chunk list for the module. This can vary across endpoints.\n const existing = modules.get(id)\n if (existing == null) {\n modules.set(id, module)\n } else if (module.chunks != null && existing.chunks != null) {\n for (const chunk of module.chunks) {\n if (!existing.chunks.includes(chunk)) {\n existing.chunks.push(chunk)\n }\n }\n }\n }\n }\n }\n }\n\n return {\n version: 'Turbopack',\n entrypoints,\n assets: [...assets.values()],\n chunks: [...chunks.values()],\n modules: [...modules.values()],\n }\n }\n\n private mergeBuildManifests(manifests: Iterable<BuildManifest>) {\n const manifest: Partial<BuildManifest> & Pick<BuildManifest, 'pages'> = {\n pages: {\n '/_app': [],\n },\n // Something in next.js depends on these to exist even for app dir rendering\n devFiles: [],\n polyfillFiles: [],\n lowPriorityFiles: [\n `static/${this.buildId}/_ssgManifest.js`,\n `static/${this.buildId}/_buildManifest.js`,\n ],\n rootMainFiles: [],\n }\n for (const m of manifests) {\n Object.assign(manifest.pages, m.pages)\n if (m.rootMainFiles.length) manifest.rootMainFiles = m.rootMainFiles\n // polyfillFiles should always be the same, so we can overwrite instead of actually merging\n if (m.polyfillFiles.length) manifest.polyfillFiles = m.polyfillFiles\n }\n manifest.pages = sortObjectByKey(manifest.pages) as BuildManifest['pages']\n return manifest\n }\n\n private mergeClientBuildManifests(\n manifests: Iterable<ClientBuildManifest>,\n rewrites: CustomRoutes['rewrites'],\n sortedPageKeys: string[]\n ): ClientBuildManifest {\n const manifest = {\n __rewrites: rewrites as any,\n sortedPages: sortedPageKeys,\n }\n for (const m of manifests) {\n Object.assign(manifest, m)\n }\n return sortObjectByKey(manifest)\n }\n\n private writeInterceptionRouteRewriteManifest(\n devRewrites: SetupOpts['fsChecker']['rewrites'] | undefined,\n productionRewrites: CustomRoutes['rewrites'] | undefined\n ): void {\n const rewrites = productionRewrites ?? {\n ...devRewrites,\n beforeFiles: (devRewrites?.beforeFiles ?? []).map(processRoute),\n afterFiles: (devRewrites?.afterFiles ?? []).map(processRoute),\n fallback: (devRewrites?.fallback ?? []).map(processRoute),\n }\n\n const interceptionRewrites = JSON.stringify(\n rewrites.beforeFiles.filter(isInterceptionRouteRewrite)\n )\n\n if (this.cachedInterceptionRewrites === interceptionRewrites) {\n return\n }\n this.cachedInterceptionRewrites = interceptionRewrites\n\n const interceptionRewriteManifestPath = join(\n this.distDir,\n 'server',\n `${INTERCEPTION_ROUTE_REWRITE_MANIFEST}.js`\n )\n deleteCache(interceptionRewriteManifestPath)\n\n writeFileAtomic(\n interceptionRewriteManifestPath,\n `self.__INTERCEPTION_ROUTE_REWRITE_MANIFEST=${JSON.stringify(\n interceptionRewrites\n )};`\n )\n }\n\n private writeBuildManifest(): void {\n if (!this.buildManifests.takeChanged()) {\n return\n }\n const buildManifest = this.mergeBuildManifests(this.buildManifests.values())\n\n const buildManifestPath = join(this.distDir, BUILD_MANIFEST)\n const middlewareBuildManifestPath = join(\n this.distDir,\n 'server',\n `${MIDDLEWARE_BUILD_MANIFEST}.js`\n )\n\n deleteCache(buildManifestPath)\n deleteCache(middlewareBuildManifestPath)\n writeFileAtomic(buildManifestPath, JSON.stringify(buildManifest, null, 2))\n writeFileAtomic(\n middlewareBuildManifestPath,\n // we use globalThis here because middleware can be node\n // which doesn't have \"self\"\n createEdgeRuntimeManifest(buildManifest)\n )\n\n // Write fallback build manifest\n const fallbackBuildManifest = this.mergeBuildManifests(\n [\n this.buildManifests.get(getEntryKey('pages', 'server', '_app')),\n this.buildManifests.get(getEntryKey('pages', 'server', '_error')),\n ].filter(Boolean) as BuildManifest[]\n )\n const fallbackBuildManifestPath = join(\n this.distDir,\n `fallback-${BUILD_MANIFEST}`\n )\n deleteCache(fallbackBuildManifestPath)\n writeFileAtomic(\n fallbackBuildManifestPath,\n JSON.stringify(fallbackBuildManifest, null, 2)\n )\n }\n\n private writeClientBuildManifest(\n entrypoints: Entrypoints,\n devRewrites: SetupOpts['fsChecker']['rewrites'] | undefined,\n productionRewrites: CustomRoutes['rewrites'] | undefined\n ): void {\n const rewrites = normalizeRewritesForBuildManifest(\n productionRewrites ?? {\n ...devRewrites,\n beforeFiles: (devRewrites?.beforeFiles ?? []).map(processRoute),\n afterFiles: (devRewrites?.afterFiles ?? []).map(processRoute),\n fallback: (devRewrites?.fallback ?? []).map(processRoute),\n }\n )\n\n const pagesKeys = [...entrypoints.page.keys()]\n if (entrypoints.global.app) {\n pagesKeys.push('/_app')\n }\n if (entrypoints.global.error) {\n pagesKeys.push('/_error')\n }\n\n const sortedPageKeys = getSortedRoutes(pagesKeys)\n\n if (!this.clientBuildManifests.takeChanged({ rewrites, sortedPageKeys })) {\n return\n }\n const clientBuildManifest = this.mergeClientBuildManifests(\n this.clientBuildManifests.values(),\n rewrites,\n sortedPageKeys\n )\n const clientBuildManifestJs = `self.__BUILD_MANIFEST = ${JSON.stringify(\n clientBuildManifest,\n null,\n 2\n )};self.__BUILD_MANIFEST_CB && self.__BUILD_MANIFEST_CB()`\n writeFileAtomic(\n join(this.distDir, 'static', this.buildId, '_buildManifest.js'),\n clientBuildManifestJs\n )\n writeFileAtomic(\n join(this.distDir, 'static', this.buildId, '_ssgManifest.js'),\n srcEmptySsgManifest\n )\n }\n\n loadFontManifest(pageName: string, type: 'app' | 'pages' = 'pages'): void {\n this.fontManifests.set(\n getEntryKey(type, 'server', pageName),\n readPartialManifestContent(\n this.distDir,\n `${NEXT_FONT_MANIFEST}.json`,\n pageName,\n type\n )\n )\n }\n\n private mergeFontManifests(manifests: Iterable<NextFontManifest>) {\n const manifest: NextFontManifest = {\n app: {},\n appUsingSizeAdjust: false,\n pages: {},\n pagesUsingSizeAdjust: false,\n }\n for (const m of manifests) {\n Object.assign(manifest.app, m.app)\n Object.assign(manifest.pages, m.pages)\n\n manifest.appUsingSizeAdjust =\n manifest.appUsingSizeAdjust || m.appUsingSizeAdjust\n manifest.pagesUsingSizeAdjust =\n manifest.pagesUsingSizeAdjust || m.pagesUsingSizeAdjust\n }\n manifest.app = sortObjectByKey(manifest.app)\n manifest.pages = sortObjectByKey(manifest.pages)\n return manifest\n }\n\n private async writeNextFontManifest(): Promise<void> {\n if (!this.fontManifests.takeChanged()) {\n return\n }\n const fontManifest = this.mergeFontManifests(this.fontManifests.values())\n const json = JSON.stringify(fontManifest, null, 2)\n\n const fontManifestJsonPath = join(\n this.distDir,\n 'server',\n `${NEXT_FONT_MANIFEST}.json`\n )\n const fontManifestJsPath = join(\n this.distDir,\n 'server',\n `${NEXT_FONT_MANIFEST}.js`\n )\n deleteCache(fontManifestJsonPath)\n deleteCache(fontManifestJsPath)\n writeFileAtomic(fontManifestJsonPath, json)\n writeFileAtomic(\n fontManifestJsPath,\n `self.__NEXT_FONT_MANIFEST=${JSON.stringify(json)}`\n )\n }\n\n /**\n * @returns If the manifest was written or not\n */\n loadMiddlewareManifest(\n pageName: string,\n type: 'pages' | 'app' | 'middleware' | 'instrumentation'\n ): boolean {\n const middlewareManifestPath = getManifestPath(\n pageName,\n this.distDir,\n MIDDLEWARE_MANIFEST,\n type,\n true\n )\n\n // middlewareManifest is actually \"edge manifest\" and not all routes are edge runtime. If it is not written we skip it.\n if (!existsSync(middlewareManifestPath)) {\n return false\n }\n\n this.middlewareManifests.set(\n getEntryKey(\n type === 'middleware' || type === 'instrumentation' ? 'root' : type,\n 'server',\n pageName\n ),\n readPartialManifestContent(\n this.distDir,\n MIDDLEWARE_MANIFEST,\n pageName,\n type\n )\n )\n\n return true\n }\n\n getMiddlewareManifest(key: EntryKey) {\n return this.middlewareManifests.get(key)\n }\n\n deleteMiddlewareManifest(key: EntryKey) {\n return this.middlewareManifests.delete(key)\n }\n\n private mergeMiddlewareManifests(\n manifests: Iterable<TurbopackMiddlewareManifest>\n ): MiddlewareManifest {\n const manifest: MiddlewareManifest = {\n version: 3,\n middleware: {},\n sortedMiddleware: [],\n functions: {},\n }\n let instrumentation: InstrumentationDefinition | undefined = undefined\n for (const m of manifests) {\n Object.assign(manifest.functions, m.functions)\n Object.assign(manifest.middleware, m.middleware)\n if (m.instrumentation) {\n instrumentation = m.instrumentation\n }\n }\n manifest.functions = sortObjectByKey(manifest.functions)\n manifest.middleware = sortObjectByKey(manifest.middleware)\n const updateFunctionDefinition = (\n fun: EdgeFunctionDefinition\n ): EdgeFunctionDefinition => {\n return {\n ...fun,\n files: [...(instrumentation?.files ?? []), ...fun.files],\n }\n }\n for (const key of Object.keys(manifest.middleware)) {\n const value = manifest.middleware[key]\n manifest.middleware[key] = updateFunctionDefinition(value)\n }\n for (const key of Object.keys(manifest.functions)) {\n const value = manifest.functions[key]\n manifest.functions[key] = updateFunctionDefinition(value)\n }\n for (const fun of Object.values(manifest.functions).concat(\n Object.values(manifest.middleware)\n )) {\n for (const matcher of fun.matchers) {\n if (!matcher.regexp) {\n matcher.regexp = safePathToRegexp(matcher.originalSource, [], {\n delimiter: '/',\n sensitive: false,\n strict: true,\n }).source.replaceAll('\\\\/', '/')\n }\n }\n }\n manifest.sortedMiddleware = Object.keys(manifest.middleware)\n\n return manifest\n }\n\n private writeMiddlewareManifest(): void {\n if (!this.middlewareManifests.takeChanged()) {\n return\n }\n const middlewareManifest = this.mergeMiddlewareManifests(\n this.middlewareManifests.values()\n )\n\n // Server middleware manifest\n\n // Normalize regexes as it uses path-to-regexp\n for (const key in middlewareManifest.middleware) {\n middlewareManifest.middleware[key].matchers.forEach((matcher) => {\n if (!matcher.regexp.startsWith('^')) {\n const parsedPage = tryToParsePath(matcher.regexp)\n if (parsedPage.error || !parsedPage.regexStr) {\n throw new Error(`Invalid source: ${matcher.regexp}`)\n }\n matcher.regexp = parsedPage.regexStr\n }\n })\n }\n\n const middlewareManifestPath = join(\n this.distDir,\n 'server',\n MIDDLEWARE_MANIFEST\n )\n deleteCache(middlewareManifestPath)\n writeFileAtomic(\n middlewareManifestPath,\n JSON.stringify(middlewareManifest, null, 2)\n )\n\n // Client middleware manifest\n const matchers = middlewareManifest?.middleware['/']?.matchers || []\n\n const clientMiddlewareManifestPath = join(\n this.distDir,\n 'static',\n this.buildId,\n `${TURBOPACK_CLIENT_MIDDLEWARE_MANIFEST}`\n )\n deleteCache(clientMiddlewareManifestPath)\n writeFileAtomic(\n clientMiddlewareManifestPath,\n JSON.stringify(matchers, null, 2)\n )\n }\n\n loadPagesManifest(pageName: string): void {\n this.pagesManifests.set(\n getEntryKey('pages', 'server', pageName),\n readPartialManifestContent(this.distDir, PAGES_MANIFEST, pageName)\n )\n }\n\n private mergePagesManifests(manifests: Iterable<PagesManifest>) {\n const manifest: PagesManifest = {}\n for (const m of manifests) {\n Object.assign(manifest, m)\n }\n return sortObjectByKey(manifest)\n }\n\n private writePagesManifest(): void {\n if (!this.pagesManifests.takeChanged()) {\n return\n }\n const pagesManifest = this.mergePagesManifests(this.pagesManifests.values())\n const pagesManifestPath = join(this.distDir, 'server', PAGES_MANIFEST)\n deleteCache(pagesManifestPath)\n writeFileAtomic(pagesManifestPath, JSON.stringify(pagesManifest, null, 2))\n }\n\n writeManifests({\n devRewrites,\n productionRewrites,\n entrypoints,\n }: {\n devRewrites: SetupOpts['fsChecker']['rewrites'] | undefined\n productionRewrites: CustomRoutes['rewrites'] | undefined\n entrypoints: Entrypoints\n }): void {\n this.writeActionManifest()\n this.writeAppPathsManifest()\n this.writeBuildManifest()\n this.writeInterceptionRouteRewriteManifest(devRewrites, productionRewrites)\n this.writeClientBuildManifest(entrypoints, devRewrites, productionRewrites)\n this.writeMiddlewareManifest()\n this.writeNextFontManifest()\n this.writePagesManifest()\n\n if (process.env.TURBOPACK_STATS != null) {\n this.writeWebpackStats()\n }\n }\n}\n\nfunction sortObjectByKey(obj: Record<string, any>) {\n return Object.keys(obj)\n .sort()\n .reduce(\n (acc, key) => {\n acc[key] = obj[key]\n return acc\n },\n {} as Record<string, any>\n )\n}\n"],"names":["TurbopackManifestLoader","getManifestPath","page","distDir","name","type","firstCall","manifestPath","posix","join","getAssetPathFromRoute","isSitemapRoute","test","existsSync","replace","endsWith","metadataPage","addRouteSuffix","addMetadataIdToRoute","removeRouteSuffix","readPartialManifestContent","pageName","readFileSync","ManifestsMap","set","key","value","rawMap","get","changed","map","JSON","parse","delete","has","takeChanged","extraInvalidationKey","undefined","stringified","stringify","values","Map","constructor","buildId","encryptionKey","actionManifests","appPathsManifests","buildManifests","clientBuildManifests","fontManifests","middlewareManifests","pagesManifests","webpackStats","cachedInterceptionRewrites","loadActionManifest","getEntryKey","SERVER_REFERENCE_MANIFEST","mergeActionManifests","manifests","manifest","node","edge","mergeActionIds","actionEntries","other","action","workers","layer","filename","exportedName","Object","assign","m","entry","sortObjectByKey","writeActionManifest","actionManifest","actionManifestJsonPath","actionManifestJsPath","json","deleteCache","writeFileAtomic","loadAppPathsManifest","APP_PATHS_MANIFEST","writeAppPathsManifest","appPathsManifest","mergePagesManifests","appPathsManifestPath","writeWebpackStats","mergeWebpackStats","path","WEBPACK_STATS","loadBuildManifest","BUILD_MANIFEST","loadClientBuildManifest","TURBOPACK_CLIENT_BUILD_MANIFEST","loadWebpackStats","statsFiles","entrypoints","assets","chunks","modules","statsFile","k","v","entries","asset","chunk","id","module","existing","includes","push","version","mergeBuildManifests","pages","devFiles","polyfillFiles","lowPriorityFiles","rootMainFiles","length","mergeClientBuildManifests","rewrites","sortedPageKeys","__rewrites","sortedPages","writeInterceptionRouteRewriteManifest","devRewrites","productionRewrites","beforeFiles","processRoute","afterFiles","fallback","interceptionRewrites","filter","isInterceptionRouteRewrite","interceptionRewriteManifestPath","INTERCEPTION_ROUTE_REWRITE_MANIFEST","writeBuildManifest","buildManifest","buildManifestPath","middlewareBuildManifestPath","MIDDLEWARE_BUILD_MANIFEST","createEdgeRuntimeManifest","fallbackBuildManifest","Boolean","fallbackBuildManifestPath","writeClientBuildManifest","normalizeRewritesForBuildManifest","pagesKeys","keys","global","app","error","getSortedRoutes","clientBuildManifest","clientBuildManifestJs","srcEmptySsgManifest","loadFontManifest","NEXT_FONT_MANIFEST","mergeFontManifests","appUsingSizeAdjust","pagesUsingSizeAdjust","writeNextFontManifest","fontManifest","fontManifestJsonPath","fontManifestJsPath","loadMiddlewareManifest","middlewareManifestPath","MIDDLEWARE_MANIFEST","getMiddlewareManifest","deleteMiddlewareManifest","mergeMiddlewareManifests","middleware","sortedMiddleware","functions","instrumentation","updateFunctionDefinition","fun","files","concat","matcher","matchers","regexp","safePathToRegexp","originalSource","delimiter","sensitive","strict","source","replaceAll","writeMiddlewareManifest","middlewareManifest","forEach","startsWith","parsedPage","tryToParsePath","regexStr","Error","clientMiddlewareManifestPath","TURBOPACK_CLIENT_MIDDLEWARE_MANIFEST","loadPagesManifest","PAGES_MANIFEST","writePagesManifest","pagesManifest","pagesManifestPath","writeManifests","process","env","TURBOPACK_STATS","obj","sort","reduce","acc"],"mappings":"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","ignoreList":[0]} |