From 126c6f4884e1b2e650d974107884994f31e5deb7 Mon Sep 17 00:00:00 2001 From: Eric Rumsey Date: Fri, 23 May 2025 17:36:54 -0500 Subject: [PATCH] Configure linting for functional programming --- eslint.config.js | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/eslint.config.js b/eslint.config.js index 34e9b0f..7198767 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -1,17 +1,21 @@ -import js from "@eslint/js"; -import globals from "globals"; -import tseslint from "typescript-eslint"; -import { defineConfig } from "eslint/config"; -import eslintConfigPrettier from "eslint-config-prettier/flat"; +import fp from 'eslint-plugin-fp'; +import js from '@eslint/js'; +import globals from 'globals'; +import tseslint from 'typescript-eslint'; +import { defineConfig } from 'eslint/config'; +import eslintConfigPrettier from 'eslint-config-prettier/flat'; export default defineConfig([ { - files: ["**/*.{js,mjs,cjs,ts}"], - plugins: { js }, - extends: ["js/recommended"], + files: ['**/*.{js,mjs,cjs,ts}'], + plugins: { js, fp }, + extends: ['js/recommended'], + rules: { + 'fp/no-mutation': 'error', + }, }, { - files: ["**/*.{js,mjs,cjs,ts}"], + files: ['**/*.{js,mjs,cjs,ts}'], languageOptions: { globals: globals.browser }, }, tseslint.configs.recommended,