UNPKG

@shayanthenerd/eslint-config

Version:

A modern, flexible ESLint configuration for enforcing best practices and maintaining a consistent coding style

158 lines (157 loc) 4.77 kB
//#region src/rules/packageJson.ts const packageJsonRules = { "package-json/bin-name-casing": "warn", "package-json/exports-subpaths-style": ["warn", { prefer: "implicit" }], "package-json/no-empty-fields": "error", "package-json/no-local-dependencies": "error", "package-json/no-redundant-files": "error", "package-json/no-redundant-publishConfig": "error", "package-json/order-properties": "warn", "package-json/repository-shorthand": "warn", "package-json/require-attribution": ["warn", { ignorePrivate: true }], "package-json/require-bugs": "warn", "package-json/require-description": ["warn", { ignorePrivate: true }], "package-json/require-devEngines": "warn", "package-json/require-engines": ["warn", { ignorePrivate: true }], "package-json/require-exports": ["error", { ignorePrivate: true }], "package-json/require-files": ["error", { ignorePrivate: true }], "package-json/require-homepage": "warn", "package-json/require-keywords": "warn", "package-json/require-license": ["error", { ignorePrivate: true }], "package-json/require-name": "error", "package-json/require-repository": "warn", "package-json/require-type": "warn", "package-json/require-types": ["error", { ignorePrivate: true }], "package-json/require-version": "error", "package-json/restrict-dependency-ranges": ["warn", [{ forDependencyTypes: ["dependencies", "devDependencies"], rangeType: "pin" }, { forDependencyTypes: ["peerDependencies", "optionalDependencies"], rangeType: ["caret", "tilde"] }]], "package-json/restrict-private-properties": ["error", { blockedProperties: [ "files", "publishConfig", "keywords", "funding" ] }], "package-json/restrict-top-level-properties": ["warn", { ban: [ { property: "bun", message: "use bunfig.toml." }, { property: "pnpm", message: "use pnpm-workspace.yaml." }, { property: "commitlint", message: "use a dedicated config file." }, { property: "stylelint", message: "use a dedicated config file." }, { property: "prettier", message: "use a dedicated config file." }, { property: "renovate", message: "use a dedicated config file." } ] }], "package-json/scripts-name-casing": "warn", "package-json/sort-collections": ["warn", [ { key: "author", order: [ "name", "email", "url" ] }, { key: "bugs", order: ["email", "url"] }, "config", "dependencies", "devEngines", "devDependencies", "directories", { key: "dist", order: ["shasum", "tarball"] }, "engines", "exports", "husky", "husky.hooks", "lint-staged", "nano-staged", "optionalDependencies", "overrides", "peerDependencies", "peerDependenciesMeta", { key: "repository", order: [ "type", "url", "directory" ] }, "release", "simple-git-hooks" ]], "package-json/specify-peers-locally": "warn", "package-json/unique-dependencies": "error", "package-json/valid-author": "error", "package-json/valid-bin": "error", "package-json/valid-browser": "error", "package-json/valid-bugs": "error", "package-json/valid-bundleDependencies": "error", "package-json/valid-config": "error", "package-json/valid-contributors": "error", "package-json/valid-cpu": "error", "package-json/valid-dependencies": "error", "package-json/valid-description": "error", "package-json/valid-devDependencies": "error", "package-json/valid-devEngines": "error", "package-json/valid-directories": "error", "package-json/valid-engines": "error", "package-json/valid-exports": "error", "package-json/valid-files": "error", "package-json/valid-funding": "error", "package-json/valid-gypfile": "error", "package-json/valid-homepage": "error", "package-json/valid-keywords": "error", "package-json/valid-libc": "error", "package-json/valid-license": "error", "package-json/valid-main": "error", "package-json/valid-man": "error", "package-json/valid-module": "error", "package-json/valid-name": "error", "package-json/valid-optionalDependencies": "error", "package-json/valid-os": "error", "package-json/valid-packageManager": "error", "package-json/valid-peerDependencies": "error", "package-json/valid-peerDependenciesMeta": "error", "package-json/valid-peerDependenciesMeta-relationship": "error", "package-json/valid-private": "error", "package-json/valid-publishConfig": "error", "package-json/valid-repository": "error", "package-json/valid-repository-directory": "error", "package-json/valid-scripts": "error", "package-json/valid-sideEffects": "error", "package-json/valid-type": "error", "package-json/valid-version": "error", "package-json/valid-workspaces": "error" }; function getPackageJsonRules() { return packageJsonRules; } //#endregion export { getPackageJsonRules };