Repository navigation
Expand file tree
/
Copy pathvite.config.ts
More file actions
175 lines (172 loc) · 5.91 KB
/
Copy pathvite.config.ts
File metadata and controls
175 lines (172 loc) · 5.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
import { fileURLToPath } from "node:url";
import { defineConfig } from "vite-plus";
const root = fileURLToPath(new URL(".", import.meta.url));
export const repositoryFormatOptions = {};
export default defineConfig({
fmt: repositoryFormatOptions,
resolve: {
alias: [
{
find: "@equipe-tech/observability-cli/testing",
replacement: `${root}packages/cli/src/testing/index.ts`,
},
{
find: "@equipe-tech/observability-cli/query",
replacement: `${root}packages/cli/src/query.ts`,
},
{
find: "@equipe-tech/observability-cli",
replacement: `${root}packages/cli/src/index.ts`,
},
{
find: "@equipe-tech/observability-react/testing",
replacement: `${root}packages/react/src/testing/index.ts`,
},
{
find: "@equipe-tech/observability-react",
replacement: `${root}packages/react/src/index.ts`,
},
{
find: "@equipe-tech/observability-sentry/release",
replacement: `${root}packages/sentry/src/release/index.ts`,
},
{
find: "@equipe-tech/observability-sentry/browser",
replacement: `${root}packages/sentry/src/browser/index.ts`,
},
{
find: "@equipe-tech/observability-sentry/node",
replacement: `${root}packages/sentry/src/node/index.ts`,
},
{
find: "@equipe-tech/observability-sentry/testing",
replacement: `${root}packages/sentry/src/testing/index.ts`,
},
{
find: "@equipe-tech/observability-sentry",
replacement: `${root}packages/sentry/src/index.ts`,
},
{
find: "@equipe-tech/observability/react-web-profile",
replacement: `${root}packages/telemetry/src/profile/ReactWebProfile.ts`,
},
{
find: "@equipe-tech/observability/browser/client",
replacement: `${root}packages/telemetry/src/browser/client.ts`,
},
{
find: "@equipe-tech/observability/browser",
replacement: `${root}packages/telemetry/src/browser/index.ts`,
},
{
find: "@equipe-tech/observability/effect",
replacement: `${root}packages/telemetry/src/effect/index.ts`,
},
{
find: "@equipe-tech/observability/metrics",
replacement: `${root}packages/telemetry/src/Metrics.ts`,
},
{
find: "@equipe-tech/observability/policy",
replacement: `${root}packages/telemetry/src/policy/entrypoint.ts`,
},
{
find: "@equipe-tech/observability/testing",
replacement: `${root}packages/telemetry/src/testing/index.ts`,
},
{
find: "@equipe-tech/observability/node",
replacement: `${root}packages/telemetry/src/node/index.ts`,
},
{
find: "@equipe-tech/observability-effect/testing",
replacement: `${root}packages/effect/src/testing/index.ts`,
},
{
find: "@equipe-tech/observability-effect",
replacement: `${root}packages/effect/src/index.ts`,
},
{
find: "@equipe-tech/observability-nestjs/testing",
replacement: `${root}packages/nestjs/src/testing/index.ts`,
},
{
find: "@equipe-tech/observability-nestjs",
replacement: `${root}packages/nestjs/src/index.ts`,
},
{
find: "@equipe-tech/observability-evlog/testing",
replacement: `${root}packages/evlog/src/testing/index.ts`,
},
{
find: "@equipe-tech/observability-evlog",
replacement: `${root}packages/evlog/src/index.ts`,
},
{
find: "@equipe-tech/observability",
replacement: `${root}packages/telemetry/src/index.ts`,
},
],
},
lint: {
ignorePatterns: ["tools/boundaries/fixtures/**"],
jsPlugins: [
{ name: "vite-plus", specifier: "vite-plus/oxlint-plugin" },
{ name: "anti-slop", specifier: "./tools/oxlint/anti-slop-plugin.ts" },
{ name: "effect", specifier: "./tools/oxlint/effect-plugin.ts" },
{ name: "hygiene", specifier: "./tools/oxlint/hygiene-plugin.ts" },
],
rules: {
"anti-slop/no-chained-type-assertions": "error",
"anti-slop/no-conditional-empty-object-spread": "error",
"anti-slop/no-module-mocking": "error",
"anti-slop/no-object-parameters": "error",
"anti-slop/no-record-type": "error",
"anti-slop/no-reflect-apply": "error",
"anti-slop/no-reflect-get": "error",
"anti-slop/no-runtime-typeof": "error",
"anti-slop/no-shape-in-symbol-names": "error",
"anti-slop/no-unknown-parameters": "error",
"anti-slop/no-unknown-type-aliases": "error",
"anti-slop/no-unsafe-dictionary-type": "error",
"effect/no-ambient-env-read": "error",
"effect/no-bare-error": "error",
"effect/no-service-constructor-imports": "error",
"effect/require-fetch-abort-signal": "error",
"effect/tagged-error-requires-message": "error",
"hygiene/no-async-context-enter-with": "error",
"hygiene/no-foreign-directive": "error",
"hygiene/no-vacuous-throw-assertion": "error",
"hygiene/no-void-operator": "error",
"hygiene/require-suppression-reason": "error",
"typescript/consistent-type-assertions": ["error", { assertionStyle: "never" }],
"typescript/no-explicit-any": "error",
"typescript/no-non-null-assertion": "error",
"typescript/no-unnecessary-type-assertion": "error",
"typescript/no-unsafe-type-assertion": "error",
"vite-plus/prefer-vite-plus-imports": "error",
},
options: { typeAware: true, typeCheck: true },
},
staged: {
"*.{js,jsx,mjs,cjs,ts,tsx,mts,cts}": "vp check --fix",
"*.{css,html,json,jsonc,md,mdx,toml,yaml,yml}": "vp fmt --write",
},
test: {
exclude: [
"**/node_modules/**",
"**/.git/**",
"**/.pstack/**",
"**/.verification/**",
"**/*.bun.test.ts",
"**/*.browser.test.ts",
"repos/**",
],
},
run: {
cache: {
scripts: false,
tasks: true,
},
},
});