@ts-typed/compiler 0.0.1 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/dist/cli/cli.d.ts.map +1 -1
  3. package/dist/cli/cli.js +14 -0
  4. package/dist/cli/cli.js.map +1 -1
  5. package/dist/compiler/analysis/analyze-project.d.ts.map +1 -1
  6. package/dist/compiler/analysis/analyze-project.js +21 -4
  7. package/dist/compiler/analysis/analyze-project.js.map +1 -1
  8. package/dist/compiler/analysis/type-schema-resolver.d.ts +44 -1
  9. package/dist/compiler/analysis/type-schema-resolver.d.ts.map +1 -1
  10. package/dist/compiler/analysis/type-schema-resolver.js +175 -2
  11. package/dist/compiler/analysis/type-schema-resolver.js.map +1 -1
  12. package/dist/compiler/build/build-project.d.ts.map +1 -1
  13. package/dist/compiler/build/build-project.js +19 -1
  14. package/dist/compiler/build/build-project.js.map +1 -1
  15. package/dist/compiler/transform/create-contract-transformer.d.ts.map +1 -1
  16. package/dist/compiler/transform/create-contract-transformer.js +308 -16
  17. package/dist/compiler/transform/create-contract-transformer.js.map +1 -1
  18. package/dist/compiler/transform/schema-expression.d.ts.map +1 -1
  19. package/dist/compiler/transform/schema-expression.js +5 -0
  20. package/dist/compiler/transform/schema-expression.js.map +1 -1
  21. package/dist/runtime/assert-value.js +39 -0
  22. package/dist/runtime/assert-value.js.map +1 -1
  23. package/dist/runtime/guards/guards.d.ts +14 -0
  24. package/dist/runtime/guards/guards.d.ts.map +1 -1
  25. package/dist/runtime/guards/guards.js +38 -0
  26. package/dist/runtime/guards/guards.js.map +1 -1
  27. package/dist/runtime/guards/index.d.ts +1 -1
  28. package/dist/runtime/guards/index.d.ts.map +1 -1
  29. package/dist/runtime/guards/index.js +2 -1
  30. package/dist/runtime/guards/index.js.map +1 -1
  31. package/dist/runtime/index.d.ts +1 -1
  32. package/dist/runtime/index.d.ts.map +1 -1
  33. package/dist/runtime/index.js +2 -1
  34. package/dist/runtime/index.js.map +1 -1
  35. package/dist/runtime/schema.interface.d.ts +11 -0
  36. package/dist/runtime/schema.interface.d.ts.map +1 -1
  37. package/dist/runtime/schema.type.d.ts +2 -2
  38. package/dist/runtime/schema.type.d.ts.map +1 -1
  39. package/package.json +3 -2
package/CHANGELOG.md CHANGED
@@ -4,6 +4,48 @@ All notable changes to `@ts-typed/compiler` are documented in this file.
4
4
 
5
5
  The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/).
6
6
 
