@angular/compiler-cli 20.0.0 → 20.1.0-next.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 (68) hide show
  1. package/bundles/{chunk-M3WWDK6S.js → chunk-CZ5FD3CS.js} +4 -15
  2. package/bundles/{chunk-M3WWDK6S.js.map → chunk-CZ5FD3CS.js.map} +1 -1
  3. package/bundles/{chunk-T36IFLGD.js → chunk-FPJJEIPU.js} +2 -2
  4. package/bundles/{chunk-A7TLTAA4.js → chunk-FYR5CLCG.js} +5 -5
  5. package/bundles/{chunk-A7TLTAA4.js.map → chunk-FYR5CLCG.js.map} +1 -1
  6. package/bundles/{chunk-4OIPE63R.js → chunk-N3B6BMGR.js} +30 -30
  7. package/bundles/{chunk-4OIPE63R.js.map → chunk-N3B6BMGR.js.map} +1 -1
  8. package/bundles/{chunk-5PLBB4J5.js → chunk-OVACIG5Q.js} +3 -3
  9. package/bundles/{chunk-5PLBB4J5.js.map → chunk-OVACIG5Q.js.map} +1 -1
  10. package/bundles/{chunk-YZVRRB6E.js → chunk-PG2VUSMN.js} +161 -324
  11. package/bundles/chunk-PG2VUSMN.js.map +6 -0
  12. package/bundles/{chunk-TSBVO2TY.js → chunk-UMD7AW7S.js} +1752 -885
  13. package/bundles/chunk-UMD7AW7S.js.map +6 -0
  14. package/bundles/index.js +19 -21
  15. package/bundles/index.js.map +2 -2
  16. package/bundles/linker/babel/index.js +9 -9
  17. package/bundles/linker/babel/index.js.map +1 -1
  18. package/bundles/linker/index.js +2 -2
  19. package/bundles/private/migrations.js +2 -3
  20. package/bundles/private/tooling.js +4 -5
  21. package/bundles/src/bin/ng_xi18n.js +8 -9
  22. package/bundles/src/bin/ng_xi18n.js.map +2 -2
  23. package/bundles/src/bin/ngc.js +6 -7
  24. package/bundles/src/bin/ngc.js.map +2 -2
  25. package/index.d.ts +1 -1
  26. package/linker/src/file_linker/partial_linkers/util.d.ts +1 -1
  27. package/package.json +3 -10
  28. package/src/ngtsc/annotations/component/src/handler.d.ts +5 -2
  29. package/src/ngtsc/annotations/component/src/metadata.d.ts +7 -0
  30. package/src/ngtsc/annotations/component/src/selectorless.d.ts +16 -0
  31. package/src/ngtsc/annotations/directive/src/handler.d.ts +2 -1
  32. package/src/ngtsc/annotations/directive/src/shared.d.ts +2 -2
  33. package/src/ngtsc/annotations/ng_module/src/handler.d.ts +2 -1
  34. package/src/ngtsc/annotations/src/pipe.d.ts +1 -1
  35. package/src/ngtsc/core/api/src/public_options.d.ts +13 -0
  36. package/src/ngtsc/core/src/compiler.d.ts +1 -0
  37. package/src/ngtsc/diagnostics/src/error_code.d.ts +28 -0
  38. package/src/ngtsc/docs/src/entities.d.ts +1 -1
  39. package/src/ngtsc/indexer/src/api.d.ts +20 -8
  40. package/src/ngtsc/metadata/src/api.d.ts +9 -3
  41. package/src/ngtsc/scope/index.d.ts +2 -1
  42. package/src/ngtsc/scope/src/api.d.ts +12 -2
  43. package/src/ngtsc/scope/src/selectorless_scope.d.ts +25 -0
  44. package/src/ngtsc/scope/src/typecheck.d.ts +5 -3
  45. package/src/ngtsc/transform/index.d.ts +1 -0
  46. package/src/ngtsc/transform/src/api.d.ts +0 -2
  47. package/src/ngtsc/transform/src/compilation.d.ts +2 -1
  48. package/src/ngtsc/transform/src/implicit_signal_debug_name_transform.d.ts +74 -0
  49. package/src/ngtsc/transform/src/transform.d.ts +1 -1
  50. package/src/ngtsc/translator/src/translator.d.ts +0 -3
  51. package/src/ngtsc/typecheck/api/api.d.ts +3 -0
  52. package/src/ngtsc/typecheck/api/checker.d.ts +24 -6
  53. package/src/ngtsc/typecheck/api/scope.d.ts +17 -1
  54. package/src/ngtsc/typecheck/api/symbols.d.ts +39 -3
  55. package/src/ngtsc/typecheck/src/checker.d.ts +12 -4
  56. package/src/ngtsc/typecheck/src/completion.d.ts +7 -2
  57. package/src/ngtsc/typecheck/src/oob.d.ts +14 -3
  58. package/src/ngtsc/typecheck/src/template_symbol_builder.d.ts +6 -2
  59. package/src/ngtsc/typecheck/src/type_check_block.d.ts +1 -1
  60. package/bundles/chunk-TSBVO2TY.js.map +0 -6
  61. package/bundles/chunk-WUCT7QTW.js +0 -216
  62. package/bundles/chunk-WUCT7QTW.js.map +0 -6
  63. package/bundles/chunk-YZVRRB6E.js.map +0 -6
  64. package/bundles/private/bazel.js +0 -19
  65. package/bundles/private/bazel.js.map +0 -6
  66. package/private/babel.d.ts +0 -28
  67. package/private/bazel.d.ts +0 -12
  68. /package/bundles/{chunk-T36IFLGD.js.map → chunk-FPJJEIPU.js.map} +0 -0
