This reverts commit 9ff9a072e62af9aacc3703936e01c984ad44d6d6. PR Close #35970
This commit is contained in:
parent
9ff9a072e6
commit
15482e7367
@ -184,7 +184,7 @@ export function compile({allDepsCompiledWithBazel = true, useManifestPathsAsModu
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Detect from compilerOpts whether the entrypoint is being invoked in Ivy mode.
|
// Detect from compilerOpts whether the entrypoint is being invoked in Ivy mode.
|
||||||
const isInIvyMode = !!compilerOpts.enableIvy;
|
const isInIvyMode = compilerOpts.enableIvy === 'ngtsc';
|
||||||
|
|
||||||
// Disable downleveling and Closure annotation if in Ivy mode.
|
// Disable downleveling and Closure annotation if in Ivy mode.
|
||||||
if (isInIvyMode) {
|
if (isInIvyMode) {
|
||||||
@ -246,18 +246,9 @@ export function compile({allDepsCompiledWithBazel = true, useManifestPathsAsModu
|
|||||||
files, compilerOpts, bazelOpts, tsHost, fileLoader, generatedFileModuleResolver);
|
files, compilerOpts, bazelOpts, tsHost, fileLoader, generatedFileModuleResolver);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Also need to disable decorator downleveling in the BazelHost in Ivy mode.
|
||||||
if (isInIvyMode) {
|
if (isInIvyMode) {
|
||||||
// Also need to disable decorator downleveling in the BazelHost in Ivy mode.
|
|
||||||
bazelHost.transformDecorators = false;
|
bazelHost.transformDecorators = false;
|
||||||
|
|
||||||
const delegate = bazelHost.shouldSkipTsickleProcessing.bind(bazelHost);
|
|
||||||
bazelHost.shouldSkipTsickleProcessing = (fileName: string) => {
|
|
||||||
// The base implementation of shouldSkipTsickleProcessing checks whether `fileName` is part of
|
|
||||||
// the original `srcs[]`. For Angular (Ivy) compilations, ngfactory/ngsummary files that are
|
|
||||||
// shims for original .ts files in the program should be treated identically. Thus, strip the
|
|
||||||
// '.ngfactory' or '.ngsummary' part of the filename away before calling the delegate.
|
|
||||||
return delegate(fileName.replace(/\.(ngfactory|ngsummary)\.ts$/, '.ts'));
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Prevent tsickle adding any types at all if we don't want closure compiler annotations.
|
// Prevent tsickle adding any types at all if we don't want closure compiler annotations.
|
||||||
|
@ -103,9 +103,8 @@ function createEmitCallback(options: api.CompilerOptions): api.TsEmitCallback|un
|
|||||||
tsickle.TsickleHost, 'shouldSkipTsickleProcessing'|'pathToModuleName'|
|
tsickle.TsickleHost, 'shouldSkipTsickleProcessing'|'pathToModuleName'|
|
||||||
'shouldIgnoreWarningsForPath'|'fileNameToModuleId'|'googmodule'|'untyped'|
|
'shouldIgnoreWarningsForPath'|'fileNameToModuleId'|'googmodule'|'untyped'|
|
||||||
'convertIndexImportShorthand'|'transformDecorators'|'transformTypesToClosure'> = {
|
'convertIndexImportShorthand'|'transformDecorators'|'transformTypesToClosure'> = {
|
||||||
shouldSkipTsickleProcessing: (fileName) => /\.d\.ts$/.test(fileName) ||
|
shouldSkipTsickleProcessing: (fileName) =>
|
||||||
// View Engine's generated files were never intended to be processed with tsickle.
|
/\.d\.ts$/.test(fileName) || GENERATED_FILES.test(fileName),
|
||||||
(!options.enableIvy && GENERATED_FILES.test(fileName)),
|
|
||||||
pathToModuleName: (context, importPath) => '',
|
pathToModuleName: (context, importPath) => '',
|
||||||
shouldIgnoreWarningsForPath: (filePath) => false,
|
shouldIgnoreWarningsForPath: (filePath) => false,
|
||||||
fileNameToModuleId: (fileName) => fileName,
|
fileNameToModuleId: (fileName) => fileName,
|
||||||
|
@ -4594,31 +4594,6 @@ runInEachFileSystem(os => {
|
|||||||
expect(trim(jsContents).startsWith(trim(fileoverview))).toBeTruthy();
|
expect(trim(jsContents).startsWith(trim(fileoverview))).toBeTruthy();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should be produced for generated factory files', () => {
|
|
||||||
env.tsconfig({
|
|
||||||
'annotateForClosureCompiler': true,
|
|
||||||
'generateNgFactoryShims': true,
|
|
||||||
});
|
|
||||||
env.write(`test.ts`, `
|
|
||||||
import {Component} from '@angular/core';
|
|
||||||
|
|
||||||
@Component({
|
|
||||||
template: '<div class="test"></div>',
|
|
||||||
})
|
|
||||||
export class SomeComp {}
|
|
||||||
`);
|
|
||||||
|
|
||||||
env.driveMain();
|
|
||||||
const jsContents = env.getContents('test.ngfactory.js');
|
|
||||||
const fileoverview = `
|
|
||||||
/**
|
|
||||||
* @fileoverview added by tsickle
|
|
||||||
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
||||||
*/
|
|
||||||
`;
|
|
||||||
expect(trim(jsContents).startsWith(trim(fileoverview))).toBeTruthy();
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should always be at the very beginning of a script (if placed above imports)', () => {
|
it('should always be at the very beginning of a script (if placed above imports)', () => {
|
||||||
env.tsconfig({
|
env.tsconfig({
|
||||||
'annotateForClosureCompiler': true,
|
'annotateForClosureCompiler': true,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user