7
+ ## [0.1.0] - 2026-10-17
8
+
9
+ A pass over real NestJS + TypeORM + SQLite usage found that the single highest-impact gap was coverage, not any individual bug: class methods, constructors and decorated fields were never instrumented at all, and several common type shapes (`Date`, callback-typed properties) made their whole containing contract silently `unsupported`. This release closes those gaps and fixes twelve runtime-breaking or silently-incorrect bugs found along the way.
10
+
11
+ ### Added
12
+
13
+ - Class methods, getters, setters and constructors are now instrumented (parameters and return values), closing the largest coverage gap: a NestJS controller/service/repository method is now protected the same way a free function always was.
14
+ - Decorated class fields and parameters (`class-validator`, `@nestjs/swagger`, TypeORM `@Column`/`@OneToMany`, etc.) are resolved by their own type instead of being unconditionally marked `unsupported`.
15
+ - `Date` is supported as a first-class runtime contract, including explicitly rejecting `Invalid Date` with a `StrictTypeError` instead of letting it surface later as an unrelated `RangeError`.
16
+ - A property or parameter typed as a plain function (a callback field, an interface method signature) is validated as `typeof value === 'function'` instead of making its whole containing object type `unsupported`.
17
+ - Template literal types (`` `${number}px` ``, `` `user_${string}` ``, `` `${boolean}-flag` ``, etc.) are converted to an anchored regular expression at compile time and validated against it.
18
+ - `yield` inside a generator function is validated against its declared/inferred yielded type; `AsyncGenerator`/`Iterable`/`IterableIterator` are supported the same way. (`yield*` delegation is left unprotected — validating a whole delegated iterable up front is a different, larger problem.)
19
+ - A required class field (no `?`) can no longer be removed with `delete` or have its guard replaced via `Object.defineProperty`, bypassing validation entirely. The lock is deferred to the most-derived class's own constructor (checked via `new.target`), so a subclass that legitimately redeclares the same field is unaffected.
20
+ - Compound assignment on a guarded variable (`+=`, `-=`, `*=`, `/=`, `%=`, `**=`, shifts, bitwise) is now rewritten into a validated assignment instead of running unguarded. `&&=`, `||=` and `??=` are left exactly as before — rewriting them would change short-circuit evaluation — and keep warning as unsupported.
21
+ - Every coverage-affecting diagnostic computed during analysis (not just the ones a transform happens to touch) now reaches the build's coverage report and `compiler.onUnsupported: "error"`'s failure message, which now names the offending contract and reason instead of only a count.
22
+ - `diagnostics.reportFile` actually writes the coverage report to disk, as JSON, creating parent directories as needed; a write failure fails the build instead of being silently swallowed.
23
+ - `strictNullChecks` (directly, or via `strict: true`) is now a hard requirement, checked before any analysis runs, per the original spec — a project without it now fails fast with a clear diagnostic instead of building successfully on a checker view that is already too lossy to protect against.
24
+ - A project configuring `paths` aliases in `tsconfig.json` now fails the build with a clear diagnostic, in both the bundled and the unbundled output: TypeScript never rewrites aliases in its own emitted JavaScript, and `@vercel/ncc` does not read tsconfig `paths` either, so either path previously reported success while producing a "Cannot find module" failure at runtime.
25
+ - The package's `exports` map now exposes `./package.json`, so `require.resolve('@ts-typed/compiler/package.json')` and similar version-probing patterns work.
26
+
27
+ ### Fixed
28
+
29
+ - A type assertion or cast used directly as an assignment target (`(x as T) = v`, `(x as T) += 1`, `(x as any)++`/`--`) produced invalid JavaScript (`Invalid left-hand side in assignment`) instead of being erased the way `tsc` itself erases a cast. Casting the *object* of a member assignment (`(a as T).b = v`) is unaffected and continues to validate `a` as a read.
30
+ - `compiler.enforcePrivate` (the default) broke construction of any class with a plain `private` field: the structural schema still required the field under its pre-`#private` name after the transformer had already converted it to a real `#private` accessor. The field is now correctly excluded from the structural schema instead of marking the whole class `unsupported`.
31
+ - A branded/tagged primitive type (`string & { readonly __brand: 'Id' }`, the standard TypeScript nominal-typing idiom) rejected every value, because the phantom `object` member of the intersection was validated against primitive values that can never carry it. It is now ignored when the value being checked is a primitive; an intersection applied to a real object value is unaffected and still enforces every member.
32
+ - A project compiling to native ESM (`module` resolving to an ES module kind) got a `require(...)` call injected into the generated ES module, crashing immediately with `ReferenceError: require is not defined`. The injected runtime reference is now an `import` declaration when the target module format is ESM, and unchanged (`require`) for CommonJS.
33
+ - A comparison against a guarded variable (`port >= MIN`, `x === y`, …) emitted a false "compound assignment" coverage warning, because every non-`=` binary operator was treated as an assignment attempt regardless of whether it actually was one.
34
+ - `compiler.onUnsupported: "error"` could fail a build without ever saying which contract caused it.
35
+
36
+ ### Fixed (`@ts-typed/nestjs`-relevant, surfaced through NestJS testing)
37
+
38
+ - See `@ts-typed/nestjs`'s own changelog for the HTTP exception filter fix (`StrictTypeError` from a return-value violation now maps to 500, not 400).
39
+
40
+ ### Known limits (new, in addition to the ones already listed below)
41
+
42
+ - Generic type parameters still have no concrete runtime contract inside a generic function's own body (`identity<User>(x)` validates nothing extra inside `identity`): the type is erased before any single call site's concrete argument is known to the instrumented body.
43
+ - `Map`/`Set` contents, `static` class fields, and reflective mutation of a validated array (`push`/`splice`/index assignment/`length`) are still unprotected.
44
+ - A destructuring binding (`const { age }: T = value`) still does not validate `value` against `T` before destructuring.
45
+ - A user-authored type predicate (`x is T`) or assertion function (`asserts x is T`) is trusted as-is; a predicate that lies is not caught.
46
+ - `readonly` on an interface or type-alias member (as opposed to a class field) is not enforced — the value is still writable through that property.
47
+ - Extra properties or `symbol`-keyed properties added directly to a class instance after construction are not rejected (property-level extras on a *nested* plain object already were, and remain, rejected by default).
48
+
7
49
  ## [0.0.1] - 2026-10-16
