mirror of
https://github.com/withastro/astro.git
synced 2024-12-16 21:46:22 -05:00
133 lines
2.6 KiB
Text
133 lines
2.6 KiB
Text
{
|
|
"$schema": "https://biomejs.dev/schemas/1.9.3/schema.json",
|
|
"files": {
|
|
"ignore": ["**/smoke/**", "**/fixtures/**", "**/_temp-fixtures/**", "**/vendor/**"],
|
|
"include": ["test/**", "e2e/**", "packages/**", "scripts/**", "benchmark"],
|
|
},
|
|
"vcs": {
|
|
"enabled": true,
|
|
"clientKind": "git",
|
|
"useIgnoreFile": true,
|
|
},
|
|
"formatter": {
|
|
"indentStyle": "tab",
|
|
"indentWidth": 2,
|
|
"lineWidth": 100,
|
|
"ignore": [".changeset", "pnpm-lock.yaml", "*.astro"],
|
|
},
|
|
"organizeImports": {
|
|
"enabled": true,
|
|
},
|
|
"linter": {
|
|
"enabled": true,
|
|
"rules": {
|
|
"recommended": false,
|
|
"style": {
|
|
"useNodejsImportProtocol": "error",
|
|
// Enforce separate type imports for type-only imports to avoid bundling unneeded code
|
|
"useImportType": "error",
|
|
},
|
|
"suspicious": {
|
|
// This one is specific to catch `console.log`. The rest of logs are permitted
|
|
"noConsoleLog": "warn",
|
|
},
|
|
"correctness": {
|
|
"noUnusedVariables": "info",
|
|
"noUnusedFunctionParameters": "info",
|
|
"noUnusedImports": "warn",
|
|
},
|
|
},
|
|
},
|
|
"javascript": {
|
|
"formatter": {
|
|
"trailingCommas": "all",
|
|
"quoteStyle": "single",
|
|
"semicolons": "always",
|
|
},
|
|
},
|
|
"json": {
|
|
"parser": {
|
|
"allowComments": true,
|
|
"allowTrailingCommas": true,
|
|
},
|
|
"formatter": {
|
|
"indentStyle": "space",
|
|
"trailingCommas": "none",
|
|
},
|
|
},
|
|
"overrides": [
|
|
{
|
|
// Workaround to format files like npm does
|
|
"include": ["package.json"],
|
|
"json": {
|
|
"formatter": {
|
|
"lineWidth": 1,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
// We don"t want to have node modules in code that should be runtime agnostic
|
|
"include": ["packages/astro/src/runtime/**/*.ts"],
|
|
"linter": {
|
|
"rules": {
|
|
"correctness": {
|
|
"noNodejsModules": "error",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
"include": ["*.test.js"],
|
|
"linter": {
|
|
"rules": {
|
|
"suspicious": {
|
|
"noFocusedTests": "error",
|
|
"noConsole": "off",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
"include": ["*.astro", "client.d.ts", "jsx-runtime.d.ts"],
|
|
"linter": {
|
|
"rules": {
|
|
"correctness": {
|
|
"noUnusedVariables": "off",
|
|
"noUnusedImports": "off",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
"include": ["packages/integrations/**/*.ts"],
|
|
"linter": {
|
|
"rules": {
|
|
"suspicious": {
|
|
"noConsole": {
|
|
"level": "error",
|
|
"options": {
|
|
"allow": ["warn", "error", "info", "debug"],
|
|
},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
"include": [
|
|
"packages/db/**/cli/**/*.ts",
|
|
"benchmark/**/*.js",
|
|
"packages/astro/src/cli/**/*.ts",
|
|
"packages/astro/astro.js",
|
|
],
|
|
"linter": {
|
|
"rules": {
|
|
"suspicious": {
|
|
"noConsole": "off",
|
|
"noConsoleLog": "off",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
],
|
|
}
|