eslint-plugin-package-json 0.71.0 → 0.73.0

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.
Files changed (60) hide show
  1. package/CHANGELOG.md +14 -2
  2. package/README.md +2 -1
  3. package/lib/{createRule.js → createRule.mjs} +1 -1
  4. package/lib/{index.d.ts → index.d.mts} +2 -2
  5. package/lib/{index.js → index.mjs} +1 -1
  6. package/lib/{plugin.d.ts → plugin.d.mts} +1 -1
  7. package/lib/{plugin.js → plugin.mjs} +19 -19
  8. package/lib/rules/{bin-name-casing.d.ts → bin-name-casing.d.mts} +1 -1
  9. package/lib/rules/{bin-name-casing.js → bin-name-casing.mjs} +1 -1
  10. package/lib/rules/{exports-subpaths-style.d.ts → exports-subpaths-style.d.mts} +1 -1
  11. package/lib/rules/{exports-subpaths-style.js → exports-subpaths-style.mjs} +2 -2
  12. package/lib/rules/{no-empty-fields.d.ts → no-empty-fields.d.mts} +1 -1
  13. package/lib/rules/{no-empty-fields.js → no-empty-fields.mjs} +1 -1
  14. package/lib/rules/{no-redundant-files.d.ts → no-redundant-files.d.mts} +1 -1
  15. package/lib/rules/{no-redundant-files.js → no-redundant-files.mjs} +2 -2
  16. package/lib/rules/{no-redundant-publishConfig.d.ts → no-redundant-publishConfig.d.mts} +1 -1
  17. package/lib/rules/{no-redundant-publishConfig.js → no-redundant-publishConfig.mjs} +2 -2
  18. package/lib/rules/{order-properties.d.ts → order-properties.d.mts} +1 -1
  19. package/lib/rules/{order-properties.js → order-properties.mjs} +3 -2
  20. package/lib/rules/{repository-shorthand.d.ts → repository-shorthand.d.mts} +1 -1
  21. package/lib/rules/{repository-shorthand.js → repository-shorthand.mjs} +3 -3
  22. package/lib/rules/{require-properties.d.ts → require-properties.d.mts} +1 -1
  23. package/lib/rules/{require-properties.js → require-properties.mjs} +1 -1
  24. package/lib/rules/{restrict-dependency-ranges.d.ts → restrict-dependency-ranges.d.mts} +1 -1
  25. package/lib/rules/{restrict-dependency-ranges.js → restrict-dependency-ranges.mjs} +2 -2
  26. package/lib/rules/{restrict-private-properties.d.ts → restrict-private-properties.d.mts} +1 -1
  27. package/lib/rules/{restrict-private-properties.js → restrict-private-properties.mjs} +2 -2
  28. package/lib/rules/{scripts-name-casing.d.ts → scripts-name-casing.d.mts} +1 -1
  29. package/lib/rules/{scripts-name-casing.js → scripts-name-casing.mjs} +1 -1
  30. package/lib/rules/{sort-collections.d.ts → sort-collections.d.mts} +1 -1
  31. package/lib/rules/{sort-collections.js → sort-collections.mjs} +1 -1
  32. package/lib/rules/{unique-dependencies.d.ts → unique-dependencies.d.mts} +1 -1
  33. package/lib/rules/{unique-dependencies.js → unique-dependencies.mjs} +2 -2
  34. package/lib/rules/{valid-local-dependency.d.ts → valid-local-dependency.d.mts} +1 -1
  35. package/lib/rules/{valid-local-dependency.js → valid-local-dependency.mjs} +1 -1
  36. package/lib/rules/{valid-name.d.ts → valid-name.d.mts} +1 -1
  37. package/lib/rules/{valid-name.js → valid-name.mjs} +1 -1
  38. package/lib/rules/{valid-package-definition.d.ts → valid-package-definition.d.mts} +1 -1
  39. package/lib/rules/{valid-package-definition.js → valid-package-definition.mjs} +1 -1
  40. package/lib/rules/{valid-properties.d.ts → valid-properties.d.mts} +1 -1
  41. package/lib/rules/{valid-properties.js → valid-properties.mjs} +3 -2
  42. package/lib/rules/{valid-repository-directory.d.ts → valid-repository-directory.d.mts} +1 -1
  43. package/lib/rules/{valid-repository-directory.js → valid-repository-directory.mjs} +2 -2
  44. package/lib/rules/{valid-version.d.ts → valid-version.d.mts} +1 -1
  45. package/lib/rules/{valid-version.js → valid-version.mjs} +1 -1
  46. package/lib/utils/{createSimpleRequirePropertyRule.d.ts → createSimpleRequirePropertyRule.d.mts} +1 -1
  47. package/lib/utils/{createSimpleRequirePropertyRule.js → createSimpleRequirePropertyRule.mjs} +2 -2
  48. package/lib/utils/{createSimpleValidPropertyRule.d.ts → createSimpleValidPropertyRule.d.mts} +1 -1
  49. package/lib/utils/{createSimpleValidPropertyRule.js → createSimpleValidPropertyRule.mjs} +1 -1
  50. package/package.json +5 -5
  51. /package/lib/{createRule.d.ts → createRule.d.mts} +0 -0
  52. /package/lib/types/{estree.d.ts → estree.d.mts} +0 -0
  53. /package/lib/utils/{findPropertyWithKeyValue.d.ts → findPropertyWithKeyValue.d.mts} +0 -0
  54. /package/lib/utils/{findPropertyWithKeyValue.js → findPropertyWithKeyValue.mjs} +0 -0
  55. /package/lib/utils/{formatErrors.d.ts → formatErrors.d.mts} +0 -0
  56. /package/lib/utils/{formatErrors.js → formatErrors.mjs} +0 -0
  57. /package/lib/utils/{isPackageJson.d.ts → isPackageJson.d.mts} +0 -0
  58. /package/lib/utils/{isPackageJson.js → isPackageJson.mjs} +0 -0
  59. /package/lib/utils/{predicates.d.ts → predicates.d.mts} +0 -0
  60. /package/lib/utils/{predicates.js → predicates.mjs} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,11 +1,23 @@
