| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 | 'use strict';var path = require('path');var loadJsonFile = require('load-json-file');var normalizePackageData = require('normalize-package-data');var pathType = require('path-type');module.exports = function (fp, opts) {	if (typeof fp !== 'string') {		opts = fp;		fp = '.';	}	opts = opts || {};	return pathType.dir(fp)		.then(function (isDir) {			if (isDir) {				fp = path.join(fp, 'package.json');			}			return loadJsonFile(fp);		})		.then(function (x) {			if (opts.normalize !== false) {				normalizePackageData(x);			}			return x;		});};module.exports.sync = function (fp, opts) {	if (typeof fp !== 'string') {		opts = fp;		fp = '.';	}	opts = opts || {};	fp = pathType.dirSync(fp) ? path.join(fp, 'package.json') : fp;	var x = loadJsonFile.sync(fp);	if (opts.normalize !== false) {		normalizePackageData(x);	}	return x;};
 |