eslint-plugin-functional
Version:
ESLint rules to promote functional programming in TypeScript.
176 lines (175 loc) • 5.89 kB
JSON
{
"name": "eslint-plugin-functional",
"version": "9.0.1",
"description": "ESLint rules to promote functional programming in TypeScript.",
"keywords": [
"eslint",
"eslint plugin",
"fp",
"functional",
"functional programming",
"immutability",
"immutable"
],
"homepage": "https://github.com/eslint-functional/eslint-plugin-functional#readme",
"bugs": {
"url": "https://github.com/eslint-functional/eslint-plugin-functional/issues"
},
"repository": {
"type": "git",
"url": "git+https://github.com/eslint-functional/eslint-plugin-functional"
},
"funding": [
{
"type": "ko-fi",
"url": "https://ko-fi.com/rebeccastevens"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/eslint-plugin-functional"
}
],
"license": "MIT",
"author": {
"name": "Rebecca Stevens",
"email": "rebecca.stevens@outlook.co.nz"
},
"contributors": [
"Jonas Kello"
],
"type": "module",
"exports": {
"types": "./lib/index.d.ts",
"default": "./lib/index.js"
},
"files": [
"lib/",
"package.json",
"LICENSE",
"README.md"
],
"scripts": {
"build": "pnpm run build:node && pnpm run build:docs",
"build:docs": "eslint-doc-generator",
"build:node": "rimraf lib && rollup -c rollup.config.ts --configPlugin @rollup/plugin-typescript --configImportAttributesKey with",
"lint": "eslint && pnpm run lint:md && pnpm lint:eslint-docs && pnpm run lint:spelling && pnpm run lint:knip && pnpm run lint:packages",
"lint-fix": "pnpm run build && eslint --fix && pnpm run lint:md-fix && pnpm run lint:packages-fix",
"lint:eslint-docs": "eslint-doc-generator --check",
"lint:eslint-docs-fix": "pnpm build:docs",
"lint:js": "eslint \"**/*.?([cm])[jt]s?(x)\"",
"lint:js-fix": "eslint \"**/*.?([cm])[jt]s?(x)\" --fix",
"lint:knip": "pnpm run lint:knip:development && pnpm run lint:knip:production",
"lint:knip:development": "knip",
"lint:knip:production": "knip --production",
"lint:md": "markdownlint-cli2",
"lint:md-fix": "markdownlint-cli2 --fix",
"lint:md-full": "pnpm run lint:md && eslint \"**/*.md\"",
"lint:md-full-fix": "pnpm run lint:md-fix && eslint \"**/*.md\" --fix",
"lint:packages": "pnpm dedupe --check",
"lint:packages-fix": "pnpm dedupe",
"lint:spelling": "cspell lint --no-progress --show-suggestions --show-context --dot \"**\" \".github/**/*\"",
"lint:yaml": "eslint \"**/*.y?(a)ml\"",
"lint:yaml-fix": "eslint \"**/*.y?(a)ml\" --fix",
"prepare": "husky",
"release": "semantic-release",
"test": "pnpm run test:js",
"test-work": "vitest",
"test:js": "vitest --coverage",
"test:js-run": "vitest run --coverage",
"typecheck": "tsc -p tsconfig.build.json --noEmit",
"verify": "pnpm run lint && pnpm run typecheck && pnpm run test:js-run"
},
"resolutions": {
"dts-bundle-generator": "9.5.1"
},
"dependencies": {
"@typescript-eslint/utils": "^8.20.0",
"deepmerge-ts": "^7.1.3",
"escape-string-regexp": "^5.0.0",
"is-immutable-type": "^5.0.1",
"ts-api-utils": "^2.0.0",
"ts-declaration-location": "^1.0.5"
},
"devDependencies": {
"@babel/eslint-parser": "7.26.5",
"@cspell/dict-cryptocurrencies": "5.0.4",
"@eslint/compat": "1.2.5",
"@rebeccastevens/eslint-config": "3.5.3",
"@rollup/plugin-replace": "6.0.2",
"@rollup/plugin-typescript": "12.1.2",
"@semantic-release/changelog": "6.0.3",
"@semantic-release/commit-analyzer": "13.0.1",
"@semantic-release/git": "10.0.1",
"@semantic-release/github": "11.0.1",
"@semantic-release/npm": "12.0.1",
"@semantic-release/release-notes-generator": "14.0.3",
"@stylistic/eslint-plugin": "3.0.1",
"@types/dedent": "0.7.2",
"@types/node": "18.19.70",
"@typescript-eslint/eslint-plugin": "8.22.0",
"@typescript-eslint/parser": "8.22.0",
"@vitest/coverage-v8": "2.1.8",
"@vitest/eslint-plugin": "1.1.25",
"cspell": "8.17.3",
"dedent": "1.5.3",
"eslint": "9.19.0",
"eslint-config-prettier": "10.0.1",
"eslint-doc-generator": "2.0.2",
"eslint-flat-config-utils": "2.0.1",
"eslint-import-resolver-typescript": "3.7.0",
"eslint-merge-processors": "1.0.0",
"eslint-plugin-eslint-comments": "3.2.0",
"eslint-plugin-eslint-plugin": "6.4.0",
"eslint-plugin-format": "1.0.1",
"eslint-plugin-functional": "link:.",
"eslint-plugin-import-x": "4.6.1",
"eslint-plugin-jsdoc": "50.6.1",
"eslint-plugin-jsonc": "2.18.2",
"eslint-plugin-markdown": "5.1.0",
"eslint-plugin-n": "17.15.1",
"eslint-plugin-no-only-tests": "3.3.0",
"eslint-plugin-optimize-regex": "1.2.1",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-promise": "7.2.1",
"eslint-plugin-regexp": "2.7.0",
"eslint-plugin-sonarjs": "3.0.1",
"eslint-plugin-unicorn": "56.0.1",
"eslint-plugin-yml": "1.16.0",
"eslint-vitest-rule-tester": "1.1.0",
"fast-glob": "3.3.3",
"husky": "9.1.7",
"jsonc-eslint-parser": "2.4.0",
"knip": "5.42.0",
"lint-staged": "15.3.0",
"markdownlint-cli2": "0.17.1",
"prettier": "3.4.2",
"rimraf": "6.0.1",
"rollup": "4.30.1",
"rollup-plugin-deassert": "1.3.0",
"rollup-plugin-dts-bundle-generator": "1.4.0",
"semantic-release": "24.2.1",
"semantic-release-replace-plugin": "1.2.7",
"tsc-files": "1.1.4",
"tsx": "4.19.2",
"typescript": "5.7.3",
"vite-tsconfig-paths": "5.1.4",
"vitest": "2.1.8",
"yaml-eslint-parser": "1.2.3"
},
"peerDependencies": {
"eslint": "^9.0.0",
"typescript": ">=4.7.4"
},
"peerDependenciesMeta": {
"typescript": {
"optional": true
}
},
"packageManager": "pnpm@9.15.4",
"engines": {
"node": ">=v18.18.0"
},
"overrides": {
"eslint-plugin-functional": "link:."
}
}