Skip to content

Commit 4266f89

Browse files
trivikrrvaronos
andauthored
Default import package.json for spec compatibility (#209)
Co-authored-by: Raphael Varonos <[email protected]>
1 parent 9c321fc commit 4266f89

File tree

2 files changed

+10
-9
lines changed

2 files changed

+10
-9
lines changed

smithy-typescript-codegen/src/main/java/software/amazon/smithy/typescript/codegen/RuntimeConfigGenerator.java

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -99,9 +99,8 @@ final class RuntimeConfigGenerator {
9999
writer.addDependency(TypeScriptDependency.AWS_SDK_UTIL_USER_AGENT_NODE);
100100
writer.addImport("defaultUserAgent", "defaultUserAgent",
101101
TypeScriptDependency.AWS_SDK_UTIL_USER_AGENT_NODE.packageName);
102-
writer.addImport("name", "name", "./package.json");
103-
writer.addImport("version", "version", "./package.json");
104-
writer.write("defaultUserAgent: defaultUserAgent(name, version),");
102+
writer.addDefaultImport("packageInfo", "./package.json");
103+
writer.write("defaultUserAgent: defaultUserAgent(packageInfo.name, packageInfo.version),");
105104
}
106105
);
107106
private final Map<String, Consumer<TypeScriptWriter>> browserRuntimeConfigDefaults = MapUtils.of(
@@ -163,9 +162,8 @@ final class RuntimeConfigGenerator {
163162
writer.addDependency(TypeScriptDependency.AWS_SDK_UTIL_USER_AGENT_BROWSER);
164163
writer.addImport("defaultUserAgent", "defaultUserAgent",
165164
TypeScriptDependency.AWS_SDK_UTIL_USER_AGENT_BROWSER.packageName);
166-
writer.addImport("name", "name", "./package.json");
167-
writer.addImport("version", "version", "./package.json");
168-
writer.write("defaultUserAgent: defaultUserAgent(name, version),");
165+
writer.addDefaultImport("packageInfo", "./package.json");
166+
writer.write("defaultUserAgent: defaultUserAgent(packageInfo.name, packageInfo.version),");
169167
}
170168
);
171169
private final Map<String, Consumer<TypeScriptWriter>> reactNativeRuntimeConfigDefaults = MapUtils.of(
@@ -182,9 +180,9 @@ final class RuntimeConfigGenerator {
182180
writer.write("urlParser: parseUrl,");
183181
},
184182
"defaultUserAgent", writer -> {
185-
writer.addImport("name", "name", "./package.json");
186-
writer.addImport("version", "version", "./package.json");
187-
writer.write("defaultUserAgent: `aws-sdk-js-v3-react-native-$${name}/$${version}`,");
183+
writer.addDefaultImport("packageInfo", "./package.json");
184+
writer.write("defaultUserAgent: "
185+
+ "`aws-sdk-js-v3-react-native-$${packageInfo.name}/$${packageInfo.version}`,");
188186
}
189187
);
190188
private final Map<String, Consumer<TypeScriptWriter>> sharedRuntimeConfigDefaults = MapUtils.of(

smithy-typescript-codegen/src/test/java/software/amazon/smithy/typescript/codegen/RuntimeConfigGeneratorTest.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,20 +92,23 @@ public Map<String, Consumer<TypeScriptWriter>> getRuntimeConfigWriters(
9292

9393
// Does the runtimeConfig.ts file expand the template properties properly?
9494
String runtimeConfigContents = manifest.getFileString("runtimeConfig.ts").get();
95+
assertThat(runtimeConfigContents, containsString("import packageInfo from \"./package.json\""));
9596
assertThat(runtimeConfigContents,
9697
containsString("import { ClientDefaults } from \"./ExampleClient\";"));
9798
assertThat(runtimeConfigContents, containsString("syn: 'ack2',"));
9899
assertThat(runtimeConfigSharedContents, containsString("foo: 'bar',"));
99100

100101
// Does the runtimeConfig.browser.ts file expand the template properties properly?
101102
String runtimeConfigBrowserContents = manifest.getFileString("runtimeConfig.browser.ts").get();
103+
assertThat(runtimeConfigContents, containsString("import packageInfo from \"./package.json\""));
102104
assertThat(runtimeConfigBrowserContents,
103105
containsString("import { ClientDefaults } from \"./ExampleClient\";"));
104106
assertThat(runtimeConfigContents, containsString("syn: 'ack2',"));
105107
assertThat(runtimeConfigSharedContents, containsString("foo: 'bar',"));
106108

107109
// Does the runtimeConfig.native.ts file expand the browser template properties properly?
108110
String runtimeConfigNativeContents = manifest.getFileString("runtimeConfig.native.ts").get();
111+
assertThat(runtimeConfigContents, containsString("import packageInfo from \"./package.json\""));
109112
assertThat(runtimeConfigNativeContents,
110113
containsString("import { ClientDefaults } from \"./ExampleClient\";"));
111114
assertThat(runtimeConfigNativeContents,

0 commit comments

Comments
 (0)