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 };