From f3141aa4449942f4fe60766e48528f6a57473256 Mon Sep 17 00:00:00 2001 From: Jean-Marc Prieur Date: Tue, 7 Sep 2021 19:30:29 -0700 Subject: [PATCH 1/3] Fix templates --- eng/Versions.props | 6 +- .../.template.config/template.json | 59 ++++++++++++++++++- .../Shared/NavMenu.CallsMicrosoftGraph.razor | 44 ++++++++++++++ .../Client/Shared/NavMenu.CallsWebApi.razor | 44 ++++++++++++++ ...vMenu.razor => NavMenu.NoGraphOrApi.razor} | 0 .../Server/appsettings.json | 10 +++- .../.template.config/template.json | 6 +- .../content/WebApi-CSharp/appsettings.json | 10 +++- 8 files changed, 167 insertions(+), 12 deletions(-) create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.CallsMicrosoftGraph.razor create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.CallsWebApi.razor rename src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/{NavMenu.razor => NavMenu.NoGraphOrApi.razor} (100%) diff --git a/eng/Versions.props b/eng/Versions.props index eb8f4384247a..3e5deb4cf5c5 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -231,9 +231,9 @@ 5.2.0 5.2.0 2.1.90 - 1.14.1 - 1.1.0 - 1.1.0 + 1.16.0 + 1.16.0 + 1.16.0 $(MessagePackVersion) 4.10.0 0.11.2 diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json index 167ea7f5e9c9..cd44728a4894 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json @@ -220,6 +220,61 @@ "Server/Models/ApplicationUser.cs", "Server/Readme.txt" ] + }, + { + "condition": "(!GenerateApi)", + "exclude": [ + "Client/Pages/CallWebApi.razor", + "Server/Controllers/CallWebApiController.cs" + ] + }, + { + "condition": "(!GenerateGraph)", + "exclude": [ + "Client/Shared/NavMenu.CallsMicrosoftGraph.razor", + "Client/Pages/ShowProfile.razor", + "Server/Controllers/ShowProfileController.cs" + ] + }, + { + "condition": "(!GenerateApiOrGraph && Hosted)", + "rename": { + "Client/Shared/NavMenu.NoGraphOrApi.razor": "Client/Shared/NavMenu.razor" + }, + "exclude": [ + "Client/Shared/NavMenu.CallsMicrosoftGraph.razor", + "Client/Shared/NavMenu.CallsWebApi.razor" + ] + }, + { + "condition": "(!GenerateApiOrGraph && !Hosted)", + "rename": { + "Client/Shared/NavMenu.NoGraphOrApi.razor": "Shared/NavMenu.razor" + }, + "exclude": [ + "Client/Shared/NavMenu.CallsMicrosoftGraph.razor", + "Client/Shared/NavMenu.CallsWebApi.razor" + ] + }, + { + "condition": "(GenerateGraph)", + "rename": { + "Client/Shared/NavMenu.CallsMicrosoftGraph.razor": "Client/Shared/NavMenu.razor" + }, + "exclude": [ + "Client/Shared/NavMenu.NoGraphOrApi.razor", + "Client/Shared/NavMenu.CallsWebApi.razor" + ] + }, + { + "condition": "(GenerateApi)", + "rename": { + "Client/Shared/NavMenu.CallsWebApi.razor": "Client/Shared/NavMenu.razor" + }, + "exclude": [ + "Client/Shared/NavMenu.NoGraphOrApi.razor", + "Client/Shared/NavMenu.CallsMicrosoftGraph.razor" + ] } ] } @@ -527,11 +582,11 @@ }, "GenerateApi": { "type": "computed", - "value": "(( (IndividualB2CAuth && !Hosted) || OrganizationalAuth) && (CalledApiUrl != \"https://graph.microsoft.com/v1.0\" || CalledApiScopes != \"user.read\"))" + "value": "(( (IndividualB2CAuth && !Hosted) || (OrganizationalAuth && Hosted)) && (CalledApiUrl != \"https://graph.microsoft.com/v1.0\" || CalledApiScopes != \"user.read\"))" }, "GenerateGraph": { "type": "computed", - "value": "(OrganizationalAuth && CallsMicrosoftGraph)" + "value": "(OrganizationalAuth && CallsMicrosoftGraph && Hosted)" }, "GenerateApiOrGraph": { "type": "computed", diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.CallsMicrosoftGraph.razor b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.CallsMicrosoftGraph.razor new file mode 100644 index 000000000000..bf3861b2437b --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.CallsMicrosoftGraph.razor @@ -0,0 +1,44 @@ + + +
+ +
+ +@code { + private bool collapseNavMenu = true; + + private string? NavMenuCssClass => collapseNavMenu ? "collapse" : null; + + private void ToggleNavMenu() + { + collapseNavMenu = !collapseNavMenu; + } +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.CallsWebApi.razor b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.CallsWebApi.razor new file mode 100644 index 000000000000..b15bedf50838 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.CallsWebApi.razor @@ -0,0 +1,44 @@ + + +
+ +
+ +@code { + private bool collapseNavMenu = true; + + private string? NavMenuCssClass => collapseNavMenu ? "collapse" : null; + + private void ToggleNavMenu() + { + collapseNavMenu = !collapseNavMenu; + } +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.razor b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.NoGraphOrApi.razor similarity index 100% rename from src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.razor rename to src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Client/Shared/NavMenu.NoGraphOrApi.razor diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Server/appsettings.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Server/appsettings.json index e3566d020610..d9ba1e59b659 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Server/appsettings.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Server/appsettings.json @@ -8,15 +8,20 @@ ////#endif // }, ////#elseif (IndividualB2CAuth) +///* +The following identity settings need to be configured +before the project can be successfully executed. +For more info see https:////aka.ms/dotnet-template-ms-identity-platform +//*/ // "AzureAdB2C": { // "Instance": "https:////aadB2CInstance.b2clogin.com/", // "ClientId": "11111111-1111-1111-11111111111111111", // "Domain": "qualified.domain.name", //#if (GenerateApi) // "ClientSecret": "secret-from-app-registration", -// "Scopes": "api-scope", // "ClientCertificates" : [ // ], +// "Scopes": "api-scope", //#endif // "SignUpSignInPolicyId": "MySignUpSignInPolicyId" // }, @@ -40,11 +45,12 @@ For more info see https:////aka.ms/dotnet-template-ms-identity-platform // "ClientCertificates" : [ // ], //#endif +// "Scopes": "api-scope", // "CallbackPath": "/signin-oidc" // }, ////#endif ////#if (GenerateApiOrGraph) -// "DownstreamAPI": { +// "DownstreamApi": { // /* // 'Scopes' contains space separated scopes of the Web API you want to call. This can be: // - a scope for a V2 application (for instance api://b3682cc7-8b30-4bd2-aaba-080c6bf0fd31/access_as_user) diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json index a4970ed06183..1e871b3b8a22 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json @@ -101,14 +101,14 @@ "AAdB2CInstance": { "type": "parameter", "datatype": "string", - "defaultValue": "https://login.microsoftonline.com/tfp/", - "replaces": "https:////login.microsoftonline.com/tfp/", + "defaultValue": "https://qualified.domain.name.b2clogin.com/", + "replaces": "https:////qualified.domain.name.b2clogin.com/", "description": "The Azure Active Directory B2C instance to connect to (use with IndividualB2C auth)." }, "SignUpSignInPolicyId": { "type": "parameter", "datatype": "string", - "defaultValue": "", + "defaultValue": "b2c_1_susi", "replaces": "MySignUpSignInPolicyId", "description": "The sign-in and sign-up policy ID for this project (use with IndividualB2C auth)." }, diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/appsettings.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/appsettings.json index 9509ba29c432..82b6ca1634fa 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/appsettings.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/appsettings.json @@ -1,14 +1,19 @@ { ////#if (IndividualB2CAuth) +///* +The following identity settings need to be configured +before the project can be successfully executed. +For more info see https:////aka.ms/dotnet-template-ms-identity-platform +//*/ // "AzureAdB2C": { -// "Instance": "https:////login.microsoftonline.com/tfp/", +// "Instance": "https:////qualified.domain.name.b2clogin.com/", // "ClientId": "11111111-1111-1111-11111111111111111", // "Domain": "qualified.domain.name", //#if (GenerateApi) // "ClientSecret": "secret-from-app-registration", -// "Scopes": "api-scope", // "ClientCertificates" : [ // ], +// "Scopes": "api-scope", //#endif // "SignUpSignInPolicyId": "MySignUpSignInPolicyId" // }, @@ -32,6 +37,7 @@ For more info see https:////aka.ms/dotnet-template-ms-identity-platform // "ClientSecret": "secret-from-app-registration", // "ClientCertificates" : [ // ], +// "Scopes": "api-scope", //#endif // "CallbackPath": "/signin-oidc" // }, From 56f2d9aba29b029c82e08ea8988a607aaed80892 Mon Sep 17 00:00:00 2001 From: Jean-Marc Prieur Date: Tue, 7 Sep 2021 20:49:28 -0700 Subject: [PATCH 2/3] fixing the scopes --- .../content/WebApi-CSharp/appsettings.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/appsettings.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/appsettings.json index 82b6ca1634fa..e2b8fc294a06 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/appsettings.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/appsettings.json @@ -13,8 +13,8 @@ For more info see https:////aka.ms/dotnet-template-ms-identity-platform // "ClientSecret": "secret-from-app-registration", // "ClientCertificates" : [ // ], -// "Scopes": "api-scope", //#endif +// "Scopes": "api-scope", // "SignUpSignInPolicyId": "MySignUpSignInPolicyId" // }, ////#elseif (OrganizationalAuth) @@ -37,13 +37,13 @@ For more info see https:////aka.ms/dotnet-template-ms-identity-platform // "ClientSecret": "secret-from-app-registration", // "ClientCertificates" : [ // ], -// "Scopes": "api-scope", //#endif +// "Scopes": "api-scope", // "CallbackPath": "/signin-oidc" // }, ////#endif ////#if (GenerateApiOrGraph) -// "DownstreamAPI": { +// "DownstreamApi": { // /* // 'Scopes' contains space separated scopes of the Web API you want to call. This can be: // - a scope for a V2 application (for instance api://b3682cc7-8b30-4bd2-aaba-080c6bf0fd31/access_as_user) From eab28ebd27fa88f12fdd33817cc76da7333ee44f Mon Sep 17 00:00:00 2001 From: Jean-Marc Prieur Date: Tue, 7 Sep 2021 20:51:25 -0700 Subject: [PATCH 3/3] fixing scopes in blazor hosted server --- .../ComponentsWebAssembly-CSharp/Server/appsettings.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Server/appsettings.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Server/appsettings.json index d9ba1e59b659..2117429dd5d2 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Server/appsettings.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/Server/appsettings.json @@ -21,8 +21,8 @@ For more info see https:////aka.ms/dotnet-template-ms-identity-platform // "ClientSecret": "secret-from-app-registration", // "ClientCertificates" : [ // ], -// "Scopes": "api-scope", //#endif +// "Scopes": "api-scope", // "SignUpSignInPolicyId": "MySignUpSignInPolicyId" // }, ////#elseif (OrganizationalAuth)