UNPKG

751 BJavaScriptView Raw
1import process from 'node:process';
2import fs, {promises as fsPromises} from 'node:fs';
3import path from 'node:path';
4import parseJson from 'parse-json';
5import normalizePackageData from 'normalize-package-data';
6
7export async function readPackage({cwd = process.cwd(), normalize = true} = {}) {
8 const filePath = path.resolve(cwd, 'package.json');
9 const json = parseJson(await fsPromises.readFile(filePath, 'utf8'));
10
11 if (normalize) {
12 normalizePackageData(json);
13 }
14
15 return json;
16}
17
18export function readPackageSync({cwd = process.cwd(), normalize = true} = {}) {
19 const filePath = path.resolve(cwd, 'package.json');
20 const json = parseJson(fs.readFileSync(filePath, 'utf8'));
21
22 if (normalize) {
23 normalizePackageData(json);
24 }
25
26 return json;
27}