MCPcopy Index your code
hub / github.com/QwikDev/qwik / validatePackageJson

Function validatePackageJson

scripts/validate-build.ts:184–215  ·  view source on GitHub ↗
(config: BuildConfig, pkg: PackageJSON, errors: string[])

Source from the content-addressed store, hash-verified

182}
183
184async function validatePackageJson(config: BuildConfig, pkg: PackageJSON, errors: string[]) {
185 async function validatePath(path: string) {
186 try {
187 await access(join(config.distQwikPkgDir, path));
188 } catch (e: any) {
189 errors.push(
190 `Error loading file "${path}" referenced in package.json: ${String(
191 e ? e.stack || e : 'Error'
192 )}`
193 );
194 }
195 }
196
197 await Promise.all([validatePath(pkg.main), validatePath(pkg.types)]);
198
199 async function validateExports(exports: Record<string, any>) {
200 const exportKeys = Object.keys(exports);
201
202 await Promise.all(
203 exportKeys.map(async (exportKey) => {
204 const val = exports[exportKey];
205 if (typeof val === 'string') {
206 await validatePath(val);
207 } else {
208 await validateExports(val);
209 }
210 })
211 );
212 }
213
214 validateExports(pkg.exports!);
215}
216
217async function validateModuleTreeshake(
218 config: BuildConfig,

Callers 1

validateBuildFunction · 0.85

Calls 2

validatePathFunction · 0.85
validateExportsFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…