8
50
 
9
51
  Initial release.
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAwBxD,MAAM,WAAW,aAAa;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3D;AAED,wBAAsB,MAAM,CAC1B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,SAAS,CAAC,CAoBpB"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAwBxD,MAAM,WAAW,aAAa;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3D;AAED,wBAAsB,MAAM,CAC1B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,SAAS,CAAC,CAoBpB"}
package/dist/cli/cli.js CHANGED
@@ -128,12 +128,26 @@ async function runBuild(args) {
128
128
  `Build succeeded: ${report.outDir}${report.bundled ? ' (bundled)' : ''}`,
129
129
  (0, report_1.formatCoverageReport)(coverage, (0, node_path_1.resolve)(config.tsconfig, '..')),
130
130
  ].filter((line) => line.length > 0);
131
+ const reportFile = config.diagnostics.reportFile;
132
+ if (reportFile !== null) {
133
+ await writeDiagnosticsReport(reportFile, coverage);
134
+ stdout.push(`Diagnostics report written to ${reportFile}`);
135
+ }
131
136
  return { exitCode: EXIT_SUCCESS, stdout, stderr: [] };
132
137
  }
133
138
  catch (error) {
134
139
  return { exitCode: EXIT_FAILURE, stdout: [], stderr: [describeError(error)] };
135
140
  }
136
141
  }