@@ -5,7 +5,7 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
- import { BindingPipe, PropertyRead, PropertyWrite, TmplAstBoundAttribute, TmplAstBoundEvent, TmplAstComponent, TmplAstDirective, TmplAstElement, TmplAstForLoopBlock, TmplAstForLoopBlockEmpty, TmplAstHoverDeferredTrigger, TmplAstIfBlockBranch, TmplAstInteractionDeferredTrigger, TmplAstLetDeclaration, TmplAstReference, TmplAstSwitchBlockCase, TmplAstTemplate, TmplAstTextAttribute, TmplAstVariable, TmplAstViewportDeferredTrigger } from '@angular/compiler';
8
+ import { BindingPipe, PropertyRead, AST, TmplAstBoundAttribute, TmplAstBoundEvent, TmplAstComponent, TmplAstDirective, TmplAstElement, TmplAstForLoopBlock, TmplAstForLoopBlockEmpty, TmplAstHoverDeferredTrigger, TmplAstIfBlockBranch, TmplAstInteractionDeferredTrigger, TmplAstLetDeclaration, TmplAstReference, TmplAstSwitchBlockCase, TmplAstTemplate, TmplAstTextAttribute, TmplAstVariable, TmplAstViewportDeferredTrigger } from '@angular/compiler';
9
9
  import ts from 'typescript';
10
10
  import { ClassDeclaration } from '../../reflection';
11
11
  import { TemplateDiagnostic, TypeCheckId } from '../api';
@@ -88,7 +88,7 @@ export interface OutOfBandDiagnosticRecorder {
88
88
  */
89
89
  controlFlowPreventingContentProjection(id: TypeCheckId, category: ts.DiagnosticCategory, projectionNode: TmplAstElement | TmplAstTemplate, componentName: string, slotSelector: string, controlFlowNode: TmplAstIfBlockBranch | TmplAstSwitchBlockCase | TmplAstForLoopBlock | TmplAstForLoopBlockEmpty, preservesWhitespaces: boolean): void;
90
90
  /** Reports cases where users are writing to `@let` declarations. */
91
- illegalWriteToLetDeclaration(id: TypeCheckId, node: PropertyWrite, target: TmplAstLetDeclaration): void;
91
+ illegalWriteToLetDeclaration(id: TypeCheckId, node: AST, target: TmplAstLetDeclaration): void;
92
92
  /** Reports cases where users are accessing an `@let` before it is defined.. */
93
93
  letUsedBeforeDefinition(id: TypeCheckId, node: PropertyRead, target: TmplAstLetDeclaration): void;
94
94
  /**
@@ -119,6 +119,15 @@ export interface OutOfBandDiagnosticRecorder {
119
119
  * @param node Node declaring the binding.
120
120
  */
121
121
  unclaimedDirectiveBinding(id: TypeCheckId, directive: TmplAstDirective, node: TmplAstBoundAttribute | TmplAstTextAttribute | TmplAstBoundEvent): void;
122
+ /**
123
+ * Reports that an implicit deferred trigger is set on a block that does not have a placeholder.
124
+ */
125
+ deferImplicitTriggerMissingPlaceholder(id: TypeCheckId, trigger: TmplAstHoverDeferredTrigger | TmplAstInteractionDeferredTrigger | TmplAstViewportDeferredTrigger): void;
126
+ /**
127
+ * Reports that an implicit deferred trigger is set on a block whose placeholder is not set up
128
+ * correctly (e.g. more than one root node).
129
+ */
130
+ deferImplicitTriggerInvalidPlaceholder(id: TypeCheckId, trigger: TmplAstHoverDeferredTrigger | TmplAstInteractionDeferredTrigger | TmplAstViewportDeferredTrigger): void;
122
131
  }
