1234567891011121314151617181920212223242526272829303132333435363738394041 |
- 'use strict';
- const {promisify} = require('util');
- const fs = require('fs');
- const path = require('path');
- const parseJson = require('parse-json');
- const readFileAsync = promisify(fs.readFile);
- module.exports = async options => {
- options = {
- cwd: process.cwd(),
- normalize: true,
- ...options
- };
- const filePath = path.resolve(options.cwd, 'package.json');
- const json = parseJson(await readFileAsync(filePath, 'utf8'));
- if (options.normalize) {
- require('normalize-package-data')(json);
- }
- return json;
- };
- module.exports.sync = options => {
- options = {
- cwd: process.cwd(),
- normalize: true,
- ...options
- };
- const filePath = path.resolve(options.cwd, 'package.json');
- const json = parseJson(fs.readFileSync(filePath, 'utf8'));
- if (options.normalize) {
- require('normalize-package-data')(json);
- }
- return json;
- };
|