sort-package-json
Advanced tools
Comparing version 1.51.0 to 1.52.0
24
index.js
@@ -9,3 +9,4 @@ const sortObjectKeys = require('sort-object-keys') | ||
Object.prototype.hasOwnProperty.call(object, property) | ||
const pipe = (fns) => (x) => fns.reduce((result, fn) => fn(result), x) | ||
const pipe = (fns) => (x, ...args) => | ||
fns.reduce((result, fn) => fn(result, ...args), x) | ||
const onArray = (fn) => (x) => (Array.isArray(x) ? fn(x) : x) | ||
@@ -17,3 +18,3 @@ const onStringArray = (fn) => (x) => | ||
const uniqAndSortArray = pipe([uniq, sortArray]) | ||
const onObject = (fn) => (x) => (isPlainObject(x) ? fn(x) : x) | ||
const onObject = (fn) => (x, ...args) => (isPlainObject(x) ? fn(x, ...args) : x) | ||
const sortObjectBy = (comparator, deep) => { | ||
@@ -43,5 +44,5 @@ const over = onObject((object) => { | ||
]) | ||
const overProperty = (property, over) => (object) => | ||
const overProperty = (property, over) => (object, ...args) => | ||
hasOwnProperty(object, property) | ||
? Object.assign(object, { [property]: over(object[property]) }) | ||
? Object.assign(object, { [property]: over(object[property], ...args) }) | ||
: object | ||
@@ -137,3 +138,10 @@ const sortGitHooks = sortObjectBy(gitHooks) | ||
const sortScripts = onObject((scripts) => { | ||
const hasDevDependency = (dependency, packageJson) => { | ||
return ( | ||
'devDependencies' in packageJson && | ||
!!packageJson.devDependencies[dependency] | ||
) | ||
} | ||
const sortScripts = onObject((scripts, packageJson) => { | ||
const names = Object.keys(scripts) | ||
@@ -151,2 +159,6 @@ const prefixable = new Set() | ||
if (!hasDevDependency('npm-run-all', packageJson)) { | ||
keys.sort() | ||
} | ||
const order = keys.reduce( | ||
@@ -342,3 +354,3 @@ (order, key) => | ||
return overFields(sortObjectKeys(json, sortOrder)) | ||
return overFields(sortObjectKeys(json, sortOrder), json) | ||
}), | ||
@@ -345,0 +357,0 @@ ) |
{ | ||
"name": "sort-package-json", | ||
"version": "1.51.0", | ||
"version": "1.52.0", | ||
"description": "Sort an Object or package.json based on the well-known package.json keys", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
21861
423