findNearestPackageData() — vite Function Reference
Architecture documentation for the findNearestPackageData() function in packages.ts from the vite codebase.
Entity Profile
Dependency Diagram
graph TD 31b651d6_9d57_14b0_2e8c_d85642bc19f4["findNearestPackageData()"] dff9cadb_1e8c_7fc9_4119_a173f1f21cbd["packages.ts"] 31b651d6_9d57_14b0_2e8c_d85642bc19f4 -->|defined in| dff9cadb_1e8c_7fc9_4119_a173f1f21cbd a016fb65_b1f4_be50_c5c3_d0c8f7b2ab52["resolveRolldownOptions()"] a016fb65_b1f4_be50_c5c3_d0c8f7b2ab52 -->|calls| 31b651d6_9d57_14b0_2e8c_d85642bc19f4 58c4a210_68fe_1b4d_ed49_d59203f97ef1["resolveConfig()"] 58c4a210_68fe_1b4d_ed49_d59203f97ef1 -->|calls| 31b651d6_9d57_14b0_2e8c_d85642bc19f4 d0858125_c73b_0a0a_6dee_ba3fba7e64aa["findNearestMainPackageData()"] d0858125_c73b_0a0a_6dee_ba3fba7e64aa -->|calls| 31b651d6_9d57_14b0_2e8c_d85642bc19f4 3565bb57_e3d1_ed21_b20a_81fa198f92df["resolveSubpathImports()"] 3565bb57_e3d1_ed21_b20a_81fa198f92df -->|calls| 31b651d6_9d57_14b0_2e8c_d85642bc19f4 310b19b4_2716_b45b_716d_edfca3064152["tryNodeResolve()"] 310b19b4_2716_b45b_716d_edfca3064152 -->|calls| 31b651d6_9d57_14b0_2e8c_d85642bc19f4 0b337126_5c19_f205_45cd_5ce740e74c86["findNearestPackagePath()"] 0b337126_5c19_f205_45cd_5ce740e74c86 -->|calls| 31b651d6_9d57_14b0_2e8c_d85642bc19f4 a3a231c1_e1f6_f7c0_6d09_1d3c7fbf6ac6["isFilePathESM()"] a3a231c1_e1f6_f7c0_6d09_1d3c7fbf6ac6 -->|calls| 31b651d6_9d57_14b0_2e8c_d85642bc19f4 414f4198_4924_2a98_6519_aeadfe958198["getFnpdCache()"] 31b651d6_9d57_14b0_2e8c_d85642bc19f4 -->|calls| 414f4198_4924_2a98_6519_aeadfe958198 a9bd45ce_8339_2b77_7543_41c306ebdb02["tryStatSync()"] 31b651d6_9d57_14b0_2e8c_d85642bc19f4 -->|calls| a9bd45ce_8339_2b77_7543_41c306ebdb02 c2d70c8c_c901_2d4f_df10_d0fa8607751f["loadPackageData()"] 31b651d6_9d57_14b0_2e8c_d85642bc19f4 -->|calls| c2d70c8c_c901_2d4f_df10_d0fa8607751f d92f5228_527c_fd52_e5f3_24d6dabe4702["setFnpdCache()"] 31b651d6_9d57_14b0_2e8c_d85642bc19f4 -->|calls| d92f5228_527c_fd52_e5f3_24d6dabe4702 style 31b651d6_9d57_14b0_2e8c_d85642bc19f4 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/vite/src/node/packages.ts lines 129–159
export function findNearestPackageData(
basedir: string,
packageCache?: PackageCache,
): PackageData | null {
const originalBasedir = basedir
while (basedir) {
if (packageCache) {
const cached = getFnpdCache(packageCache, basedir, originalBasedir)
if (cached) return cached
}
const pkgPath = path.join(basedir, 'package.json')
if (tryStatSync(pkgPath)?.isFile()) {
try {
const pkgData = loadPackageData(pkgPath)
if (packageCache) {
setFnpdCache(packageCache, pkgData, basedir, originalBasedir)
}
return pkgData
} catch {}
}
const nextBasedir = path.dirname(basedir)
if (nextBasedir === basedir) break
basedir = nextBasedir
}
return null
}
Domain
Subdomains
Defined In
Called By
Source
Frequently Asked Questions
What does findNearestPackageData() do?
findNearestPackageData() is a function in the vite codebase, defined in packages/vite/src/node/packages.ts.
Where is findNearestPackageData() defined?
findNearestPackageData() is defined in packages/vite/src/node/packages.ts at line 129.
What does findNearestPackageData() call?
findNearestPackageData() calls 4 function(s): getFnpdCache, loadPackageData, setFnpdCache, tryStatSync.
What calls findNearestPackageData()?
findNearestPackageData() is called by 7 function(s): findNearestMainPackageData, findNearestPackagePath, isFilePathESM, resolveConfig, resolveRolldownOptions, resolveSubpathImports, tryNodeResolve.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free