MaxMilton/ekscss

View on GitHub
biome.jsonc

Summary

Maintainability
Test Coverage
{
  "$schema": "./node_modules/@biomejs/biome/configuration_schema.json",
  "vcs": { "enabled": true, "clientKind": "git", "useIgnoreFile": true },
  "organizeImports": { "enabled": true },
  "formatter": {
    "formatWithErrors": true,
    "indentStyle": "space",
    "indentWidth": 2,
    "lineEnding": "lf",
    "lineWidth": 80
  },
  "linter": {
    "rules": {
      "recommended": true,
      "complexity": {
        "noForEach": "off",
        "noUselessStringConcat": "warn",
        "noUselessUndefinedInitialization": "warn",
        "useSimplifiedLogicExpression": "info",
        "useDateNow": "error"
      },
      "correctness": {
        // "noUndeclaredDependencies": "warn", // TODO: Enable once it supports monorepos
        "noUndeclaredVariables": "warn",
        "noUnusedFunctionParameters": "warn"
      },
      "performance": {
        "noBarrelFile": "error",
        "noReExportAll": "error"
      },
      "style": {
        "noDoneCallback": "warn",
        "noNamespace": "error",
        "noNegationElse": "error",
        "noNonNullAssertion": "off",
        "noParameterProperties": "error",
        "noRestrictedGlobals": "error",
        "noShoutyConstants": "error",
        "noYodaExpression": "warn",
        "useCollapsedElseIf": "error",
        "useConsistentBuiltinInstantiation": "error",
        "useDefaultSwitchClause": "warn",
        "useEnumInitializers": "off",
        "useExplicitLengthCheck": "warn",
        "useNamingConvention": {
          "level": "warn",
          "options": {
            "strictCase": false,
            "requireAscii": true,
            "enumMemberCase": "CONSTANT_CASE"
          }
        },
        "useNodejsImportProtocol": "off", // we support node v12+
        "useShorthandArrayType": "error",
        "useShorthandAssign": "error",
        "useSingleCaseStatement": "info",
        "useTemplate": "off",
        "useThrowNewError": "error",
        "useThrowOnlyError": "warn"
      },
      "suspicious": {
        "noApproximativeNumericConstant": "error",
        "noAssignInExpressions": "off",
        "noConfusingVoidType": "off",
        "noConsoleLog": "warn",
        "noConstEnum": "off",
        "noDuplicateAtImportRules": "error",
        "noDuplicateFontNames": "error",
        "noDuplicateSelectorsKeyframeBlock": "error",
        "noEmptyBlock": "warn",
        "noEvolvingTypes": "warn",
        "noExplicitAny": "off",
        "noFocusedTests": "error",
        "noMisplacedAssertion": "error",
        "noMisrefactoredShorthandAssign": "error",
        "useErrorMessage": "warn"
      },
      "nursery": {
        "noDuplicateElseIf": "error",
        "noSubstr": "warn",
        "noUnknownPseudoClass": "warn",
        "noUnknownPseudoElement": "warn",
        "useAdjacentOverloadSignatures": "error",
        "useValidAutocomplete": "warn"
      }
    }
  },
  "javascript": {
    "formatter": {
      "semicolons": "always",
      "trailingCommas": "all",
      "quoteStyle": "single"
    }
  },
  "overrides": [
    {
      "include": [
        "**/*.cjs",
        "**/*.test-node.js",
        "packages/cli/*.js",
        "packages/framework/*.js"
      ],
      "linter": {
        "rules": {
          "style": {
            "useNodejsImportProtocol": "off" // we support node v12+
          },
          "suspicious": {
            "noConsoleLog": "off",
            "noRedundantUseStrict": "off"
          }
        }
      }
    },
    {
      "include": ["packages/ekscss/src/index.ts"],
      "linter": {
        "rules": {
          "performance": {
            "noBarrelFile": "off",
            "noReExportAll": "off"
          }
        }
      }
    },
    {
      "include": [".vscode/*.json", "tsconfig*.json"],
      "json": {
        "parser": {
          "allowComments": true,
          "allowTrailingCommas": true
        }
      }
    },
    {
      "include": [
        "**/*.spec.ts",
        "**/*.test.ts",
        "**/*.test-node.js",
        "packages/*/test/**",
        "test/**"
      ],
      "formatter": {
        "lineWidth": 100
      },
      "linter": {
        "rules": {
          "correctness": {
            "noUndeclaredDependencies": "off"
          }
        }
      }
    },
    {
      "include": ["packages/*/build.ts"],
      "linter": {
        "rules": {
          "correctness": {
            "noUndeclaredDependencies": "off"
          },
          "style": {
            "useNamingConvention": "off"
          },
          "suspicious": {
            "noConsoleLog": "off"
          }
        }
      },
      "javascript": {
        "globals": ["Bun"]
      }
    }
  ]
}