* Deduplicate string cleanup helpers and not-found responses * Enforce aliased imports for infra and shared modules * Enforce @client/@server aliases for deep relative imports * Deduplicate visa sponsor and location filter definitions * Use shared city filter export in extractor location checks
93 lines
2.5 KiB
JSON
93 lines
2.5 KiB
JSON
{
|
|
"$schema": "https://biomejs.dev/schemas/2.3.12/schema.json",
|
|
"formatter": {
|
|
"indentStyle": "space",
|
|
"indentWidth": 2
|
|
},
|
|
"files": {
|
|
"includes": [
|
|
"**",
|
|
"!!**/dist",
|
|
"!!docs-site/.docusaurus",
|
|
"!!docs-site/build"
|
|
]
|
|
},
|
|
"css": {
|
|
"parser": {
|
|
"tailwindDirectives": true
|
|
}
|
|
},
|
|
"linter": {
|
|
"rules": {
|
|
"style": {
|
|
"noRestrictedImports": {
|
|
"level": "error",
|
|
"options": {
|
|
"patterns": [
|
|
{
|
|
"group": [
|
|
"../infra/**",
|
|
"../../infra/**",
|
|
"../../../infra/**",
|
|
"../../../../infra/**",
|
|
"../shared/**",
|
|
"../../shared/**",
|
|
"../../../shared/**",
|
|
"../../../../shared/**"
|
|
],
|
|
"message": "Use path aliases (for example @infra/* or @shared/*) instead of parent-relative imports for shared modules."
|
|
},
|
|
{
|
|
"group": [
|
|
"../../api",
|
|
"../../api/**",
|
|
"../../hooks",
|
|
"../../hooks/**",
|
|
"../../components",
|
|
"../../components/**",
|
|
"../../lib",
|
|
"../../lib/**",
|
|
"../../test",
|
|
"../../test/**"
|
|
],
|
|
"message": "Use @client/* aliases instead of ../../ imports for client modules."
|
|
},
|
|
{
|
|
"group": [
|
|
"../../services",
|
|
"../../services/**",
|
|
"../../repositories",
|
|
"../../repositories/**",
|
|
"../../config",
|
|
"../../config/**",
|
|
"../../utils",
|
|
"../../utils/**",
|
|
"../../pipeline",
|
|
"../../pipeline/**",
|
|
"../../db",
|
|
"../../db/**",
|
|
"../../extractors",
|
|
"../../extractors/**"
|
|
],
|
|
"message": "Use @server/* aliases instead of ../../ imports for server modules."
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"overrides": [
|
|
{
|
|
"includes": ["**/*.test.ts", "**/*.test.tsx", "**/test-utils.ts"],
|
|
"linter": {
|
|
"rules": {
|
|
"suspicious": {
|
|
"noExplicitAny": "off"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|