| Server IP : 13.235.167.51 / Your IP : 216.73.217.116 Web Server : Apache System : Linux machinox-server 6.17.0-1013-aws #13~24.04.1-Ubuntu SMP Fri Apr 24 21:36:58 UTC 2026 aarch64 User : root ( 0) PHP Version : 8.2.29 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/control.machinox.in/node_modules/next/dist/cli/ |
Upload File : |
{"version":3,"sources":["../../src/cli/next-typegen.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport { existsSync } from 'fs'\nimport path, { join } from 'path'\nimport { mkdir } from 'fs/promises'\n\nimport loadConfig from '../server/config'\nimport { printAndExit } from '../server/lib/utils'\nimport { PHASE_PRODUCTION_BUILD } from '../shared/lib/constants'\nimport { getProjectDir } from '../lib/get-project-dir'\nimport { findPagesDir } from '../lib/find-pages-dir'\nimport { verifyTypeScriptSetup } from '../lib/verify-typescript-setup'\nimport {\n createPagesMapping,\n collectAppFiles,\n collectPagesFiles,\n processPageRoutes,\n processAppRoutes,\n processLayoutRoutes,\n extractSlotsFromAppRoutes,\n extractSlotsFromDefaultFiles,\n combineSlots,\n type RouteInfo,\n type SlotInfo,\n} from '../build/entries'\nimport { PAGE_TYPES } from '../lib/page-types'\n\nimport {\n createRouteTypesManifest,\n writeRouteTypesManifest,\n writeValidatorFile,\n} from '../server/lib/router-utils/route-types-utils'\nimport { writeCacheLifeTypes } from '../server/lib/router-utils/cache-life-type-utils'\nimport { createValidFileMatcher } from '../server/lib/find-page-file'\nimport { installBindings } from '../build/swc/install-bindings'\n\nexport type NextTypegenOptions = {\n dir?: string\n}\n\nconst nextTypegen = async (\n _options: NextTypegenOptions,\n directory?: string\n) => {\n const baseDir = getProjectDir(directory)\n\n // Check if the provided directory exists\n if (!existsSync(baseDir)) {\n printAndExit(`> No such directory exists as the project root: ${baseDir}`)\n }\n\n const nextConfig = await loadConfig(PHASE_PRODUCTION_BUILD, baseDir)\n await installBindings(nextConfig.experimental?.useWasmBinary)\n const distDir = join(baseDir, nextConfig.distDir)\n const { pagesDir, appDir } = findPagesDir(baseDir)\n\n await verifyTypeScriptSetup({\n dir: baseDir,\n distDir: nextConfig.distDir,\n typeCheckPreflight: false,\n tsconfigPath: nextConfig.typescript.tsconfigPath,\n disableStaticImages: nextConfig.images.disableStaticImages,\n hasAppDir: !!appDir,\n hasPagesDir: !!pagesDir,\n isolatedDevBuild: nextConfig.experimental.isolatedDevBuild,\n appDir: appDir || undefined,\n pagesDir: pagesDir || undefined,\n })\n\n console.log('Generating route types...')\n\n const routeTypesFilePath = join(distDir, 'types', 'routes.d.ts')\n const validatorFilePath = join(distDir, 'types', 'validator.ts')\n await mkdir(join(distDir, 'types'), { recursive: true })\n\n let pageRoutes: RouteInfo[] = []\n let appRoutes: RouteInfo[] = []\n let appRouteHandlers: RouteInfo[] = []\n let layoutRoutes: RouteInfo[] = []\n let slots: SlotInfo[] = []\n\n let pageApiRoutes: RouteInfo[] = []\n\n let mappedPages: { [page: string]: string } = {}\n let mappedAppPages: { [page: string]: string } = {}\n let mappedAppLayouts: { [page: string]: string } = {}\n\n // Helper function to reduce createPagesMapping duplication\n const createMapping = (pagePaths: string[], pagesType: any) =>\n createPagesMapping({\n pagePaths,\n isDev: false,\n pagesType,\n pageExtensions: nextConfig.pageExtensions,\n pagesDir,\n appDir,\n appDirOnly: !!appDir && !pagesDir,\n })\n\n const validFileMatcher = createValidFileMatcher(\n nextConfig.pageExtensions,\n appDir\n )\n\n const isSrcDir = path\n .relative(baseDir, pagesDir || appDir || '')\n .startsWith('src')\n\n // Build pages routes\n if (pagesDir) {\n const pagePaths = await collectPagesFiles(pagesDir, validFileMatcher)\n\n mappedPages = await createMapping(pagePaths, PAGE_TYPES.PAGES)\n\n // Process pages routes\n const processedPages = processPageRoutes(mappedPages, baseDir, isSrcDir)\n pageRoutes = processedPages.pageRoutes\n pageApiRoutes = processedPages.pageApiRoutes\n }\n\n // Build app routes\n if (appDir) {\n // Collect app pages, layouts, and default files in a single directory traversal\n const { appPaths, layoutPaths, defaultPaths } = await collectAppFiles(\n appDir,\n validFileMatcher\n )\n\n mappedAppPages = await createMapping(appPaths, PAGE_TYPES.APP)\n mappedAppLayouts = await createMapping(layoutPaths, PAGE_TYPES.APP)\n const mappedDefaultFiles = await createMapping(defaultPaths, PAGE_TYPES.APP)\n\n // Process app routes and extract slots from both pages and default files\n const slotsFromPages = extractSlotsFromAppRoutes(mappedAppPages)\n const slotsFromDefaults = extractSlotsFromDefaultFiles(mappedDefaultFiles)\n\n // Combine slots and deduplicate using Set\n slots = combineSlots(slotsFromPages, slotsFromDefaults)\n\n const result = processAppRoutes(\n mappedAppPages,\n validFileMatcher,\n baseDir,\n isSrcDir\n )\n appRoutes = result.appRoutes\n appRouteHandlers = result.appRouteHandlers\n\n // Process layout routes\n layoutRoutes = processLayoutRoutes(mappedAppLayouts, baseDir, isSrcDir)\n }\n\n const routeTypesManifest = await createRouteTypesManifest({\n dir: baseDir,\n pageRoutes,\n appRoutes,\n appRouteHandlers,\n pageApiRoutes,\n layoutRoutes,\n slots,\n redirects: nextConfig.redirects,\n rewrites: nextConfig.rewrites,\n validatorFilePath,\n })\n\n await writeRouteTypesManifest(\n routeTypesManifest,\n routeTypesFilePath,\n nextConfig\n )\n\n await writeValidatorFile(routeTypesManifest, validatorFilePath)\n\n // Generate cache-life types if cacheLife config exists\n const cacheLifeFilePath = join(distDir, 'types', 'cache-life.d.ts')\n writeCacheLifeTypes(nextConfig.cacheLife, cacheLifeFilePath)\n\n console.log('✓ Types generated successfully')\n}\n\nexport { nextTypegen }\n"],"names":["nextTypegen","_options","directory","nextConfig","baseDir","getProjectDir","existsSync","printAndExit","loadConfig","PHASE_PRODUCTION_BUILD","installBindings","experimental","useWasmBinary","distDir","join","pagesDir","appDir","findPagesDir","verifyTypeScriptSetup","dir","typeCheckPreflight","tsconfigPath","typescript","disableStaticImages","images","hasAppDir","hasPagesDir","isolatedDevBuild","undefined","console","log","routeTypesFilePath","validatorFilePath","mkdir","recursive","pageRoutes","appRoutes","appRouteHandlers","layoutRoutes","slots","pageApiRoutes","mappedPages","mappedAppPages","mappedAppLayouts","createMapping","pagePaths","pagesType","createPagesMapping","isDev","pageExtensions","appDirOnly","validFileMatcher","createValidFileMatcher","isSrcDir","path","relative","startsWith","collectPagesFiles","PAGE_TYPES","PAGES","processedPages","processPageRoutes","appPaths","layoutPaths","defaultPaths","collectAppFiles","APP","mappedDefaultFiles","slotsFromPages","extractSlotsFromAppRoutes","slotsFromDefaults","extractSlotsFromDefaultFiles","combineSlots","result","processAppRoutes","processLayoutRoutes","routeTypesManifest","createRouteTypesManifest","redirects","rewrites","writeRouteTypesManifest","writeValidatorFile","cacheLifeFilePath","writeCacheLifeTypes","cacheLife"],"mappings":"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","ignoreList":[0]}