diff --git a/.changeset/thirty-starfishes-smash.md b/.changeset/thirty-starfishes-smash.md new file mode 100644 index 00000000000..c41a08fdbaf --- /dev/null +++ b/.changeset/thirty-starfishes-smash.md @@ -0,0 +1,6 @@ +--- +'create-amplify': patch +'@aws-amplify/cli-core': patch +--- + +update create-amplify flow to init a tsconfig that forces module context, removes creation of package.json in the amplify directory diff --git a/packages/cli-core/src/package-manager-controller/package_manager_controller_base.ts b/packages/cli-core/src/package-manager-controller/package_manager_controller_base.ts index 4d9786b3910..c6fae5f2bae 100644 --- a/packages/cli-core/src/package-manager-controller/package_manager_controller_base.ts +++ b/packages/cli-core/src/package-manager-controller/package_manager_controller_base.ts @@ -96,7 +96,8 @@ export abstract class PackageManagerControllerBase const tsConfigTemplate = { compilerOptions: { target: 'es2022', - module: 'es2022', + module: 'preserve', + moduleDetection: 'force', moduleResolution: 'bundler', resolveJsonModule: true, esModuleInterop: true, diff --git a/packages/create-amplify/src/amplify_project_creator.ts b/packages/create-amplify/src/amplify_project_creator.ts index 45cfc9d5949..ed998afa391 100644 --- a/packages/create-amplify/src/amplify_project_creator.ts +++ b/packages/create-amplify/src/amplify_project_creator.ts @@ -18,7 +18,7 @@ export class AmplifyProjectCreator { 'aws-cdk@^2', 'aws-cdk-lib@^2', 'constructs@^10.0.0', - 'typescript@^5.0.0', + 'typescript@^5.4.0', 'tsx', 'esbuild', ]; diff --git a/packages/create-amplify/src/initial_project_file_generator.test.ts b/packages/create-amplify/src/initial_project_file_generator.test.ts index 8fcfb9190ac..e6e37b1770b 100644 --- a/packages/create-amplify/src/initial_project_file_generator.test.ts +++ b/packages/create-amplify/src/initial_project_file_generator.test.ts @@ -40,14 +40,6 @@ void describe('InitialProjectFileGenerator', () => { path.join(process.cwd(), 'testDir', 'amplify'), { recursive: true }, ]); - assert.equal( - fsMock.writeFile.mock.calls[0].arguments[0], - path.join(process.cwd(), 'testDir', 'amplify', 'package.json') - ); - assert.deepStrictEqual( - JSON.parse(fsMock.writeFile.mock.calls[0].arguments[1]), - { type: 'module' } - ); }); void it('creates default tsconfig file', async () => { diff --git a/packages/create-amplify/src/initial_project_file_generator.ts b/packages/create-amplify/src/initial_project_file_generator.ts index 0c782726e56..fcba7b319a2 100644 --- a/packages/create-amplify/src/initial_project_file_generator.ts +++ b/packages/create-amplify/src/initial_project_file_generator.ts @@ -29,12 +29,6 @@ export class InitialProjectFileGenerator { { recursive: true } ); - const packageJsonContent = { type: 'module' }; - await this.fsp.writeFile( - this.path.resolve(targetDir, 'package.json'), - JSON.stringify(packageJsonContent, null, 2) - ); - await this.packageManagerController.initializeTsConfig(targetDir); }; }