@html-validate/prettier-config 3.1.11 → 3.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/sort-package-json.mjs +103 -62
- package/package.json +1 -1
|
@@ -820,7 +820,7 @@ var require_range = __commonJS({
|
|
|
820
820
|
parseRange(range) {
|
|
821
821
|
const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE);
|
|
822
822
|
const memoKey = memoOpts + ":" + range;
|
|
823
|
-
const cached =
|
|
823
|
+
const cached = cache2.get(memoKey);
|
|
824
824
|
if (cached) {
|
|
825
825
|
return cached;
|
|
826
826
|
}
|
|
@@ -854,7 +854,7 @@ var require_range = __commonJS({
|
|
|
854
854
|
rangeMap.delete("");
|
|
855
855
|
}
|
|
856
856
|
const result = [...rangeMap.values()];
|
|
857
|
-
|
|
857
|
+
cache2.set(memoKey, result);
|
|
858
858
|
return result;
|
|
859
859
|
}
|
|
860
860
|
intersects(range, options) {
|
|
@@ -893,7 +893,7 @@ var require_range = __commonJS({
|
|
|
893
893
|
};
|
|
894
894
|
module.exports = Range;
|
|
895
895
|
var LRU = require_lrucache();
|
|
896
|
-
var
|
|
896
|
+
var cache2 = new LRU();
|
|
897
897
|
var parseOptions = require_parse_options();
|
|
898
898
|
var Comparator = require_comparator();
|
|
899
899
|
var debug = require_debug();
|
|
@@ -1187,6 +1187,9 @@ var require_min_version = __commonJS({
|
|
|
1187
1187
|
// src/sort-package-json.ts
|
|
1188
1188
|
import { parsers } from "prettier/esm/parser-babel.mjs";
|
|
1189
1189
|
|
|
1190
|
+
// node_modules/sort-package-json/index.js
|
|
1191
|
+
import fs from "node:fs";
|
|
1192
|
+
|
|
1190
1193
|
// node_modules/sort-object-keys/index.js
|
|
1191
1194
|
var has = (object, key) => Object.prototype.hasOwnProperty.call(object, key);
|
|
1192
1195
|
function sortObjectByKeyNameList(object, sortWith) {
|
|
@@ -1412,7 +1415,9 @@ var sortDirectories = sortObjectBy([
|
|
|
1412
1415
|
"example",
|
|
1413
1416
|
"test"
|
|
1414
1417
|
]);
|
|
1415
|
-
var overProperty = (property, over) => (
|
|
1418
|
+
var overProperty = (property, over) => onObject(
|
|
1419
|
+
(object, ...args) => Object.hasOwn(object, property) ? { ...object, [property]: over(object[property], ...args) } : object
|
|
1420
|
+
);
|
|
1416
1421
|
var sortGitHooks = sortObjectBy(git_hooks_list_default);
|
|
1417
1422
|
var parseNameAndVersionRange = (specifier) => {
|
|
1418
1423
|
const [nameAndVersion] = specifier.split(">");
|
|
@@ -1451,14 +1456,49 @@ var sortObjectByIdent = (a, b) => {
|
|
|
1451
1456
|
if (packageNameA > packageNameB) return 1;
|
|
1452
1457
|
return 0;
|
|
1453
1458
|
};
|
|
1454
|
-
var
|
|
1455
|
-
var
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
);
|
|
1459
|
+
var cache = /* @__PURE__ */ new Map();
|
|
1460
|
+
var hasYarnOrPnpmFiles = () => {
|
|
1461
|
+
const cwd = process.cwd();
|
|
1462
|
+
if (!cache.has(cwd)) {
|
|
1463
|
+
cache.set(
|
|
1464
|
+
cwd,
|
|
1465
|
+
fs.existsSync("yarn.lock") || fs.existsSync(".yarn/") || fs.existsSync(".yarnrc.yml") || fs.existsSync("pnpm-lock.yaml") || fs.existsSync("pnpm-workspace.yaml")
|
|
1466
|
+
);
|
|
1467
|
+
}
|
|
1468
|
+
return cache.get(cwd);
|
|
1469
|
+
};
|
|
1470
|
+
function shouldSortDependenciesLikeNpm(packageJson) {
|
|
1471
|
+
if (typeof packageJson.packageManager === "string") {
|
|
1472
|
+
return packageJson.packageManager.startsWith("npm@");
|
|
1473
|
+
}
|
|
1474
|
+
if (packageJson.devEngines?.packageManager?.name) {
|
|
1475
|
+
return packageJson.devEngines.packageManager.name === "npm";
|
|
1476
|
+
}
|
|
1477
|
+
if (packageJson.pnpm) {
|
|
1478
|
+
return false;
|
|
1479
|
+
}
|
|
1480
|
+
if (packageJson.engines?.npm) {
|
|
1481
|
+
return true;
|
|
1482
|
+
}
|
|
1483
|
+
if (hasYarnOrPnpmFiles()) {
|
|
1484
|
+
return false;
|
|
1485
|
+
}
|
|
1486
|
+
return true;
|
|
1487
|
+
}
|
|
1488
|
+
var sortDependencies = onObject((dependencies, packageJson) => {
|
|
1489
|
+
if (Object.keys(dependencies).length < 2) {
|
|
1490
|
+
return dependencies;
|
|
1491
|
+
}
|
|
1492
|
+
if (shouldSortDependenciesLikeNpm(packageJson)) {
|
|
1493
|
+
return sortObjectByKeyNameList(dependencies, (a, b) => a.localeCompare(b, "en"));
|
|
1494
|
+
}
|
|
1495
|
+
return sortObjectByKeyNameList(dependencies);
|
|
1496
|
+
});
|
|
1497
|
+
var sortWorkspaces = pipe([
|
|
1498
|
+
sortObjectBy(["packages", "catalog"]),
|
|
1499
|
+
overProperty("packages", uniqAndSortArray),
|
|
1500
|
+
overProperty("catalog", sortDependencies)
|
|
1501
|
+
]);
|
|
1462
1502
|
var eslintBaseConfigProperties = [
|
|
1463
1503
|
// `files` and `excludedFiles` are only on `overrides[]`
|
|
1464
1504
|
// for easier sort `overrides[]`,
|
|
@@ -1479,51 +1519,53 @@ var eslintBaseConfigProperties = [
|
|
|
1479
1519
|
"noInlineConfig",
|
|
1480
1520
|
"reportUnusedDisableDirectives"
|
|
1481
1521
|
];
|
|
1482
|
-
var sortEslintConfig =
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
])
|
|
1500
|
-
);
|
|
1522
|
+
var sortEslintConfig = pipe([
|
|
1523
|
+
sortObjectBy(eslintBaseConfigProperties),
|
|
1524
|
+
overProperty("env", sortObject),
|
|
1525
|
+
overProperty("globals", sortObject),
|
|
1526
|
+
overProperty(
|
|
1527
|
+
"overrides",
|
|
1528
|
+
onArray((overrides) => overrides.map(sortEslintConfig))
|
|
1529
|
+
),
|
|
1530
|
+
overProperty("parserOptions", sortObject),
|
|
1531
|
+
overProperty(
|
|
1532
|
+
"rules",
|
|
1533
|
+
sortObjectBy(
|
|
1534
|
+
(rule1, rule2) => rule1.split("/").length - rule2.split("/").length || rule1.localeCompare(rule2)
|
|
1535
|
+
)
|
|
1536
|
+
),
|
|
1537
|
+
overProperty("settings", sortObject)
|
|
1538
|
+
]);
|
|
1501
1539
|
var sortVSCodeBadgeObject = sortObjectBy(["description", "url", "href"]);
|
|
1502
|
-
var sortPrettierConfig =
|
|
1503
|
-
|
|
1504
|
-
|
|
1540
|
+
var sortPrettierConfig = pipe([
|
|
1541
|
+
// sort keys alphabetically, but put `overrides` at bottom
|
|
1542
|
+
onObject(
|
|
1505
1543
|
(config) => sortObjectByKeyNameList(config, [
|
|
1506
1544
|
...Object.keys(config).filter((key) => key !== "overrides").sort(),
|
|
1507
1545
|
"overrides"
|
|
1508
|
-
])
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
)
|
|
1546
|
+
])
|
|
1547
|
+
),
|
|
1548
|
+
// if `config.overrides` exists
|
|
1549
|
+
overProperty(
|
|
1550
|
+
"overrides",
|
|
1551
|
+
// and `config.overrides` is an array
|
|
1552
|
+
onArray(
|
|
1553
|
+
(overrides) => overrides.map(
|
|
1554
|
+
pipe([
|
|
1555
|
+
// sort `config.overrides[]` alphabetically
|
|
1556
|
+
sortObject,
|
|
1557
|
+
// sort `config.overrides[].options` alphabetically
|
|
1558
|
+
overProperty("options", sortObject)
|
|
1559
|
+
])
|
|
1522
1560
|
)
|
|
1523
1561
|
)
|
|
1524
|
-
|
|
1525
|
-
);
|
|
1562
|
+
)
|
|
1563
|
+
]);
|
|
1526
1564
|
var sortVolta = sortObjectBy(["node", "npm", "yarn"]);
|
|
1565
|
+
var sortDevEngines = overProperty(
|
|
1566
|
+
"packageManager",
|
|
1567
|
+
sortObjectBy(["name", "version", "onFail"])
|
|
1568
|
+
);
|
|
1527
1569
|
var pnpmBaseConfigProperties = [
|
|
1528
1570
|
"peerDependencyRules",
|
|
1529
1571
|
"neverBuiltDependencies",
|
|
@@ -1539,12 +1581,10 @@ var pnpmBaseConfigProperties = [
|
|
|
1539
1581
|
"patchedDependencies",
|
|
1540
1582
|
"packageExtensions"
|
|
1541
1583
|
];
|
|
1542
|
-
var sortPnpmConfig =
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
])
|
|
1547
|
-
);
|
|
1584
|
+
var sortPnpmConfig = pipe([
|
|
1585
|
+
sortObjectBy(pnpmBaseConfigProperties, true),
|
|
1586
|
+
overProperty("overrides", sortObjectBySemver)
|
|
1587
|
+
]);
|
|
1548
1588
|
var defaultNpmScripts = /* @__PURE__ */ new Set([
|
|
1549
1589
|
"install",
|
|
1550
1590
|
"pack",
|
|
@@ -1577,7 +1617,7 @@ function sortScriptNames(keys, prefix = "") {
|
|
|
1577
1617
|
for (const key of keys) {
|
|
1578
1618
|
const rest = prefix ? key.slice(prefix.length + 1) : key;
|
|
1579
1619
|
const idx = rest.indexOf(":");
|
|
1580
|
-
if (idx
|
|
1620
|
+
if (idx > 0) {
|
|
1581
1621
|
const base = key.slice(0, (prefix ? prefix.length + 1 : 0) + idx);
|
|
1582
1622
|
if (!groupMap.has(base)) groupMap.set(base, []);
|
|
1583
1623
|
groupMap.get(base).push(key);
|
|
@@ -1750,14 +1790,14 @@ var fields = [
|
|
|
1750
1790
|
{ key: "tap", over: sortObject },
|
|
1751
1791
|
{ key: "oclif", over: sortObjectBy(void 0, true) },
|
|
1752
1792
|
{ key: "resolutions", over: sortObject },
|
|
1753
|
-
{ key: "overrides", over:
|
|
1754
|
-
{ key: "dependencies", over:
|
|
1755
|
-
{ key: "devDependencies", over:
|
|
1793
|
+
{ key: "overrides", over: sortDependencies },
|
|
1794
|
+
{ key: "dependencies", over: sortDependencies },
|
|
1795
|
+
{ key: "devDependencies", over: sortDependencies },
|
|
1756
1796
|
{ key: "dependenciesMeta", over: sortObjectBy(sortObjectByIdent, true) },
|
|
1757
|
-
{ key: "peerDependencies", over:
|
|
1797
|
+
{ key: "peerDependencies", over: sortDependencies },
|
|
1758
1798
|
// TODO: only sort depth = 2
|
|
1759
1799
|
{ key: "peerDependenciesMeta", over: sortObjectBy(void 0, true) },
|
|
1760
|
-
{ key: "optionalDependencies", over:
|
|
1800
|
+
{ key: "optionalDependencies", over: sortDependencies },
|
|
1761
1801
|
{ key: "bundledDependencies", over: uniqAndSortArray },
|
|
1762
1802
|
{ key: "bundleDependencies", over: uniqAndSortArray },
|
|
1763
1803
|
/* vscode */
|
|
@@ -1768,6 +1808,7 @@ var fields = [
|
|
|
1768
1808
|
{ key: "packageManager" },
|
|
1769
1809
|
{ key: "engines", over: sortObject },
|
|
1770
1810
|
{ key: "engineStrict", over: sortObject },
|
|
1811
|
+
{ key: "devEngines", over: sortDevEngines },
|
|
1771
1812
|
{ key: "volta", over: sortVolta },
|
|
1772
1813
|
{ key: "languageName" },
|
|
1773
1814
|
{ key: "os" },
|