1
1
  # Changelog
2
2
 
3
- # [0.71.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.70.0...v0.71.0) (2025-11-13)
3
+ # [0.73.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.72.0...v0.73.0) (2025-11-13)
4
+
5
+
6
+ ### Features
7
+
8
+ * **order-properties:** lexicographically sort non-standard properties ([#1375](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1375)) ([f7c0d01](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/f7c0d019b91aab831f7506e213cc1176bd5dac75)), closes [#1374](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1374)
4
9
 
10
+ # [0.72.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.71.0...v0.72.0) (2025-11-13)
11
+
12
+ ### Features
13
+
14
+ - **valid-contributors:** add new rule for validating `contributors` ([#1387](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1387)) ([82a844c](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/82a844cf472a06f2da036a39137f79f3ca1e6c5d)), closes [#1372](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1372)
15
+
16
+ # [0.71.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.70.0...v0.71.0) (2025-11-13)
5
17
 
6
18
  ### Features
7
19
 
8
- * **valid-os:** add new rule for validating `os` ([#1383](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1383)) ([896cd53](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/896cd53fee7b1c881102de62f9f7e032a3673ea8)), closes [#834](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/834)
20
+ - **valid-os:** add new rule for validating `os` ([#1383](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/1383)) ([896cd53](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commit/896cd53fee7b1c881102de62f9f7e032a3673ea8)), closes [#834](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues/834)
9
21
 
10
22
  # [0.70.0](https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/compare/v0.69.0...v0.70.0) (2025-11-13)
11
23
 
package/README.md CHANGED
@@ -215,6 +215,7 @@ The default settings don't conflict, and Prettier plugins can quickly fix up ord
215
215
  | [valid-bin](docs/rules/valid-bin.md) | Enforce that the `bin` property is valid. | ✔️ ✅ | | | |
216
216
  | [valid-bundleDependencies](docs/rules/valid-bundleDependencies.md) | Enforce that the `bundleDependencies` (also: `bundledDependencies`) property is valid. | ✔️ ✅ | | | |
217
217
  | [valid-config](docs/rules/valid-config.md) | Enforce that the `config` property is valid. | ✔️ ✅ | | | |
218
+ | [valid-contributors](docs/rules/valid-contributors.md) | Enforce that the `contributors` property is valid. | ✔️ ✅ | | | |
218
219
  | [valid-cpu](docs/rules/valid-cpu.md) | Enforce that the `cpu` property is valid. | ✔️ ✅ | | | |
219
220
  | [valid-dependencies](docs/rules/valid-dependencies.md) | Enforce that the `dependencies` property is valid. | ✔️ ✅ | | | |
220
221
  | [valid-description](docs/rules/valid-description.md) | Enforce that the `description` property is valid. | ✔️ ✅ | | | |
@@ -283,7 +284,7 @@ Thanks! 🗂
283
284
  <td align="center" valign="top" width="14.28%"><a href="http://technotes.khitrenovich.com/"><img src="https://avatars.githubusercontent.com/u/3424762?v=4?s=100" width="100px;" alt="Anton Khitrenovich"/><br /><sub><b>Anton Khitrenovich</b></sub></a><br /><a href="#ideas-khitrenovich" title="Ideas, Planning, & Feedback">🤔</a></td>
284
285
  <td align="center" valign="top" width="14.28%"><a href="https://azat.io"><img src="https://avatars.githubusercontent.com/u/5698350?v=4?s=100" width="100px;" alt="Azat S."/><br /><sub><b>Azat S.</b></sub></a><br /><a href="#ideas-azat-io" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commits?author=azat-io" title="Code">💻</a></td>
285
286
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/anomiex"><img src="https://avatars.githubusercontent.com/u/1030580?v=4?s=100" width="100px;" alt="Brad Jorsch"/><br /><sub><b>Brad Jorsch</b></sub></a><br /><a href="#ideas-anomiex" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues?q=author%3Aanomiex" title="Bug reports">🐛</a> <a href="https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/commits?author=anomiex" title="Code">💻</a></td>
286
- <td align="center" valign="top" width="14.28%"><a href="https://christopher-buss.gitbook.io/portfolio"><img src="https://avatars.githubusercontent.com/u/32301681?v=4?s=100" width="100px;" alt="Christopher Buss"/><br /><sub><b>Christopher Buss</b></sub></a><br /><a href="https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues?q=author%3Achristopher-buss" title="Bug reports">🐛</a></td>
287
+ <td align="center" valign="top" width="14.28%"><a href="https://christopher-buss.gitbook.io/portfolio"><img src="https://avatars.githubusercontent.com/u/32301681?v=4?s=100" width="100px;" alt="Christopher Buss"/><br /><sub><b>Christopher Buss</b></sub></a><br /><a href="https://github.com/JoshuaKGoldberg/eslint-plugin-package-json/issues?q=author%3Achristopher-buss" title="Bug reports">🐛</a> <a href="#ideas-christopher-buss" title="Ideas, Planning, & Feedback">🤔</a></td>
287
288
  </tr>
288
289
  <tr>
289
290
  <td align="center" valign="top" width="14.28%"><a href="http://www.curtisjewell.dev/"><img src="https://avatars.githubusercontent.com/u/67483?v=4?s=100" width="100px;" alt="Curtis Jewell"/><br /><sub><b>Curtis Jewell</b></sub></a><br /><a href="#ideas-csjewell" title="Ideas, Planning, & Feedback">🤔</a></td>
@@ -1,4 +1,4 @@
1
- import { isPackageJson } from "./utils/isPackageJson.js";
1
+ import { isPackageJson } from "./utils/isPackageJson.mjs";
2
2
 
3
3
  //#region src/createRule.ts
4
4
  /**
@@ -1,5 +1,5 @@
1
- import { PackageJsonPluginSettings, PackageJsonRuleModule } from "./createRule.js";
2
- import { plugin } from "./plugin.js";
1
+ import { PackageJsonPluginSettings, PackageJsonRuleModule } from "./createRule.mjs";
2
+ import { plugin } from "./plugin.mjs";
3
3
  import * as jsonc_eslint_parser0 from "jsonc-eslint-parser";
4
4
  import * as json_schema_to_ts0 from "json-schema-to-ts";
5
5
  import * as eslint0 from "eslint";
@@ -1,4 +1,4 @@
1
- import { plugin } from "./plugin.js";
1
+ import { plugin } from "./plugin.mjs";
2
2
 
3
3
  //#region src/index.ts
4
4
  const rules = plugin.rules;
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "./createRule.js";
1
+ import { PackageJsonRuleModule } from "./createRule.mjs";
2
2
  import * as parserJsonc from "jsonc-eslint-parser";
3
3
  import * as json_schema_to_ts0 from "json-schema-to-ts";
4
4
  import { ESLint } from "eslint";
@@ -1,22 +1,22 @@
1
- import { rule } from "./rules/bin-name-casing.js";
2
- import { rule as rule$1 } from "./rules/exports-subpaths-style.js";
3
- import { rule as rule$2 } from "./rules/no-empty-fields.js";
4
- import { rule as rule$3 } from "./rules/no-redundant-files.js";
5
- import { rule as rule$4 } from "./rules/no-redundant-publishConfig.js";
6
- import { rule as rule$5 } from "./rules/order-properties.js";
7
- import { rule as rule$6 } from "./rules/repository-shorthand.js";
8
- import { rules } from "./rules/require-properties.js";
9
- import { rule as rule$7 } from "./rules/restrict-dependency-ranges.js";
10
- import { rule as rule$8 } from "./rules/restrict-private-properties.js";
11
- import { rule as rule$9 } from "./rules/scripts-name-casing.js";
12
- import { rule as rule$10 } from "./rules/sort-collections.js";
13
- import { rule as rule$11 } from "./rules/unique-dependencies.js";
14
- import { rule as rule$12 } from "./rules/valid-local-dependency.js";
15
- import { rule as rule$13 } from "./rules/valid-name.js";
16
- import { rule as rule$14 } from "./rules/valid-package-definition.js";
17
- import { rules as rules$1 } from "./rules/valid-properties.js";
18
- import { rule as rule$15 } from "./rules/valid-repository-directory.js";
19
- import { rule as rule$16 } from "./rules/valid-version.js";
1
+ import { rule } from "./rules/bin-name-casing.mjs";
2
+ import { rule as rule$1 } from "./rules/exports-subpaths-style.mjs";
3
+ import { rule as rule$2 } from "./rules/no-empty-fields.mjs";
4
+ import { rule as rule$3 } from "./rules/no-redundant-files.mjs";
5
+ import { rule as rule$4 } from "./rules/no-redundant-publishConfig.mjs";
6
+ import { rule as rule$5 } from "./rules/order-properties.mjs";
7
+ import { rule as rule$6 } from "./rules/repository-shorthand.mjs";
8
+ import { rules } from "./rules/require-properties.mjs";
9
+ import { rule as rule$7 } from "./rules/restrict-dependency-ranges.mjs";
10
+ import { rule as rule$8 } from "./rules/restrict-private-properties.mjs";
11
+ import { rule as rule$9 } from "./rules/scripts-name-casing.mjs";
12
+ import { rule as rule$10 } from "./rules/sort-collections.mjs";
13
+ import { rule as rule$11 } from "./rules/unique-dependencies.mjs";
14
+ import { rule as rule$12 } from "./rules/valid-local-dependency.mjs";
15
+ import { rule as rule$13 } from "./rules/valid-name.mjs";
16
+ import { rule as rule$14 } from "./rules/valid-package-definition.mjs";
17
+ import { rules as rules$1 } from "./rules/valid-properties.mjs";
18
+ import { rule as rule$15 } from "./rules/valid-repository-directory.mjs";
19
+ import { rule as rule$16 } from "./rules/valid-version.mjs";
20
20
  import { createRequire } from "node:module";
21
21
  import * as parserJsonc from "jsonc-eslint-parser";
22
22
 
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/bin-name-casing.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[], []>;
@@ -1,4 +1,4 @@
1
- import { createRule } from "../createRule.js";
1
+ import { createRule } from "../createRule.mjs";
2
2
  import { kebabCase } from "change-case";
3
3
 
4
4
  //#region src/rules/bin-name-casing.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/exports-subpaths-style.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[({
@@ -1,5 +1,5 @@
1
- import { createRule } from "../createRule.js";
2
- import { isJSONStringLiteral } from "../utils/predicates.js";
1
+ import { createRule } from "../createRule.mjs";
2
+ import { isJSONStringLiteral } from "../utils/predicates.mjs";
3
3
 
4
4
  //#region src/rules/exports-subpaths-style.ts
5
5
  function isImplicitFormat(node) {
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/no-empty-fields.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[({
@@ -1,4 +1,4 @@
1
- import { createRule } from "../createRule.js";
1
+ import { createRule } from "../createRule.mjs";
2
2
  import { fixRemoveArrayElement, fixRemoveObjectProperty } from "eslint-fix-utils";
3
3
 
4
4
  //#region src/rules/no-empty-fields.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/no-redundant-files.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[], []>;
@@ -1,5 +1,5 @@
1
- import { createRule } from "../createRule.js";
2
- import { isJSONStringLiteral, isNotNullish } from "../utils/predicates.js";
1
+ import { createRule } from "../createRule.mjs";
2
+ import { isJSONStringLiteral, isNotNullish } from "../utils/predicates.mjs";
3
3
  import { fixRemoveArrayElement } from "eslint-fix-utils";
4
4
 
5
5
  //#region src/rules/no-redundant-files.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/no-redundant-publishConfig.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[], []>;
@@ -1,5 +1,5 @@
1
- import { createRule } from "../createRule.js";
2
- import { isJSONStringLiteral } from "../utils/predicates.js";
1
+ import { createRule } from "../createRule.mjs";
2
+ import { isJSONStringLiteral } from "../utils/predicates.mjs";
3
3
  import { fixRemoveObjectProperty } from "eslint-fix-utils";
4
4
 
5
5
  //#region src/rules/no-redundant-publishConfig.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/order-properties.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[({
@@ -1,4 +1,4 @@
1
- import { createRule } from "../createRule.js";
1
+ import { createRule } from "../createRule.mjs";
2
2
  import detectIndent from "detect-indent";
3
3
  import { detectNewlineGraceful } from "detect-newline";
4
4
  import sortObjectKeys from "sort-object-keys";
@@ -44,7 +44,8 @@ const rule = createRule({
44
44
  const { order } = options;
45
45
  const requiredOrder = order === "legacy" ? standardOrderLegacy : order === "sort-package-json" ? sortOrder : order;
46
46
  const json = JSON.parse(text);
47
- const orderedSource = sortObjectKeys(json, [...requiredOrder, ...Object.keys(json)]);
47
+ const orderedNonStandardKeys = Object.keys(json).filter((key) => !requiredOrder.includes(key)).sort();
48
+ const orderedSource = sortObjectKeys(json, [...requiredOrder, ...orderedNonStandardKeys]);
48
49
  const orderedKeys = Object.keys(orderedSource);
49
50
  const { properties } = ast.body[0].expression;
50
51
  for (let i = 0; i < properties.length; i += 1) {
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/repository-shorthand.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[({
@@ -1,6 +1,6 @@
1
- import { createRule } from "../createRule.js";
2
- import { isJSONStringLiteral } from "../utils/predicates.js";
3
- import { findPropertyWithKeyValue } from "../utils/findPropertyWithKeyValue.js";
1
+ import { createRule } from "../createRule.mjs";
2
+ import { isJSONStringLiteral } from "../utils/predicates.mjs";
3
+ import { findPropertyWithKeyValue } from "../utils/findPropertyWithKeyValue.mjs";
4
4
 
5
5
  //#region src/rules/repository-shorthand.ts
6
6
  const githubUrlRegex = /^(?:git\+)?(?:ssh:\/\/git@|http?s:\/\/)?(?:www\.)?github\.com\//;
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/require-properties.d.ts
4
4
  declare const rules: {
@@ -1,4 +1,4 @@
1
- import { createSimpleRequirePropertyRule } from "../utils/createSimpleRequirePropertyRule.js";
1
+ import { createSimpleRequirePropertyRule } from "../utils/createSimpleRequirePropertyRule.mjs";
2
2
 
3
3
  //#region src/rules/require-properties.ts
4
4
  const properties = [
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/restrict-dependency-ranges.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[({
@@ -1,5 +1,5 @@
1
- import { createRule } from "../createRule.js";
2
- import { isJSONStringLiteral } from "../utils/predicates.js";
1
+ import { createRule } from "../createRule.mjs";
2
+ import { isJSONStringLiteral } from "../utils/predicates.mjs";
3
3
  import semver from "semver";
4
4
 
5
5
  //#region src/rules/restrict-dependency-ranges.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/restrict-private-properties.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[({
@@ -1,5 +1,5 @@
1
- import { createRule } from "../createRule.js";
2
- import { isJSONStringLiteral } from "../utils/predicates.js";
1
+ import { createRule } from "../createRule.mjs";
2
+ import { isJSONStringLiteral } from "../utils/predicates.mjs";
3
3
  import { fixRemoveObjectProperty } from "eslint-fix-utils";
4
4
 
5
5
  //#region src/rules/restrict-private-properties.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/scripts-name-casing.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[], []>;
@@ -1,4 +1,4 @@
1
- import { createRule } from "../createRule.js";
1
+ import { createRule } from "../createRule.mjs";
2
2
  import { kebabCase } from "change-case";
3
3
 
4
4
  //#region src/rules/scripts-name-casing.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/sort-collections.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[(string[] | undefined)?], [{
@@ -1,4 +1,4 @@
1
- import { createRule } from "../createRule.js";
1
+ import { createRule } from "../createRule.mjs";
2
2
  import sortPackageJson from "sort-package-json";
3
3
 
4
4
  //#region src/rules/sort-collections.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/unique-dependencies.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[], []>;
@@ -1,5 +1,5 @@
1
- import { createRule } from "../createRule.js";
2
- import { isJSONStringLiteral, isNotNullish } from "../utils/predicates.js";
1
+ import { createRule } from "../createRule.mjs";
2
+ import { isJSONStringLiteral, isNotNullish } from "../utils/predicates.mjs";
3
3
  import { fixRemoveArrayElement, fixRemoveObjectProperty } from "eslint-fix-utils";
4
4
 
5
5
  //#region src/rules/unique-dependencies.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/valid-local-dependency.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[], []>;
@@ -1,4 +1,4 @@
1
- import { createRule } from "../createRule.js";
1
+ import { createRule } from "../createRule.mjs";
2
2
  import { createRequire } from "node:module";
3
3
  import path from "node:path";
4
4
 
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/valid-name.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[], []>;
@@ -1,4 +1,4 @@
1
- import { createRule } from "../createRule.js";
1
+ import { createRule } from "../createRule.mjs";
2
2
  import validate from "validate-npm-package-name";
3
3
 
4
4
  //#region src/rules/valid-name.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/valid-package-definition.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[({
@@ -1,4 +1,4 @@
1
- import { createRule } from "../createRule.js";
1
+ import { createRule } from "../createRule.mjs";
2
2
  import { validate } from "package-json-validator";
3
3
 
4
4
  //#region src/rules/valid-package-definition.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/valid-properties.d.ts
4
4
  /** All basic valid- flavor rules */
@@ -1,5 +1,5 @@
1
- import { createSimpleValidPropertyRule } from "../utils/createSimpleValidPropertyRule.js";
2
- import { validateAuthor, validateBin, validateBundleDependencies, validateConfig, validateCpu, validateDependencies, validateDescription, validateDirectories, validateExports, validateFiles, validateHomepage, validateKeywords, validateLicense, validateMain, validateOs, validatePrivate, validateScripts, validateType } from "package-json-validator";
1
+ import { createSimpleValidPropertyRule } from "../utils/createSimpleValidPropertyRule.mjs";
2
+ import { validateAuthor, validateBin, validateBundleDependencies, validateConfig, validateContributors, validateCpu, validateDependencies, validateDescription, validateDirectories, validateExports, validateFiles, validateHomepage, validateKeywords, validateLicense, validateMain, validateOs, validatePrivate, validateScripts, validateType } from "package-json-validator";
3
3
 
4
4
  //#region src/rules/valid-properties.ts
5
5
  const properties = [
@@ -10,6 +10,7 @@ const properties = [
10
10
  validator: validateBundleDependencies
11
11
  }],
12
12
  ["config", validateConfig],
13
+ ["contributors", validateContributors],
13
14
  ["cpu", validateCpu],
14
15
  ["description", validateDescription],
15
16
  ["dependencies", validateDependencies],
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/valid-repository-directory.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[], []>;
@@ -1,5 +1,5 @@
1
- import { createRule } from "../createRule.js";
2
- import { findPropertyWithKeyValue } from "../utils/findPropertyWithKeyValue.js";
1
+ import { createRule } from "../createRule.mjs";
2
+ import { findPropertyWithKeyValue } from "../utils/findPropertyWithKeyValue.mjs";
3
3
  import * as path$1 from "node:path";
4
4
  import { findRootSync } from "@altano/repository-tools";
5
5
  import { sep } from "node:path/posix";
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/rules/valid-version.d.ts
4
4
  declare const rule: PackageJsonRuleModule<[], []>;
@@ -1,4 +1,4 @@
1
- import { createRule } from "../createRule.js";
1
+ import { createRule } from "../createRule.mjs";
2
2
  import semver from "semver";
3
3
 
4
4
  //#region src/rules/valid-version.ts
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/utils/createSimpleRequirePropertyRule.d.ts
4
4
  interface CreateRequirePropertyRuleOptions {
@@ -1,5 +1,5 @@
1
- import { createRule } from "../createRule.js";
2
- import { isJSONStringLiteral } from "./predicates.js";
1
+ import { createRule } from "../createRule.mjs";
2
+ import { isJSONStringLiteral } from "./predicates.mjs";
3
3
 
4
4
  //#region src/utils/createSimpleRequirePropertyRule.ts
5
5
  /**
@@ -1,4 +1,4 @@
1
- import { PackageJsonRuleModule } from "../createRule.js";
1
+ import { PackageJsonRuleModule } from "../createRule.mjs";
2
2
  import { Result } from "package-json-validator";
3
3
 
4
4
  //#region src/utils/createSimpleValidPropertyRule.d.ts
@@ -1,4 +1,4 @@
1
- import { createRule } from "../createRule.js";
1
+ import { createRule } from "../createRule.mjs";
2
2
 
3
3
  //#region src/utils/createSimpleValidPropertyRule.ts
4
4
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-plugin-package-json",
3
- "version": "0.71.0",
3
+ "version": "0.73.0",
4
4
  "description": "Rules for consistent, readable, and valid package.json files. 🗂️",
5
5
  "homepage": "https://github.com/JoshuaKGoldberg/eslint-plugin-package-json#readme",
6
6
  "bugs": {
@@ -30,11 +30,11 @@
30
30
  "type": "module",
31
31
  "exports": {
32
32
  ".": {
33
- "types": "./lib/index.d.ts",
34
- "default": "./lib/index.js"
33
+ "types": "./lib/index.d.mts",
34
+ "default": "./lib/index.mjs"
35
35
  }
36
36
  },
37
- "main": "lib/index.js",
37
+ "main": "lib/index.mjs",
38
38
  "files": [
39
39
  "CHANGELOG.md",
40
40
  "lib/"
@@ -100,7 +100,7 @@
100
100
  "prettier-plugin-sh": "0.18.0",
101
101
  "release-it": "19.0.1",
102
102
  "sentences-per-line": "0.3.0",
103
- "tsdown": "0.15.0",
103
+ "tsdown": "0.16.0",
104
104
  "typescript": "5.9.2",
105
105
  "typescript-eslint": "8.46.0",
106
106
  "vitest": "4.0.4"
File without changes
File without changes
File without changes
File without changes
File without changes