Repository navigation
Expand file tree
/
Copy pathtsconfig.json
More file actions
50 lines (50 loc) · 2.37 KB
/
Copy pathtsconfig.json
File metadata and controls
50 lines (50 loc) · 2.37 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
{
"extends": "../../../tsconfig.json",
"compilerOptions": {
"outDir": "./dist",
// [#11184] Widened from `./src` as a CONSEQUENCE of the `paths` rule
// below, exactly as `packages/rest/tsconfig.json` documents (#9960):
// redirecting `@objectstack/types` to its source puts
// `packages/types/src/**` into this program, and `rootDir` is enforced
// over every program file even under `--noEmit`. `../..` (= `packages/`)
// is the directory that contains every file in the program. Emit is
// unaffected: this package builds with tsup, and `typecheck` passes
// `--noEmit`.
"rootDir": "../..",
"types": [
"node"
],
// [#11184] `@objectstack/types` is imported as a value by
// `src/bootstrap-platform-admin.ts`. Without this rule tsc resolves the
// specifier through the dependency's `exports` map — `dist/index.d.ts`, a
// BUILD ARTIFACT — so this package's typecheck would render a verdict
// about the last `pnpm build` rather than about the producer's source in
// the checkout (`check:type-source-resolution` refused exactly that — the
// dangerous case being a typecheck that PASSES against a stale `dist` —
// until it was retired on 2026-09-18, #18373; no gate checks this rule
// now). ONE rule for the bare name only: this package imports no
// `@objectstack/types/*` subpath, and a `paths` target that matches
// nothing on disk would silently fall back to node resolution (see the
// rest package's block for the measured traps).
// [#16608] `@objectstack/driver-sqlite-wasm` is imported as a VALUE by
// `src/insert-check-post-image.test.ts`, whose conformance cell runs on two
// driver families. Same rule, same reason and the same bare (star-free)
// key shape as the entry above — an exact match, so it cannot swallow a
// subpath, and this package imports none. It is declared HERE and not in
// `tsconfig.test.json` because a child that declared its own `paths` would
// REPLACE this map rather than merge into it, silently sending
// `@objectstack/types` back to `dist/`.
"paths": {
"@objectstack/types": ["../../types/src/index.ts"],
"@objectstack/driver-sqlite-wasm": ["../../drivers/driver-sqlite-wasm/src/index.ts"]
}
},
"include": [
"src/**/*"
],
"exclude": [
"dist",
"node_modules",
"**/*.test.ts"
]
}