123
132
  export declare class OutOfBandDiagnosticRecorderImpl implements OutOfBandDiagnosticRecorder {
124
133
  private resolver;
@@ -143,10 +152,12 @@ export declare class OutOfBandDiagnosticRecorderImpl implements OutOfBandDiagnos
143
152
  illegalForLoopTrackAccess(id: TypeCheckId, block: TmplAstForLoopBlock, access: PropertyRead): void;
144
153
  inaccessibleDeferredTriggerElement(id: TypeCheckId, trigger: TmplAstHoverDeferredTrigger | TmplAstInteractionDeferredTrigger | TmplAstViewportDeferredTrigger): void;
145
154
  controlFlowPreventingContentProjection(id: TypeCheckId, category: ts.DiagnosticCategory, projectionNode: TmplAstElement | TmplAstTemplate, componentName: string, slotSelector: string, controlFlowNode: TmplAstIfBlockBranch | TmplAstSwitchBlockCase | TmplAstForLoopBlock | TmplAstForLoopBlockEmpty, preservesWhitespaces: boolean): void;
146
- illegalWriteToLetDeclaration(id: TypeCheckId, node: PropertyWrite, target: TmplAstLetDeclaration): void;
155
+ illegalWriteToLetDeclaration(id: TypeCheckId, node: AST, target: TmplAstLetDeclaration): void;
147
156
  letUsedBeforeDefinition(id: TypeCheckId, node: PropertyRead, target: TmplAstLetDeclaration): void;
148
157
  conflictingDeclaration(id: TypeCheckId, decl: TmplAstLetDeclaration): void;
149
158
  missingNamedTemplateDependency(id: TypeCheckId, node: TmplAstComponent | TmplAstDirective): void;
150
159
  incorrectTemplateDependencyType(id: TypeCheckId, node: TmplAstComponent | TmplAstDirective): void;
151
160
  unclaimedDirectiveBinding(id: TypeCheckId, directive: TmplAstDirective, node: TmplAstBoundAttribute | TmplAstTextAttribute | TmplAstBoundEvent): void;
161
+ deferImplicitTriggerMissingPlaceholder(id: TypeCheckId, trigger: TmplAstHoverDeferredTrigger | TmplAstInteractionDeferredTrigger | TmplAstViewportDeferredTrigger): void;
162
+ deferImplicitTriggerInvalidPlaceholder(id: TypeCheckId, trigger: TmplAstHoverDeferredTrigger | TmplAstInteractionDeferredTrigger | TmplAstViewportDeferredTrigger): void;
152
163
  }
@@ -5,11 +5,11 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
- import { AST, TmplAstElement, TmplAstLetDeclaration, TmplAstNode, TmplAstReference, TmplAstTemplate, TmplAstVariable } from '@angular/compiler';
8
+ import { AST, TmplAstComponent, TmplAstDirective, TmplAstElement, TmplAstLetDeclaration, TmplAstNode, TmplAstReference, TmplAstTemplate, TmplAstVariable } from '@angular/compiler';
9
9
  import ts from 'typescript';
10
10
  import { AbsoluteFsPath } from '../../file_system';
11
11
  import { ComponentScopeReader } from '../../scope';
12
- import { ElementSymbol, LetDeclarationSymbol, ReferenceSymbol, Symbol, TemplateSymbol, VariableSymbol } from '../api';
12
+ import { ElementSymbol, LetDeclarationSymbol, ReferenceSymbol, SelectorlessComponentSymbol, SelectorlessDirectiveSymbol, Symbol, TemplateSymbol, VariableSymbol } from '../api';
13
13
  import { TypeCheckData } from './context';
14
14
  /**
15
15
  * Generates and caches `Symbol`s for various template structures for a given component.
@@ -28,9 +28,13 @@ export declare class SymbolBuilder {
28
28
  constructor(tcbPath: AbsoluteFsPath, tcbIsShim: boolean, typeCheckBlock: ts.Node, typeCheckData: TypeCheckData, componentScopeReader: ComponentScopeReader, getTypeChecker: () => ts.TypeChecker);
29
29
  getSymbol(node: TmplAstTemplate | TmplAstElement): TemplateSymbol | ElementSymbol | null;
30
30
  getSymbol(node: TmplAstReference | TmplAstVariable | TmplAstLetDeclaration): ReferenceSymbol | VariableSymbol | LetDeclarationSymbol | null;
31
+ getSymbol(node: TmplAstComponent): SelectorlessComponentSymbol | null;
32
+ getSymbol(node: TmplAstDirective): SelectorlessDirectiveSymbol | null;
31
33
  getSymbol(node: AST | TmplAstNode): Symbol | null;
32
34
  private getSymbolOfAstTemplate;
33
35
  private getSymbolOfElement;
36
+ private getSymbolOfSelectorlessComponent;
37
+ private getSymbolOfSelectorlessDirective;
34
38
  private getDirectivesOfNode;
35
39
  private addHostDirectiveSymbols;
36
40
  private getDirectiveMeta;
@@ -301,7 +301,7 @@ declare class Scope {
301
301
  private appendComponentNode;
302
302
  private appendDeferredBlock;
303
303
  private appendDeferredTriggers;
304
- private appendReferenceBasedDeferredTrigger;
304
+ private validateReferenceBasedDeferredTrigger;
305
305
  /** Reports a diagnostic if there are any `@let` declarations that conflict with a node. */
306
306
  private static checkConflictingLet;
307
307
  }