Files
zeekay b8bfa6cfb0 fix(explore): state rootDir for the tool build, which tsc-alias requires
Restoring the paths map got tsc through, and the image build moved on to the
next command on the same line:

  > tsc -p ./tsconfig.json && tsc-alias -p ./tsconfig.json
  tsc-alias error: compilerOptions.rootDir is required with implicit baseUrl

tsc infers a rootDir from the inputs and is content; tsc-alias will not, and
without baseUrl there is nothing for it to fall back to. The inferred value was
already the repo root — the emit lands in build/configs, build/lib, build/ui —
so stating it changes no output. Verified by emitting either way: the JS tree is
identical, and only tsconfig.tsbuildinfo moves, since its path is computed
relative to rootDir.
2026-08-06 13:17:16 -07:00

40 lines
1.7 KiB
JSON

{
"extends": "../../../tsconfig.json",
"compilerOptions": {
"noEmit": false,
"skipLibCheck": true,
"module": "node16",
"moduleResolution": "node16",
"outDir": "./build",
// The repo root, which is where every input below already resolves to, so
// the emitted tree is unchanged. Stated because dropping baseUrl left it
// implicit, and tsc-alias — which runs straight after tsc — refuses that:
// "compilerOptions.rootDir is required with implicit baseUrl".
"rootDir": "../../..",
// Every alias the include-set reaches must be listed here, because
// TypeScript REPLACES the inherited paths map rather than merging it.
// This was survivable while the root config set baseUrl: bare specifiers
// resolved against it without any paths entry, and this file's own
// "./nextjs/..." resolved against it too. The TypeScript 7 migration
// dropped baseUrl for an explicit paths map, so this override started
// yielding neither — and "./nextjs/..." began resolving relative to THIS
// directory, where no such file exists. Paths are relative to this file.
"paths": {
"nextjs-routes": [ "../../../nextjs/nextjs-routes.d.ts" ],
"configs/*": [ "../../../configs/*" ],
"lib/*": [ "../../../lib/*" ],
"toolkit/*": [ "../../../toolkit/*" ],
"types/*": [ "../../../types/*" ],
"ui/*": [ "../../../ui/*" ],
// ui/shared/IconSvg pulls in public/icons/name.d.ts, which the sprite
// step regenerates earlier in the image build.
"public/*": [ "../../../public/*" ]
}
},
"include": [ "../../../configs/app/index.ts", "../../../global.d.ts", "../../../types/@luxfi/ui.d.ts" ],
"tsc-alias": {
"verbose": true,
"resolveFullPaths": true,
}
}