@angular/compiler-cli 18.0.0-next.0 → 18.0.0-next.1
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.
- package/bundles/{chunk-SQY7XLGB.js → chunk-ALDR4XSX.js} +1107 -57
- package/bundles/chunk-ALDR4XSX.js.map +6 -0
- package/bundles/{chunk-4A7ZWBEL.js → chunk-AWB4ZG2D.js} +24 -24
- package/bundles/chunk-AWB4ZG2D.js.map +6 -0
- package/bundles/{chunk-64VF23SF.js → chunk-B454JZVO.js} +2 -2
- package/bundles/{chunk-NB6ZWAGP.js → chunk-C4L7A7U3.js} +16 -16
- package/bundles/chunk-C4L7A7U3.js.map +6 -0
- package/bundles/{chunk-6X7GQ6BQ.js → chunk-GGJA4IFT.js} +475 -197
- package/bundles/chunk-GGJA4IFT.js.map +6 -0
- package/bundles/{chunk-A46CQFUG.js → chunk-OHOBDHII.js} +174 -217
- package/bundles/chunk-OHOBDHII.js.map +6 -0
- package/bundles/index.js +5 -5
- package/bundles/linker/babel/index.js +2 -2
- package/bundles/linker/index.js +2 -2
- package/bundles/private/migrations.js +2 -2
- package/bundles/private/tooling.js +3 -3
- package/bundles/src/bin/ng_xi18n.js +4 -4
- package/bundles/src/bin/ngc.js +4 -4
- package/bundles_metadata.json +1 -1
- package/linker/src/file_linker/partial_linkers/util.d.ts +1 -1
- package/linker/src/file_linker/translator.d.ts +2 -2
- package/linker/src/linker_import_generator.d.ts +5 -5
- package/package.json +3 -3
- package/src/ngtsc/core/src/core_version.d.ts +11 -0
- package/src/ngtsc/imports/index.d.ts +1 -1
- package/src/ngtsc/imports/src/core.d.ts +0 -9
- package/src/ngtsc/imports/src/patch_alias_reference_resolution.d.ts +3 -1
- package/src/ngtsc/transform/index.d.ts +0 -1
- package/src/ngtsc/transform/src/declaration.d.ts +1 -1
- package/src/ngtsc/translator/index.d.ts +2 -2
- package/src/ngtsc/translator/src/api/import_generator.d.ts +22 -10
- package/src/ngtsc/translator/src/import_manager/check_unique_identifier_name.d.ts +13 -0
- package/src/ngtsc/translator/src/import_manager/import_manager.d.ts +94 -0
- package/src/ngtsc/translator/src/import_manager/import_typescript_transform.d.ts +17 -0
- package/src/ngtsc/translator/src/import_manager/reuse_generated_imports.d.ts +32 -0
- package/src/ngtsc/translator/src/import_manager/reuse_source_file_imports.d.ts +38 -0
- package/src/ngtsc/translator/src/translator.d.ts +3 -2
- package/src/ngtsc/translator/src/type_translator.d.ts +1 -1
- package/src/ngtsc/translator/src/typescript_translator.d.ts +2 -2
- package/src/ngtsc/typecheck/src/reference_emit_environment.d.ts +1 -1
- package/src/ngtsc/typecheck/src/ts_util.d.ts +0 -2
- package/src/transformers/jit_transforms/initializer_api_transforms/transform_api.d.ts +1 -1
- package/bundles/chunk-4A7ZWBEL.js.map +0 -6
- package/bundles/chunk-6X7GQ6BQ.js.map +0 -6
- package/bundles/chunk-A46CQFUG.js.map +0 -6
- package/bundles/chunk-NB6ZWAGP.js.map +0 -6
- package/bundles/chunk-SQY7XLGB.js.map +0 -6
- package/src/ngtsc/transform/src/utils.d.ts +0 -15
- package/src/ngtsc/translator/src/import_manager.d.ts +0 -47
- /package/bundles/{chunk-64VF23SF.js.map → chunk-B454JZVO.js.map} +0 -0
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { MaybeForwardRefExpression, outputAst as o, R3DeclareDependencyMetadata, R3DependencyMetadata, R3Reference } from '@angular/compiler';
|
|
9
9
|
import { AstObject, AstValue } from '../../ast/ast_value';
|
|
10
|
-
export declare const PLACEHOLDER_VERSION = "18.0.0-next.
|
|
10
|
+
export declare const PLACEHOLDER_VERSION = "18.0.0-next.1";
|
|
11
11
|
export declare function wrapReference<TExpression>(wrapped: o.WrappedNodeExpr<TExpression>): R3Reference;
|
|
12
12
|
/**
|
|
13
13
|
* Parses the value of an enum from the AST value's symbol name.
|
|
@@ -17,9 +17,9 @@ export declare class Translator<TStatement, TExpression> {
|
|
|
17
17
|
/**
|
|
18
18
|
* Translate the given output AST in the context of an expression.
|
|
19
19
|
*/
|
|
20
|
-
translateExpression(expression: o.Expression, imports: ImportGenerator<TExpression>, options?: TranslatorOptions<TExpression>): TExpression;
|
|
20
|
+
translateExpression(expression: o.Expression, imports: ImportGenerator<null, TExpression>, options?: TranslatorOptions<TExpression>): TExpression;
|
|
21
21
|
/**
|
|
22
22
|
* Translate the given output AST in the context of a statement.
|
|
23
23
|
*/
|
|
24
|
-
translateStatement(statement: o.Statement, imports: ImportGenerator<TExpression>, options?: TranslatorOptions<TExpression>): TStatement;
|
|
24
|
+
translateStatement(statement: o.Statement, imports: ImportGenerator<null, TExpression>, options?: TranslatorOptions<TExpression>): TStatement;
|
|
25
25
|
}
|
|
@@ -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.io/license
|
|
7
7
|
*/
|
|
8
|
-
import { ImportGenerator,
|
|
8
|
+
import { AstFactory, ImportGenerator, ImportRequest } from '../../src/ngtsc/translator';
|
|
9
9
|
/**
|
|
10
10
|
* A class that is used to generate imports when translating from Angular Output AST to an AST to
|
|
11
11
|
* render, such as Babel.
|
|
@@ -14,10 +14,10 @@ import { ImportGenerator, NamedImport } from '../../src/ngtsc/translator';
|
|
|
14
14
|
* must be achieved by property access on an `ng` namespace identifier, which is passed in via the
|
|
15
15
|
* constructor.
|
|
16
16
|
*/
|
|
17
|
-
export declare class LinkerImportGenerator<TExpression> implements ImportGenerator<TExpression> {
|
|
17
|
+
export declare class LinkerImportGenerator<TStatement, TExpression> implements ImportGenerator<null, TExpression> {
|
|
18
|
+
private factory;
|
|
18
19
|
private ngImport;
|
|
19
|
-
constructor(ngImport: TExpression);
|
|
20
|
-
|
|
21
|
-
generateNamedImport(moduleName: string, originalSymbol: string): NamedImport<TExpression>;
|
|
20
|
+
constructor(factory: AstFactory<TStatement, TExpression>, ngImport: TExpression);
|
|
21
|
+
addImport(request: ImportRequest<null>): TExpression;
|
|
22
22
|
private assertModuleName;
|
|
23
23
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@angular/compiler-cli",
|
|
3
|
-
"version": "18.0.0-next.
|
|
3
|
+
"version": "18.0.0-next.1",
|
|
4
4
|
"description": "Angular - the compiler CLI for Node.js",
|
|
5
5
|
"typings": "index.d.ts",
|
|
6
6
|
"bin": {
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
}
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@babel/core": "7.
|
|
46
|
+
"@babel/core": "7.24.1",
|
|
47
47
|
"@jridgewell/sourcemap-codec": "^1.4.14",
|
|
48
48
|
"reflect-metadata": "^0.2.0",
|
|
49
49
|
"chokidar": "^3.0.0",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"yargs": "^17.2.1"
|
|
54
54
|
},
|
|
55
55
|
"peerDependencies": {
|
|
56
|
-
"@angular/compiler": "18.0.0-next.
|
|
56
|
+
"@angular/compiler": "18.0.0-next.1",
|
|
57
57
|
"typescript": ">=5.2 <5.5"
|
|
58
58
|
},
|
|
59
59
|
"repository": {
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import { ExternalReference } from '@angular/compiler';
|
|
9
|
+
import ts from 'typescript';
|
|
10
|
+
export declare function coreHasSymbol(program: ts.Program, symbol: ExternalReference): boolean | null;
|
|
11
|
+
export declare function isMaybeCore(sf: ts.SourceFile): boolean;
|
|
@@ -12,7 +12,7 @@ export { DeferredSymbolTracker } from './src/deferred_symbol_tracker';
|
|
|
12
12
|
export { AbsoluteModuleStrategy, assertSuccessfulReferenceEmit, EmittedReference, FailedEmitResult, ImportedFile, ImportFlags, LocalIdentifierStrategy, LogicalProjectStrategy, ReferenceEmitKind, ReferenceEmitResult, ReferenceEmitStrategy, ReferenceEmitter, RelativePathStrategy, UnifiedModulesStrategy } from './src/emitter';
|
|
13
13
|
export { ImportedSymbolsTracker } from './src/imported_symbols_tracker';
|
|
14
14
|
export { LocalCompilationExtraImportsTracker } from './src/local_compilation_extra_imports_tracker';
|
|
15
|
-
export { isAliasImportDeclaration, loadIsReferencedAliasDeclarationPatch } from './src/patch_alias_reference_resolution';
|
|
15
|
+
export { AliasImportDeclaration, isAliasImportDeclaration, loadIsReferencedAliasDeclarationPatch } from './src/patch_alias_reference_resolution';
|
|
16
16
|
export { Reexport } from './src/reexport';
|
|
17
17
|
export { OwningModule, Reference } from './src/references';
|
|
18
18
|
export { ModuleResolver } from './src/resolver';
|
|
@@ -9,13 +9,6 @@
|
|
|
9
9
|
* Rewrites imports of symbols being written into generated code.
|
|
10
10
|
*/
|
|
11
11
|
export interface ImportRewriter {
|
|
12
|
-
/**
|
|
13
|
-
* Should the given symbol be imported at all?
|
|
14
|
-
*
|
|
15
|
-
* If `true`, the symbol should be imported from the given specifier. If `false`, the symbol
|
|
16
|
-
* should be referenced directly, without an import.
|
|
17
|
-
*/
|
|
18
|
-
shouldImportSymbol(symbol: string, specifier: string): boolean;
|
|
19
12
|
/**
|
|
20
13
|
* Optionally rewrite a reference to an imported symbol, changing either the binding prefix or the
|
|
21
14
|
* symbol name itself.
|
|
@@ -30,7 +23,6 @@ export interface ImportRewriter {
|
|
|
30
23
|
* `ImportRewriter` that does no rewriting.
|
|
31
24
|
*/
|
|
32
25
|
export declare class NoopImportRewriter implements ImportRewriter {
|
|
33
|
-
shouldImportSymbol(symbol: string, specifier: string): boolean;
|
|
34
26
|
rewriteSymbol(symbol: string, specifier: string): string;
|
|
35
27
|
rewriteSpecifier(specifier: string, inContextOfFile: string): string;
|
|
36
28
|
}
|
|
@@ -41,7 +33,6 @@ export declare class NoopImportRewriter implements ImportRewriter {
|
|
|
41
33
|
export declare class R3SymbolsImportRewriter implements ImportRewriter {
|
|
42
34
|
private r3SymbolsPath;
|
|
43
35
|
constructor(r3SymbolsPath: string);
|
|
44
|
-
shouldImportSymbol(symbol: string, specifier: string): boolean;
|
|
45
36
|
rewriteSymbol(symbol: string, specifier: string): string;
|
|
46
37
|
rewriteSpecifier(specifier: string, inContextOfFile: string): string;
|
|
47
38
|
}
|
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
8
|
import ts from 'typescript';
|
|
9
|
+
/** Possible alias import declarations */
|
|
10
|
+
export type AliasImportDeclaration = ts.ImportSpecifier | ts.NamespaceImport | ts.ImportClause;
|
|
9
11
|
/**
|
|
10
12
|
* Patches the alias declaration reference resolution for a given transformation context
|
|
11
13
|
* so that TypeScript knows about the specified alias declarations being referenced.
|
|
@@ -58,4 +60,4 @@ export declare function loadIsReferencedAliasDeclarationPatch(context: ts.Transf
|
|
|
58
60
|
* declarations can be import specifiers, namespace imports or import clauses
|
|
59
61
|
* as these do not declare an actual symbol but just point to a target declaration.
|
|
60
62
|
*/
|
|
61
|
-
export declare function isAliasImportDeclaration(node: ts.Node): node is
|
|
63
|
+
export declare function isAliasImportDeclaration(node: ts.Node): node is AliasImportDeclaration;
|
|
@@ -11,4 +11,3 @@ export { ClassRecord, TraitCompiler } from './src/compilation';
|
|
|
11
11
|
export { declarationTransformFactory, DtsTransformRegistry, IvyDeclarationDtsTransform } from './src/declaration';
|
|
12
12
|
export { AnalyzedTrait, PendingTrait, ResolvedTrait, SkippedTrait, Trait, TraitState } from './src/trait';
|
|
13
13
|
export { ivyTransformFactory } from './src/transform';
|
|
14
|
-
export { addImports } from './src/utils';
|
|
@@ -24,7 +24,7 @@ export declare class DtsTransformRegistry {
|
|
|
24
24
|
*/
|
|
25
25
|
getAllTransforms(sf: ts.SourceFile): DtsTransform[] | null;
|
|
26
26
|
}
|
|
27
|
-
export declare function declarationTransformFactory(transformRegistry: DtsTransformRegistry, reflector: ReflectionHost, refEmitter: ReferenceEmitter, importRewriter: ImportRewriter
|
|
27
|
+
export declare function declarationTransformFactory(transformRegistry: DtsTransformRegistry, reflector: ReflectionHost, refEmitter: ReferenceEmitter, importRewriter: ImportRewriter): ts.TransformerFactory<ts.SourceFile>;
|
|
28
28
|
export interface IvyDeclarationField {
|
|
29
29
|
name: string;
|
|
30
30
|
type: Type;
|
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
8
|
export { AstFactory, BinaryOperator, LeadingComment, ObjectLiteralProperty, SourceMapLocation, SourceMapRange, TemplateElement, TemplateLiteral, UnaryOperator, VariableDeclarationType } from './src/api/ast_factory';
|
|
9
|
-
export { ImportGenerator,
|
|
9
|
+
export { ImportGenerator, ImportRequest } from './src/api/import_generator';
|
|
10
10
|
export { Context } from './src/context';
|
|
11
|
-
export {
|
|
11
|
+
export { ImportManager, ImportManagerConfig, presetImportManagerForceNamespaceImports } from './src/import_manager/import_manager';
|
|
12
12
|
export { ExpressionTranslatorVisitor, RecordWrappedNodeFn, TranslatorOptions } from './src/translator';
|
|
13
13
|
export { canEmitType, TypeEmitter, TypeReferenceTranslator } from './src/type_emitter';
|
|
14
14
|
export { translateType } from './src/type_translator';
|
|
@@ -6,14 +6,27 @@
|
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
10
|
-
* which has been registered through the ImportGenerator.
|
|
9
|
+
* A request to import a given symbol from the given module.
|
|
11
10
|
*/
|
|
12
|
-
export interface
|
|
13
|
-
/**
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
export interface ImportRequest<TFile> {
|
|
12
|
+
/**
|
|
13
|
+
* Name of the export to be imported.
|
|
14
|
+
* May be `null` if a namespace import is requested.
|
|
15
|
+
*/
|
|
16
|
+
exportSymbolName: string | null;
|
|
17
|
+
/**
|
|
18
|
+
* Module specifier to be imported.
|
|
19
|
+
* May be a module name, or a file-relative path.
|
|
20
|
+
*/
|
|
21
|
+
exportModuleSpecifier: string;
|
|
22
|
+
/**
|
|
23
|
+
* File for which the import is requested for. This may
|
|
24
|
+
* be used by import generators to re-use existing imports.
|
|
25
|
+
*
|
|
26
|
+
* Import managers may also allow this to be nullable if
|
|
27
|
+
* imports are never re-used. E.g. in the linker generator.
|
|
28
|
+
*/
|
|
29
|
+
requestedFile: TFile;
|
|
17
30
|
}
|
|
18
31
|
/**
|
|
19
32
|
* Generate import information based on the context of the code being generated.
|
|
@@ -21,7 +34,6 @@ export interface NamedImport<TExpression> {
|
|
|
21
34
|
* Implementations of these methods return a specific identifier that corresponds to the imported
|
|
22
35
|
* module.
|
|
23
36
|
*/
|
|
24
|
-
export interface ImportGenerator<TExpression> {
|
|
25
|
-
|
|
26
|
-
generateNamedImport(moduleName: string, originalSymbol: string): NamedImport<TExpression>;
|
|
37
|
+
export interface ImportGenerator<TFile, TExpression> {
|
|
38
|
+
addImport(request: ImportRequest<TFile>): TExpression;
|
|
27
39
|
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import type { ImportManagerConfig } from './import_manager';
|
|
9
|
+
/**
|
|
10
|
+
* Generates a helper for `ImportManagerConfig` to generate unique identifiers
|
|
11
|
+
* for a given source file.
|
|
12
|
+
*/
|
|
13
|
+
export declare function createGenerateUniqueIdentifierHelper(): ImportManagerConfig['generateUniqueIdentifier'];
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import ts from 'typescript';
|
|
9
|
+
import { AliasImportDeclaration, ImportRewriter } from '../../../imports';
|
|
10
|
+
import { ImportGenerator, ImportRequest } from '../api/import_generator';
|
|
11
|
+
/** Configuration for the import manager. */
|
|
12
|
+
export interface ImportManagerConfig {
|
|
13
|
+
generateUniqueIdentifier(file: ts.SourceFile, baseName: string): ts.Identifier | null;
|
|
14
|
+
shouldUseSingleQuotes(file: ts.SourceFile): boolean;
|
|
15
|
+
rewriter: ImportRewriter | null;
|
|
16
|
+
namespaceImportPrefix: string;
|
|
17
|
+
disableOriginalSourceFileReuse: boolean;
|
|
18
|
+
forceGenerateNamespacesForNewImports: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Preset configuration for forcing namespace imports.
|
|
22
|
+
*
|
|
23
|
+
* This preset is commonly used to avoid test differences to previous
|
|
24
|
+
* versions of the `ImportManager`.
|
|
25
|
+
*/
|
|
26
|
+
export declare const presetImportManagerForceNamespaceImports: Partial<ImportManagerConfig>;
|
|
27
|
+
/** Branded string to identify a module name. */
|
|
28
|
+
export type ModuleName = string & {
|
|
29
|
+
__moduleName: boolean;
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Import manager that can be used to conveniently and efficiently generate
|
|
33
|
+
* imports It efficiently re-uses existing source file imports, or previous
|
|
34
|
+
* generated imports.
|
|
35
|
+
*
|
|
36
|
+
* These capabilities are important for efficient TypeScript transforms that
|
|
37
|
+
* minimize structural changes to the dependency graph of source files, enabling
|
|
38
|
+
* as much incremental re-use as possible.
|
|
39
|
+
*
|
|
40
|
+
* Those imports may be inserted via a TypeScript transform, or via manual string
|
|
41
|
+
* manipulation using e.g. `magic-string`.
|
|
42
|
+
*/
|
|
43
|
+
export declare class ImportManager implements ImportGenerator<ts.SourceFile, ts.Identifier | ts.PropertyAccessExpression> {
|
|
44
|
+
private _config;
|
|
45
|
+
/** List of new imports that will be inserted into given source files. */
|
|
46
|
+
private newImports;
|
|
47
|
+
private nextUniqueIndex;
|
|
48
|
+
private config;
|
|
49
|
+
private reuseSourceFileImportsTracker;
|
|
50
|
+
private reuseGeneratedImportsTracker;
|
|
51
|
+
constructor(_config?: Partial<ImportManagerConfig>);
|
|
52
|
+
/** Adds a side-effect import for the given module. */
|
|
53
|
+
addSideEffectImport(requestedFile: ts.SourceFile, moduleSpecifier: string): void;
|
|
54
|
+
/**
|
|
55
|
+
* Adds an import to the given source-file and returns a TypeScript
|
|
56
|
+
* expression that can be used to access the newly imported symbol.
|
|
57
|
+
*/
|
|
58
|
+
addImport(request: ImportRequest<ts.SourceFile> & {
|
|
59
|
+
asTypeReference: true;
|
|
60
|
+
}): ts.Identifier | ts.QualifiedName;
|
|
61
|
+
addImport(request: ImportRequest<ts.SourceFile> & {
|
|
62
|
+
asTypeReference?: undefined;
|
|
63
|
+
}): ts.Identifier | ts.PropertyAccessExpression;
|
|
64
|
+
private _generateNewImport;
|
|
65
|
+
/**
|
|
66
|
+
* Finalizes the import manager by computing all necessary import changes
|
|
67
|
+
* and returning them.
|
|
68
|
+
*
|
|
69
|
+
* Changes are collected once at the end, after all imports are requested,
|
|
70
|
+
* because this simplifies building up changes to existing imports that need
|
|
71
|
+
* to be updated, and allows more trivial re-use of previous generated imports.
|
|
72
|
+
*/
|
|
73
|
+
finalize(): {
|
|
74
|
+
affectedFiles: Set<string>;
|
|
75
|
+
updatedImports: Map<ts.NamedImports, ts.NamedImports>;
|
|
76
|
+
newImports: Map<string, ts.ImportDeclaration[]>;
|
|
77
|
+
reusedOriginalAliasDeclarations: Set<AliasImportDeclaration>;
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Gets a TypeScript transform for the import manager.
|
|
81
|
+
*
|
|
82
|
+
* @param extraStatementsMap Additional set of statements to be inserted
|
|
83
|
+
* for given source files after their imports. E.g. top-level constants.
|
|
84
|
+
*/
|
|
85
|
+
toTsTransform(extraStatementsMap?: Map<string, ts.Statement[]>): ts.TransformerFactory<ts.SourceFile>;
|
|
86
|
+
/**
|
|
87
|
+
* Transforms a single file as a shorthand, using {@link toTsTransform}.
|
|
88
|
+
*
|
|
89
|
+
* @param extraStatementsMap Additional set of statements to be inserted
|
|
90
|
+
* for given source files after their imports. E.g. top-level constants.
|
|
91
|
+
*/
|
|
92
|
+
transformTsFile(ctx: ts.TransformationContext, file: ts.SourceFile, extraStatementsAfterImports?: ts.Statement[]): ts.SourceFile;
|
|
93
|
+
private _getNewImportsTrackerForFile;
|
|
94
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import ts from 'typescript';
|
|
9
|
+
import type { ImportManager } from './import_manager';
|
|
10
|
+
/**
|
|
11
|
+
* Creates a TypeScript transform for the given import manager.
|
|
12
|
+
*
|
|
13
|
+
* - The transform updates existing imports with new symbols to be added.
|
|
14
|
+
* - The transform adds new necessary imports.
|
|
15
|
+
* - The transform inserts additional optional statements after imports.
|
|
16
|
+
*/
|
|
17
|
+
export declare function createTsTransformForImportManager(manager: ImportManager, extraStatementsForFiles?: Map<string, ts.Statement[]>): ts.TransformerFactory<ts.SourceFile>;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import ts from 'typescript';
|
|
9
|
+
import { ImportRequest } from '../api/import_generator';
|
|
10
|
+
import type { ModuleName } from './import_manager';
|
|
11
|
+
/** Branded string identifying a hashed {@link ImportRequest}. */
|
|
12
|
+
type ImportRequestHash = string & {
|
|
13
|
+
__importHash: string;
|
|
14
|
+
};
|
|
15
|
+
/** Tracker capturing re-used generated imports. */
|
|
16
|
+
export interface ReuseGeneratedImportsTracker {
|
|
17
|
+
/**
|
|
18
|
+
* Map of previously resolved symbol imports. Cache can be re-used to return
|
|
19
|
+
* the same identifier without checking the source-file again.
|
|
20
|
+
*/
|
|
21
|
+
directReuseCache: Map<ImportRequestHash, ts.Identifier | [ts.Identifier, ts.Identifier]>;
|
|
22
|
+
/**
|
|
23
|
+
* Map of module names and their potential namespace import
|
|
24
|
+
* identifiers. Allows efficient re-using of namespace imports.
|
|
25
|
+
*/
|
|
26
|
+
namespaceImportReuseCache: Map<ModuleName, ts.Identifier>;
|
|
27
|
+
}
|
|
28
|
+
/** Attempts to efficiently re-use previous generated import requests. */
|
|
29
|
+
export declare function attemptToReuseGeneratedImports(tracker: ReuseGeneratedImportsTracker, request: ImportRequest<ts.SourceFile>): ts.Identifier | [ts.Identifier, ts.Identifier] | null;
|
|
30
|
+
/** Captures the given import request and its generated reference node/path for future re-use. */
|
|
31
|
+
export declare function captureGeneratedImport(request: ImportRequest<ts.SourceFile>, tracker: ReuseGeneratedImportsTracker, referenceNode: ts.Identifier | [ts.Identifier, ts.Identifier]): void;
|
|
32
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import ts from 'typescript';
|
|
9
|
+
import { AliasImportDeclaration } from '../../../imports';
|
|
10
|
+
import { ImportRequest } from '../api/import_generator';
|
|
11
|
+
/**
|
|
12
|
+
* Tracker necessary for enabling re-use of original source file imports.
|
|
13
|
+
*
|
|
14
|
+
* The tracker holds information about original source file imports that
|
|
15
|
+
* need to be updated, or import declarations/specifiers that are now
|
|
16
|
+
* referenced due to the import manager.
|
|
17
|
+
*/
|
|
18
|
+
export interface ReuseExistingSourceFileImportsTracker {
|
|
19
|
+
/**
|
|
20
|
+
* Map of import declarations that need to be updated to include the
|
|
21
|
+
* given symbols.
|
|
22
|
+
*/
|
|
23
|
+
updatedImports: Map<ts.ImportDeclaration, {
|
|
24
|
+
propertyName: ts.Identifier;
|
|
25
|
+
fileUniqueAlias: ts.Identifier | null;
|
|
26
|
+
}[]>;
|
|
27
|
+
/**
|
|
28
|
+
* Set of re-used alias import declarations.
|
|
29
|
+
*
|
|
30
|
+
* These are captured so that we can tell TypeScript to not elide these source file
|
|
31
|
+
* imports as we introduced references to them. More details: {@link AliasImportDeclaration}.
|
|
32
|
+
*/
|
|
33
|
+
reusedAliasDeclarations: Set<AliasImportDeclaration>;
|
|
34
|
+
/** Generates a unique identifier for a name in the given file. */
|
|
35
|
+
generateUniqueIdentifier(file: ts.SourceFile, symbolName: string): ts.Identifier | null;
|
|
36
|
+
}
|
|
37
|
+
/** Attempts to re-use original source file imports for the given request. */
|
|
38
|
+
export declare function attemptToReuseExistingSourceFileImports(tracker: ReuseExistingSourceFileImportsTracker, sourceFile: ts.SourceFile, request: ImportRequest<ts.SourceFile>): ts.Identifier | [ts.Identifier, ts.Identifier] | null;
|
|
@@ -16,13 +16,14 @@ export interface TranslatorOptions<TExpression> {
|
|
|
16
16
|
recordWrappedNode?: RecordWrappedNodeFn<TExpression>;
|
|
17
17
|
annotateForClosureCompiler?: boolean;
|
|
18
18
|
}
|
|
19
|
-
export declare class ExpressionTranslatorVisitor<TStatement, TExpression> implements o.ExpressionVisitor, o.StatementVisitor {
|
|
19
|
+
export declare class ExpressionTranslatorVisitor<TFile, TStatement, TExpression> implements o.ExpressionVisitor, o.StatementVisitor {
|
|
20
20
|
private factory;
|
|
21
21
|
private imports;
|
|
22
|
+
private contextFile;
|
|
22
23
|
private downlevelTaggedTemplates;
|
|
23
24
|
private downlevelVariableDeclarations;
|
|
24
25
|
private recordWrappedNode;
|
|
25
|
-
constructor(factory: AstFactory<TStatement, TExpression>, imports: ImportGenerator<TExpression>, options: TranslatorOptions<TExpression>);
|
|
26
|
+
constructor(factory: AstFactory<TStatement, TExpression>, imports: ImportGenerator<TFile, TExpression>, contextFile: TFile, options: TranslatorOptions<TExpression>);
|
|
26
27
|
visitDeclareVarStmt(stmt: o.DeclareVarStmt, context: Context): TStatement;
|
|
27
28
|
visitDeclareFunctionStmt(stmt: o.DeclareFunctionStmt, context: Context): TStatement;
|
|
28
29
|
visitExpressionStmt(stmt: o.ExpressionStatement, context: Context): TStatement;
|
|
@@ -9,5 +9,5 @@ import * as o from '@angular/compiler';
|
|
|
9
9
|
import ts from 'typescript';
|
|
10
10
|
import { ReferenceEmitter } from '../../imports';
|
|
11
11
|
import { ReflectionHost } from '../../reflection';
|
|
12
|
-
import { ImportManager } from './import_manager';
|
|
12
|
+
import { ImportManager } from './import_manager/import_manager';
|
|
13
13
|
export declare function translateType(type: o.Type, contextFile: ts.SourceFile, reflector: ReflectionHost, refEmitter: ReferenceEmitter, imports: ImportManager): ts.TypeNode;
|
|
@@ -9,5 +9,5 @@ import * as o from '@angular/compiler';
|
|
|
9
9
|
import ts from 'typescript';
|
|
10
10
|
import { ImportGenerator } from './api/import_generator';
|
|
11
11
|
import { TranslatorOptions } from './translator';
|
|
12
|
-
export declare function translateExpression(expression: o.Expression, imports: ImportGenerator<ts.Expression>, options?: TranslatorOptions<ts.Expression>): ts.Expression;
|
|
13
|
-
export declare function translateStatement(statement: o.Statement, imports: ImportGenerator<ts.Expression>, options?: TranslatorOptions<ts.Expression>): ts.Statement;
|
|
12
|
+
export declare function translateExpression(contextFile: ts.SourceFile, expression: o.Expression, imports: ImportGenerator<ts.SourceFile, ts.Expression>, options?: TranslatorOptions<ts.Expression>): ts.Expression;
|
|
13
|
+
export declare function translateStatement(contextFile: ts.SourceFile, statement: o.Statement, imports: ImportGenerator<ts.SourceFile, ts.Expression>, options?: TranslatorOptions<ts.Expression>): ts.Statement;
|
|
@@ -20,7 +20,7 @@ export declare class ReferenceEmitEnvironment {
|
|
|
20
20
|
readonly importManager: ImportManager;
|
|
21
21
|
protected refEmitter: ReferenceEmitter;
|
|
22
22
|
readonly reflector: ReflectionHost;
|
|
23
|
-
|
|
23
|
+
contextFile: ts.SourceFile;
|
|
24
24
|
constructor(importManager: ImportManager, refEmitter: ReferenceEmitter, reflector: ReflectionHost, contextFile: ts.SourceFile);
|
|
25
25
|
canReferenceType(ref: Reference, flags?: ImportFlags): boolean;
|
|
26
26
|
/**
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
8
|
import ts from 'typescript';
|
|
9
|
-
import { Import } from '../../translator';
|
|
10
9
|
export declare function tsCastToAny(expr: ts.Expression): ts.Expression;
|
|
11
10
|
/**
|
|
12
11
|
* Create an expression which instantiates an element by its HTML tagName.
|
|
@@ -49,4 +48,3 @@ export declare function isAccessExpression(node: ts.Node): node is ts.ElementAcc
|
|
|
49
48
|
* Creates a TypeScript node representing a numeric value.
|
|
50
49
|
*/
|
|
51
50
|
export declare function tsNumericExpression(value: number): ts.NumericLiteral | ts.PrefixUnaryExpression;
|
|
52
|
-
export declare function getImportString(imp: Import): string;
|
|
@@ -19,6 +19,6 @@ export type PropertyTransform = (node: ts.PropertyDeclaration & {
|
|
|
19
19
|
* import in order to make the synthetic decorator compatible with the JIT
|
|
20
20
|
* decorator downlevel transform.
|
|
21
21
|
*/
|
|
22
|
-
export declare function createSyntheticAngularCoreDecoratorAccess(factory: ts.NodeFactory, importManager: ImportManager, ngClassDecorator: Decorator, decoratorName: string): ts.PropertyAccessExpression;
|
|
22
|
+
export declare function createSyntheticAngularCoreDecoratorAccess(factory: ts.NodeFactory, importManager: ImportManager, ngClassDecorator: Decorator, sourceFile: ts.SourceFile, decoratorName: string): ts.PropertyAccessExpression;
|
|
23
23
|
/** Casts the given expression as `any`. */
|
|
24
24
|
export declare function castAsAny(factory: ts.NodeFactory, expr: ts.Expression): ts.Expression;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../../packages/compiler-cli/src/transformers/jit_transforms/downlevel_decorators_transform.ts", "../../../../../../packages/compiler-cli/src/transformers/jit_transforms/initializer_api_transforms/transform.ts", "../../../../../../packages/compiler-cli/src/transformers/jit_transforms/initializer_api_transforms/transform_api.ts", "../../../../../../packages/compiler-cli/src/transformers/jit_transforms/initializer_api_transforms/input_function.ts", "../../../../../../packages/compiler-cli/src/transformers/jit_transforms/initializer_api_transforms/model_function.ts", "../../../../../../packages/compiler-cli/src/transformers/jit_transforms/initializer_api_transforms/output_function.ts", "../../../../../../packages/compiler-cli/src/transformers/jit_transforms/initializer_api_transforms/query_functions.ts", "../../../../../../packages/compiler-cli/src/transformers/jit_transforms/index.ts", "../../../../../../packages/compiler-cli/private/tooling.ts"],
|
|
4
|
-
"mappings": "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",
|
|
5
|
-
"names": ["isAngularDecorator", "diagnostics", "ts", "ts", "ts", "ts", "ts"]
|
|
6
|
-
}
|