142
+ async function writeDiagnosticsReport(filePath, coverage) {
143
+ try {
144
+ await (0, promises_1.mkdir)((0, node_path_1.dirname)(filePath), { recursive: true });
145
+ await (0, promises_1.writeFile)(filePath, `${JSON.stringify(coverage, null, 2)}\n`, 'utf8');
146
+ }
147
+ catch (error) {
148
+ throw new Error(`Could not write diagnostics report to ${filePath}: ${describeError(error)}`);
149
+ }
150
+ }
137
151
  function parseInitArgs(args) {
138
152
  let root = process.cwd();
139
153
  for (let index = 0; index < args.length; index += 1) {
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"analyze-project.d.ts","sourceRoot":"","sources":["../../../src/compiler/analysis/analyze-project.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EAEtB,MAAM,6BAA6B,CAAC;AAuBrC,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CA2F7E"}
1
+ {"version":3,"file":"analyze-project.d.ts","sourceRoot":"","sources":["../../../src/compiler/analysis/analyze-project.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EAEtB,MAAM,6BAA6B,CAAC;AAuBrC,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CA2G7E"}
@@ -14,15 +14,29 @@ function analyzeProject(context) {
14
14
  throw new Error(formatDiagnostic(typescript, configFile.error));
15
15
  }
16
16
  const parsedConfig = typescript.parseJsonConfigFileContent(configFile.config, typescript.sys, (0, node_path_1.dirname)(tsconfigPath), undefined, tsconfigPath);
17
+ const compilerOptions = {
18
+ ...parsedConfig.options,
19
+ ...context.compilerOptions,
20
+ };
21
+ // strictNullChecks is what lets a runtime contract tell `null`/`undefined`
22
+ // apart from every other value; without it the type information the
23
+ // transformer reads from the checker is already too lossy to protect
24
+ // against, so this is a hard requirement per the project spec rather than
25
+ // a per-contract coverage limit.
26
+ const effectiveStrictNullChecks = compilerOptions.strictNullChecks ?? compilerOptions.strict ?? false;
27
+ if (effectiveStrictNullChecks !== true) {
28
+ throw new Error(`ts-typed requires "strictNullChecks": true (directly, or via "strict": true) in ${tsconfigPath}. ` +
29
+ 'Without it, null and undefined cannot be reliably distinguished from other values when building runtime contracts.');
30
+ }
17
31
  const program = typescript.createProgram({
18
32
  rootNames: parsedConfig.fileNames,
19
- options: { ...parsedConfig.options, ...context.compilerOptions },
33
+ options: compilerOptions,
20
34
  projectReferences: parsedConfig.projectReferences,
21
35
  });
22
36
  const checker = program.getTypeChecker();
23
37
  const projectLoadMs = performance.now() - projectLoadStart;
24
38
  const typeAnalysisStart = performance.now();
25
- const resolver = new type_schema_resolver_1.TypeSchemaResolver(typescript, checker);
39
+ const resolver = new type_schema_resolver_1.TypeSchemaResolver(typescript, checker, context.enforcePrivate === true);
26
40
  const contracts = new Map();
27
41
  const coverage = [];
28
42
  const diagnostics = [];
@@ -260,8 +274,11 @@ function getUnsupportedMemberReason(typescript, node, enforcePrivate) {
260
274
  !(enforcePrivate && isOnlyPrivate)) {
261
275
  return 'Private, protected, and static members require class-specific instrumentation.';
262
276
  }
263
- if (typescript.canHaveDecorators(node) && (typescript.getDecorators(node)?.length ?? 0) > 0) {
264
- return 'Decorated members require framework-compatible instrumentation.';
277
+ // enforcePrivate rewrites a private field into a `#name` accessor pair, which
278
+ // drops the field's decorators (a decorator cannot target a `#` accessor).
279
+ // Keep such a member unsupported so its decorator is not silently lost.
280
+ if (isOnlyPrivate && (typescript.getDecorators(node)?.length ?? 0) > 0) {
281
+ return 'Decorated private members cannot keep their decorators under enforcePrivate.';
265
282
  }
266
283
  return undefined;
267
284
  }
@@ -1 +1 @@
1
- {"version":3,"file":"analyze-project.js","sourceRoot":"","sources":["../../../src/compiler/analysis/analyze-project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyze-project.js","sourceRoot":"","sources":["../../../src/compiler/analysis/analyze-project.ts"],"names":[],"mappings":"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"}
@@ -4,13 +4,14 @@ import type { SchemaResolution } from './schema-resolution.interface';
4
4
  export declare class TypeSchemaResolver {
5
5
  private readonly _typescript;
6
6
  private readonly _checker;
7
+ private readonly _enforcePrivate;
7
8
  private readonly _definitions;
8
9
  private readonly _definitionNames;
9
10
  private readonly _definitionResolutions;
10
11
  private readonly _definitionTypes;
11
12
  private readonly _resolvingDefinitions;
12
13
  private readonly _classSymbolsByDefinitionName;
13
- constructor(_typescript: typeof import('typescript'), _checker: ts.TypeChecker);
14
+ constructor(_typescript: typeof import('typescript'), _checker: ts.TypeChecker, _enforcePrivate?: boolean);
14
15
  resolve(type: ts.Type, node: ts.Node): SchemaResolution;
15
16
  getDefinitions(): Readonly<Record<string, Schema>>;
16
17
  /**
@@ -22,12 +23,54 @@ export declare class TypeSchemaResolver {
22
23
  getClassSymbol(definitionName: string): ts.Symbol | undefined;
23
24
  private _resolveType;
24
25
  private _resolveDirectType;
26
+ /**
27
+ * Open template literal types (`${number}px`, `user_${string}`) are leaves
28
+ * validated by a regex compiled from their texts and placeholders. Finite
29
+ * interpolations (`${'a' | 'b'}`) never reach here: TypeScript already
30
+ * expands them into a union of string literals.
31
+ */
32
+ private _resolveTemplateLiteral;
33
+ private _templateLiteralPattern;
34
+ private _placeholderPattern;
35
+ /**
36
+ * Heuristic: the built-in `Date` interface is declared in a TypeScript lib
37
+ * file, which carries `/// <reference no-default-lib="true"/>` and therefore
38
+ * `hasNoDefaultLib === true`. A user-declared class/interface named `Date`
39
+ * lives in an ordinary module and is not matched.
40
+ */
41
+ /**
42
+ * Resolves the type of an object property. A property whose type is purely a
43
+ * function (or such a function optionally widened with `undefined`/`null`, as
44
+ * in `onClick?: () => void`) is an opaque `function` leaf, so one callback field
45
+ * does not make the whole containing object unsupported. Any other shape goes
46
+ * through the general resolution unchanged.
47
+ */
48
+ private _resolvePropertyType;
49
+ private _isClassMethod;
50
+ /**
51
+ * Heuristic: a type is "purely a function" when it has call signatures, no
52
+ * construct signatures, and no own members at all. `getPropertiesOfType` does
53
+ * not include the members inherited from the global `Function` interface
54
+ * (`call`, `apply`, `bind`, `name`, ...), which are reached through the apparent
55
+ * type, so an empty property list means no user-declared extras. Index
56
+ * signatures are checked too, since they are also extra structure. Anything
57
+ * with extra members (`{ (): void; extra: string }`) stays unsupported.
58
+ */
59
+ private _isPureFunction;
60
+ private _isGlobalDate;
25
61
  private _resolveDefinitionOrCompound;
26
62
  private _resolveComposite;
27
63
  private _expandIntersectionObjectReference;
28
64
  private _resolveTuple;
29
65
  private _resolveArray;
30
66
  private _resolveObject;
67
+ /**
68
+ * Mirrors the transformer's `isOnlyPrivateField` rule: with enforcePrivate,
69
+ * a plain `private` PropertyDeclaration with an identifier name (not
70
+ * protected, not static) is converted to a real `#private` field. Parameter
71
+ * properties are not converted and remain part of the schema.
72
+ */
73
+ private _isConvertedToHashPrivate;
31
74
  private _getDefinitionName;
32
75
  private _hasDefiniteAssignmentAssertion;
33
76
  private _getClassSymbol;
@@ -1 +1 @@
1
- {"version":3,"file":"type-schema-resolver.d.ts","sourceRoot":"","sources":["../../../src/compiler/analysis/type-schema-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAwB,MAAM,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAWtE,qBAAa,kBAAkB;IAS3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAT3B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAC1D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;IAC/D,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAwC;IAC/E,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;IAC/D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAsB;IAC5D,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAgC;gBAG3D,WAAW,EAAE,cAAc,YAAY,CAAC,EACxC,QAAQ,EAAE,EAAE,CAAC,WAAW;IAGpC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,gBAAgB;IAIvD,cAAc,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAIzD;;;;;OAKG;IACI,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,EAAE,CAAC,MAAM,GAAG,SAAS;IAIpE,OAAO,CAAC,YAAY;IA0CpB,OAAO,CAAC,kBAAkB;IA8D1B,OAAO,CAAC,4BAA4B;IA6CpC,OAAO,CAAC,iBAAiB;IA2BzB,OAAO,CAAC,kCAAkC;IAQ1C,OAAO,CAAC,aAAa;IAoCrB,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,cAAc;IAwEtB,OAAO,CAAC,kBAAkB;IAgC1B,OAAO,CAAC,+BAA+B;IAgBvC,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,YAAY;CAGrB"}
1
+ {"version":3,"file":"type-schema-resolver.d.ts","sourceRoot":"","sources":["../../../src/compiler/analysis/type-schema-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAwB,MAAM,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAetE,qBAAa,kBAAkB;IAS3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAVlC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAC1D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;IAC/D,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAwC;IAC/E,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;IAC/D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAsB;IAC5D,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAgC;gBAG3D,WAAW,EAAE,cAAc,YAAY,CAAC,EACxC,QAAQ,EAAE,EAAE,CAAC,WAAW,EACxB,eAAe,GAAE,OAAe;IAG5C,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,gBAAgB;IAIvD,cAAc,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAIzD;;;;;OAKG;IACI,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,EAAE,CAAC,MAAM,GAAG,SAAS;IAIpE,OAAO,CAAC,YAAY;IA0CpB,OAAO,CAAC,kBAAkB;IAsE1B;;;;;OAKG;IACH,OAAO,CAAC,uBAAuB;IAU/B,OAAO,CAAC,uBAAuB;IAoB/B,OAAO,CAAC,mBAAmB;IA8B3B;;;;;OAKG;IACH;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IA0B5B,OAAO,CAAC,cAAc;IAOtB;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,4BAA4B;IA6CpC,OAAO,CAAC,iBAAiB;IA2BzB,OAAO,CAAC,kCAAkC;IAQ1C,OAAO,CAAC,aAAa;IAoCrB,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,cAAc;IAuFtB;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;IAgBjC,OAAO,CAAC,kBAAkB;IAgC1B,OAAO,CAAC,+BAA+B;IAgBvC,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,YAAY;CAGrB"}
@@ -2,18 +2,23 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TypeSchemaResolver = void 0;
4
4
  const ALIAS_LIMIT_REASON = 'The value is validated at the typed boundary, but mutations through external aliases can escape.';
5
+ function escapeRegExp(text) {
6
+ return text.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
7
+ }
5
8
  class TypeSchemaResolver {
6
9
  _typescript;
7
10
  _checker;
11
+ _enforcePrivate;
8
12
  _definitions = new Map();
9
13
  _definitionNames = new Map();
10
14
  _definitionResolutions = new Map();
11
15
  _definitionTypes = new Map();
12
16
  _resolvingDefinitions = new Set();
13
17
  _classSymbolsByDefinitionName = new Map();
14
- constructor(_typescript, _checker) {
18
+ constructor(_typescript, _checker, _enforcePrivate = false) {
15
19
  this._typescript = _typescript;
16
20
  this._checker = _checker;
21
+ this._enforcePrivate = _enforcePrivate;
17
22
  }
18
23
  resolve(type, node) {
19
24
  return this._resolveType(type, node, true);
@@ -112,8 +117,142 @@ class TypeSchemaResolver {
112
117
  if ((flags & typeFlags.NonPrimitive) !== 0) {
113
118
  return { status: 'protected', schema: { kind: 'primitive', name: 'object' } };
114
119
  }
120
+ if (this._isGlobalDate(type)) {
121
+ // Date is an opaque leaf: its methods are never enumerated (they are
122
+ // callable and would otherwise poison the whole object contract).
123
+ return { status: 'protected', schema: { kind: 'date' } };
124
+ }
125
+ if ((flags & typeFlags.TemplateLiteral) !== 0) {
126
+ return this._resolveTemplateLiteral(type);
127
+ }
128
+ return undefined;
129
+ }
130
+ /**
131
+ * Open template literal types (`${number}px`, `user_${string}`) are leaves
132
+ * validated by a regex compiled from their texts and placeholders. Finite
133
+ * interpolations (`${'a' | 'b'}`) never reach here: TypeScript already
134
+ * expands them into a union of string literals.
135
+ */
136
+ _resolveTemplateLiteral(type) {
137
+ const pattern = this._templateLiteralPattern(type);
138
+ if (pattern === undefined) {
139
+ return this._unsupported(`Template literal type ${this._checker.typeToString(type)} has a placeholder with no runtime pattern.`);
140
+ }
141
+ return { status: 'protected', schema: { kind: 'templateLiteral', pattern } };
142
+ }
143
+ _templateLiteralPattern(type) {
144
+ const placeholderPatterns = [];
145
+ for (const placeholder of type.types) {
146
+ const placeholderPattern = this._placeholderPattern(placeholder);
147
+ if (placeholderPattern === undefined) {
148
+ return undefined;
149
+ }
150
+ placeholderPatterns.push(placeholderPattern);
151
+ }
152
+ let pattern = '^';
153
+ type.texts.forEach((text, index) => {
154
+ pattern += escapeRegExp(text);
155
+ if (index < placeholderPatterns.length) {
156
+ pattern += placeholderPatterns[index];
157
+ }
158
+ });
159
+ return `${pattern}$`;
160
+ }
161
+ _placeholderPattern(placeholder) {
162
+ const typeFlags = this._typescript.TypeFlags;
163
+ if ((placeholder.flags & typeFlags.String) !== 0) {
164
+ // Any string, including the empty one. `[\s\S]` also matches newlines.
165
+ return '[\\s\\S]*';
166
+ }
167
+ if ((placeholder.flags & typeFlags.Number) !== 0) {
168
+ // Integers and plain decimals only; exponent notation, `Infinity` and
169
+ // `NaN` are not covered (documented limitation).
170
+ return '-?\\d+(?:\\.\\d+)?';
171
+ }
172
+ if ((placeholder.flags & typeFlags.BigInt) !== 0) {
173
+ return '-?\\d+';
174
+ }
175
+ if ((placeholder.flags & typeFlags.Boolean) !== 0) {
176
+ return '(?:true|false)';
177
+ }
178
+ if (placeholder.isStringLiteral() || placeholder.isNumberLiteral()) {
179
+ return escapeRegExp(String(placeholder.value));
180
+ }
181
+ if (placeholder.isUnion()) {
182
+ const alternatives = placeholder.types.map((member) => this._placeholderPattern(member));
183
+ if (alternatives.some((alternative) => alternative === undefined)) {
184
+ return undefined;
185
+ }
186
+ return `(?:${alternatives.join('|')})`;
187
+ }
115
188
  return undefined;
116
189
  }
190
+ /**
191
+ * Heuristic: the built-in `Date` interface is declared in a TypeScript lib
192
+ * file, which carries `/// <reference no-default-lib="true"/>` and therefore
193
+ * `hasNoDefaultLib === true`. A user-declared class/interface named `Date`
194
+ * lives in an ordinary module and is not matched.
195
+ */
196
+ /**
197
+ * Resolves the type of an object property. A property whose type is purely a
198
+ * function (or such a function optionally widened with `undefined`/`null`, as
199
+ * in `onClick?: () => void`) is an opaque `function` leaf, so one callback field
200
+ * does not make the whole containing object unsupported. Any other shape goes
201
+ * through the general resolution unchanged.
202
+ */
203
+ _resolvePropertyType(type, declaration) {
204
+ const members = type.isUnion() ? type.types : [type];
205
+ const functionMembers = members.filter((member) => this._isPureFunction(member));
206
+ if (functionMembers.length === 0) {
207
+ return this._resolveType(type, declaration, true);
208
+ }
209
+ const typeFlags = this._typescript.TypeFlags;
210
+ const schemas = [];
211
+ for (const member of members) {
212
+ if (this._isPureFunction(member)) {
213
+ schemas.push({ kind: 'function' });
214
+ }
215
+ else if ((member.flags & typeFlags.Undefined) !== 0) {
216
+ schemas.push({ kind: 'literal', value: undefined });
217
+ }
218
+ else if ((member.flags & typeFlags.Null) !== 0) {
219
+ schemas.push({ kind: 'literal', value: null });
220
+ }
221
+ else {
222
+ // Mixed with a non-function member: not a pure function leaf.
223
+ return this._resolveType(type, declaration, true);
224
+ }
225
+ }
226
+ return {
227
+ status: 'protected',
228
+ schema: schemas.length === 1 ? schemas[0] : { kind: 'union', schemas },
229
+ };
230
+ }
231
+ _isClassMethod(property) {
232
+ return (property.declarations ?? []).some((declaration) => this._typescript.isMethodDeclaration(declaration) && this._typescript.isClassLike(declaration.parent));
233
+ }
234
+ /**
235
+ * Heuristic: a type is "purely a function" when it has call signatures, no
236
+ * construct signatures, and no own members at all. `getPropertiesOfType` does
237
+ * not include the members inherited from the global `Function` interface
238
+ * (`call`, `apply`, `bind`, `name`, ...), which are reached through the apparent
239
+ * type, so an empty property list means no user-declared extras. Index
240
+ * signatures are checked too, since they are also extra structure. Anything
241
+ * with extra members (`{ (): void; extra: string }`) stays unsupported.
242
+ */
243
+ _isPureFunction(type) {
244
+ return (type.getCallSignatures().length > 0 &&
245
+ type.getConstructSignatures().length === 0 &&
246
+ this._checker.getPropertiesOfType(type).length === 0 &&
247
+ this._checker.getIndexInfosOfType(type).length === 0);
248
+ }
249
+ _isGlobalDate(type) {
250
+ const symbol = type.getSymbol();
251
+ if (symbol === undefined || symbol.getName() !== 'Date') {
252
+ return false;
253
+ }
254
+ return (symbol.getDeclarations() ?? []).some((declaration) => declaration.getSourceFile().hasNoDefaultLib);
255
+ }
117
256
  _resolveDefinitionOrCompound(type, node, canCreateDefinition, resolveCompound) {
118
257
  const definitionName = canCreateDefinition ? this._getDefinitionName(type, node) : undefined;
119
258
  if (definitionName === undefined) {
@@ -236,9 +375,22 @@ class TypeSchemaResolver {
236
375
  if (propertyName.startsWith('#')) {
237
376
  return this._unsupported('True #private class fields have no reflective runtime access and cannot be represented by the runtime schema model.');
238
377
  }
378
+ if (this._isConvertedToHashPrivate(property)) {
379
+ // With enforcePrivate, the transformer rewrites this field into a real
380
+ // `#private` field, so it has no reflective property at runtime and
381
+ // must not be required by the structural schema. Only this member is
382
+ // omitted; the rest of the class stays validated.
383
+ continue;
384
+ }
385
+ if (this._isClassMethod(property)) {
386
+ // Class methods keep the established contract: a class with a method is
387
+ // not represented structurally. Only non-method members (fields holding
388
+ // callbacks, interface method signatures) become function leaves.
389
+ return this._unsupported(`Property ${propertyName} is unsupported: Callable and constructable contracts are not represented by object schemas.`);
390
+ }
239
391
  const declaration = property.valueDeclaration ?? property.declarations?.[0] ?? node;
240
392
  const propertyType = this._checker.getTypeOfSymbolAtLocation(property, declaration);
241
- const propertyResolution = this._resolveType(propertyType, declaration, true);
393
+ const propertyResolution = this._resolvePropertyType(propertyType, declaration);
242
394
  if (propertyResolution.schema === undefined) {
243
395
  return this._unsupported(`Property ${propertyName} is unsupported: ${propertyResolution.reason ?? 'unknown type limit'}`);
244
396
  }
@@ -276,6 +428,27 @@ class TypeSchemaResolver {
276
428
  : ALIAS_LIMIT_REASON,
277
429
  };
278
430
  }
431
+ /**
432
+ * Mirrors the transformer's `isOnlyPrivateField` rule: with enforcePrivate,
433
+ * a plain `private` PropertyDeclaration with an identifier name (not
434
+ * protected, not static) is converted to a real `#private` field. Parameter
435
+ * properties are not converted and remain part of the schema.
436
+ */
437
+ _isConvertedToHashPrivate(property) {
438
+ if (!this._enforcePrivate) {
439
+ return false;
440
+ }
441
+ const declaration = property.valueDeclaration ?? property.declarations?.[0];
442
+ if (declaration === undefined || !this._typescript.isPropertyDeclaration(declaration)) {
443
+ return false;
444
+ }
445
+ if (!this._typescript.isIdentifier(declaration.name)) {
446
+ return false;
447
+ }
448
+ const flags = this._typescript.getCombinedModifierFlags(declaration);
449
+ return (flags & this._typescript.ModifierFlags.Private) !== 0 &&
450
+ (flags & (this._typescript.ModifierFlags.Protected | this._typescript.ModifierFlags.Static)) === 0;
451
+ }
279
452
  _getDefinitionName(type, node) {
280
453
  const existingName = this._definitionNames.get(type);
281
454
  if (existingName !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"type-schema-resolver.js","sourceRoot":"","sources":["../../../src/compiler/analysis/type-schema-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-schema-resolver.js","sourceRoot":"","sources":["../../../src/compiler/analysis/type-schema-resolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-project.d.ts","sourceRoot":"","sources":["../../../src/compiler/build/build-project.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAMlD,OAAO,KAAK,EAAoB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAQ9E,wBAAsB,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAuL9E"}
1
+ {"version":3,"file":"build-project.d.ts","sourceRoot":"","sources":["../../../src/compiler/build/build-project.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAMlD,OAAO,KAAK,EAAoB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAe9E,wBAAsB,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAkM9E"}