angular/packages/compiler-cli
Matthieu Riegler 8bc31a515f feat(core): Allow other expression for exhaustive typechecking
When the switched expression is nested within a union, exhaustive typechecking needs to know which expression to check.
This change adds the possibility of specifying the expression to check:

```
@Component({
  selector: 'app-root',
  imports: [],
  template: `
    @switch (state.mode) {
      @case ('show') { {{ state.menu }}; }
      @case ('hide') {}
      @default never(state);
    }
  `,
  changeDetection: ChangeDetectionStrategy.OnPush,
})
export class App {
  state!: { mode: 'hide' } | { mode: 'show'; menu: number };;
}
```

fixes #67406
2026-03-24 14:42:28 -07:00
..
linker fix(compiler): ensure generated code compiles 2026-03-13 11:13:03 -06:00
private refactor(compiler-cli): decouple host element creation logic from TypeScript 2026-03-23 11:16:39 -07:00
src feat(core): Allow other expression for exhaustive typechecking 2026-03-24 14:42:28 -07:00
test refactor(compiler): remove fullTemplateTypeCheck compiler option. 2026-03-23 11:33:15 -07:00
BUILD.bazel refactor(compiler-cli): Export hybrid analysis from bin 2026-03-10 11:41:50 -07:00
esbuild.config.js build: use esbuild from aspect rules (#62568) 2025-07-10 13:45:15 -07:00
index.ts refactor(compiler-cli): Export hybrid_analysis symbols 2026-03-10 10:18:36 -07:00
package.json build: update minimum supported Node.js versions 2026-02-25 07:57:18 -08:00
tsconfig-test.json build: prepare for compiler-cli to be using ts_project (#61181) 2025-05-09 15:59:46 +00:00
tsconfig.json build: prepare for compiler-cli to be using ts_project (#61181) 2025-05-09 15:59:46 +00:00