* Integrate importStar and importDefault helpers * Accept baselines * Support dynamic imports, write helpers for umd module (and amd is possible) kinds * Accept baselines * Support AMD, use same helper initialization as is normal * update typechecker to have errors on called imported namespaces and good error recovery with a quickfix * Overhaul allowSyntheticDefaultExports to be safer * Put the new behavior behind a flag * Rename strictESM to ESMInterop * ESMInterop -> ESModuleInterop, make default for tsc --init * Rename ESMInterop -> ESModuleInterop in module.ts, add emit test (since fourslash doesnt do that) * Remove erroneous semicolons from helper * Reword diagnostic * Change style * Edit followup diagnostic * Add secondary quickfix for call sites, tests forthcoming * Add synth default to namespace import type, enhance quickfix * Pair of spare tests for good measure * Fix typos in diagnostic message * Improve comment clarity * Actually accept the updated changes to the esmodule interop description * ESModule -> esModule * Use find and not forEach * Use guard * Rely on implicit falsiness of Result.False * These should have been emit flags
18 lines
443 B
TypeScript
18 lines
443 B
TypeScript
/// <reference path='fourslash.ts' />
|
|
// @esModuleInterop: true
|
|
// @module: amd
|
|
// @Filename: foo.d.ts
|
|
////declare class foo(): void;
|
|
////declare namespace foo {}
|
|
////export = foo;
|
|
|
|
// @Filename: index.ts
|
|
////[|import * as foo from "./foo";|]
|
|
////new foo();
|
|
|
|
goTo.file(1);
|
|
verify.codeFix({
|
|
description: `Replace import with 'import foo from "./foo";'.`,
|
|
newRangeContent: `import foo from "./foo";`,
|
|
index: 0,
|
|
});
|