From 3ee8058c7183f2fd8fab6cfe4210a68e4c6e6f7c Mon Sep 17 00:00:00 2001 From: Chris Sainty Date: Fri, 6 Mar 2020 15:03:48 +0000 Subject: [PATCH] Upgraded all packages to latest. Bumped version --- Blazored.Typeahead.sln | 21 +- azure-pipelines.yml | 8 +- samples/BlazorClientSide/Pages/_Imports.razor | 1 - samples/BlazorClientSide/Program.cs | 16 - samples/BlazorClientSide/Startup.cs | 17 - .../App.razor | 20 +- .../BlazorServer.csproj} | 0 .../Pages/Index.razor | 490 ++++++++-------- .../Pages/_Host.cshtml | 4 +- samples/{WebApi => BlazorServer}/Program.cs | 8 +- .../Shared/MainLayout.razor | 0 .../Shared/NavMenu.razor | 2 +- .../Startup.cs | 2 +- .../_Imports.razor | 2 +- .../appsettings.Development.json | 0 .../appsettings.json | 0 .../wwwroot/blazor.polyfill.min.js | 0 .../wwwroot/css/bootstrap/bootstrap.min.css | 0 .../css/bootstrap/bootstrap.min.css.map | 0 .../wwwroot/css/open-iconic/FONT-LICENSE | 0 .../wwwroot/css/open-iconic/ICON-LICENSE | 0 .../wwwroot/css/open-iconic/README.md | 0 .../font/css/open-iconic-bootstrap.min.css | 0 .../open-iconic/font/fonts/open-iconic.eot | Bin .../open-iconic/font/fonts/open-iconic.otf | Bin .../open-iconic/font/fonts/open-iconic.svg | 0 .../open-iconic/font/fonts/open-iconic.ttf | Bin .../open-iconic/font/fonts/open-iconic.woff | Bin .../wwwroot/css/site.css | 0 .../wwwroot/favicon.ico | Bin samples/BlazorServerSide/Pages/_Imports.razor | 1 - samples/BlazorServerSide/Program.cs | 28 - .../App.razor | 20 +- .../BlazorWebAssembly.csproj} | 8 +- .../Pages/Index.razor | 539 +++++++++--------- samples/BlazorWebAssembly/Program.cs | 16 + .../Shared/MainLayout.razor | 0 .../Shared/NavMenu.razor | 2 +- .../_Imports.razor | 22 +- .../wwwroot/css/bootstrap/bootstrap.min.css | 0 .../css/bootstrap/bootstrap.min.css.map | 0 .../wwwroot/css/open-iconic/FONT-LICENSE | 0 .../wwwroot/css/open-iconic/ICON-LICENSE | 0 .../wwwroot/css/open-iconic/README.md | 0 .../font/css/open-iconic-bootstrap.min.css | 0 .../open-iconic/font/fonts/open-iconic.eot | Bin .../open-iconic/font/fonts/open-iconic.otf | Bin .../open-iconic/font/fonts/open-iconic.svg | 0 .../open-iconic/font/fonts/open-iconic.ttf | Bin .../open-iconic/font/fonts/open-iconic.woff | Bin .../wwwroot/css/site.css | 0 .../wwwroot/index.html | 26 +- .../WebApi/Controllers/PersonsController.cs | 89 --- samples/WebApi/Startup.cs | 64 --- samples/WebApi/WebApi.csproj | 15 - samples/WebApi/appsettings.Development.json | 9 - samples/WebApi/appsettings.json | 10 - .../Blazored.Typeahead.csproj | 6 +- 58 files changed, 593 insertions(+), 853 deletions(-) delete mode 100644 samples/BlazorClientSide/Pages/_Imports.razor delete mode 100644 samples/BlazorClientSide/Program.cs delete mode 100644 samples/BlazorClientSide/Startup.cs rename samples/{BlazorClientSide => BlazorServer}/App.razor (97%) rename samples/{BlazorServerSide/BlazorServerSide.csproj => BlazorServer/BlazorServer.csproj} (100%) rename samples/{BlazorServerSide => BlazorServer}/Pages/Index.razor (97%) rename samples/{BlazorServerSide => BlazorServer}/Pages/_Host.cshtml (94%) rename samples/{WebApi => BlazorServer}/Program.cs (72%) rename samples/{BlazorServerSide => BlazorServer}/Shared/MainLayout.razor (100%) rename samples/{BlazorServerSide => BlazorServer}/Shared/NavMenu.razor (92%) rename samples/{BlazorServerSide => BlazorServer}/Startup.cs (98%) rename samples/{BlazorServerSide => BlazorServer}/_Imports.razor (88%) rename samples/{BlazorServerSide => BlazorServer}/appsettings.Development.json (100%) rename samples/{BlazorServerSide => BlazorServer}/appsettings.json (100%) rename samples/{BlazorServerSide => BlazorServer}/wwwroot/blazor.polyfill.min.js (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/bootstrap/bootstrap.min.css (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/bootstrap/bootstrap.min.css.map (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/open-iconic/FONT-LICENSE (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/open-iconic/ICON-LICENSE (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/open-iconic/README.md (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/open-iconic/font/css/open-iconic-bootstrap.min.css (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/open-iconic/font/fonts/open-iconic.eot (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/open-iconic/font/fonts/open-iconic.otf (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/open-iconic/font/fonts/open-iconic.svg (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf (100%) rename samples/{BlazorClientSide => BlazorServer}/wwwroot/css/open-iconic/font/fonts/open-iconic.woff (100%) rename samples/{BlazorServerSide => BlazorServer}/wwwroot/css/site.css (100%) rename samples/{BlazorServerSide => BlazorServer}/wwwroot/favicon.ico (100%) delete mode 100644 samples/BlazorServerSide/Pages/_Imports.razor delete mode 100644 samples/BlazorServerSide/Program.cs rename samples/{BlazorServerSide => BlazorWebAssembly}/App.razor (97%) rename samples/{BlazorClientSide/BlazorClientSide.csproj => BlazorWebAssembly/BlazorWebAssembly.csproj} (78%) rename samples/{BlazorClientSide => BlazorWebAssembly}/Pages/Index.razor (95%) create mode 100644 samples/BlazorWebAssembly/Program.cs rename samples/{BlazorClientSide => BlazorWebAssembly}/Shared/MainLayout.razor (100%) rename samples/{BlazorClientSide => BlazorWebAssembly}/Shared/NavMenu.razor (92%) rename samples/{BlazorClientSide => BlazorWebAssembly}/_Imports.razor (78%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/bootstrap/bootstrap.min.css (100%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/bootstrap/bootstrap.min.css.map (100%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/open-iconic/FONT-LICENSE (100%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/open-iconic/ICON-LICENSE (100%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/open-iconic/README.md (100%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/open-iconic/font/css/open-iconic-bootstrap.min.css (100%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/open-iconic/font/fonts/open-iconic.eot (100%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/open-iconic/font/fonts/open-iconic.otf (100%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/open-iconic/font/fonts/open-iconic.svg (100%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf (100%) rename samples/{BlazorServerSide => BlazorWebAssembly}/wwwroot/css/open-iconic/font/fonts/open-iconic.woff (100%) rename samples/{BlazorClientSide => BlazorWebAssembly}/wwwroot/css/site.css (100%) rename samples/{BlazorClientSide => BlazorWebAssembly}/wwwroot/index.html (91%) delete mode 100644 samples/WebApi/Controllers/PersonsController.cs delete mode 100644 samples/WebApi/Startup.cs delete mode 100644 samples/WebApi/WebApi.csproj delete mode 100644 samples/WebApi/appsettings.Development.json delete mode 100644 samples/WebApi/appsettings.json diff --git a/Blazored.Typeahead.sln b/Blazored.Typeahead.sln index fcf52e7..86f8666 100644 --- a/Blazored.Typeahead.sln +++ b/Blazored.Typeahead.sln @@ -5,13 +5,11 @@ VisualStudioVersion = 16.0.28822.285 MinimumVisualStudioVersion = 15.0.26124.0 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Blazored.Typeahead", "src\Blazored.Typeahead\Blazored.Typeahead.csproj", "{35F86DB0-5B44-471B-BCDB-8108CAE6E22F}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{B3DF8680-26E4-4B3D-830C-C82818CDC305}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Samples", "samples", "{B3DF8680-26E4-4B3D-830C-C82818CDC305}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BlazorClientSide", "samples\BlazorClientSide\BlazorClientSide.csproj", "{02224AF2-F404-4E34-A47E-C0D64FFFE033}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BlazorWebAssembly", "samples\BlazorWebAssembly\BlazorWebAssembly.csproj", "{02224AF2-F404-4E34-A47E-C0D64FFFE033}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BlazorServerSide", "samples\BlazorServerSide\BlazorServerSide.csproj", "{295531CC-56FE-492F-B647-AAFD66EC0A95}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebApi", "samples\WebApi\WebApi.csproj", "{5BB5FB1A-020A-4EA3-B15D-11E8832F1570}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BlazorServer", "samples\BlazorServer\BlazorServer.csproj", "{295531CC-56FE-492F-B647-AAFD66EC0A95}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Sample.Shared", "samples\Shared\Sample.Shared.csproj", "{20036DF3-3C2D-47E3-A3F4-2BC9329FDCF3}" EndProject @@ -67,18 +65,6 @@ Global {295531CC-56FE-492F-B647-AAFD66EC0A95}.Release|x64.Build.0 = Release|Any CPU {295531CC-56FE-492F-B647-AAFD66EC0A95}.Release|x86.ActiveCfg = Release|Any CPU {295531CC-56FE-492F-B647-AAFD66EC0A95}.Release|x86.Build.0 = Release|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Debug|x64.ActiveCfg = Debug|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Debug|x64.Build.0 = Debug|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Debug|x86.ActiveCfg = Debug|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Debug|x86.Build.0 = Debug|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Release|Any CPU.Build.0 = Release|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Release|x64.ActiveCfg = Release|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Release|x64.Build.0 = Release|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Release|x86.ActiveCfg = Release|Any CPU - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570}.Release|x86.Build.0 = Release|Any CPU {20036DF3-3C2D-47E3-A3F4-2BC9329FDCF3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {20036DF3-3C2D-47E3-A3F4-2BC9329FDCF3}.Debug|Any CPU.Build.0 = Debug|Any CPU {20036DF3-3C2D-47E3-A3F4-2BC9329FDCF3}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -98,7 +84,6 @@ Global GlobalSection(NestedProjects) = preSolution {02224AF2-F404-4E34-A47E-C0D64FFFE033} = {B3DF8680-26E4-4B3D-830C-C82818CDC305} {295531CC-56FE-492F-B647-AAFD66EC0A95} = {B3DF8680-26E4-4B3D-830C-C82818CDC305} - {5BB5FB1A-020A-4EA3-B15D-11E8832F1570} = {B3DF8680-26E4-4B3D-830C-C82818CDC305} {20036DF3-3C2D-47E3-A3F4-2BC9329FDCF3} = {B3DF8680-26E4-4B3D-830C-C82818CDC305} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution diff --git a/azure-pipelines.yml b/azure-pipelines.yml index b1a292b..7e3cc71 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -8,10 +8,12 @@ variables: buildConfiguration: 'Release' steps: -- task: DotNetCoreInstaller@0 - displayName: 'Installing .NET Core SDK...' +- task: UseDotNet@2 + displayName: 'Install .NET Core sdk' inputs: - version: 3.1.100 + packageType: sdk + version: 3.1.102 + installationPath: $(Agent.ToolsDirectory)/dotnet - task: NuGetToolInstaller@0 displayName: 'Installing NuGet Tools...' diff --git a/samples/BlazorClientSide/Pages/_Imports.razor b/samples/BlazorClientSide/Pages/_Imports.razor deleted file mode 100644 index 0f24eda..0000000 --- a/samples/BlazorClientSide/Pages/_Imports.razor +++ /dev/null @@ -1 +0,0 @@ -@layout MainLayout diff --git a/samples/BlazorClientSide/Program.cs b/samples/BlazorClientSide/Program.cs deleted file mode 100644 index 755f692..0000000 --- a/samples/BlazorClientSide/Program.cs +++ /dev/null @@ -1,16 +0,0 @@ -using Microsoft.AspNetCore.Blazor.Hosting; - -namespace BlazorClientSide -{ - public class Program - { - public static void Main(string[] args) - { - CreateHostBuilder(args).Build().Run(); - } - - public static IWebAssemblyHostBuilder CreateHostBuilder(string[] args) => - BlazorWebAssemblyHost.CreateDefaultBuilder() - .UseBlazorStartup(); - } -} diff --git a/samples/BlazorClientSide/Startup.cs b/samples/BlazorClientSide/Startup.cs deleted file mode 100644 index e99bb7c..0000000 --- a/samples/BlazorClientSide/Startup.cs +++ /dev/null @@ -1,17 +0,0 @@ -using Microsoft.AspNetCore.Components.Builder; -using Microsoft.Extensions.DependencyInjection; - -namespace BlazorClientSide -{ - public class Startup - { - public void ConfigureServices(IServiceCollection services) - { - } - - public void Configure(IComponentsApplicationBuilder app) - { - app.AddComponent("app"); - } - } -} diff --git a/samples/BlazorClientSide/App.razor b/samples/BlazorServer/App.razor similarity index 97% rename from samples/BlazorClientSide/App.razor rename to samples/BlazorServer/App.razor index e82daba..3838411 100644 --- a/samples/BlazorClientSide/App.razor +++ b/samples/BlazorServer/App.razor @@ -1,11 +1,11 @@ - - - - - - -

Page not found

-

Sorry, but there's nothing here!

-
-
+ + + + + + +

Page not found

+

Sorry, but there's nothing here!

+
+
\ No newline at end of file diff --git a/samples/BlazorServerSide/BlazorServerSide.csproj b/samples/BlazorServer/BlazorServer.csproj similarity index 100% rename from samples/BlazorServerSide/BlazorServerSide.csproj rename to samples/BlazorServer/BlazorServer.csproj diff --git a/samples/BlazorServerSide/Pages/Index.razor b/samples/BlazorServer/Pages/Index.razor similarity index 97% rename from samples/BlazorServerSide/Pages/Index.razor rename to samples/BlazorServer/Pages/Index.razor index a135a9a..a78cf0e 100644 --- a/samples/BlazorServerSide/Pages/Index.razor +++ b/samples/BlazorServer/Pages/Index.razor @@ -1,245 +1,245 @@ -@page "/" - -

Blazored Typeahead - Form

- - - - - - - @person.Firstname - - - Please enter at least 3 character to perform a search. - - - @person.Firstname @person.Lastname - - - - - - - -
- -@if (FormModel.SelectedPerson != null) -{ -
-

Selected Person: @FormModel.SelectedPerson.Firstname @FormModel.SelectedPerson.Lastname

-} - -
- -

Blazored Typeahead - Standalone

- - - - - @person.Firstname - - - @person.Firstname @person.Lastname - - - -
- -@if (SelectedPerson != null) -{ -

Selected: @SelectedPerson.Firstname @SelectedPerson.Lastname

-} - -
- -

Blazored Typeahead - Disabled

- - - - @person.Firstname - - - @person.Firstname @person.Lastname - - - - - -
- -

Blazored Typeahead - Disabled (Null Value)

- - - - @person.Firstname - - - @person.Firstname @person.Lastname - - - - - -
- -

Blazored Typeahead - Binding to different type

- - - - @{ - var selectedPerson = LoadSelectedPerson(personId); - - @selectedPerson?.Firstname @selectedPerson?.Lastname - } - - - @person.Firstname @person.Lastname (Id: @person.Id) - - - -
- -@if (SelectedPersonId != null && SelectedPersonId > 0) -{ -

Selected Person Id: @SelectedPersonId

-} - -
- -

Blazored Typeahead - Multi-select

- - - - @person.Firstname - - - Please enter a minimum of 2 characters to perform a search. - - - @person.Firstname @person.Lastname (Id: @person.Id) - - - -
- -@if (SelectedPeople != null) -{ -

Selected People:

- foreach (var person in SelectedPeople) - { -

@person.Firstname @person.Lastname

- } -} - - -@code { - - private bool IsDisabled = true; - private bool IsDisabledMulti; - - private List People = new List(); - - private Person SelectedPerson; - private Person SelectedPersonNull; - private int? SelectedPersonId; - private IList SelectedPeople; - private FormExample FormModel = new FormExample(); - - protected override void OnInitialized() - { - People.AddRange(new List() { - new Person() { Id = 1, Firstname = "Martelle", Lastname = "Cullon" }, - new Person() { Id = 2, Firstname = "Zelda", Lastname = "Abrahamsson" }, - new Person() { Id = 3, Firstname = "Benedetta", Lastname = "Posse" }, - new Person() { Id = 4, Firstname = "Benoite", Lastname = "Gobel" }, - new Person() { Id = 5, Firstname = "Charlot", Lastname = "Fullicks" }, - new Person() { Id = 6, Firstname = "Vinson", Lastname = "Turbat" }, - new Person() { Id = 7, Firstname = "Lenore", Lastname = "Malam" }, - new Person() { Id = 8, Firstname = "Emanuele", Lastname = "Kolakovic" }, - new Person() { Id = 9, Firstname = "Rosalyn", Lastname = "Mackin" }, - new Person() { Id = 10, Firstname = "Yanaton", Lastname = "Krishtopaittis" }, - new Person() { Id = 11, Firstname = "Frederik", Lastname = "McGeachie" }, - new Person() { Id = 12, Firstname = "Parrnell", Lastname = "Ramsby" }, - new Person() { Id = 13, Firstname = "Coreen", Lastname = "McGann" }, - new Person() { Id = 14, Firstname = "Kyle", Lastname = "Coster" }, - new Person() { Id = 15, Firstname = "Evangelia", Lastname = "Bowker" }, - new Person() { Id = 16, Firstname = "Angeli", Lastname = "Collihole" }, - new Person() { Id = 17, Firstname = "Bill", Lastname = "Lawther" }, - new Person() { Id = 18, Firstname = "Kore", Lastname = "Reide" }, - new Person() { Id = 19, Firstname = "Tracy", Lastname = "Gwinnell" }, - new Person() { Id = 20, Firstname = "Lazaro", Lastname = "Partington" }, - new Person() { Id = 21, Firstname = "Doretta", Lastname = "Aingell" }, - new Person() { Id = 22, Firstname = "Olvan", Lastname = "Andraud" }, - new Person() { Id = 23, Firstname = "Templeton", Lastname = "Chetwynd" }, - new Person() { Id = 24, Firstname = "Daile", Lastname = "Kelsow" }, - new Person() { Id = 25, Firstname = "Marcie", Lastname = "Brearty" }, - new Person() { Id = 26, Firstname = "Irwinn", Lastname = "Lilian" }, - new Person() { Id = 27, Firstname = "Niki", Lastname = "Moreland" }, - new Person() { Id = 28, Firstname = "Honey", Lastname = "Waddup" }, - new Person() { Id = 29, Firstname = "Amber", Lastname = "Hoopper" }, - new Person() { Id = 30, Firstname = "Delilah", Lastname = "Dougary" }, - new Person() { Id = 31, Firstname = "Tory", Lastname = "Ovington" }, - new Person() { Id = 32, Firstname = "Doralin", Lastname = "Conrard" }, - new Person() { Id = 33, Firstname = "Eugene", Lastname = "Custard" }, - new Person() { Id = 34, Firstname = "Corella", Lastname = "Peotz" }, - new Person() { Id = 35, Firstname = "Chris", Lastname = "Rayne" }, - new Person() { Id = 36, Firstname = "Alexandro", Lastname = "Kwietek" }, - new Person() { Id = 37, Firstname = "Selie", Lastname = "Tenwick" }, - new Person() { Id = 38, Firstname = "Corliss", Lastname = "Haensel" }, - new Person() { Id = 39, Firstname = "Misti", Lastname = "Jikylls" }, - new Person() { Id = 40, Firstname = "Rosaline", Lastname = "Jephson" }, - new Person() { Id = 41, Firstname = "Irene", Lastname = "Farnsworth" }, - new Person() { Id = 42, Firstname = "Dominique", Lastname = "O'Shiels" }, - new Person() { Id = 43, Firstname = "Mellie", Lastname = "Cyson" }, - new Person() { Id = 44, Firstname = "Madelena", Lastname = "Chin" }, - new Person() { Id = 45, Firstname = "Charlotte", Lastname = "Clixby" }, - new Person() { Id = 46, Firstname = "Samara", Lastname = "Shavel" }, - new Person() { Id = 47, Firstname = "Brod", Lastname = "Kitt" }, - new Person() { Id = 48, Firstname = "Maridel", Lastname = "Dalley" }, - new Person() { Id = 49, Firstname = "Wini", Lastname = "Hundley" }, - }); - - SelectedPerson = new Person(12, "Charles", "The Great", 66, "Belgium"); - } - - private async Task> GetPeopleLocal(string searchText) - { - return await Task.FromResult(People.Where(x => x.Firstname.ToLower().Contains(searchText.ToLower())).ToList()); - } - - private void HandleFormSubmit() - { - Console.WriteLine("Form Submitted Successfully!"); - } - - public int? ConvertPerson(Person person) - { - return person?.Id; - } - - public Person LoadSelectedPerson(int? id) - { - return People.FirstOrDefault(p => p.Id == id); - } -} +@page "/" + +

Blazored Typeahead - Form

+ + + + + + + @person.Firstname + + + Please enter at least 3 character to perform a search. + + + @person.Firstname @person.Lastname + + + + + + + +
+ +@if (FormModel.SelectedPerson != null) +{ +
+

Selected Person: @FormModel.SelectedPerson.Firstname @FormModel.SelectedPerson.Lastname

+} + +
+ +

Blazored Typeahead - Standalone

+ + + + + @person.Firstname + + + @person.Firstname @person.Lastname + + + +
+ +@if (SelectedPerson != null) +{ +

Selected: @SelectedPerson.Firstname @SelectedPerson.Lastname

+} + +
+ +

Blazored Typeahead - Disabled

+ + + + @person.Firstname + + + @person.Firstname @person.Lastname + + + + + +
+ +

Blazored Typeahead - Disabled (Null Value)

+ + + + @person.Firstname + + + @person.Firstname @person.Lastname + + + + + +
+ +

Blazored Typeahead - Binding to different type

+ + + + @{ + var selectedPerson = LoadSelectedPerson(personId); + + @selectedPerson?.Firstname @selectedPerson?.Lastname + } + + + @person.Firstname @person.Lastname (Id: @person.Id) + + + +
+ +@if (SelectedPersonId != null && SelectedPersonId > 0) +{ +

Selected Person Id: @SelectedPersonId

+} + +
+ +

Blazored Typeahead - Multi-select

+ + + + @person.Firstname + + + Please enter a minimum of 2 characters to perform a search. + + + @person.Firstname @person.Lastname (Id: @person.Id) + + + +
+ +@if (SelectedPeople != null) +{ +

Selected People:

+ foreach (var person in SelectedPeople) + { +

@person.Firstname @person.Lastname

+ } +} + + +@code { + + private bool IsDisabled = true; + private bool IsDisabledMulti; + + private List People = new List(); + + private Person SelectedPerson; + private Person SelectedPersonNull; + private int? SelectedPersonId; + private IList SelectedPeople; + private FormExample FormModel = new FormExample(); + + protected override void OnInitialized() + { + People.AddRange(new List() { + new Person() { Id = 1, Firstname = "Martelle", Lastname = "Cullon" }, + new Person() { Id = 2, Firstname = "Zelda", Lastname = "Abrahamsson" }, + new Person() { Id = 3, Firstname = "Benedetta", Lastname = "Posse" }, + new Person() { Id = 4, Firstname = "Benoite", Lastname = "Gobel" }, + new Person() { Id = 5, Firstname = "Charlot", Lastname = "Fullicks" }, + new Person() { Id = 6, Firstname = "Vinson", Lastname = "Turbat" }, + new Person() { Id = 7, Firstname = "Lenore", Lastname = "Malam" }, + new Person() { Id = 8, Firstname = "Emanuele", Lastname = "Kolakovic" }, + new Person() { Id = 9, Firstname = "Rosalyn", Lastname = "Mackin" }, + new Person() { Id = 10, Firstname = "Yanaton", Lastname = "Krishtopaittis" }, + new Person() { Id = 11, Firstname = "Frederik", Lastname = "McGeachie" }, + new Person() { Id = 12, Firstname = "Parrnell", Lastname = "Ramsby" }, + new Person() { Id = 13, Firstname = "Coreen", Lastname = "McGann" }, + new Person() { Id = 14, Firstname = "Kyle", Lastname = "Coster" }, + new Person() { Id = 15, Firstname = "Evangelia", Lastname = "Bowker" }, + new Person() { Id = 16, Firstname = "Angeli", Lastname = "Collihole" }, + new Person() { Id = 17, Firstname = "Bill", Lastname = "Lawther" }, + new Person() { Id = 18, Firstname = "Kore", Lastname = "Reide" }, + new Person() { Id = 19, Firstname = "Tracy", Lastname = "Gwinnell" }, + new Person() { Id = 20, Firstname = "Lazaro", Lastname = "Partington" }, + new Person() { Id = 21, Firstname = "Doretta", Lastname = "Aingell" }, + new Person() { Id = 22, Firstname = "Olvan", Lastname = "Andraud" }, + new Person() { Id = 23, Firstname = "Templeton", Lastname = "Chetwynd" }, + new Person() { Id = 24, Firstname = "Daile", Lastname = "Kelsow" }, + new Person() { Id = 25, Firstname = "Marcie", Lastname = "Brearty" }, + new Person() { Id = 26, Firstname = "Irwinn", Lastname = "Lilian" }, + new Person() { Id = 27, Firstname = "Niki", Lastname = "Moreland" }, + new Person() { Id = 28, Firstname = "Honey", Lastname = "Waddup" }, + new Person() { Id = 29, Firstname = "Amber", Lastname = "Hoopper" }, + new Person() { Id = 30, Firstname = "Delilah", Lastname = "Dougary" }, + new Person() { Id = 31, Firstname = "Tory", Lastname = "Ovington" }, + new Person() { Id = 32, Firstname = "Doralin", Lastname = "Conrard" }, + new Person() { Id = 33, Firstname = "Eugene", Lastname = "Custard" }, + new Person() { Id = 34, Firstname = "Corella", Lastname = "Peotz" }, + new Person() { Id = 35, Firstname = "Chris", Lastname = "Rayne" }, + new Person() { Id = 36, Firstname = "Alexandro", Lastname = "Kwietek" }, + new Person() { Id = 37, Firstname = "Selie", Lastname = "Tenwick" }, + new Person() { Id = 38, Firstname = "Corliss", Lastname = "Haensel" }, + new Person() { Id = 39, Firstname = "Misti", Lastname = "Jikylls" }, + new Person() { Id = 40, Firstname = "Rosaline", Lastname = "Jephson" }, + new Person() { Id = 41, Firstname = "Irene", Lastname = "Farnsworth" }, + new Person() { Id = 42, Firstname = "Dominique", Lastname = "O'Shiels" }, + new Person() { Id = 43, Firstname = "Mellie", Lastname = "Cyson" }, + new Person() { Id = 44, Firstname = "Madelena", Lastname = "Chin" }, + new Person() { Id = 45, Firstname = "Charlotte", Lastname = "Clixby" }, + new Person() { Id = 46, Firstname = "Samara", Lastname = "Shavel" }, + new Person() { Id = 47, Firstname = "Brod", Lastname = "Kitt" }, + new Person() { Id = 48, Firstname = "Maridel", Lastname = "Dalley" }, + new Person() { Id = 49, Firstname = "Wini", Lastname = "Hundley" }, + }); + + SelectedPerson = new Person(12, "Charles", "The Great", 66, "Belgium"); + } + + private async Task> GetPeopleLocal(string searchText) + { + return await Task.FromResult(People.Where(x => x.Firstname.ToLower().Contains(searchText.ToLower())).ToList()); + } + + private void HandleFormSubmit() + { + Console.WriteLine("Form Submitted Successfully!"); + } + + public int? ConvertPerson(Person person) + { + return person?.Id; + } + + public Person LoadSelectedPerson(int? id) + { + return People.FirstOrDefault(p => p.Id == id); + } +} diff --git a/samples/BlazorServerSide/Pages/_Host.cshtml b/samples/BlazorServer/Pages/_Host.cshtml similarity index 94% rename from samples/BlazorServerSide/Pages/_Host.cshtml rename to samples/BlazorServer/Pages/_Host.cshtml index ef947bb..2822f35 100644 --- a/samples/BlazorServerSide/Pages/_Host.cshtml +++ b/samples/BlazorServer/Pages/_Host.cshtml @@ -1,5 +1,5 @@ @page "/" -@namespace BlazorServerSide.Pages +@namespace BlazorServer.Pages @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers @@ -7,7 +7,7 @@ - BlazorServerSide + Blazored Typeahead - Server diff --git a/samples/WebApi/Program.cs b/samples/BlazorServer/Program.cs similarity index 72% rename from samples/WebApi/Program.cs rename to samples/BlazorServer/Program.cs index a469b60..1f2b71a 100644 --- a/samples/WebApi/Program.cs +++ b/samples/BlazorServer/Program.cs @@ -1,13 +1,7 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; using Microsoft.AspNetCore.Hosting; -using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Hosting; -using Microsoft.Extensions.Logging; -namespace WebApi +namespace BlazorServer { public class Program { diff --git a/samples/BlazorServerSide/Shared/MainLayout.razor b/samples/BlazorServer/Shared/MainLayout.razor similarity index 100% rename from samples/BlazorServerSide/Shared/MainLayout.razor rename to samples/BlazorServer/Shared/MainLayout.razor diff --git a/samples/BlazorServerSide/Shared/NavMenu.razor b/samples/BlazorServer/Shared/NavMenu.razor similarity index 92% rename from samples/BlazorServerSide/Shared/NavMenu.razor rename to samples/BlazorServer/Shared/NavMenu.razor index 5a8e2e5..ae4a65c 100644 --- a/samples/BlazorServerSide/Shared/NavMenu.razor +++ b/samples/BlazorServer/Shared/NavMenu.razor @@ -1,5 +1,5 @@