diff --git a/generators/generator-bot-adaptive/baseGenerator.js b/generators/generator-bot-adaptive/baseGenerator.js
index e17ce51ee0..1d838d6474 100644
--- a/generators/generator-bot-adaptive/baseGenerator.js
+++ b/generators/generator-bot-adaptive/baseGenerator.js
@@ -22,7 +22,7 @@ module.exports = class extends Generator {
platforms
).join(', ')}`,
type: String,
- default: platforms.dotnet,
+ default: platforms.dotnet.name,
alias: 'p',
});
@@ -35,6 +35,12 @@ module.exports = class extends Generator {
alias: 'i',
});
+ this.option('sdkVersion', {
+ desc: 'The Bot Framework SDK version to use',
+ type: String,
+ alias: 's',
+ });
+
const { botName, platform, integration } = this.options;
assert(botName, 'botName is required');
assert(typeof botName === 'string', 'botName must be a string');
diff --git a/generators/generator-bot-adaptive/generators/app/index.js b/generators/generator-bot-adaptive/generators/app/index.js
index 4cf44f5691..0cbebf9ab3 100644
--- a/generators/generator-bot-adaptive/generators/app/index.js
+++ b/generators/generator-bot-adaptive/generators/app/index.js
@@ -23,6 +23,7 @@ const options = rt.Record({
version: rt.String,
})
),
+ sdkVersion: rt.String,
});
const defaultOptions = {
@@ -33,6 +34,7 @@ const defaultOptions = {
},
modifyApplicationSettings: undefined,
packageReferences: [],
+ sdkVersion: undefined,
};
module.exports = class extends BaseGenerator {
@@ -62,7 +64,7 @@ module.exports = class extends BaseGenerator {
const includeAssets = ['schemas'];
switch (this.options.platform) {
- case platforms.dotnet: {
+ case platforms.dotnet.name: {
this._copyPlatformTemplate({
defaultSettingsDirectory: 'string.Empty',
includeAssets,
@@ -70,6 +72,8 @@ module.exports = class extends BaseGenerator {
packageReferences: this._formatDotnetPackageReferences(
this.packageReferences
),
+ sdkVersion:
+ this.options.sdkVersion || platforms.dotnet.defaultSdkVersion,
},
});
@@ -82,7 +86,7 @@ module.exports = class extends BaseGenerator {
return;
}
- case platforms.js: {
+ case platforms.js.name: {
this._copyPlatformTemplate({
defaultSettingsDirectory: 'process.cwd()',
includeAssets,
@@ -187,7 +191,7 @@ module.exports = class extends BaseGenerator {
appSettings.runtime.key = `adaptive-runtime-${platform}-${integration}`;
switch (platform) {
- case platforms.dotnet:
+ case platforms.dotnet.name:
switch (integration) {
case integrations.functions:
appSettings.runtime.command = `func start --script-root ${path.join(
@@ -200,7 +204,7 @@ module.exports = class extends BaseGenerator {
appSettings.runtime.command = `dotnet run --project ${botName}.csproj`;
}
break;
- case platforms.js:
+ case platforms.js.name:
appSettings.runtime.command = 'npm run dev --';
break;
default:
@@ -247,9 +251,11 @@ module.exports = class extends BaseGenerator {
}
_writeJsPackageJson() {
- const { botName, integration } = this.options;
-
- const sdkVersion = '4.13.4-preview';
+ const {
+ botName,
+ integration,
+ sdkVersion = platforms.js.defaultSdkVersion,
+ } = this.options;
const dependencies = {
[integrations.functions]: {
diff --git a/generators/generator-bot-adaptive/generators/app/templates/dotnet/functions/botName.csproj b/generators/generator-bot-adaptive/generators/app/templates/dotnet/functions/botName.csproj
index eee16f6272..b1dea0166e 100644
--- a/generators/generator-bot-adaptive/generators/app/templates/dotnet/functions/botName.csproj
+++ b/generators/generator-bot-adaptive/generators/app/templates/dotnet/functions/botName.csproj
@@ -14,9 +14,9 @@
-
-
-
+
+
+
<%- packageReferences %>
diff --git a/generators/generator-bot-adaptive/generators/app/templates/dotnet/webapp/botName.csproj b/generators/generator-bot-adaptive/generators/app/templates/dotnet/webapp/botName.csproj
index d312a50673..d3ef64ca79 100644
--- a/generators/generator-bot-adaptive/generators/app/templates/dotnet/webapp/botName.csproj
+++ b/generators/generator-bot-adaptive/generators/app/templates/dotnet/webapp/botName.csproj
@@ -11,8 +11,8 @@
-
-
- <%- packageReferences %>
+
+
+ <%- packageReferences %>
\ No newline at end of file
diff --git a/generators/generator-bot-adaptive/platforms.js b/generators/generator-bot-adaptive/platforms.js
index b046839756..621dd9b47a 100644
--- a/generators/generator-bot-adaptive/platforms.js
+++ b/generators/generator-bot-adaptive/platforms.js
@@ -1,7 +1,14 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
-const dotnet = 'dotnet';
-const js = 'js';
+const dotnet = {
+ name: 'dotnet',
+ defaultSdkVersion: '4.13.2',
+};
+
+const js = {
+ name: 'js',
+ defaultSdkVersion: '4.13.4-preview',
+};
module.exports = { dotnet, js };