Skip to content

Commit 57ba5a3

Browse files
committed
ci: inline shared/auth-ui tsconfig so Docker oxc can resolve it
Follow-up to db4ae88. After that commit the Docker Build (console) and Docker Build (management) jobs in run 27868630084 still failed with the same '[TSCONFIG_ERROR] Failed to load tsconfig for ../shared/auth-ui/src/{AuthCard,AuthLayout,...}.vue: Tsconfig not found'. The previous symlink fix put shared/ at /app/shared correctly, but oxc still could not load the tsconfig: shared/auth-ui/tsconfig.json -> extends '@vue/tsconfig/tsconfig.dom.json' The Docker frontend images only run 'pnpm install --dir ./<frontend>', so shared/auth-ui has no node_modules and @vue/tsconfig is unreachable. When oxc cannot resolve an 'extends' target it treats the tsconfig as missing entirely, regardless of whether the file itself exists. Inline the @vue/tsconfig base + dom options (verbatim copy of node_modules/@vue/tsconfig/{tsconfig.json,tsconfig.dom.json} as of 0.9.1) into shared/auth-ui/tsconfig.json. Local 'pnpm run type-check' and 'pnpm run build' still pass for both console and management (1.43s / 1.45s). When shared/auth-ui later becomes a real workspace member installed by pnpm, the extends form can be restored. Refs: #27868630084
1 parent db4ae88 commit 57ba5a3

1 file changed

Lines changed: 27 additions & 4 deletions

File tree

shared/auth-ui/tsconfig.json

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,36 @@
11
{
2-
"extends": "@vue/tsconfig/tsconfig.dom.json",
3-
"include": ["src/**/*.ts", "src/**/*.vue", "src/**/*.tsx"],
4-
"exclude": ["node_modules", "dist", "**/__tests__/**"],
2+
// Inlined from `@vue/tsconfig` (^0.7.0) — see
3+
// node_modules/@vue/tsconfig/{tsconfig.json,tsconfig.dom.json}.
4+
// We inline instead of `extends` because the Docker build context for
5+
// console/management does not install shared/auth-ui dependencies, so
6+
// oxc fails to resolve `@vue/tsconfig` and reports "Tsconfig not found"
7+
// for every .vue file under shared/auth-ui. Mirroring the config keeps
8+
// local dev and CI builds identical.
59
"compilerOptions": {
610
"noEmit": true,
11+
"module": "ESNext",
12+
"moduleResolution": "bundler",
13+
"resolveJsonModule": true,
14+
"allowImportingTsExtensions": true,
15+
"moduleDetection": "force",
16+
"jsx": "preserve",
17+
"jsxImportSource": "vue",
18+
"noImplicitThis": true,
19+
"strict": true,
20+
"verbatimModuleSyntax": true,
21+
"target": "ESNext",
22+
"useDefineForClassFields": true,
23+
"esModuleInterop": true,
24+
"forceConsistentCasingInFileNames": true,
25+
"libReplacement": false,
26+
"skipLibCheck": true,
727
"baseUrl": ".",
28+
"lib": ["ES2022", "DOM", "DOM.Iterable"],
829
"types": ["vite/client"],
930
"paths": {
1031
"@/*": ["./src/*"]
1132
}
12-
}
33+
},
34+
"include": ["src/**/*.ts", "src/**/*.vue", "src/**/*.tsx"],
35+
"exclude": ["node_modules", "dist", "**/__tests__/**"]
1336
}

0 commit comments

Comments
 (0)