diff --git a/.gitignore b/.gitignore index 57a1574..eb20f6f 100644 --- a/.gitignore +++ b/.gitignore @@ -129,7 +129,7 @@ publish/ # Publish Web Output *.[Pp]ublish.xml *.azurePubxml -# TODO: Comment the next line if you want to checkin your web deploy settings +# TODO: Comment the next line if you want to checkin your web deploy settings # but database connection strings (with potential passwords) will be unencrypted *.pubxml *.publishproj @@ -143,6 +143,9 @@ publish/ # Uncomment if necessary however generally it will be regenerated when needed #!**/packages/repositories.config +#ignore bower +**/wwwroot/lib/* + # Windows Azure Build Output csx/ *.build.csdef diff --git a/src/GenericMvc.Test.App/Views/Shared/_Layout.cshtml b/src/GenericMvc.Test.App/Views/Shared/_Layout.cshtml index ed20b5a..9b36b20 100644 --- a/src/GenericMvc.Test.App/Views/Shared/_Layout.cshtml +++ b/src/GenericMvc.Test.App/Views/Shared/_Layout.cshtml @@ -1,68 +1,78 @@  - - - @ViewData["Title"] - GenericMvc.Test.App - - - - - - - - - + + + @ViewData["Title"] - Test Website + + + + + + + + + + + @RenderSection("stylesheets", required: false) - -
- @RenderBody() -
- -
+ + @*style="padding-top: 65px"*@ +
+ @RenderBody() +
+ + + + + + + + + + + @RenderSection("scripts", required: false) + - - - - - - - - + autosize(document.querySelectorAll('textarea')); - @RenderSection("scripts", required: false) + $("select").dropdown({ "autoinit": "select" }); + }); + - + \ No newline at end of file diff --git a/src/GenericMvc.Test.App/bower.json b/src/GenericMvc.Test.App/bower.json index 69159b6..ccaf38f 100644 --- a/src/GenericMvc.Test.App/bower.json +++ b/src/GenericMvc.Test.App/bower.json @@ -1,10 +1,16 @@ { - "name": "asp.net", + "name": "ASP.NET", "private": true, "dependencies": { - "bootstrap": "3.3.6", - "jquery": "2.2.0", - "jquery-validation": "1.14.0", - "jquery-validation-unobtrusive": "3.2.6" + "bootstrap": "3.3.6", + "bootstrap-material-design": "0.5.9", + "jquery": "2.2.0", + "jquery-validation": "1.15.1", + "jquery-validation-unobtrusive": "3.2.6", + "jquery-autosize": "3.0.17", + "dropdown.js": "*" + }, + "resolutions": { + "jquery": ">=1.8" } } diff --git a/src/GenericMvc.Test.App/project.json b/src/GenericMvc.Test.App/project.json index 241224b..bcb7da6 100644 --- a/src/GenericMvc.Test.App/project.json +++ b/src/GenericMvc.Test.App/project.json @@ -11,15 +11,15 @@ "type": "build" }, "Microsoft.AspNetCore.Routing": "1.1.0", - "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0", - "Microsoft.AspNetCore.Server.Kestrel": "1.0.1", + "Microsoft.AspNetCore.Server.IISIntegration": "1.1.0", + "Microsoft.AspNetCore.Server.Kestrel": "1.1.0", "Microsoft.AspNetCore.StaticFiles": "1.1.0", - "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0", - "Microsoft.Extensions.Configuration.Json": "1.0.0", + "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0", + "Microsoft.Extensions.Configuration.Json": "1.1.0", "Microsoft.Extensions.Logging": "1.1.0", "Microsoft.Extensions.Logging.Console": "1.1.0", "Microsoft.Extensions.Logging.Debug": "1.1.0", - "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0", + "Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0", "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0", "GenericMvc": { "target": "project" }, "Microsoft.EntityFrameworkCore": "1.1.0", diff --git a/src/GenericMvc.Test.App/project.lock.json b/src/GenericMvc.Test.App/project.lock.json index af674bb..0afbcee 100644 --- a/src/GenericMvc.Test.App/project.lock.json +++ b/src/GenericMvc.Test.App/project.lock.json @@ -234,32 +234,31 @@ "lib/netstandard1.0/Microsoft.AspNetCore.Diagnostics.Abstractions.dll": {} } }, - "Microsoft.AspNetCore.Hosting/1.0.0": { + "Microsoft.AspNetCore.Hosting/1.1.0": { "type": "package", "dependencies": { - "Microsoft.AspNetCore.Hosting.Abstractions": "1.0.0", - "Microsoft.AspNetCore.Hosting.Server.Abstractions": "1.0.0", - "Microsoft.AspNetCore.Http": "1.0.0", - "Microsoft.AspNetCore.Http.Extensions": "1.0.0", - "Microsoft.Extensions.Configuration": "1.0.0", - "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0", - "Microsoft.Extensions.DependencyInjection": "1.0.0", - "Microsoft.Extensions.FileProviders.Physical": "1.0.0", - "Microsoft.Extensions.Logging": "1.0.0", - "Microsoft.Extensions.Options": "1.0.0", - "Microsoft.Extensions.PlatformAbstractions": "1.0.0", - "System.Console": "4.0.0", - "System.Diagnostics.DiagnosticSource": "4.0.0", - "System.Diagnostics.StackTrace": "4.0.1", - "System.Reflection.Extensions": "4.0.1", - "System.Reflection.Metadata": "1.3.0", - "System.Runtime.InteropServices.RuntimeInformation": "4.0.0" + "Microsoft.AspNetCore.Hosting.Abstractions": "1.1.0", + "Microsoft.AspNetCore.Hosting.Server.Abstractions": "1.1.0", + "Microsoft.AspNetCore.Http": "1.1.0", + "Microsoft.AspNetCore.Http.Extensions": "1.1.0", + "Microsoft.Extensions.Configuration": "1.1.0", + "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0", + "Microsoft.Extensions.DependencyInjection": "1.1.0", + "Microsoft.Extensions.FileProviders.Physical": "1.1.0", + "Microsoft.Extensions.Logging": "1.1.0", + "Microsoft.Extensions.Options": "1.1.0", + "Microsoft.Extensions.PlatformAbstractions": "1.1.0", + "NETStandard.Library": "1.6.1", + "System.Diagnostics.DiagnosticSource": "4.3.0", + "System.Diagnostics.StackTrace": "4.3.0", + "System.Reflection.Metadata": "1.4.1", + "System.Runtime.Loader": "4.3.0" }, "compile": { - "lib/netstandard1.3/Microsoft.AspNetCore.Hosting.dll": {} + "lib/netstandard1.5/Microsoft.AspNetCore.Hosting.dll": {} }, "runtime": { - "lib/netstandard1.3/Microsoft.AspNetCore.Hosting.dll": {} + "lib/netstandard1.5/Microsoft.AspNetCore.Hosting.dll": {} } }, "Microsoft.AspNetCore.Hosting.Abstractions/1.1.0": { @@ -375,12 +374,13 @@ "lib/netstandard1.3/Microsoft.AspNetCore.Http.Features.dll": {} } }, - "Microsoft.AspNetCore.HttpOverrides/1.0.0": { + "Microsoft.AspNetCore.HttpOverrides/1.1.0": { "type": "package", "dependencies": { - "Microsoft.AspNetCore.Http.Extensions": "1.0.0", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0", - "Microsoft.Extensions.Options": "1.0.0" + "Microsoft.AspNetCore.Http.Extensions": "1.1.0", + "Microsoft.Extensions.Logging.Abstractions": "1.1.0", + "Microsoft.Extensions.Options": "1.1.0", + "NETStandard.Library": "1.6.1" }, "compile": { "lib/netstandard1.3/Microsoft.AspNetCore.HttpOverrides.dll": {} @@ -761,16 +761,17 @@ "lib/netstandard1.3/Microsoft.AspNetCore.Routing.Abstractions.dll": {} } }, - "Microsoft.AspNetCore.Server.IISIntegration/1.0.0": { + "Microsoft.AspNetCore.Server.IISIntegration/1.1.0": { "type": "package", "dependencies": { - "Microsoft.AspNetCore.Hosting.Abstractions": "1.0.0", - "Microsoft.AspNetCore.Http": "1.0.0", - "Microsoft.AspNetCore.Http.Extensions": "1.0.0", - "Microsoft.AspNetCore.HttpOverrides": "1.0.0", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0", - "Microsoft.Extensions.Options": "1.0.0", - "System.Security.Principal.Windows": "4.0.0" + "Microsoft.AspNetCore.Hosting.Abstractions": "1.1.0", + "Microsoft.AspNetCore.Http": "1.1.0", + "Microsoft.AspNetCore.Http.Extensions": "1.1.0", + "Microsoft.AspNetCore.HttpOverrides": "1.1.0", + "Microsoft.Extensions.Logging.Abstractions": "1.1.0", + "Microsoft.Extensions.Options": "1.1.0", + "NETStandard.Library": "1.6.1", + "System.Security.Principal.Windows": "4.3.0" }, "compile": { "lib/netstandard1.3/Microsoft.AspNetCore.Server.IISIntegration.dll": {} @@ -779,30 +780,18 @@ "lib/netstandard1.3/Microsoft.AspNetCore.Server.IISIntegration.dll": {} } }, - "Microsoft.AspNetCore.Server.Kestrel/1.0.1": { + "Microsoft.AspNetCore.Server.Kestrel/1.1.0": { "type": "package", "dependencies": { - "Libuv": "1.9.0", - "Microsoft.AspNetCore.Hosting": "1.0.0", - "Microsoft.Extensions.Logging.Abstractions": "1.0.0", - "System.Buffers": "4.0.0", - "System.Collections": "4.0.11", - "System.Diagnostics.Debug": "4.0.11", - "System.Globalization": "4.0.11", - "System.IO": "4.1.0", - "System.Linq": "4.1.0", - "System.Net.Primitives": "4.0.11", - "System.Numerics.Vectors": "4.1.1", - "System.Runtime.Extensions": "4.1.0", - "System.Runtime.InteropServices": "4.1.0", - "System.Runtime.InteropServices.RuntimeInformation": "4.0.0", - "System.Text.Encoding": "4.0.11", - "System.Threading": "4.0.11", - "System.Threading.Tasks": "4.0.11", - "System.Threading.Tasks.Extensions": "4.0.0", - "System.Threading.Thread": "4.0.0", - "System.Threading.ThreadPool": "4.0.10", - "System.Threading.Timer": "4.0.1" + "Libuv": "1.9.1", + "Microsoft.AspNetCore.Hosting": "1.1.0", + "Microsoft.Extensions.Logging.Abstractions": "1.1.0", + "NETStandard.Library": "1.6.1", + "System.Buffers": "4.3.0", + "System.Numerics.Vectors": "4.3.0", + "System.Threading.Tasks.Extensions": "4.3.0", + "System.Threading.Thread": "4.3.0", + "System.Threading.ThreadPool": "4.3.0" }, "compile": { "lib/netstandard1.3/Microsoft.AspNetCore.Server.Kestrel.dll": {} @@ -1113,17 +1102,11 @@ "lib/netstandard1.3/Microsoft.Extensions.CommandLineUtils.dll": {} } }, - "Microsoft.Extensions.Configuration/1.0.0": { + "Microsoft.Extensions.Configuration/1.1.0": { "type": "package", "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0", - "System.Collections": "4.0.11", - "System.Diagnostics.Debug": "4.0.11", - "System.IO": "4.1.0", - "System.Resources.ResourceManager": "4.0.1", - "System.Runtime.Extensions": "4.1.0", - "System.Runtime.InteropServices": "4.1.0", - "System.Threading": "4.0.11" + "Microsoft.Extensions.Configuration.Abstractions": "1.1.0", + "NETStandard.Library": "1.6.1" }, "compile": { "lib/netstandard1.1/Microsoft.Extensions.Configuration.dll": {} @@ -1145,11 +1128,12 @@ "lib/netstandard1.0/Microsoft.Extensions.Configuration.Abstractions.dll": {} } }, - "Microsoft.Extensions.Configuration.Binder/1.0.0": { + "Microsoft.Extensions.Configuration.Binder/1.1.0": { "type": "package", "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0", - "System.ComponentModel.TypeConverter": "4.1.0" + "Microsoft.Extensions.Configuration": "1.1.0", + "NETStandard.Library": "1.6.1", + "System.ComponentModel.TypeConverter": "4.3.0" }, "compile": { "lib/netstandard1.1/Microsoft.Extensions.Configuration.Binder.dll": {} @@ -1158,10 +1142,11 @@ "lib/netstandard1.1/Microsoft.Extensions.Configuration.Binder.dll": {} } }, - "Microsoft.Extensions.Configuration.EnvironmentVariables/1.0.0": { + "Microsoft.Extensions.Configuration.EnvironmentVariables/1.1.0": { "type": "package", "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0" + "Microsoft.Extensions.Configuration": "1.1.0", + "NETStandard.Library": "1.6.1" }, "compile": { "lib/netstandard1.3/Microsoft.Extensions.Configuration.EnvironmentVariables.dll": {} @@ -1170,12 +1155,13 @@ "lib/netstandard1.3/Microsoft.Extensions.Configuration.EnvironmentVariables.dll": {} } }, - "Microsoft.Extensions.Configuration.FileExtensions/1.0.0": { + "Microsoft.Extensions.Configuration.FileExtensions/1.1.0": { "type": "package", "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0", - "Microsoft.Extensions.FileProviders.Physical": "1.0.0", - "System.AppContext": "4.1.0" + "Microsoft.Extensions.Configuration": "1.1.0", + "Microsoft.Extensions.FileProviders.Physical": "1.1.0", + "NETStandard.Library": "1.6.1", + "System.Threading.Thread": "4.3.0" }, "compile": { "lib/netstandard1.3/Microsoft.Extensions.Configuration.FileExtensions.dll": {} @@ -1184,15 +1170,15 @@ "lib/netstandard1.3/Microsoft.Extensions.Configuration.FileExtensions.dll": {} } }, - "Microsoft.Extensions.Configuration.Json/1.0.0": { + "Microsoft.Extensions.Configuration.Json/1.1.0": { "type": "package", "dependencies": { - "Microsoft.Extensions.Configuration": "1.0.0", - "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0", + "Microsoft.Extensions.Configuration": "1.1.0", + "Microsoft.Extensions.Configuration.FileExtensions": "1.1.0", + "NETStandard.Library": "1.6.1", "Newtonsoft.Json": "9.0.1", - "System.Dynamic.Runtime": "4.0.11", - "System.IO.FileSystem": "4.0.1", - "System.Runtime.Serialization.Primitives": "4.1.1" + "System.Dynamic.Runtime": "4.3.0", + "System.Runtime.Serialization.Primitives": "4.3.0" }, "compile": { "lib/netstandard1.3/Microsoft.Extensions.Configuration.Json.dll": {} @@ -1431,13 +1417,14 @@ "lib/netstandard1.0/Microsoft.Extensions.Options.dll": {} } }, - "Microsoft.Extensions.Options.ConfigurationExtensions/1.0.0": { + "Microsoft.Extensions.Options.ConfigurationExtensions/1.1.0": { "type": "package", "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "1.0.0", - "Microsoft.Extensions.Configuration.Binder": "1.0.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "1.0.0", - "Microsoft.Extensions.Options": "1.0.0" + "Microsoft.Extensions.Configuration.Abstractions": "1.1.0", + "Microsoft.Extensions.Configuration.Binder": "1.1.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "1.1.0", + "Microsoft.Extensions.Options": "1.1.0", + "NETStandard.Library": "1.6.1" }, "compile": { "lib/netstandard1.1/Microsoft.Extensions.Options.ConfigurationExtensions.dll": {} @@ -3166,13 +3153,13 @@ "lib/netstandard1.3/System.Net.WebSockets.dll": {} } }, - "System.Numerics.Vectors/4.1.1": { + "System.Numerics.Vectors/4.3.0": { "type": "package", "dependencies": { - "System.Globalization": "4.0.11", - "System.Resources.ResourceManager": "4.0.1", - "System.Runtime": "4.1.0", - "System.Runtime.Extensions": "4.1.0" + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" }, "compile": { "ref/netstandard1.0/System.Numerics.Vectors.dll": {} @@ -4078,11 +4065,11 @@ "lib/netstandard1.3/System.Threading.Thread.dll": {} } }, - "System.Threading.ThreadPool/4.0.10": { + "System.Threading.ThreadPool/4.3.0": { "type": "package", "dependencies": { - "System.Runtime": "4.1.0", - "System.Runtime.Handles": "4.0.1" + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" }, "compile": { "ref/netstandard1.3/System.Threading.ThreadPool.dll": {} @@ -4240,7 +4227,7 @@ "lib/netstandard1.3/System.Xml.XPath.XDocument.dll": {} } }, - "GenericMvc/1.0.1": { + "GenericMvc/1.0.2": { "type": "project", "framework": ".NETStandard,Version=v1.6", "dependencies": { @@ -4289,7 +4276,7 @@ ] }, "Libuv/1.9.1": { - "sha512": "w/nipgixCOpOkNadwldldQlN5y8BLG9UEVXpYdqc9Sevwloq2751OR51FyGQn/Ixgo8bte2sbYQSvEoRkcHGnA==", + "sha512": "uqX2Frwf9PW8MaY7PRNY6HM5BpW1D8oj1EdqzrmbEFD5nH63Yat3aEjN/tws6Tw6Fk7LwmLBvtUh32tTeTaHiA==", "type": "package", "path": "Libuv/1.9.1", "files": [ @@ -4447,17 +4434,19 @@ "lib/netstandard1.0/Microsoft.AspNetCore.Diagnostics.Abstractions.xml" ] }, - "Microsoft.AspNetCore.Hosting/1.0.0": { - "sha512": "0M7ZRAxTmGHOQV3B5Lm30VBg33uxxkPIKAxMc/C9yFBMPWPfk6V1uvb2ZL5eEPlo9/MZooITyMcGBQUHiakFjg==", + "Microsoft.AspNetCore.Hosting/1.1.0": { + "sha512": "yNiCwtCi1mYfTjLyHWQt4A3QRd84ok8XxuTP4wSnr6aT3bIzI7upstGe7diaEDirmku10qnISC/8CsMTG4xd4w==", "type": "package", - "path": "Microsoft.AspNetCore.Hosting/1.0.0", + "path": "Microsoft.AspNetCore.Hosting/1.1.0", "files": [ - "Microsoft.AspNetCore.Hosting.1.0.0.nupkg.sha512", + "Microsoft.AspNetCore.Hosting.1.1.0.nupkg.sha512", "Microsoft.AspNetCore.Hosting.nuspec", "lib/net451/Microsoft.AspNetCore.Hosting.dll", "lib/net451/Microsoft.AspNetCore.Hosting.xml", "lib/netstandard1.3/Microsoft.AspNetCore.Hosting.dll", - "lib/netstandard1.3/Microsoft.AspNetCore.Hosting.xml" + "lib/netstandard1.3/Microsoft.AspNetCore.Hosting.xml", + "lib/netstandard1.5/Microsoft.AspNetCore.Hosting.dll", + "lib/netstandard1.5/Microsoft.AspNetCore.Hosting.xml" ] }, "Microsoft.AspNetCore.Hosting.Abstractions/1.1.0": { @@ -4549,12 +4538,12 @@ "lib/netstandard1.3/Microsoft.AspNetCore.Http.Features.xml" ] }, - "Microsoft.AspNetCore.HttpOverrides/1.0.0": { - "sha512": "gHpdaaAzhaTWJZuJVo3ler2zzdQWrm8wnsoSjcNtoZZdTOkwImndRwK8o4GYoM18dfmfNheM7i4EENI7XHM/lA==", + "Microsoft.AspNetCore.HttpOverrides/1.1.0": { + "sha512": "nvNbiYTQZhOWIT9zjhbzIMJTRwcJXGx8DqzMRKcrlGeRNG9ysa3M/hEBrxAp8NKIJeVtnp/n46MhLgmx0CLJWw==", "type": "package", - "path": "Microsoft.AspNetCore.HttpOverrides/1.0.0", + "path": "Microsoft.AspNetCore.HttpOverrides/1.1.0", "files": [ - "Microsoft.AspNetCore.HttpOverrides.1.0.0.nupkg.sha512", + "Microsoft.AspNetCore.HttpOverrides.1.1.0.nupkg.sha512", "Microsoft.AspNetCore.HttpOverrides.nuspec", "lib/net451/Microsoft.AspNetCore.HttpOverrides.dll", "lib/net451/Microsoft.AspNetCore.HttpOverrides.xml", @@ -4865,12 +4854,12 @@ "lib/netstandard1.3/Microsoft.AspNetCore.Routing.Abstractions.xml" ] }, - "Microsoft.AspNetCore.Server.IISIntegration/1.0.0": { - "sha512": "xmn6EivvL4Ymo7LP+Jc49WLcIiYsUiujZo0loEbAg473nY2dIHxcxncpFAKzPf/MzqN0qBtaXEP0igYJ813H3Q==", + "Microsoft.AspNetCore.Server.IISIntegration/1.1.0": { + "sha512": "Z/K/RsUUh6Cfc8W+uP0IeXu8NJP/7li+E3ep+u4t9McrDUdJMrfgfBSPC5SrrUkTZjrt9udQS6JLrB6v3b8pag==", "type": "package", - "path": "Microsoft.AspNetCore.Server.IISIntegration/1.0.0", + "path": "Microsoft.AspNetCore.Server.IISIntegration/1.1.0", "files": [ - "Microsoft.AspNetCore.Server.IISIntegration.1.0.0.nupkg.sha512", + "Microsoft.AspNetCore.Server.IISIntegration.1.1.0.nupkg.sha512", "Microsoft.AspNetCore.Server.IISIntegration.nuspec", "lib/net451/Microsoft.AspNetCore.Server.IISIntegration.dll", "lib/net451/Microsoft.AspNetCore.Server.IISIntegration.xml", @@ -4878,12 +4867,12 @@ "lib/netstandard1.3/Microsoft.AspNetCore.Server.IISIntegration.xml" ] }, - "Microsoft.AspNetCore.Server.Kestrel/1.0.1": { - "sha512": "GrTVDsRR6j2WrrTuNsZkG1R8aV1UbsA8TKUD+MKVSpXIoEpQNryCT181Zu94CARowQwFQdW4Q1DwfO4FdAhXiQ==", + "Microsoft.AspNetCore.Server.Kestrel/1.1.0": { + "sha512": "PbVYQUVxOwtrl9YCnw8ykXSufELVeEuASYahVh1F7B4LYVtcqwyV5+FhXlJkboGM4ozKMrdhB5w/tlLLcmHxNA==", "type": "package", - "path": "Microsoft.AspNetCore.Server.Kestrel/1.0.1", + "path": "Microsoft.AspNetCore.Server.Kestrel/1.1.0", "files": [ - "Microsoft.AspNetCore.Server.Kestrel.1.0.1.nupkg.sha512", + "Microsoft.AspNetCore.Server.Kestrel.1.1.0.nupkg.sha512", "Microsoft.AspNetCore.Server.Kestrel.nuspec", "lib/net451/Microsoft.AspNetCore.Server.Kestrel.dll", "lib/net451/Microsoft.AspNetCore.Server.Kestrel.xml", @@ -4918,7 +4907,7 @@ ] }, "Microsoft.CodeAnalysis.Analyzers/1.1.0": { - "sha512": "po00hTqcUBfnGqshDgRoKlSUsKJcEtCtjkM1SSbOdGah3CDbzim2yGZKyMK5qIIeAnmm8Phw7dIvThn5Ota3/A==", + "sha512": "C9kQ6p03b1Wgbtnp+pbNlgRo0C6myPRT2OIied6422vADZQlMjZuKoe0UajIqFVlElyvT9bCcEYr40HUbNEOpA==", "type": "package", "path": "Microsoft.CodeAnalysis.Analyzers/1.1.0", "files": [ @@ -4934,7 +4923,7 @@ ] }, "Microsoft.CodeAnalysis.Common/1.3.0": { - "sha512": "LPNgStBUGbfzbDi0KaOxvF/jvw9V4ZFClcWVPIilcFgkJDeuSiVEnjj4iCgZI1hbao/NDuxpcNVP/As8BjvHSA==", + "sha512": "GbxzJqVI9X4Mve2rOyx22pX19Mo65jCdgWDpCacfYyiKyM7EdLsf9MN8qLDhvRoYu8z1TMR9ItVHmTcS65B0WA==", "type": "package", "path": "Microsoft.CodeAnalysis.Common/1.3.0", "files": [ @@ -4950,7 +4939,7 @@ ] }, "Microsoft.CodeAnalysis.CSharp/1.3.0": { - "sha512": "EVdVDqbMpBgbTnDnKNSRCcsKyZwvcebh2YuP9eSVz6DYtfmrLh/kuxBBbVIdqXL+jNkSIr1VhXmfLWzSREMDkg==", + "sha512": "KrSWg9sp5bhvS2ZqVCglUFHPLaNKzTCdKXmzd++ntoooryngI5pcm4ZrfJAbDeBSg4Eam7VEMElIefM0BAjg4A==", "type": "package", "path": "Microsoft.CodeAnalysis.CSharp/1.3.0", "files": [ @@ -4966,7 +4955,7 @@ ] }, "Microsoft.CodeAnalysis.VisualBasic/1.3.0": { - "sha512": "EzR0OTBPAjwd9IkEhERaRfBjBP3qXZW0H62VYIPt3Vti1Za3/9L+UwDbsqANSCrTifNVbfTNSFu8hnSGcy7gHQ==", + "sha512": "6aPyC2xgaWV6vwk0HkkEMzgoX/gXapIl5bsoQWjaf6tUiVqQ+TbiP669LWyb4KG98F6flNUwMwOUE/E4bvlp7g==", "type": "package", "path": "Microsoft.CodeAnalysis.VisualBasic/1.3.0", "files": [ @@ -4982,7 +4971,7 @@ ] }, "Microsoft.CSharp/4.3.0": { - "sha512": "EHQ4Pf362i32BaJrsSkuh8SVxTwqOHlDAyiiD0ibb0w3fdzumCsZQsJ9j02bOPFiXer32AeArVyV/S/DUl8U0g==", + "sha512": "P+MBhIM0YX+JqROuf7i306ZLJEjQYA9uUyRDE+OqwUI5sh41e2ZbPQV3LfAPh+29cmceE1pUffXsGfR4eMY3KA==", "type": "package", "path": "Microsoft.CSharp/4.3.0", "files": [ @@ -5157,12 +5146,12 @@ "lib/netstandard1.3/Microsoft.Extensions.CommandLineUtils.xml" ] }, - "Microsoft.Extensions.Configuration/1.0.0": { - "sha512": "hR4yYebruRp6qyFnV3RW4qrnEb0J1LnMmQbj50AUA423V8dMs4E3YAohsyRyGBFnpbJ+KKzieSG/n2A6T0klZQ==", + "Microsoft.Extensions.Configuration/1.1.0": { + "sha512": "iqp8UepCsS902j0kPO/d7hrd9PSyK7l84UFlpqdV8QY+/pMUY5k8wlAIuN6mWdW97HI8a8BJyvjhJbJps2GwZw==", "type": "package", - "path": "Microsoft.Extensions.Configuration/1.0.0", + "path": "Microsoft.Extensions.Configuration/1.1.0", "files": [ - "Microsoft.Extensions.Configuration.1.0.0.nupkg.sha512", + "Microsoft.Extensions.Configuration.1.1.0.nupkg.sha512", "Microsoft.Extensions.Configuration.nuspec", "lib/netstandard1.1/Microsoft.Extensions.Configuration.dll", "lib/netstandard1.1/Microsoft.Extensions.Configuration.xml" @@ -5179,23 +5168,23 @@ "lib/netstandard1.0/Microsoft.Extensions.Configuration.Abstractions.xml" ] }, - "Microsoft.Extensions.Configuration.Binder/1.0.0": { - "sha512": "kK8QuBcPQtmKJCkC9enc1uMRFa++mPTuVNm2K5jDVXcAYKRBcFSbdEBvIe1JIgA6dEsAQeqjfHfKSaUJ8f5NFQ==", + "Microsoft.Extensions.Configuration.Binder/1.1.0": { + "sha512": "1dTFEL493MfC5O7MNaElQBhX4txb9ivSmTMwB3qDqEJHXnnUdgThTChn32FjhLIA6Fn7YXjqkZzAB/LdZEKupw==", "type": "package", - "path": "Microsoft.Extensions.Configuration.Binder/1.0.0", + "path": "Microsoft.Extensions.Configuration.Binder/1.1.0", "files": [ - "Microsoft.Extensions.Configuration.Binder.1.0.0.nupkg.sha512", + "Microsoft.Extensions.Configuration.Binder.1.1.0.nupkg.sha512", "Microsoft.Extensions.Configuration.Binder.nuspec", "lib/netstandard1.1/Microsoft.Extensions.Configuration.Binder.dll", "lib/netstandard1.1/Microsoft.Extensions.Configuration.Binder.xml" ] }, - "Microsoft.Extensions.Configuration.EnvironmentVariables/1.0.0": { - "sha512": "A0yqS98VtPNlFkFI7YBlwkAekUHE/9mMeNc+K4RmgTjCrskuk6pX3LGhDU7aD5CPYc9Px7M2To/2u4xDSnRikg==", + "Microsoft.Extensions.Configuration.EnvironmentVariables/1.1.0": { + "sha512": "7AWmPQoX4Kx0Kf4VAig5yKbCziHjO6F2povXeToOaWuZnKahi5qXCG7wrWtATFrheOQLfkrqxxLyarTP3J1mnA==", "type": "package", - "path": "Microsoft.Extensions.Configuration.EnvironmentVariables/1.0.0", + "path": "Microsoft.Extensions.Configuration.EnvironmentVariables/1.1.0", "files": [ - "Microsoft.Extensions.Configuration.EnvironmentVariables.1.0.0.nupkg.sha512", + "Microsoft.Extensions.Configuration.EnvironmentVariables.1.1.0.nupkg.sha512", "Microsoft.Extensions.Configuration.EnvironmentVariables.nuspec", "lib/net451/Microsoft.Extensions.Configuration.EnvironmentVariables.dll", "lib/net451/Microsoft.Extensions.Configuration.EnvironmentVariables.xml", @@ -5203,12 +5192,12 @@ "lib/netstandard1.3/Microsoft.Extensions.Configuration.EnvironmentVariables.xml" ] }, - "Microsoft.Extensions.Configuration.FileExtensions/1.0.0": { - "sha512": "MO7XtmLiqnpgVTX34uzFPvIS7jPmBUGLN0MP5MsYu6CqYTIs90ULjtrV5TegH5mTqKTXWjZRGXL26R6apTyc4w==", + "Microsoft.Extensions.Configuration.FileExtensions/1.1.0": { + "sha512": "jZRdMHops4npC8qKFEmqw6QODfA5h50sUYBIyB31DICzYSp+IQyvf5yb1zwW2x1EFuUEMv+aWZi1WDDc7JPdqA==", "type": "package", - "path": "Microsoft.Extensions.Configuration.FileExtensions/1.0.0", + "path": "Microsoft.Extensions.Configuration.FileExtensions/1.1.0", "files": [ - "Microsoft.Extensions.Configuration.FileExtensions.1.0.0.nupkg.sha512", + "Microsoft.Extensions.Configuration.FileExtensions.1.1.0.nupkg.sha512", "Microsoft.Extensions.Configuration.FileExtensions.nuspec", "lib/net451/Microsoft.Extensions.Configuration.FileExtensions.dll", "lib/net451/Microsoft.Extensions.Configuration.FileExtensions.xml", @@ -5216,12 +5205,12 @@ "lib/netstandard1.3/Microsoft.Extensions.Configuration.FileExtensions.xml" ] }, - "Microsoft.Extensions.Configuration.Json/1.0.0": { - "sha512": "KRyEOe5/Xi3qyDMdEVh++e2pQRsI6C3wzINVExOcu9lOsFmXK/k4qOf244fyo59rnn6s5xKnIW3WbhxWS1hu2w==", + "Microsoft.Extensions.Configuration.Json/1.1.0": { + "sha512": "QmHQbrOoVxXblM2x9NzGPbX3XpQGTCXiO6jZghx4KqUxPfJMS0VgBlgOUnLAz7sJyx3GvhUG6SEX6Xz70dpwDw==", "type": "package", - "path": "Microsoft.Extensions.Configuration.Json/1.0.0", + "path": "Microsoft.Extensions.Configuration.Json/1.1.0", "files": [ - "Microsoft.Extensions.Configuration.Json.1.0.0.nupkg.sha512", + "Microsoft.Extensions.Configuration.Json.1.1.0.nupkg.sha512", "Microsoft.Extensions.Configuration.Json.nuspec", "lib/net451/Microsoft.Extensions.Configuration.Json.dll", "lib/net451/Microsoft.Extensions.Configuration.Json.xml", @@ -5433,12 +5422,12 @@ "lib/netstandard1.0/Microsoft.Extensions.Options.xml" ] }, - "Microsoft.Extensions.Options.ConfigurationExtensions/1.0.0": { - "sha512": "ov+cv1w81/lVrjqorjSpUvTzJhRVFu2GSRyRQYcGfGWPwrCz6473YoiqK/XNbeBmmF9VVyGPHVMubAH+Atsr3g==", + "Microsoft.Extensions.Options.ConfigurationExtensions/1.1.0": { + "sha512": "loehh0znbtZw+mqk2VY7VyJu7t7N2TvEjSpln0Twkli/rF26HcxWQ3rdSvSr66yOCt7Dnur6DcW6HWXfa2u/PA==", "type": "package", - "path": "Microsoft.Extensions.Options.ConfigurationExtensions/1.0.0", + "path": "Microsoft.Extensions.Options.ConfigurationExtensions/1.1.0", "files": [ - "Microsoft.Extensions.Options.ConfigurationExtensions.1.0.0.nupkg.sha512", + "Microsoft.Extensions.Options.ConfigurationExtensions.1.1.0.nupkg.sha512", "Microsoft.Extensions.Options.ConfigurationExtensions.nuspec", "lib/netstandard1.1/Microsoft.Extensions.Options.ConfigurationExtensions.dll", "lib/netstandard1.1/Microsoft.Extensions.Options.ConfigurationExtensions.xml" @@ -5491,7 +5480,7 @@ ] }, "Microsoft.NETCore.App/1.1.0": { - "sha512": "gvcPP6wQ+pSw5a8O2V9TQ4NCvyp/8EAV0sgamtydcbVTvooJlXdreuvxv/hsxFv1ZpzZ+24ecDv646mLd/Jn1g==", + "sha512": "DFec+OUojDVocn1GxAL9uJg4qwsgkvKiQpv6BKd9ljGezvc9p6GpFv51IIakiujkVW/wBtQ0xlfjVSgS1UG/uw==", "type": "package", "path": "Microsoft.NETCore.App/1.1.0", "files": [ @@ -5503,7 +5492,7 @@ ] }, "Microsoft.NETCore.DotNetHost/1.0.1": { - "sha512": "MdPF6kSdOgaPkL+hpF19qUcandgL1XtHr4NOd11+wMHVuqrZSOvkRCd5G1+F61DUR6vkUK24gA5SYkgQaVNE6g==", + "sha512": "HIyxFydVcdq69iyfyIo2nCgjm4QhK9+erIUVcLmdOjtiv0UQWspmcfm9f9UTMnGALp6yPcWuVmzJt2yYFtrfug==", "type": "package", "path": "Microsoft.NETCore.DotNetHost/1.0.1", "files": [ @@ -5515,7 +5504,7 @@ ] }, "Microsoft.NETCore.DotNetHostPolicy/1.0.1": { - "sha512": "Nb3j7KKM8uHeI+4zUhw6f8AxAXTSpcbPvNBbH2vYkofmDES2SVhlGz03kR8EgQyDMf6hfu0cfIXQ88MeOwhyMg==", + "sha512": "GsKRjxnBXCkG1vGtSOflQcYP7qHraxRE1o5hOcD5afDNnUEIjObP3YJJz2oGpqWh30sdnSUYlrmLoxWBWspjVg==", "type": "package", "path": "Microsoft.NETCore.DotNetHostPolicy/1.0.1", "files": [ @@ -5527,7 +5516,7 @@ ] }, "Microsoft.NETCore.DotNetHostResolver/1.0.1": { - "sha512": "W81nIRxOwaMGQhVEayk7aN1azHKxxvUqGEQf0XAXml96WTTbSi19kMpKriOP/vl0UDA5kBK0O/GNQRCuMqOvaQ==", + "sha512": "MAY1WgFCZjz2BX+H6umoaZpTokImHMvHbmxbivApibl3dlRRR/ULEj3GWDTbUgnlHsXRkAoRtkVkBpCRENR78A==", "type": "package", "path": "Microsoft.NETCore.DotNetHostResolver/1.0.1", "files": [ @@ -5539,7 +5528,7 @@ ] }, "Microsoft.NETCore.Jit/1.0.4": { - "sha512": "IcHTGj+vTFcOu7/flwNg+CWIfTsxqHWgj08MKOtYwS5k0EuLvx6PrYsn7vHCV0SUTk1zbQ1l0EJj1UdxTMyx4w==", + "sha512": "s336ryZlopR+pQ4VfKlILX1LxiQzpCPnmiGot0p5aFPeCjwmKtHC88MI8jXdvdGPySON9i1bPUKJP8jiiPIAjA==", "type": "package", "path": "Microsoft.NETCore.Jit/1.0.4", "files": [ @@ -5551,7 +5540,7 @@ ] }, "Microsoft.NETCore.Platforms/1.1.0": { - "sha512": "W5jiirlmXoaQW4kJgrJhnroT0Jko84p+EIGG+PAzb+vtmjO/NRxeE/VpZouGwRkl40/UMN0AFa/oTZhtGJLpQg==", + "sha512": "kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==", "type": "package", "path": "Microsoft.NETCore.Platforms/1.1.0", "files": [ @@ -5564,7 +5553,7 @@ ] }, "Microsoft.NETCore.Runtime.CoreCLR/1.0.4": { - "sha512": "r4/aP7VYcJ+W/rJVFU+jAdjF4KrsHRDYQJ+p8weUP5n65yLzWXlQTVY6OsR560aV5EF7jc65dqsNXIryUCrEkQ==", + "sha512": "NTd+F7MQJi5wFh6Hq3uVH0L3om+pVcfF+bpw0hSd+Ka92QSZ4IfDJw/IWqTQ9jUtLyWYR4XR+52HD5HW+a+zoQ==", "type": "package", "path": "Microsoft.NETCore.Runtime.CoreCLR/1.0.4", "files": [ @@ -5576,7 +5565,7 @@ ] }, "Microsoft.NETCore.Targets/1.1.0": { - "sha512": "q0U0GiwVAWpqmyOlOrXdaE5oqesA+cpQ/kRDcJxc15xSZVI8GaZpPZ0hpnWiptxgZ/FYZWxN8q7tR5MEZGiT2Q==", + "sha512": "aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==", "type": "package", "path": "Microsoft.NETCore.Targets/1.1.0", "files": [ @@ -5589,7 +5578,7 @@ ] }, "Microsoft.NETCore.Windows.ApiSets/1.0.1": { - "sha512": "gcyzxyTfiYxBP/WGvVH4v411CIe76lkqgzI2JdlSgpC35DX2a+N8BZmwVjvG8fu7L2uljGca2XGa+BQ9m2Gnzw==", + "sha512": "SaToCvvsGMxTgtLv/BrFQ5IFMPRE1zpWbnqbpwykJa8W5XiX82CXI6K2o7yf5xS7EP6t/JzFLV0SIDuWpvBZVw==", "type": "package", "path": "Microsoft.NETCore.Windows.ApiSets/1.0.1", "files": [ @@ -5601,7 +5590,7 @@ ] }, "Microsoft.VisualBasic/10.0.1": { - "sha512": "8f/zxFE6+0Q8yVk9nZ/CzJHm/ev+ZW1j5d1t1Jmi5rGsepi28FMz58x4if4hmESI+r1U7YueKeCJyQNg6H3+Bg==", + "sha512": "HpNyOf/4Tp2lh4FyywB55VITk0SqVxEjDzsVDDyF1yafDN6Bq18xcHowzCPINyYHUTgGcEtmpYiRsFdSo0KKdQ==", "type": "package", "path": "Microsoft.VisualBasic/10.0.1", "files": [ @@ -5657,7 +5646,7 @@ ] }, "Microsoft.Win32.Primitives/4.3.0": { - "sha512": "mNl7zBc2+rSD+IZ0S5H/ldN6Onn5DIakHl/UW90peZxsUDR+4n9CQBfsUW+gr2v8iOseAPePZ0X3kFIFsORF2Q==", + "sha512": "9ZQKCWxH7Ijp9BfahvL2Zyf1cJIk8XYLF6Yjzr2yi0b2cOut/HQ31qf1ThHAgCc3WiZMdnWcfJCgN82/0UunxA==", "type": "package", "path": "Microsoft.Win32.Primitives/4.3.0", "files": [ @@ -5693,7 +5682,7 @@ ] }, "Microsoft.Win32.Registry/4.3.0": { - "sha512": "zqMMJcrs0gmRrS/+5RaimdT+/gIKKl2Fsc6D6KRYxj1GRHHB/+Xz8YbTaxgYhHlE9wOZt8J1Xcy3jVXbrBolJQ==", + "sha512": "Lw1/VwLH1yxz6SfFEjVRCN0pnflLEsWgnV4qsdJ512/HhTwnKXUG+zDQ4yTO3K/EJQemGoNaBHX5InISNKTzUQ==", "type": "package", "path": "Microsoft.Win32.Registry/4.3.0", "files": [ @@ -5731,7 +5720,7 @@ ] }, "NETStandard.Library/1.6.1": { - "sha512": "N1dCiTBGmIyic1WLE4QeYlbbrrDAEFxzFDShl15b9GdelnbWS0Birs54wkgXFZxctWCdBAvKPox5j/+8itiUcg==", + "sha512": "WcSp3+vP+yHNgS8EV5J7pZ9IRpeDuARBPN28by8zqff1wJQXm26PVU8L3/fYLBJVU7BtDyqNVWq2KlCVvSSR4A==", "type": "package", "path": "NETStandard.Library/1.6.1", "files": [ @@ -5969,7 +5958,7 @@ ] }, "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "PHNmiZbWSYDjcaPMjTKF5STi96GlYM5kGZzo5fFfPAYx5wr4aHO9XIvpq5cQ8boglFGzPMRSvwiyD4QXwClZOw==", + "sha512": "HdSSp5MnJSsg08KMfZThpuLPJpPwE5hBXvHwoKWosyHHfe8Mh5WKT0ylEOf6yNzX6Ngjxe4Whkafh5q7Ymac4Q==", "type": "package", "path": "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -5981,7 +5970,7 @@ ] }, "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "oNdr4i1tcqPMTuiHNGZLyI7UWG4NTFmarC62SktIlc5FAN8gzRG9HNtJmYijEFLBP5YJfKtIKmVzj5NmfEsCXw==", + "sha512": "+yH1a49wJMy8Zt4yx5RhJrxO/DBDByAiCzNwiETI+1S4mPdCu0OY4djdciC7Vssk0l22wQaDLrXxXkp+3+7bVA==", "type": "package", "path": "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -5993,7 +5982,7 @@ ] }, "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "UR9l6zfyS+QzQlzsAAG4WHl4C9jnfGnb8KvNFryXX2rc3FiHv5si5TO9PJ6nWITJVKVOzio9a3K13mWuCMQJFQ==", + "sha512": "c3YNH1GQJbfIPJeCnr4avseugSqPrxwIqzthYyZDN6EuOyNOzq+y2KSUfRcXauya1sF4foESTgwM5e1A8arAKw==", "type": "package", "path": "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -6005,7 +5994,7 @@ ] }, "runtime.native.System/4.3.0": { - "sha512": "kg9/5G0D2fHx/RhiG1TMvoccjz+BoE8IUCRT8rrheWk3uNqo2Jaxaxuv6hHEYwysUUV/pJdqNEZ16PTN+M8i4g==", + "sha512": "c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", "type": "package", "path": "runtime.native.System/4.3.0", "files": [ @@ -6017,7 +6006,7 @@ ] }, "runtime.native.System.IO.Compression/4.3.0": { - "sha512": "mc2IgifJPLmxvjq1qndH/swbP/DUU3cal3dfWPtQkRs5tW24gqLsUfDyFR9ZTQNooewPeepbBGqgoGwYwnq2zQ==", + "sha512": "INBPonS5QPEgn7naufQFXJEp3zX6L4bwHgJ/ZH78aBTpeNfQMtf7C6VrAFhlq2xxWBveIOWyFzQjJ8XzHMhdOQ==", "type": "package", "path": "runtime.native.System.IO.Compression/4.3.0", "files": [ @@ -6029,7 +6018,7 @@ ] }, "runtime.native.System.Net.Http/4.3.0": { - "sha512": "am6zGj+ZWrR731PS0epEn3UnxsZtjPR5Jv95CBOUVVTR8TQlcnGXaNRZjDmlm4oxcxm9Lya0aX5Sh+kJP3jCng==", + "sha512": "ZVuZJqnnegJhd2k/PtAbbIcZ3aZeITq3sj06oKfMBSfphW3HDmk/t4ObvbOk/JA/swGR0LNqMksAh/f7gpTROg==", "type": "package", "path": "runtime.native.System.Net.Http/4.3.0", "files": [ @@ -6041,7 +6030,7 @@ ] }, "runtime.native.System.Net.Security/4.0.1": { - "sha512": "xl0tsHQE1pDCITOH9GPjmgEoQyl4gf4AyraJqvIg4hrfxpQzeiPNDo2o01BKRbZlV7G+bJoNqdkEBR8O2D8hxw==", + "sha512": "UxaxmpoReAQo8eXH0FdWsf4bpOopJQz4I0z35IvxuTzcD4OLFbjAndcY+Y9c834vukL+yMItClcRE3bpVmJVAA==", "type": "package", "path": "runtime.native.System.Net.Security/4.0.1", "files": [ @@ -6053,7 +6042,7 @@ ] }, "runtime.native.System.Security.Cryptography/4.0.0": { - "sha512": "gsCm/JFHLvcrKYHWBIz84RgezbW+U6dti3MDDPs+0lNBBs2gB8gYcXxAmZuQTkISRZhEbkj/v7jPBtjxh/9BqA==", + "sha512": "2CQK0jmO6Eu7ZeMgD+LOFbNJSXHFVQbCJJkEyEwowh1SCgYnrn9W9RykMfpeeVGw7h4IBvYikzpGUlmZTUafJw==", "type": "package", "path": "runtime.native.System.Security.Cryptography/4.0.0", "files": [ @@ -6065,7 +6054,7 @@ ] }, "runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "sha512": "KcagwRMhbDjSKZNGLjLlqU34TRcne76aZWnPmjcLCZ6PLnRHBwEpuJc+AufwOpbNEpZd7kLGtPeyP9/6Sk/+Sg==", + "sha512": "DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", "type": "package", "path": "runtime.native.System.Security.Cryptography.Apple/4.3.0", "files": [ @@ -6077,7 +6066,7 @@ ] }, "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "WrCtce7i5tUzqzYs8ODWo5W7BI/Lf5dIksGXQ15jQhJkHQFnaL+91CLsIdUQcCj5lw0iZC3GvXuDHR8weW+3mA==", + "sha512": "NS1U+700m4KFRHR5o4vo9DSlTmlCKu/u7dtE5sUHVIPB+xpXxYQvgBgA6wEIeCz6Yfn0Z52/72WYsToCEPJnrw==", "type": "package", "path": "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -6089,7 +6078,7 @@ ] }, "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "mq6HNb9/3bwtY2Dx1NCEke6gvl85J27WmJm62TC81SkQ1+l4nrlIBylqlaAcwOEGzCnG1aL4w+Tm51eBny1q6Q==", + "sha512": "b3pthNgxxFcD+Pc0WSEoC0+md3MyhRS6aCEeenvNE3Fdw1HyJ18ZhRFVJJzIeR/O/jpxPboB805Ho0T3Ul7w8A==", "type": "package", "path": "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -6101,7 +6090,7 @@ ] }, "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "EXEn6UL4DLik0NzTmjKusXjdBMdLQHYJvnopYdEFCikv2Hz5mCcFG2Le0c2I3KXabmxVI8D1/JtU7bB1n1D4DQ==", + "sha512": "KeLz4HClKf+nFS7p/6Fi/CqyLXh81FpiGzcmuS8DGi9lUqSnZ6Es23/gv2O+1XVGfrbNmviF7CckBpavkBoIFQ==", "type": "package", "path": "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -6113,7 +6102,7 @@ ] }, "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "sha512": "yoOpY/Ib7YSMOF2noSKUwU/5lItcXZfLrV9mOyQ43mj/6rytrwlUtrdiL1ORfYecWq0zdfOBQOw+x199AhnSaw==", + "sha512": "kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==", "type": "package", "path": "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0", "files": [ @@ -6125,7 +6114,7 @@ ] }, "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "p3Kz44PDYVZVsCBlC2Z3Q4jUks1kh0EhRg+rMapv8jtiAX682zxcQ/XcJg9kSF41YIdkyxPDudvPkNtb3QbrLA==", + "sha512": "X7IdhILzr4ROXd8mI1BUCQMSHSQwelUlBjF1JyTKCjXaOGn2fB4EKBxQbCK2VjO3WaWIdlXZL3W6TiIVnrhX4g==", "type": "package", "path": "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -6137,7 +6126,7 @@ ] }, "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "Ov8cAvy3sLjvbjjJVVdXUs1RzjnntmnxTop82ljzzFlw1ZRZcmCZ875pl2d8wbUGuMHWXL1i6VVxFaisuDlHvg==", + "sha512": "nyFNiCk/r+VOiIqreLix8yN+q3Wga9+SE8BCgkf+2BwEKiNx6DyvFjCgkfV743/grxv8jHJ8gUK4XEQw7yzRYg==", "type": "package", "path": "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -6149,7 +6138,7 @@ ] }, "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "He+lLkg+EytCUZbm59CJcnK/BLo6iP99wyx/jEbnxE9EINP7dAHy3u5YE2tKIedj2/vWwb5rkExCLQHrFcLzNg==", + "sha512": "ytoewC6wGorL7KoCAvRfsgoJPJbNq+64k2SqW6JcOAebWsFUvCCYgfzQMrnpvPiEl4OrblUlhF2ji+Q1+SVLrQ==", "type": "package", "path": "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -6161,7 +6150,7 @@ ] }, "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "TNGCWHOvJGx4K1gDUshEPvZmH2O3WS3+cIYG67pjxFIXcbLKHq8W1EpKN9eBCe6rHUz8q6YdCKBO4+bejKJoOA==", + "sha512": "I8bKw2I8k58Wx7fMKQJn2R8lamboCAiHfHeV/pS65ScKWMMI0+wJkLYlEKvgW1D/XvSl/221clBoR2q9QNNM7A==", "type": "package", "path": "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -6173,7 +6162,7 @@ ] }, "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "+cvxkBgAIodVmzGD7wL963wqPHnZ6wRQjpka/mIN9zXgjnEvxjuhnTOTJiA6OfQ1N12xLJmZAX/Nm0IdJZ7+vg==", + "sha512": "VB5cn/7OzUfzdnC8tqAIMQciVLiq2epm2NrAm1E9OjNRyG4lVhfR61SMcLizejzQP8R8Uf/0l5qOIbUEi+RdEg==", "type": "package", "path": "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -6185,7 +6174,7 @@ ] }, "System.AppContext/4.3.0": { - "sha512": "ok31Z9xYVHdyOqZY83zruTB+oT+kY7pZ5ffydWVLhUwPDKjY5DHJYPBwo1tb4YMXWLoOfbHoMFrDe8ZRu5YEiQ==", + "sha512": "fKC+rmaLfeIzUhagxY17Q9siv/sPrjjKcfNg1Ic8IlQkZLipo8ljcaZQu4VtI4Jqbzjc2VTjzGLF6WmsRXAEgA==", "type": "package", "path": "System.AppContext/4.3.0", "files": [ @@ -6238,7 +6227,7 @@ ] }, "System.Buffers/4.3.0": { - "sha512": "uzAjjUTO/tpL74EK56Y15RXslxN3uPAAMMXdHc+bAwZJFP/ocxxZClGEDANlytyXJgea6nKpU35F4OxBn8eRUw==", + "sha512": "ratu44uTIHgeBeI0dE8DWvmXVBSo4u7ozRZZHOMmK/JPpYyo0dAfgSiHlpiObMQ5lEtEyIXA40sKRYg5J6A8uQ==", "type": "package", "path": "System.Buffers/4.3.0", "files": [ @@ -6251,7 +6240,7 @@ ] }, "System.Collections/4.3.0": { - "sha512": "KwW27j0IfbPZ0Zzhz+zVyP/+ZDDpOOJNact4MvwVeRhj9qQHVo049L5hpWL6r6TugWFwDVozThiPWlw8QomP1g==", + "sha512": "3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", "type": "package", "path": "System.Collections/4.3.0", "files": [ @@ -6317,7 +6306,7 @@ ] }, "System.Collections.Concurrent/4.3.0": { - "sha512": "WGMRNT7CiCdDs1baKEET6dtXvv5ZAC+ab8AOUkZRJjsW408uHG3yRxa6IQBSuRiCec9JnbevJ2llQJf/FNA7CA==", + "sha512": "ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", "type": "package", "path": "System.Collections.Concurrent/4.3.0", "files": [ @@ -6383,7 +6372,7 @@ ] }, "System.Collections.Immutable/1.3.0": { - "sha512": "nAuTdSFum2iMrQ8zC+hqAOCFf8jKDp4DF93vH6yqlR5gUSAGbr8+OHKAuhlxMULLSHZDNmZ0qHfyG8Tqb0XX6Q==", + "sha512": "zukBRPUuNxwy9m4TGWLxKAnoiMc9+B+8VXeXVyPiBPvOd7yLgAlZ1DlsRWJjMx4VsvhhF2+6q6kO2GRbPja6hA==", "type": "package", "path": "System.Collections.Immutable/1.3.0", "files": [ @@ -6472,7 +6461,7 @@ ] }, "System.ComponentModel/4.3.0": { - "sha512": "RWcLzrb9uoPLqsKiE2sbQbovPuyZ0tRQXfsEU4Y1CTR7jtXIPbwygZ5NbgYOI+2G3K6yeG0DJ5EtefA+4Q4uQQ==", + "sha512": "VyGn1jGRZVfxnh8EdvDCi71v3bMXrsu8aYJOwoV7SNDLVhiEqwP86pPMyRGsDsxhXAm2b3o9OIqeETfN5qfezw==", "type": "package", "path": "System.ComponentModel/4.3.0", "files": [ @@ -6529,7 +6518,7 @@ ] }, "System.ComponentModel.Annotations/4.3.0": { - "sha512": "hMCX4KWCivV4b7qZ1rUMTUZa9z7SBTmrj87BgYlz+Q1nG/oTi2kDdMydwfeHktSi9rIOKtvfEHPpHePzcdx4IQ==", + "sha512": "SY2RLItHt43rd8J9D8M8e8NM4m+9WLN2uUd9G0n1I4hj/7w+v3pzK6ZBjexlG1/2xvLKQsqir3UGVSyBTXMLWA==", "type": "package", "path": "System.ComponentModel.Annotations/4.3.0", "files": [ @@ -6694,7 +6683,7 @@ ] }, "System.Console/4.3.0": { - "sha512": "x8R9+fgloUhyOHU5GwM3EPpGFaPwWFjipWEhBoSSaVhhrBygMP3vh02MXZt19Sml1HWP6jAobjYQ/uWMlQSxmA==", + "sha512": "DHDrIxiqk1h03m6khKWV2X8p/uvN79rgSqpilL6uzpmSfxfU5ng8VcPtW4qsDsQDHiTv6IPV9TmD5M/vElPNLg==", "type": "package", "path": "System.Console/4.3.0", "files": [ @@ -6837,7 +6826,7 @@ ] }, "System.Diagnostics.Debug/4.3.0": { - "sha512": "t9zFM/HCWWevLQGvMs4nIVvoPDDGoKK3XlAjI33iMETQxQ3MWIbrFqgn1cDNq85wtOcm6fAWKlRykIynTUcVAw==", + "sha512": "ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", "type": "package", "path": "System.Diagnostics.Debug/4.3.0", "files": [ @@ -6903,7 +6892,7 @@ ] }, "System.Diagnostics.DiagnosticSource/4.3.0": { - "sha512": "WgZd6Ya7HpUTC+3cLko/zTd/PH9x7U1m2CWaP8WRIfoxMZcoLxBlCIdOIZ8cDRJB3Qli77fRdHam5bqEB29eMQ==", + "sha512": "tD6kosZnTAGdrEa0tZSuFyunMbt/5KYDnHdndJYGqZoNy00XVXyACd5d6KnE1YgYv3ne2CjtAfNXo/fwEhnKUA==", "type": "package", "path": "System.Diagnostics.DiagnosticSource/4.3.0", "files": [ @@ -6922,7 +6911,7 @@ ] }, "System.Diagnostics.FileVersionInfo/4.0.0": { - "sha512": "OwDm33OOHMmSOO4w36AHrMFfrBrNqdQUdvoQsAzY4GpyHU4/BZmc/oGu6sqm71s59SSl6ftyiFFj2NeGHckFAw==", + "sha512": "Gw8jP+UNPe250gZ4c/NUUuKCH9boFG9tyLueIzSaToyNf5COK7zzK8PyLFmLKudWBZt0JrIvpXNOgoZzkaeRPw==", "type": "package", "path": "System.Diagnostics.FileVersionInfo/4.0.0", "files": [ @@ -6962,7 +6951,7 @@ ] }, "System.Diagnostics.Process/4.1.0": { - "sha512": "DH3FhdBKgTOjiI3F2CarCzRpaROGu2IVxizScP9nqhi6Fy/O3407kpDv15HZUVR/C02v16JMs3JWxzVEgL9UxA==", + "sha512": "uoUQlWs520b2vORp4Y3tSRFUKFGnydHpIDFRjRRtWZLu3RB97w7YsxCddMKgBVVvdO972VQxG4JOlp6piCk9Bg==", "type": "package", "path": "System.Diagnostics.Process/4.1.0", "files": [ @@ -7055,7 +7044,7 @@ ] }, "System.Diagnostics.Tools/4.3.0": { - "sha512": "1KylDVsoWFPwbxGTZmE+pXxXpfdfcV79L7VNKvB1XZKhiqH18IbOR49cm+Ff7P9RcPhhqsLMPvE51C7NcfS65A==", + "sha512": "UUvkJfSYJMM6x527dJg2VyWPSRqIVB0Z7dbjHst1zmwTXz5CcXSYJFWRpuigfbO1Lf7yfZiIaEUesfnl/g5EyA==", "type": "package", "path": "System.Diagnostics.Tools/4.3.0", "files": [ @@ -7110,7 +7099,7 @@ ] }, "System.Diagnostics.Tracing/4.3.0": { - "sha512": "mPRgWWV6acPK2QiaaDOwTx+wjESnJo/5ElQgpTPJKla2Qab8UDw/UDZ/r3HJxoFcc92WkbtYVzmDtamA36xfYw==", + "sha512": "rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", "type": "package", "path": "System.Diagnostics.Tracing/4.3.0", "files": [ @@ -7198,7 +7187,7 @@ ] }, "System.Dynamic.Runtime/4.3.0": { - "sha512": "qAS/jveBZKW3fh/4bauC8iwu5grx1AFfTRQ2hw3VoLe/r+8IfFh+wlyNPr3lM1Bvt1ox5bTL26zMyY7D+Iv3hA==", + "sha512": "SNVi1E/vfWUAs/WYKhE9+qlS6KqK0YVhnlT0HQtr8pMIA8YX3lwy3uPMownDwdYISBdmAF/2holEIldVp85Wag==", "type": "package", "path": "System.Dynamic.Runtime/4.3.0", "files": [ @@ -7267,7 +7256,7 @@ ] }, "System.Globalization/4.3.0": { - "sha512": "/W+ey/Bng+MpQqq/Jv6hwPVPMgoy5hZ13Cx5TUGkcgMzoOtECGPMI4Gy7FAprUSVyOMXHkfSuTv8ZTpgbXWYnw==", + "sha512": "kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", "type": "package", "path": "System.Globalization/4.3.0", "files": [ @@ -7333,7 +7322,7 @@ ] }, "System.Globalization.Calendars/4.3.0": { - "sha512": "0J5D7k/TM6UG65FvV0bvL43OJEx5VV430r/GOPwyS2UYHtOGLI3WZeMbgyrvX3D3tpsDM2gk6x8cdKoXvaWwQg==", + "sha512": "GUlBtdOWT4LTV3I+9/PJW+56AnnChTaOqqTLFtdmype/L500M2LIyXgmtd9X2P2VOkmJd5c67H5SaC2QcL1bFA==", "type": "package", "path": "System.Globalization.Calendars/4.3.0", "files": [ @@ -7369,7 +7358,7 @@ ] }, "System.Globalization.Extensions/4.3.0": { - "sha512": "KZNDVTQqWyPCtROCtstmtwTDp6XH1gyg6Ysr2QISq2PB2LzZwSsiQUMkcSf3wlB6E8KQRdLnwoKT5sbIPDiXLQ==", + "sha512": "FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", "type": "package", "path": "System.Globalization.Extensions/4.3.0", "files": [ @@ -7421,7 +7410,7 @@ ] }, "System.IO/4.3.0": { - "sha512": "LKQcHELL8nXFtI6Q9Q1Wav404ZF4mYC/3fO9ZBIhejeGKDMHqo5V7jy2XHkfS38LRQqQqtUGYfSPmA0jbzq7CQ==", + "sha512": "3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", "type": "package", "path": "System.IO/4.3.0", "files": [ @@ -7500,7 +7489,7 @@ ] }, "System.IO.Compression/4.3.0": { - "sha512": "C0AKNpzBT/yWZLJ9HrwkTR/vuyIuqXiOXAbFM3ZchxjN2PiqGX2Y5+l3kxV06QVbrPWr7SWKWtQQOI4hY9D8LQ==", + "sha512": "YHndyoiV90iu4iKG115ibkhrG+S3jBm8Ap9OwoUAzO5oPDAWcr0SFwQFm0HjM8WkEZWo0zvLTyLmbvTkW1bXgg==", "type": "package", "path": "System.IO.Compression/4.3.0", "files": [ @@ -7569,7 +7558,7 @@ ] }, "System.IO.Compression.ZipFile/4.3.0": { - "sha512": "FioAYOcYUMgtcTXtPs7Qdb5UXlfgIvo9jhoW3IrMNo64H0bWnUzn5MolmC1UINUDXdeDElgLW++z1tw36SHSug==", + "sha512": "G4HwjEsgIwy3JFBduZ9quBkAu+eUwjIdJleuNSgmUojbH6O3mlvEIme+GHx/cLlTAPcrnnL7GqvB9pTlWRfhOg==", "type": "package", "path": "System.IO.Compression.ZipFile/4.3.0", "files": [ @@ -7606,7 +7595,7 @@ ] }, "System.IO.FileSystem/4.3.0": { - "sha512": "1Z4pmj7nKA5MkqF2Vwwa4buJKSw4JlQDd+oENFG7gmNSVI6OVcEQMdbOcHATaxtwr/k2lsefjg36q/tzZiUg0g==", + "sha512": "3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", "type": "package", "path": "System.IO.FileSystem/4.3.0", "files": [ @@ -7642,7 +7631,7 @@ ] }, "System.IO.FileSystem.Primitives/4.3.0": { - "sha512": "nMbwMD08FG9wG0g2/3RZ2JUr7cECRKJjfbZ5w1+i3/SWPUJm08Tb0vAmcQsoi8yd9wCRVetDsVy3df1AWxegrg==", + "sha512": "6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", "type": "package", "path": "System.IO.FileSystem.Primitives/4.3.0", "files": [ @@ -7679,7 +7668,7 @@ ] }, "System.IO.FileSystem.Watcher/4.3.0": { - "sha512": "sQ5hhMb5rCpmmSWsbBuz5uK4tj9LhQoz19rCAUzevP11nEoOSruR8C0ZZPklZzHJl4e/US4MlDOCZqNzEpkISw==", + "sha512": "37IDFU2w6LJ4FrohcVlV1EXviUmAOJIbejVgOUtNaPQyeZW2D/0QSkH8ykehoOd19bWfxp3RRd0xj+yRRIqLhw==", "type": "package", "path": "System.IO.FileSystem.Watcher/4.3.0", "files": [ @@ -7720,7 +7709,7 @@ ] }, "System.IO.MemoryMappedFiles/4.0.0": { - "sha512": "rg63Vul/zB449EPu92DKW6qpG7iztlu046h2o3nssd/iguWFLIE9d+ibLiMBl9NJJr6b9ST8Wt7Sn5BItDzkfQ==", + "sha512": "btNwvRYxb5P+CBTggDZJd7LgKSFEr/1VDP2hyNZ6dnFPCuGtOVXpud2mFHGDPpv2kWNQonl858chdDvvrLOUzw==", "type": "package", "path": "System.IO.MemoryMappedFiles/4.0.0", "files": [ @@ -7760,7 +7749,7 @@ ] }, "System.IO.UnmanagedMemoryStream/4.0.1": { - "sha512": "ULAiflim1VltkH28lwJOJBi5G4ht+WPjPEHEsMgqBXV15Te1vjZc9GJaYApDVPbmfCNqK8LoH8HyNv+HdwVC9w==", + "sha512": "wcq0kXcpfJwdl1Y4/ZjDk7Dhx5HdLyRYYWYmD8Nn8skoGYYQd2BQWbXwjWSczip8AL4Z57o2dWWXAl4aABAKiQ==", "type": "package", "path": "System.IO.UnmanagedMemoryStream/4.0.1", "files": [ @@ -7797,7 +7786,7 @@ ] }, "System.Linq/4.3.0": { - "sha512": "fv0Q2CK2Y3diBJKwX3IcWGkRa4Vg8aiGjxh9g8XIhgTXu1oMOi0vnHdrvQiKFEnWuTapNFI391/jIpNBhN8nEw==", + "sha512": "5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", "type": "package", "path": "System.Linq/4.3.0", "files": [ @@ -7867,7 +7856,7 @@ ] }, "System.Linq.Expressions/4.3.0": { - "sha512": "zCBZ+eOwsS66vwi5Ur5bIUF9C/jT7Y6+08qtKINZa2qRKV92MMfk0c79Niib6niUGsT5803LCmbAty4MZxDk4g==", + "sha512": "PGKkrd2khG4CnlyJwxwwaWWiSiWFNBGlgXvJpeO0xCXrZ89ODrQ6tjEWS/kOqZ8GwEOUATtKtzp1eRgmYNfclg==", "type": "package", "path": "System.Linq.Expressions/4.3.0", "files": [ @@ -7949,7 +7938,7 @@ ] }, "System.Linq.Parallel/4.0.1": { - "sha512": "kyQt09e2+VcmTo776oMhKJuUMSNVZ8Er48Ariej0PTHNMO/gv5AUvFD0lrKXIT8b/zwZwVPxaVMU/k7nqw1WYA==", + "sha512": "J7XCa7n2cFn32uLbtceXfBFhgCk5M++50lylHKNbqTiJkw5y4Tglpi6amuJNPCvj9bLzNSI7rs1fi4joLMNRgg==", "type": "package", "path": "System.Linq.Parallel/4.0.1", "files": [ @@ -8004,7 +7993,7 @@ ] }, "System.Linq.Queryable/4.3.0": { - "sha512": "91HiFp8SYSVthK+eT2zZ5OThN8F8d40NsOykP9IlrjRWCRfpv9x6FVFJvQ0UhzDSSQT/ui2RVMoIyZgVtJCy1Q==", + "sha512": "In1Bmmvl/j52yPu3xgakQSI0YIckPUr870w4K5+Lak3JCCa8hl+my65lABOuKfYs4ugmZy25ScFerC4nz8+b6g==", "type": "package", "path": "System.Linq.Queryable/4.3.0", "files": [ @@ -8061,7 +8050,7 @@ ] }, "System.Net.Http/4.3.0": { - "sha512": "KfnKOiNNLPsaGLlk3+O81WXlRRipG3ZtBDM1r5badBNXH60kHiXXkVFSQbAlzzTJXBLiVNyJuichKCY4O2lUMQ==", + "sha512": "sYg+FtILtRQuYWSIAuNOELwVuVsxVyJGWQyOnlAzhV4xvhyFnON1bAzYYC+jjRW8JREM45R0R5Dgi8MTC5sEwA==", "type": "package", "path": "System.Net.Http/4.3.0", "files": [ @@ -8141,7 +8130,7 @@ ] }, "System.Net.NameResolution/4.0.0": { - "sha512": "zUb6ud7AAgxVB0W3IB6YVuiQCiykgVK6tT7xtx5WiQaQHcQBAOmWJ0/9etVMMIUahyAdlpURzY1JVRQeB1grsw==", + "sha512": "JdqRdM1Qym3YehqdKIi5LHrpypP4JMfxKQSNCJ2z4WawkG0il+N3XfNeJOxll2XrTnG7WgYYPoeiu/KOwg0DQw==", "type": "package", "path": "System.Net.NameResolution/4.0.0", "files": [ @@ -8181,7 +8170,7 @@ ] }, "System.Net.Primitives/4.3.0": { - "sha512": "km/YCusa5ZLtxJgmJq1LxyRvsnyKmzQ5rHThWcm+Ujve+ox2BHQPWQ2mHo3gc0xFdMpwif3MpCjfvb8Do/EbhQ==", + "sha512": "qOu+hDwFwoZPbzPvwut2qATe3ygjeQBDQj91xlsaqGFQUI5i4ZnZb8yyQuLGpDGivEPIt8EJkd1BVzVoP31FXA==", "type": "package", "path": "System.Net.Primitives/4.3.0", "files": [ @@ -8258,7 +8247,7 @@ ] }, "System.Net.Requests/4.0.11": { - "sha512": "ys+O0b06i+2PEmoqNYj2z7SrxG2B1fiC7ElOEmqDWR9qBMUg9N+7EKZKLMx3QvGezfreRSb2xB5xp5+8oDTBKw==", + "sha512": "vxGt7C0cZixN+VqoSW4Yakc1Y9WknmxauDqzxgpw/FnBdz4kQNN51l4wxdXX5VY1xjqy//+G+4CvJWp1+f+y6Q==", "type": "package", "path": "System.Net.Requests/4.0.11", "files": [ @@ -8339,7 +8328,7 @@ ] }, "System.Net.Security/4.0.0": { - "sha512": "zwkbp135CrxsufU/Lb/hqJiaNL2yupxiFhn4yywaLpXgiehJmA56V64A7xTERnwBZ5U70lobBHWHUq8mSj3w3w==", + "sha512": "OdA7BsSeTufWL/pwGSKv89qDi3lGNSRt/iu02jj25J3VhzY90dh2sHvcnxCOUhTQzdFpGUZ3E+rkGCN5yBB/6g==", "type": "package", "path": "System.Net.Security/4.0.0", "files": [ @@ -8379,7 +8368,7 @@ ] }, "System.Net.Sockets/4.3.0": { - "sha512": "zdbu7r25Ff7ePqV9jxCDoTv5gpeAusbrBPeHmxxt6rVKoxeeMWjwfLwsOaXcwuNhM6Zmb6i7AMyF92QiMuc20w==", + "sha512": "m6icV6TqQOAdgt5N/9I5KNpjom/5NFtkmGseEH+AK/hny8XrytLH3+b5M8zL/Ycg3fhIocFpUMyl/wpFnVRvdw==", "type": "package", "path": "System.Net.Sockets/4.3.0", "files": [ @@ -8415,7 +8404,7 @@ ] }, "System.Net.WebHeaderCollection/4.0.1": { - "sha512": "tVEdj8VgTkPPwm7M1WSSy69Kvi9R09smG8Pma/dpbkiM6J6cp9OVY7zC5+De69153/AVHPx3Q2c2P4kGzN4PEg==", + "sha512": "XX2TIAN+wBSAIV51BU2FvvXMdstUa8b0FBSZmDWjZdwUMmggQSifpTOZ5fNH20z9ZCg2fkV1L5SsZnpO2RQDRQ==", "type": "package", "path": "System.Net.WebHeaderCollection/4.0.1", "files": [ @@ -8488,12 +8477,12 @@ "ref/xamarinwatchos10/_._" ] }, - "System.Numerics.Vectors/4.1.1": { - "sha512": "9iXfO1mwnek3/k092ZHqqGfGWcOzIFSroOE4MSz9+E6200pS0El+xBcicTiPOR72zAJTCbkYSvKkJ8xjehhq6w==", + "System.Numerics.Vectors/4.3.0": { + "sha512": "uAIqmwiQPPXdCz59MQcyHwsH2MzIv24VGCS54kP/1GzTRTuU3hazmiPnGUTlKFia4B1DnbLWjTHoGyTI5BMCTQ==", "type": "package", - "path": "System.Numerics.Vectors/4.1.1", + "path": "System.Numerics.Vectors/4.3.0", "files": [ - "System.Numerics.Vectors.4.1.1.nupkg.sha512", + "System.Numerics.Vectors.4.3.0.nupkg.sha512", "System.Numerics.Vectors.nuspec", "ThirdPartyNotices.txt", "dotnet_library_license.txt", @@ -8522,7 +8511,7 @@ ] }, "System.ObjectModel/4.3.0": { - "sha512": "WNvXzZN4INmuGKQzI+O1Sutu2OxIDLcvxHdE+jS2E5iFfoME4sm29R3WKOpY3rR7YBEWlw1cxCXkEY0YgJ8D+g==", + "sha512": "bdX+80eKv9bN6K4N+d77OankKHGn6CH711a6fcOpMQu2Fckp/Ft4L/kW9WznHpyR0NRAvJutzOMHNNlBGvxQzQ==", "type": "package", "path": "System.ObjectModel/4.3.0", "files": [ @@ -8683,7 +8672,7 @@ ] }, "System.Reflection/4.3.0": { - "sha512": "L5yPHI3xx8nuWAtnVqTzosi3Q5U/8FBJYPo1ijPzO6qH99i0wn2Ieiiuqx27vhZRA95PzzQ8XUupT7I2+I8rHw==", + "sha512": "KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", "type": "package", "path": "System.Reflection/4.3.0", "files": [ @@ -8762,7 +8751,7 @@ ] }, "System.Reflection.DispatchProxy/4.0.1": { - "sha512": "2UbbsDq9lO4pNHvv6rOZu8l2obJhMBT6zf29vXPP8TKKJ6El0rrDF7SDvAH4ytGT3VufH8AfAd3yOTFBWsy+1Q==", + "sha512": "GPPgWoSxQEU3aCKSOvsAc1dhTTi4iq92PUVEVfnGPGwqCf6synaAJGYLKMs5E3CuRfel8ufACWUijXqDpOlGrA==", "type": "package", "path": "System.Reflection.DispatchProxy/4.0.1", "files": [ @@ -8798,7 +8787,7 @@ ] }, "System.Reflection.Emit/4.3.0": { - "sha512": "h0QAsUGQS6LWImyuEJUTsbWxkgVP29wc6aUaCz9YAj1v0LDL+sf16jTPu1gzseYW6qAK3dPRFFmHxxgdBSd/LA==", + "sha512": "228FG0jLcIwTVJyz8CLFKueVqQK36ANazUManGaJHkO0icjiIypKW7YLWLIWahyIkdh5M7mV2dJepllLyA1SKg==", "type": "package", "path": "System.Reflection.Emit/4.3.0", "files": [ @@ -8832,7 +8821,7 @@ ] }, "System.Reflection.Emit.ILGeneration/4.3.0": { - "sha512": "qjPA5akElcfItqv8P6KqIPac/aNAWapXdIP7nKS9Dzfc5aJVkmZiklGhv5pDNlgirdPc+KIvRn8axyqPyW9Aqg==", + "sha512": "59tBslAk9733NXLrUJrwNZEzbMAcu8k344OYo+wfSVygcgZ9lgBdGIzH/nrg3LYhXceynyvTc8t5/GD4Ri0/ng==", "type": "package", "path": "System.Reflection.Emit.ILGeneration/4.3.0", "files": [ @@ -8875,7 +8864,7 @@ ] }, "System.Reflection.Emit.Lightweight/4.3.0": { - "sha512": "ISHyww5Xmtd/6llE7vRYlwPxvHYznLZ/u0npTtSK9Mqcb2YPdjDx8l8VL2XT2o1EkzU84IqV1wM73FR2mxD6Yg==", + "sha512": "oadVHGSMsTmZsAF864QYN1t1QzZjIcuKU3l2S9cZOwDdDueNTrqq1yRj7koFfIGEnKpt6NjpL3rOzRhs4ryOgA==", "type": "package", "path": "System.Reflection.Emit.Lightweight/4.3.0", "files": [ @@ -8918,7 +8907,7 @@ ] }, "System.Reflection.Extensions/4.3.0": { - "sha512": "Ck37znQavjHL0uJm/z4+LX8bzehbexjCIXU7VxemQnvlDrpvI49aoKA+yOabViTcVhmreAfa/023DaGWHyhixQ==", + "sha512": "rJkrJD3kBI5B712aRu4DpSIiHRtr6QlfZSQsb0hYHrDCZORXCFjQfoipo2LaMUHoT9i1B7j7MnfaEKWDFmFQNQ==", "type": "package", "path": "System.Reflection.Extensions/4.3.0", "files": [ @@ -8973,7 +8962,7 @@ ] }, "System.Reflection.Metadata/1.4.1": { - "sha512": "x67vGzPfF41MZdRyvSRi0O2fgfCCZQ1xdtGVM9hiDGQ/W5OY3YM8DM/EAdAds8JeN0Mfcu01EDvISlMyzZhJvw==", + "sha512": "tc2ZyJgweHCLci5oQGuhQn9TD0Ii9DReXkHtZm3aAGp8xe40rpRjiTbMXOtZU+fr0BOQ46goE9+qIqRGjR9wGg==", "type": "package", "path": "System.Reflection.Metadata/1.4.1", "files": [ @@ -8988,7 +8977,7 @@ ] }, "System.Reflection.Primitives/4.3.0": { - "sha512": "EOygJlz5p2SAVee65QLJa3AXgOLqpPc7d5DZ/l4XzcKrUzoplvNmqfdVRC4fiyjqogFXx74RKqs8zavQMUFO5g==", + "sha512": "5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", "type": "package", "path": "System.Reflection.Primitives/4.3.0", "files": [ @@ -9043,7 +9032,7 @@ ] }, "System.Reflection.TypeExtensions/4.3.0": { - "sha512": "/O+HoOF+eSlHzEuwJyUGOB/YPpVTsZEmgnbfDeVgZaOysmDpqFj7TvjXorIhSNAortATLxsYoW0pbaWXnZL2RA==", + "sha512": "7u6ulLcZbyxB5Gq0nMkQttcdBTx57ibzw+4IOXEfR+sXYQoHvjW5LTLyNr8O22UIMrqYbchJQJnos4eooYzYJA==", "type": "package", "path": "System.Reflection.TypeExtensions/4.3.0", "files": [ @@ -9095,7 +9084,7 @@ ] }, "System.Resources.Reader/4.3.0": { - "sha512": "TaJcPROD+USeUtHhmWbd6h0u0OXzSiOhFxRVvWAJFcOkeNerKuXq9oRCnJowgU/GzxYXzTKVukCyH+4+Snc7wg==", + "sha512": "AeSwdrdgsRnGRJDofYEJPlotJm6gDDg6WJ1/1lX2Yq8bPwicba7lanPi7adK0SE58zgN5PcGg/h0tuZS+IRAdw==", "type": "package", "path": "System.Resources.Reader/4.3.0", "files": [ @@ -9107,7 +9096,7 @@ ] }, "System.Resources.ResourceManager/4.3.0": { - "sha512": "TRPtCg6WJXjiHDzuL/2tiLo13VhmZ82HUTnqcaJDXdSdb7sCJyIQAO78fD+dCT/PsOvqrIuPNnoDXJ1b0tmJPw==", + "sha512": "/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", "type": "package", "path": "System.Resources.ResourceManager/4.3.0", "files": [ @@ -9162,7 +9151,7 @@ ] }, "System.Runtime/4.3.0": { - "sha512": "k4LkVfy3Owa39nzvwvqJhEmPD31eah9S4zWqvrr5f4kqqABy1LENZvfIUjM+8Sl6nN1iuH7JI1mNW21yvKhsuA==", + "sha512": "JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==", "type": "package", "path": "System.Runtime/4.3.0", "files": [ @@ -9265,7 +9254,7 @@ ] }, "System.Runtime.Extensions/4.3.0": { - "sha512": "kpd4W/KGcbpOgCwDNS9GSo0eO42+PmdTrigPU5HTdRyvJB7wFvjkLnrTb0p3Niipb+niREgGkkwhzr7YX1LhqA==", + "sha512": "guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", "type": "package", "path": "System.Runtime.Extensions/4.3.0", "files": [ @@ -9344,7 +9333,7 @@ ] }, "System.Runtime.Handles/4.3.0": { - "sha512": "q3ffdNGoPl74oKK7ny628/nxTncpu2l1tV4zwOJowq0n91IwHtx3S2kGmXp1duPCFM05ADPcWRBKZi2FgqySXA==", + "sha512": "OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", "type": "package", "path": "System.Runtime.Handles/4.3.0", "files": [ @@ -9380,7 +9369,7 @@ ] }, "System.Runtime.InteropServices/4.3.0": { - "sha512": "y6MGgwwM2dhMHAegPkhz4E8Y1b8iGHIb9lvhBpW4AIgzutT0/ngkhQhd6aDZ6ZDFf8IskBI29Xy0N8G2W+0Mcg==", + "sha512": "uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", "type": "package", "path": "System.Runtime.InteropServices/4.3.0", "files": [ @@ -9471,7 +9460,7 @@ ] }, "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { - "sha512": "URwfBbtHhP9Cmp4Wtyv8VbZrovMTE0/Km5EocQ7EYyFsMOaJ1tmIwoKgT3hZNmkTKPIfsXJXATC30BfytXsC1g==", + "sha512": "cbz4YJMqRDR7oLeMRbdYv7mYzc++17lNhScCX0goO2XpGWdvAt60CGN+FHdePUEHCe/Jy9jUlvNAiNdM+7jsOw==", "type": "package", "path": "System.Runtime.InteropServices.RuntimeInformation/4.3.0", "files": [ @@ -9551,7 +9540,7 @@ ] }, "System.Runtime.Loader/4.3.0": { - "sha512": "ljAz486Mpwyy/+HgUP0yz7CeROY5NtRnmE3hL057D3ymOXOw86rKKgbkORrX7h/0tDemGQuU9za8bf1mH8YhEw==", + "sha512": "DHMaRn8D8YCK2GG2pw+UzNxn/OHVfaWx7OTLBD/hPegHZZgcZh3H6seWegrC4BYwsfuGrywIuT+MQs+rPqRLTQ==", "type": "package", "path": "System.Runtime.Loader/4.3.0", "files": [ @@ -9581,7 +9570,7 @@ ] }, "System.Runtime.Numerics/4.3.0": { - "sha512": "eGQdMsqEvK4RfhxavCj54NzUtpY/SWSQGihD98H91HPeANUktmTermSYS9Cjk/XfEXOx8WQjhN2oVQ6P13fbuA==", + "sha512": "yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", "type": "package", "path": "System.Runtime.Numerics/4.3.0", "files": [ @@ -9707,7 +9696,7 @@ ] }, "System.Security.Claims/4.3.0": { - "sha512": "Ln4WSraYP7wlVbuhxvw7iCmuQvliDcacy0okPtlmFu8RVnNyPkFPoYuCmPHsI4A7OryCbbGOp/2Ym652/oNJHQ==", + "sha512": "P/+BR/2lnc4PNDHt/TPBAWHVMLMRHsyYZbU1NphW4HIWzCggz8mJbTQQ3MKljFE7LS3WagmVFuBgoLcFzYXlkA==", "type": "package", "path": "System.Security.Claims/4.3.0", "files": [ @@ -9744,7 +9733,7 @@ ] }, "System.Security.Cryptography.Algorithms/4.3.0": { - "sha512": "lNqa51/P9CB6qJdSQ4QLcma1T4syjEqabfcV5cyeY9VzVaQDPGypzPwP88qCOpDd/6CYVpiUbh1Ebq7JO6zcmA==", + "sha512": "W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", "type": "package", "path": "System.Security.Cryptography.Algorithms/4.3.0", "files": [ @@ -9783,7 +9772,7 @@ ] }, "System.Security.Cryptography.Cng/4.3.0": { - "sha512": "cNnTT0YVCHxg+iZ3GY7ZwuC3AMtmhSckQ7jR4OSYEC7Dz82o8BkTE+K8Ae0FYzPaYZj3gmW8TE3TnxVNEwaPIQ==", + "sha512": "03idZOqFlsKRL4W+LuCpJ6dBYDUWReug6lZjBa3uJWnk5sPCUXckocevTaUA8iT/MFSrY/2HXkOt753xQ/cf8g==", "type": "package", "path": "System.Security.Cryptography.Cng/4.3.0", "files": [ @@ -9809,7 +9798,7 @@ ] }, "System.Security.Cryptography.Csp/4.3.0": { - "sha512": "KrReEWygG+eZvQ2CzTwaot31R3z22Fx1C3oVeUvQwYCiDDwdY6zuXXCG3ddor4gjKNrJ6mjAEGQmElQH6aXqCA==", + "sha512": "X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", "type": "package", "path": "System.Security.Cryptography.Csp/4.3.0", "files": [ @@ -9839,7 +9828,7 @@ ] }, "System.Security.Cryptography.Encoding/4.3.0": { - "sha512": "vPMKxb8bL0asAiabd4gzzM+xAk8DjhG/oeUzQmr1V5boIbdopHghkhuK5QiCdksCWeuIEtoSDLRwAb0F+O/cbw==", + "sha512": "1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", "type": "package", "path": "System.Security.Cryptography.Encoding/4.3.0", "files": [ @@ -9878,7 +9867,7 @@ ] }, "System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "QwRNcOsCc0D7ooSwFCpGAZ4RrwUZsXJGQ8OYU2kvtDZwWVjXhZuXHyL7xcjZsn2Kkyskwcnrs3TJRQZZPG1EWw==", + "sha512": "h4CEgOgv5PKVF/HwaHzJRiVboL2THYCou97zpmhjghx5frc7fIvlkY1jL+lnIQyChrJDMNEXS6r7byGif8Cy4w==", "type": "package", "path": "System.Security.Cryptography.OpenSsl/4.3.0", "files": [ @@ -9892,7 +9881,7 @@ ] }, "System.Security.Cryptography.Primitives/4.3.0": { - "sha512": "57AYiT9PLBI0fo0Xdz6CbA+GB7MLLlQ3VLMY/JhTFVnlQgdIRWrpyGmzkCoqBfyB91WSTGcZWqS2MOTffekFYA==", + "sha512": "7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", "type": "package", "path": "System.Security.Cryptography.Primitives/4.3.0", "files": [ @@ -9919,7 +9908,7 @@ ] }, "System.Security.Cryptography.X509Certificates/4.3.0": { - "sha512": "TXLmYzpgUcmDmpxUs7XBf7TV/gl7vxSZSypLO44zRw8v490cDF9fwuIHpqZw+Iv0ExjTkBhWX7Jty9+MXLumjw==", + "sha512": "t2Tmu6Y2NtJ2um0RtcuhP7ZdNNxXEgUm2JeoA/0NvlMjAhKCnM1NX07TDl3244mVp3QU6LPEhT3HTtH1uF7IYw==", "type": "package", "path": "System.Security.Cryptography.X509Certificates/4.3.0", "files": [ @@ -9973,7 +9962,7 @@ ] }, "System.Security.Principal/4.3.0": { - "sha512": "U1b4J4i3zJVBdu8PiRPHxFiw42NAwiA2cz2M42Oj0eZVNswPdXQWTEVcSXgzn8CYOrVdRS2WsrE7DlhZiVO+rA==", + "sha512": "I1tkfQlAoMM2URscUtpcRo/hX0jinXx6a/KUtEQoz3owaYwl3qwsO8cbzYVVnjxrzxjHo3nJC+62uolgeGIS9A==", "type": "package", "path": "System.Security.Principal/4.3.0", "files": [ @@ -10030,7 +10019,7 @@ ] }, "System.Security.Principal.Windows/4.3.0": { - "sha512": "+Kaf4udUFV10sghvVOBgYzIqmZ6KAH74oY5aNjq+V71BuBp7tBJDm4Cyc/8FoC1EraesYVyWsSEH+7YjNW42yg==", + "sha512": "HVL1rvqYtnRCxFsYag/2le/ZfKLK4yMw79+s6FmKXbSCNN0JeAhrYxnRAHFoWRa0dEojsDcbBSpH3l22QxAVyw==", "type": "package", "path": "System.Security.Principal.Windows/4.3.0", "files": [ @@ -10057,7 +10046,7 @@ ] }, "System.Text.Encoding/4.3.0": { - "sha512": "mkAGutaN9GkegaVs3/CW/hLU3m6Lq4Yjqs4V/duOD2y7KuAvbNkDuCycp/25eQRt7l2r+6OwXUryjXoETOJ14w==", + "sha512": "BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", "type": "package", "path": "System.Text.Encoding/4.3.0", "files": [ @@ -10123,7 +10112,7 @@ ] }, "System.Text.Encoding.CodePages/4.0.1": { - "sha512": "Y1ZW4g2iVlKBftC9PO86VQcMxYBbFlVlLu5mpdO7rbvqx1aktp2RjWdgzTgIUbDdLR809oDS1I+BCTck+kwjSg==", + "sha512": "h4z6rrA/hxWf4655D18IIZ0eaLRa3tQC/j+e26W+VinIHY0l07iEXaAvO0YSYq3MvCjMYy8Zs5AdC1sxNQOB7Q==", "type": "package", "path": "System.Text.Encoding.CodePages/4.0.1", "files": [ @@ -10160,7 +10149,7 @@ ] }, "System.Text.Encoding.Extensions/4.3.0": { - "sha512": "hK7XyzaPe7a5Eegl+m+xZiqOQJsjBLrMGDNCr86xkFoFIIINQzAKaQoVf6Ku6BUNGPxEeJwvrJUNFUa7l3c6NA==", + "sha512": "YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", "type": "package", "path": "System.Text.Encoding.Extensions/4.3.0", "files": [ @@ -10239,7 +10228,7 @@ ] }, "System.Text.RegularExpressions/4.3.0": { - "sha512": "iqaUaqtWJUKe1htrnXLfL0qWQppGdeBDUb/rFxTs2A/iRld5dSkS43ildDZjwmAEBziPZ6RXNFIh76SfrZXl1Q==", + "sha512": "RpT2DA+L660cBt1FssIE9CAGpLFdFPuheB7pLpKpn6ZXNby7jDERe8Ua/Ne2xGiwLVG2JOqziiaVCGDon5sKFA==", "type": "package", "path": "System.Text.RegularExpressions/4.3.0", "files": [ @@ -10321,7 +10310,7 @@ ] }, "System.Threading/4.3.0": { - "sha512": "G7HrP3xPjeNr+Kdj5x/uBAuq5/P9yxZgg8/sTlcmui0WzVjXW8MwOQe2pKak8f1pXtuZ3h1f5XF9JGE5N5pGkg==", + "sha512": "VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", "type": "package", "path": "System.Threading/4.3.0", "files": [ @@ -10390,7 +10379,7 @@ ] }, "System.Threading.Overlapped/4.3.0": { - "sha512": "FbvP7wU1+hpPbI+j6yN+lxya2GF1lbjK6avoQa0uu+R64LdyXWOBSklD5vOPvvhXfJYac20gY9GKu8WpC48JYA==", + "sha512": "m3HQ2dPiX/DSTpf+yJt8B0c+SRvzfqAJKx+QDWi+VLhz8svLT23MVjEOHPF/KiSLeArKU/iHescrbLd3yVgyNg==", "type": "package", "path": "System.Threading.Overlapped/4.3.0", "files": [ @@ -10418,7 +10407,7 @@ ] }, "System.Threading.Tasks/4.3.0": { - "sha512": "U6LKlkweBtUFF5Z+7UPzZvHwiMnaLcSScdSkCb3B5i3wVisbkqnkXd9Hg4/Fiop37/pPLC2x3pQ3SlCLPTQr5Q==", + "sha512": "LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", "type": "package", "path": "System.Threading.Tasks/4.3.0", "files": [ @@ -10484,7 +10473,7 @@ ] }, "System.Threading.Tasks.Dataflow/4.6.0": { - "sha512": "EgyiuxNfW2sNpsQxScw7Ovbt1ln/6+AIFqt6KX48qI5t8gR7mHrlEPIGfpjatzirI55TXyc6i1J5+PJdViTeog==", + "sha512": "2hRjGu2r2jxRZ55wmcHO/WbdX+YAOz9x6FE8xqkHZgPaoFMKQZRe9dk8xTZIas8fRjxRmzawnTEWIrhlM+Un7w==", "type": "package", "path": "System.Threading.Tasks.Dataflow/4.6.0", "files": [ @@ -10499,7 +10488,7 @@ ] }, "System.Threading.Tasks.Extensions/4.3.0": { - "sha512": "uKuv3sTi5BiVKQgb/bnP8dGM3H2zmgMOyCUY7ur9HwElrCr/cCxbiuGou23pdyTRowgPvS7ojTYwLIsgD3GJKQ==", + "sha512": "npvJkVKl5rKXrtl1Kkm6OhOUaYGEiF9wFbppFRWSMoApKzt2PiPHT2Bb8a5sAWxprvdOAtvaARS9QYMznEUtug==", "type": "package", "path": "System.Threading.Tasks.Extensions/4.3.0", "files": [ @@ -10514,7 +10503,7 @@ ] }, "System.Threading.Tasks.Parallel/4.0.1": { - "sha512": "JqtrcmLZauy0J5hwh89mfm5Ipv1j83TA48nGHXxpYr4o7coNr5IuEH1FvTyzoT9X+fArRe5CsUBGTMk3JeRLDw==", + "sha512": "7Pc9t25bcynT9FpMvkUw4ZjYwUiGup/5cJFW72/5MgCG+np2cfVUMdh29u8d7onxX7d8PS3J+wL73zQRqkdrSA==", "type": "package", "path": "System.Threading.Tasks.Parallel/4.0.1", "files": [ @@ -10569,7 +10558,7 @@ ] }, "System.Threading.Thread/4.3.0": { - "sha512": "iQShtZpRYm1ApwoQhli8Vtn9pDZ7/TUl7RxaFO5oWnT7g6OQKvEzXx/tcTYUI6jsVPmEeeatG4ziCGl6upQxdw==", + "sha512": "OHmbT+Zz065NKII/ZHcH9XO1dEuLGI1L2k7uYss+9C1jLxTC9kTZZuzUOyXHayRk+dft9CiDf3I/QZ0t8JKyBQ==", "type": "package", "path": "System.Threading.Thread/4.3.0", "files": [ @@ -10606,12 +10595,12 @@ "ref/xamarinwatchos10/_._" ] }, - "System.Threading.ThreadPool/4.0.10": { - "sha512": "RkcyUCB8OYpoCjE+rFR4ogv7Swu/geBhMiZdqUPmEeOejJyy7Orr8NdUKN9KYyYQb8klby6LbyxboIl9YCg1Fw==", + "System.Threading.ThreadPool/4.3.0": { + "sha512": "k/+g4b7vjdd4aix83sTgC9VG6oXYKAktSfNIJUNGxPEj7ryEOfzHHhfnmsZvjxawwcD9HyWXKCXmPjX8U4zeSw==", "type": "package", - "path": "System.Threading.ThreadPool/4.0.10", + "path": "System.Threading.ThreadPool/4.3.0", "files": [ - "System.Threading.ThreadPool.4.0.10.nupkg.sha512", + "System.Threading.ThreadPool.4.3.0.nupkg.sha512", "System.Threading.ThreadPool.nuspec", "ThirdPartyNotices.txt", "dotnet_library_license.txt", @@ -10645,7 +10634,7 @@ ] }, "System.Threading.Timer/4.3.0": { - "sha512": "3fMZ2RVuB31NFUCxWXRacG/4JSv8+RZFn5qU6Ki9x93HWfXgAY9xITZt9I0i7cunBCgWjyMdPVYUdaq2eDnaRA==", + "sha512": "Z6YfyYTCg7lOZjJzBjONJTFKGN9/NIYKSxhU5GRd+DTwHSZyvWp1xuI5aR+dLg+ayyC5Xv57KiY4oJ0tMO89fQ==", "type": "package", "path": "System.Threading.Timer/4.3.0", "files": [ @@ -10698,7 +10687,7 @@ ] }, "System.Xml.ReaderWriter/4.3.0": { - "sha512": "2AAUKOcXDzIRzWTv/UhN8BmT8XHsQkB7RjfQx7VTiceb69sKP/4sF0THyeEKuJyDY5s4dyJ47Gl/rj5b5hD4ZQ==", + "sha512": "GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", "type": "package", "path": "System.Xml.ReaderWriter/4.3.0", "files": [ @@ -10768,7 +10757,7 @@ ] }, "System.Xml.XDocument/4.3.0": { - "sha512": "sXSwDeMQmI+jw8err1c1hcFodTZQRlxEk//CWWtl3gZ9iL+dUPpmLkv7pO0vhfVb0CqNd5GRiiCoJwsGXzckXA==", + "sha512": "5zJ0XDxAIg8iy+t4aMnQAu0MqVbqyvfoUVl1yDV61xdo3Vth45oA2FoY4pPkxYAH5f8ixpmTqXeEIya95x0aCQ==", "type": "package", "path": "System.Xml.XDocument/4.3.0", "files": [ @@ -10836,7 +10825,7 @@ ] }, "System.Xml.XmlDocument/4.0.1": { - "sha512": "mbRfm5r7kKcpbIOiDVk1uHlxmdQEGljaZodnpVUFqANyo2Mw2CCmoYp7APYQCr4DeSN14Z1YHpSp8OK7ANAZUw==", + "sha512": "2eZu6IP+etFVBBFUFzw2w6J21DqIN5eL9Y8r8JfJWUmV28Z5P0SNU01oCisVHQgHsDhHPnmq2s1hJrJCFZWloQ==", "type": "package", "path": "System.Xml.XmlDocument/4.0.1", "files": [ @@ -10942,7 +10931,7 @@ ] }, "System.Xml.XPath/4.0.1": { - "sha512": "txd067Zx8BhJBMNl/DDG5Isw2SdXV62o3eRaXmDTZgyqER0W+SBdC4smtTut+z3pecx7kWc8jy/m8jYpZ9aUcA==", + "sha512": "axlTIVA3DNxxeMYg+pRychcY/kkPRSY9lVVXgmCv3/Qp8+R3LA6BOlvMflsxkDlWX1o5bVFEmtBqEl0AeMphYg==", "type": "package", "path": "System.Xml.XPath/4.0.1", "files": [ @@ -10979,7 +10968,7 @@ ] }, "System.Xml.XPath.XDocument/4.0.1": { - "sha512": "QGYV1Oa4udstRIS5Jxu9N5D3tnjeR7UUnXC02LEdzi+LhT3gpP9SRsSr9qy87HEWWF5LRFqwYYbV6A/OumOESQ==", + "sha512": "z43WcgTLe5Atv1sjNsdxtIbhH38XWNXvzDTQmLQ+LhiM0SkvGIEFVeMxudGoEyPbtQBxcTbDBeOLCyc64296lg==", "type": "package", "path": "System.Xml.XPath.XDocument/4.0.1", "files": [ @@ -11015,7 +11004,7 @@ "ref/xamarinwatchos10/_._" ] }, - "GenericMvc/1.0.1": { + "GenericMvc/1.0.2": { "type": "project", "path": "../GenericMvc/project.json", "msbuildProject": "../GenericMvc/GenericMvc.xproj" @@ -11028,17 +11017,17 @@ "Microsoft.AspNetCore.Mvc >= 1.1.0", "Microsoft.AspNetCore.Razor.Tools >= 1.1.0-preview4-final", "Microsoft.AspNetCore.Routing >= 1.1.0", - "Microsoft.AspNetCore.Server.IISIntegration >= 1.0.0", - "Microsoft.AspNetCore.Server.Kestrel >= 1.0.1", + "Microsoft.AspNetCore.Server.IISIntegration >= 1.1.0", + "Microsoft.AspNetCore.Server.Kestrel >= 1.1.0", "Microsoft.AspNetCore.StaticFiles >= 1.1.0", "Microsoft.EntityFrameworkCore >= 1.1.0", "Microsoft.EntityFrameworkCore.InMemory >= 1.1.0", - "Microsoft.Extensions.Configuration.EnvironmentVariables >= 1.0.0", - "Microsoft.Extensions.Configuration.Json >= 1.0.0", + "Microsoft.Extensions.Configuration.EnvironmentVariables >= 1.1.0", + "Microsoft.Extensions.Configuration.Json >= 1.1.0", "Microsoft.Extensions.Logging >= 1.1.0", "Microsoft.Extensions.Logging.Console >= 1.1.0", "Microsoft.Extensions.Logging.Debug >= 1.1.0", - "Microsoft.Extensions.Options.ConfigurationExtensions >= 1.0.0", + "Microsoft.Extensions.Options.ConfigurationExtensions >= 1.1.0", "Microsoft.NETCore.App >= 1.1.0", "Microsoft.VisualStudio.Web.BrowserLink.Loader >= 14.0.0" ], diff --git a/src/GenericMvc.Test.App/wwwroot/_references.js b/src/GenericMvc.Test.App/wwwroot/_references.js index b6fe9d6..3d2e0d2 100644 --- a/src/GenericMvc.Test.App/wwwroot/_references.js +++ b/src/GenericMvc.Test.App/wwwroot/_references.js @@ -1,6 +1,15 @@ /// /// /// +/// +/// +/// +/// +/// +/// /// +/// /// /// +/// +/// diff --git a/src/GenericMvc.Test.App/wwwroot/css/material-dist/bootstrap-material-design.css b/src/GenericMvc.Test.App/wwwroot/css/material-dist/bootstrap-material-design.css new file mode 100644 index 0000000..fc51a59 --- /dev/null +++ b/src/GenericMvc.Test.App/wwwroot/css/material-dist/bootstrap-material-design.css @@ -0,0 +1,3391 @@ +/* + +To get this list of colors inject jQuery at http://www.google.com/design/spec/style/color.html#color-color-palette + +Then, run this script to get the list. + + +(function() { + var colors = {}, main = {}; + $(".color-group").each(function() { + var color = $(this).find(".name").text().trim().toLowerCase().replace(" ", "-"); + colors[color] = {}; + + $(this).find(".color").not(".main-color").each(function() { + var shade = $(this).find(".shade").text().trim(), + hex = $(this).find(".hex").text().trim(); + + colors[color][shade] = hex; + }); + main[color] = color + "-" + $(this).find(".main-color .shade").text().trim(); + + }); + var LESS = ""; + $.each(colors, function(name, shades) { + LESS += "\n\n"; + $.each(shades, function(shade, hex) { + LESS += "@" + name + "-" + shade + ": " + hex + ";\n"; + }); + if (main[name]) { + LESS += "@" + name + ": " + main[name] + ";\n"; + } + }); + console.log(LESS); +})(); + + +*/ +/* ANIMATION */ +/* SHADOWS */ +/* Shadows (from mdl http://www.getmdl.io/) */ +body { + background-color: #EEEEEE; +} +body.inverse { + background: #333333; +} +body.inverse, +body.inverse .form-control { + color: rgba(255,255,255, 0.84); +} +body.inverse .modal, +body.inverse .panel-default, +body.inverse .card, +body.inverse .modal .form-control, +body.inverse .panel-default .form-control, +body.inverse .card .form-control { + background-color: initial; + color: initial; +} +body, +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4 { + font-family: 'Roboto', 'Helvetica', 'Arial', sans-serif; + font-weight: 300; +} +h5, +h6 { + font-weight: 400; +} +a, +a:hover, +a:focus { + color: #0d47a1; +} +a .material-icons, +a:hover .material-icons, +a:focus .material-icons { + vertical-align: middle; +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + padding-top: 0; +} +.form-horizontal .radio { + margin-bottom: 10px; +} +.form-horizontal label { + text-align: right; +} +.form-horizontal label.control-label { + margin: 0; +} +body .container .well.well-sm, +body .container-fluid .well.well-sm { + padding: 10px; +} +body .container .well.well-lg, +body .container-fluid .well.well-lg { + padding: 26px; +} +body .container .well, +body .container-fluid .well, +body .container .jumbotron, +body .container-fluid .jumbotron { + background-color: #fff; + padding: 19px; + margin-bottom: 20px; + -webkit-box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + border-radius: 2px; + border: 0; +} +body .container .well p, +body .container-fluid .well p, +body .container .jumbotron p, +body .container-fluid .jumbotron p { + font-weight: 300; +} +body .container .well, +body .container-fluid .well, +body .container .jumbotron, +body .container-fluid .jumbotron, +body .container .well-default, +body .container-fluid .well-default, +body .container .jumbotron-default, +body .container-fluid .jumbotron-default { + background-color: #ffffff; +} +body .container .well-inverse, +body .container-fluid .well-inverse, +body .container .jumbotron-inverse, +body .container-fluid .jumbotron-inverse { + background-color: #3f51b5; +} +body .container .well-primary, +body .container-fluid .well-primary, +body .container .jumbotron-primary, +body .container-fluid .jumbotron-primary { + background-color: #0d47a1; +} +body .container .well-success, +body .container-fluid .well-success, +body .container .jumbotron-success, +body .container-fluid .jumbotron-success { + background-color: #4caf50; +} +body .container .well-info, +body .container-fluid .well-info, +body .container .jumbotron-info, +body .container-fluid .jumbotron-info { + background-color: #03a9f4; +} +body .container .well-warning, +body .container-fluid .well-warning, +body .container .jumbotron-warning, +body .container-fluid .jumbotron-warning { + background-color: #ff5722; +} +body .container .well-danger, +body .container-fluid .well-danger, +body .container .jumbotron-danger, +body .container-fluid .jumbotron-danger { + background-color: #f44336; +} +.btn, +.input-group-btn .btn { + border: none; + border-radius: 2px; + position: relative; + padding: 8px 30px; + margin: 10px 1px; + font-size: 14px; + font-weight: 500; + text-transform: uppercase; + letter-spacing: 0; + will-change: box-shadow, transform; + -webkit-transition: -webkit-box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1); + -o-transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1); + transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1); + outline: 0; + cursor: pointer; + text-decoration: none; + background: transparent; +} +.btn::-moz-focus-inner, +.input-group-btn .btn::-moz-focus-inner { + border: 0; +} +.btn:not(.btn-raised), +.input-group-btn .btn:not(.btn-raised) { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn:not(.btn-raised), +.input-group-btn .btn:not(.btn-raised), +.btn:not(.btn-raised).btn-default, +.input-group-btn .btn:not(.btn-raised).btn-default { + color: rgba(0,0,0, 0.87); +} +.btn:not(.btn-raised).btn-inverse, +.input-group-btn .btn:not(.btn-raised).btn-inverse { + color: #3f51b5; +} +.btn:not(.btn-raised).btn-primary, +.input-group-btn .btn:not(.btn-raised).btn-primary { + color: #0d47a1; +} +.btn:not(.btn-raised).btn-success, +.input-group-btn .btn:not(.btn-raised).btn-success { + color: #4caf50; +} +.btn:not(.btn-raised).btn-info, +.input-group-btn .btn:not(.btn-raised).btn-info { + color: #03a9f4; +} +.btn:not(.btn-raised).btn-warning, +.input-group-btn .btn:not(.btn-raised).btn-warning { + color: #ff5722; +} +.btn:not(.btn-raised).btn-danger, +.input-group-btn .btn:not(.btn-raised).btn-danger { + color: #f44336; +} +.btn:not(.btn-raised):not(.btn-link):hover, +.input-group-btn .btn:not(.btn-raised):not(.btn-link):hover, +.btn:not(.btn-raised):not(.btn-link):focus, +.input-group-btn .btn:not(.btn-raised):not(.btn-link):focus { + background-color: rgba(153, 153, 153, 0.2); +} +.theme-dark .btn:not(.btn-raised):not(.btn-link):hover, +.theme-dark .input-group-btn .btn:not(.btn-raised):not(.btn-link):hover, +.theme-dark .btn:not(.btn-raised):not(.btn-link):focus, +.theme-dark .input-group-btn .btn:not(.btn-raised):not(.btn-link):focus { + background-color: rgba(204, 204, 204, 0.15); +} +.btn.btn-raised, +.input-group-btn .btn.btn-raised, +.btn.btn-fab, +.input-group-btn .btn.btn-fab, +.btn-group-raised .btn, +.btn-group-raised .input-group-btn .btn, +.btn.btn-raised.btn-default, +.input-group-btn .btn.btn-raised.btn-default, +.btn.btn-fab.btn-default, +.input-group-btn .btn.btn-fab.btn-default, +.btn-group-raised .btn.btn-default, +.btn-group-raised .input-group-btn .btn.btn-default { + background-color: #EEEEEE; + color: rgba(0,0,0, 0.87); +} +.btn.btn-raised.btn-inverse, +.input-group-btn .btn.btn-raised.btn-inverse, +.btn.btn-fab.btn-inverse, +.input-group-btn .btn.btn-fab.btn-inverse, +.btn-group-raised .btn.btn-inverse, +.btn-group-raised .input-group-btn .btn.btn-inverse { + background-color: #3f51b5; + color: #ffffff; +} +.btn.btn-raised.btn-primary, +.input-group-btn .btn.btn-raised.btn-primary, +.btn.btn-fab.btn-primary, +.input-group-btn .btn.btn-fab.btn-primary, +.btn-group-raised .btn.btn-primary, +.btn-group-raised .input-group-btn .btn.btn-primary { + background-color: #0d47a1; + color: rgba(255,255,255, 0.84); +} +.btn.btn-raised.btn-success, +.input-group-btn .btn.btn-raised.btn-success, +.btn.btn-fab.btn-success, +.input-group-btn .btn.btn-fab.btn-success, +.btn-group-raised .btn.btn-success, +.btn-group-raised .input-group-btn .btn.btn-success { + background-color: #4caf50; + color: rgba(255,255,255, 0.84); +} +.btn.btn-raised.btn-info, +.input-group-btn .btn.btn-raised.btn-info, +.btn.btn-fab.btn-info, +.input-group-btn .btn.btn-fab.btn-info, +.btn-group-raised .btn.btn-info, +.btn-group-raised .input-group-btn .btn.btn-info { + background-color: #03a9f4; + color: rgba(255,255,255, 0.84); +} +.btn.btn-raised.btn-warning, +.input-group-btn .btn.btn-raised.btn-warning, +.btn.btn-fab.btn-warning, +.input-group-btn .btn.btn-fab.btn-warning, +.btn-group-raised .btn.btn-warning, +.btn-group-raised .input-group-btn .btn.btn-warning { + background-color: #ff5722; + color: rgba(255,255,255, 0.84); +} +.btn.btn-raised.btn-danger, +.input-group-btn .btn.btn-raised.btn-danger, +.btn.btn-fab.btn-danger, +.input-group-btn .btn.btn-fab.btn-danger, +.btn-group-raised .btn.btn-danger, +.btn-group-raised .input-group-btn .btn.btn-danger { + background-color: #f44336; + color: rgba(255,255,255, 0.84); +} +.btn.btn-raised:not(.btn-link), +.input-group-btn .btn.btn-raised:not(.btn-link), +.btn-group-raised .btn:not(.btn-link), +.btn-group-raised .input-group-btn .btn:not(.btn-link) { + -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); +} +.btn.btn-raised:not(.btn-link):hover, +.input-group-btn .btn.btn-raised:not(.btn-link):hover, +.btn-group-raised .btn:not(.btn-link):hover, +.btn-group-raised .input-group-btn .btn:not(.btn-link):hover, +.btn.btn-raised:not(.btn-link):focus, +.input-group-btn .btn.btn-raised:not(.btn-link):focus, +.btn-group-raised .btn:not(.btn-link):focus, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus, +.btn.btn-raised:not(.btn-link).active, +.input-group-btn .btn.btn-raised:not(.btn-link).active, +.btn-group-raised .btn:not(.btn-link).active, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active, +.btn.btn-raised:not(.btn-link):active, +.input-group-btn .btn.btn-raised:not(.btn-link):active, +.btn-group-raised .btn:not(.btn-link):active, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active { + outline: 0; +} +.btn.btn-raised:not(.btn-link):hover, +.input-group-btn .btn.btn-raised:not(.btn-link):hover, +.btn-group-raised .btn:not(.btn-link):hover, +.btn-group-raised .input-group-btn .btn:not(.btn-link):hover, +.btn.btn-raised:not(.btn-link):focus, +.input-group-btn .btn.btn-raised:not(.btn-link):focus, +.btn-group-raised .btn:not(.btn-link):focus, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus, +.btn.btn-raised:not(.btn-link).active, +.input-group-btn .btn.btn-raised:not(.btn-link).active, +.btn-group-raised .btn:not(.btn-link).active, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active, +.btn.btn-raised:not(.btn-link):active, +.input-group-btn .btn.btn-raised:not(.btn-link):active, +.btn-group-raised .btn:not(.btn-link):active, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active, +.btn.btn-raised:not(.btn-link):hover.btn-default, +.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-default, +.btn-group-raised .btn:not(.btn-link):hover.btn-default, +.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-default, +.btn.btn-raised:not(.btn-link):focus.btn-default, +.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-default, +.btn-group-raised .btn:not(.btn-link):focus.btn-default, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-default, +.btn.btn-raised:not(.btn-link).active.btn-default, +.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-default, +.btn-group-raised .btn:not(.btn-link).active.btn-default, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-default, +.btn.btn-raised:not(.btn-link):active.btn-default, +.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-default, +.btn-group-raised .btn:not(.btn-link):active.btn-default, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-default { + background-color: #e4e4e4; +} +.btn.btn-raised:not(.btn-link):hover.btn-inverse, +.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-inverse, +.btn-group-raised .btn:not(.btn-link):hover.btn-inverse, +.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-inverse, +.btn.btn-raised:not(.btn-link):focus.btn-inverse, +.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-inverse, +.btn-group-raised .btn:not(.btn-link):focus.btn-inverse, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-inverse, +.btn.btn-raised:not(.btn-link).active.btn-inverse, +.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-inverse, +.btn-group-raised .btn:not(.btn-link).active.btn-inverse, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-inverse, +.btn.btn-raised:not(.btn-link):active.btn-inverse, +.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-inverse, +.btn-group-raised .btn:not(.btn-link):active.btn-inverse, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-inverse { + background-color: #495bc0; +} +.btn.btn-raised:not(.btn-link):hover.btn-primary, +.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-primary, +.btn-group-raised .btn:not(.btn-link):hover.btn-primary, +.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-primary, +.btn.btn-raised:not(.btn-link):focus.btn-primary, +.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-primary, +.btn-group-raised .btn:not(.btn-link):focus.btn-primary, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-primary, +.btn.btn-raised:not(.btn-link).active.btn-primary, +.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-primary, +.btn-group-raised .btn:not(.btn-link).active.btn-primary, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-primary, +.btn.btn-raised:not(.btn-link):active.btn-primary, +.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-primary, +.btn-group-raised .btn:not(.btn-link):active.btn-primary, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-primary { + background-color: #0f4fb4; +} +.btn.btn-raised:not(.btn-link):hover.btn-success, +.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-success, +.btn-group-raised .btn:not(.btn-link):hover.btn-success, +.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-success, +.btn.btn-raised:not(.btn-link):focus.btn-success, +.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-success, +.btn-group-raised .btn:not(.btn-link):focus.btn-success, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-success, +.btn.btn-raised:not(.btn-link).active.btn-success, +.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-success, +.btn-group-raised .btn:not(.btn-link).active.btn-success, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-success, +.btn.btn-raised:not(.btn-link):active.btn-success, +.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-success, +.btn-group-raised .btn:not(.btn-link):active.btn-success, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-success { + background-color: #59b75c; +} +.btn.btn-raised:not(.btn-link):hover.btn-info, +.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-info, +.btn-group-raised .btn:not(.btn-link):hover.btn-info, +.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-info, +.btn.btn-raised:not(.btn-link):focus.btn-info, +.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-info, +.btn-group-raised .btn:not(.btn-link):focus.btn-info, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-info, +.btn.btn-raised:not(.btn-link).active.btn-info, +.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-info, +.btn-group-raised .btn:not(.btn-link).active.btn-info, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-info, +.btn.btn-raised:not(.btn-link):active.btn-info, +.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-info, +.btn-group-raised .btn:not(.btn-link):active.btn-info, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-info { + background-color: #0fb2fc; +} +.btn.btn-raised:not(.btn-link):hover.btn-warning, +.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-warning, +.btn-group-raised .btn:not(.btn-link):hover.btn-warning, +.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-warning, +.btn.btn-raised:not(.btn-link):focus.btn-warning, +.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-warning, +.btn-group-raised .btn:not(.btn-link):focus.btn-warning, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-warning, +.btn.btn-raised:not(.btn-link).active.btn-warning, +.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-warning, +.btn-group-raised .btn:not(.btn-link).active.btn-warning, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-warning, +.btn.btn-raised:not(.btn-link):active.btn-warning, +.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-warning, +.btn-group-raised .btn:not(.btn-link):active.btn-warning, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-warning { + background-color: #ff6736; +} +.btn.btn-raised:not(.btn-link):hover.btn-danger, +.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-danger, +.btn-group-raised .btn:not(.btn-link):hover.btn-danger, +.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-danger, +.btn.btn-raised:not(.btn-link):focus.btn-danger, +.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-danger, +.btn-group-raised .btn:not(.btn-link):focus.btn-danger, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-danger, +.btn.btn-raised:not(.btn-link).active.btn-danger, +.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-danger, +.btn-group-raised .btn:not(.btn-link).active.btn-danger, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-danger, +.btn.btn-raised:not(.btn-link):active.btn-danger, +.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-danger, +.btn-group-raised .btn:not(.btn-link):active.btn-danger, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-danger { + background-color: #f55549; +} +.btn.btn-raised:not(.btn-link).active, +.input-group-btn .btn.btn-raised:not(.btn-link).active, +.btn-group-raised .btn:not(.btn-link).active, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active, +.btn.btn-raised:not(.btn-link):active, +.input-group-btn .btn.btn-raised:not(.btn-link):active, +.btn-group-raised .btn:not(.btn-link):active, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active, +.btn.btn-raised:not(.btn-link).active:hover, +.input-group-btn .btn.btn-raised:not(.btn-link).active:hover, +.btn-group-raised .btn:not(.btn-link).active:hover, +.btn-group-raised .input-group-btn .btn:not(.btn-link).active:hover, +.btn.btn-raised:not(.btn-link):active:hover, +.input-group-btn .btn.btn-raised:not(.btn-link):active:hover, +.btn-group-raised .btn:not(.btn-link):active:hover, +.btn-group-raised .input-group-btn .btn:not(.btn-link):active:hover { + -webkit-box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2); + box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2); +} +.btn.btn-raised:not(.btn-link):focus, +.input-group-btn .btn.btn-raised:not(.btn-link):focus, +.btn-group-raised .btn:not(.btn-link):focus, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus, +.btn.btn-raised:not(.btn-link):focus.active, +.input-group-btn .btn.btn-raised:not(.btn-link):focus.active, +.btn-group-raised .btn:not(.btn-link):focus.active, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.active, +.btn.btn-raised:not(.btn-link):focus:active, +.input-group-btn .btn.btn-raised:not(.btn-link):focus:active, +.btn-group-raised .btn:not(.btn-link):focus:active, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus:active, +.btn.btn-raised:not(.btn-link):focus:hover, +.input-group-btn .btn.btn-raised:not(.btn-link):focus:hover, +.btn-group-raised .btn:not(.btn-link):focus:hover, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus:hover, +.btn.btn-raised:not(.btn-link):focus.active:hover, +.input-group-btn .btn.btn-raised:not(.btn-link):focus.active:hover, +.btn-group-raised .btn:not(.btn-link):focus.active:hover, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.active:hover, +.btn.btn-raised:not(.btn-link):focus:active:hover, +.input-group-btn .btn.btn-raised:not(.btn-link):focus:active:hover, +.btn-group-raised .btn:not(.btn-link):focus:active:hover, +.btn-group-raised .input-group-btn .btn:not(.btn-link):focus:active:hover { + -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36); + box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36); +} +.btn.btn-fab, +.input-group-btn .btn.btn-fab { + border-radius: 50%; + font-size: 24px; + height: 56px; + margin: auto; + min-width: 56px; + width: 56px; + padding: 0; + overflow: hidden; + -webkit-box-shadow: 0 1px 1.5px 0 rgba(0, 0, 0, 0.12), 0 1px 1px 0 rgba(0, 0, 0, 0.24); + box-shadow: 0 1px 1.5px 0 rgba(0, 0, 0, 0.12), 0 1px 1px 0 rgba(0, 0, 0, 0.24); + position: relative; + line-height: normal; +} +.btn.btn-fab .ripple-container, +.input-group-btn .btn.btn-fab .ripple-container { + border-radius: 50%; +} +.btn.btn-fab.btn-fab-mini, +.input-group-btn .btn.btn-fab.btn-fab-mini, +.btn-group-sm .btn.btn-fab, +.btn-group-sm .input-group-btn .btn.btn-fab { + height: 40px; + min-width: 40px; + width: 40px; +} +.btn.btn-fab.btn-fab-mini.material-icons, +.input-group-btn .btn.btn-fab.btn-fab-mini.material-icons, +.btn-group-sm .btn.btn-fab.material-icons, +.btn-group-sm .input-group-btn .btn.btn-fab.material-icons { + top: 0px; + left: 0px; +} +.btn.btn-fab i.material-icons, +.input-group-btn .btn.btn-fab i.material-icons { + position: absolute; + top: 50%; + left: 50%; + -webkit-transform: translate(-12px, -12px); + -ms-transform: translate(-12px, -12px); + -o-transform: translate(-12px, -12px); + transform: translate(-12px, -12px); + line-height: 24px; + width: 24px; +} +.btn i.material-icons, +.input-group-btn .btn i.material-icons { + vertical-align: middle; +} +.btn.btn-lg, +.input-group-btn .btn.btn-lg, +.btn-group-lg .btn, +.btn-group-lg .input-group-btn .btn { + font-size: 16px; +} +.btn.btn-sm, +.input-group-btn .btn.btn-sm, +.btn-group-sm .btn, +.btn-group-sm .input-group-btn .btn { + padding: 5px 20px; + font-size: 12px; +} +.btn.btn-xs, +.input-group-btn .btn.btn-xs, +.btn-group-xs .btn, +.btn-group-xs .input-group-btn .btn { + padding: 4px 15px; + font-size: 10px; +} +fieldset[disabled][disabled] .btn, +fieldset[disabled][disabled] .input-group-btn .btn, +fieldset[disabled][disabled] .btn-group, +fieldset[disabled][disabled] .btn-group-vertical, +.btn.disabled, +.input-group-btn .btn.disabled, +.btn-group.disabled, +.btn-group-vertical.disabled, +.btn:disabled, +.input-group-btn .btn:disabled, +.btn-group:disabled, +.btn-group-vertical:disabled, +.btn[disabled][disabled], +.input-group-btn .btn[disabled][disabled], +.btn-group[disabled][disabled], +.btn-group-vertical[disabled][disabled] { + color: rgba(0, 0, 0, 0.26); + background: transparent; +} +.theme-dark fieldset[disabled][disabled] .btn, +.theme-dark fieldset[disabled][disabled] .input-group-btn .btn, +.theme-dark fieldset[disabled][disabled] .btn-group, +.theme-dark fieldset[disabled][disabled] .btn-group-vertical, +.theme-dark .btn.disabled, +.theme-dark .input-group-btn .btn.disabled, +.theme-dark .btn-group.disabled, +.theme-dark .btn-group-vertical.disabled, +.theme-dark .btn:disabled, +.theme-dark .input-group-btn .btn:disabled, +.theme-dark .btn-group:disabled, +.theme-dark .btn-group-vertical:disabled, +.theme-dark .btn[disabled][disabled], +.theme-dark .input-group-btn .btn[disabled][disabled], +.theme-dark .btn-group[disabled][disabled], +.theme-dark .btn-group-vertical[disabled][disabled] { + color: rgba(255, 255, 255, 0.3); +} +fieldset[disabled][disabled] .btn.btn-raised, +fieldset[disabled][disabled] .input-group-btn .btn.btn-raised, +fieldset[disabled][disabled] .btn-group.btn-raised, +fieldset[disabled][disabled] .btn-group-vertical.btn-raised, +.btn.disabled.btn-raised, +.input-group-btn .btn.disabled.btn-raised, +.btn-group.disabled.btn-raised, +.btn-group-vertical.disabled.btn-raised, +.btn:disabled.btn-raised, +.input-group-btn .btn:disabled.btn-raised, +.btn-group:disabled.btn-raised, +.btn-group-vertical:disabled.btn-raised, +.btn[disabled][disabled].btn-raised, +.input-group-btn .btn[disabled][disabled].btn-raised, +.btn-group[disabled][disabled].btn-raised, +.btn-group-vertical[disabled][disabled].btn-raised, +fieldset[disabled][disabled] .btn.btn-group-raised, +fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised, +fieldset[disabled][disabled] .btn-group.btn-group-raised, +fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised, +.btn.disabled.btn-group-raised, +.input-group-btn .btn.disabled.btn-group-raised, +.btn-group.disabled.btn-group-raised, +.btn-group-vertical.disabled.btn-group-raised, +.btn:disabled.btn-group-raised, +.input-group-btn .btn:disabled.btn-group-raised, +.btn-group:disabled.btn-group-raised, +.btn-group-vertical:disabled.btn-group-raised, +.btn[disabled][disabled].btn-group-raised, +.input-group-btn .btn[disabled][disabled].btn-group-raised, +.btn-group[disabled][disabled].btn-group-raised, +.btn-group-vertical[disabled][disabled].btn-group-raised, +fieldset[disabled][disabled] .btn.btn-raised.active, +fieldset[disabled][disabled] .input-group-btn .btn.btn-raised.active, +fieldset[disabled][disabled] .btn-group.btn-raised.active, +fieldset[disabled][disabled] .btn-group-vertical.btn-raised.active, +.btn.disabled.btn-raised.active, +.input-group-btn .btn.disabled.btn-raised.active, +.btn-group.disabled.btn-raised.active, +.btn-group-vertical.disabled.btn-raised.active, +.btn:disabled.btn-raised.active, +.input-group-btn .btn:disabled.btn-raised.active, +.btn-group:disabled.btn-raised.active, +.btn-group-vertical:disabled.btn-raised.active, +.btn[disabled][disabled].btn-raised.active, +.input-group-btn .btn[disabled][disabled].btn-raised.active, +.btn-group[disabled][disabled].btn-raised.active, +.btn-group-vertical[disabled][disabled].btn-raised.active, +fieldset[disabled][disabled] .btn.btn-group-raised.active, +fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised.active, +fieldset[disabled][disabled] .btn-group.btn-group-raised.active, +fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised.active, +.btn.disabled.btn-group-raised.active, +.input-group-btn .btn.disabled.btn-group-raised.active, +.btn-group.disabled.btn-group-raised.active, +.btn-group-vertical.disabled.btn-group-raised.active, +.btn:disabled.btn-group-raised.active, +.input-group-btn .btn:disabled.btn-group-raised.active, +.btn-group:disabled.btn-group-raised.active, +.btn-group-vertical:disabled.btn-group-raised.active, +.btn[disabled][disabled].btn-group-raised.active, +.input-group-btn .btn[disabled][disabled].btn-group-raised.active, +.btn-group[disabled][disabled].btn-group-raised.active, +.btn-group-vertical[disabled][disabled].btn-group-raised.active, +fieldset[disabled][disabled] .btn.btn-raised:active, +fieldset[disabled][disabled] .input-group-btn .btn.btn-raised:active, +fieldset[disabled][disabled] .btn-group.btn-raised:active, +fieldset[disabled][disabled] .btn-group-vertical.btn-raised:active, +.btn.disabled.btn-raised:active, +.input-group-btn .btn.disabled.btn-raised:active, +.btn-group.disabled.btn-raised:active, +.btn-group-vertical.disabled.btn-raised:active, +.btn:disabled.btn-raised:active, +.input-group-btn .btn:disabled.btn-raised:active, +.btn-group:disabled.btn-raised:active, +.btn-group-vertical:disabled.btn-raised:active, +.btn[disabled][disabled].btn-raised:active, +.input-group-btn .btn[disabled][disabled].btn-raised:active, +.btn-group[disabled][disabled].btn-raised:active, +.btn-group-vertical[disabled][disabled].btn-raised:active, +fieldset[disabled][disabled] .btn.btn-group-raised:active, +fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised:active, +fieldset[disabled][disabled] .btn-group.btn-group-raised:active, +fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised:active, +.btn.disabled.btn-group-raised:active, +.input-group-btn .btn.disabled.btn-group-raised:active, +.btn-group.disabled.btn-group-raised:active, +.btn-group-vertical.disabled.btn-group-raised:active, +.btn:disabled.btn-group-raised:active, +.input-group-btn .btn:disabled.btn-group-raised:active, +.btn-group:disabled.btn-group-raised:active, +.btn-group-vertical:disabled.btn-group-raised:active, +.btn[disabled][disabled].btn-group-raised:active, +.input-group-btn .btn[disabled][disabled].btn-group-raised:active, +.btn-group[disabled][disabled].btn-group-raised:active, +.btn-group-vertical[disabled][disabled].btn-group-raised:active, +fieldset[disabled][disabled] .btn.btn-raised:focus:not(:active), +fieldset[disabled][disabled] .input-group-btn .btn.btn-raised:focus:not(:active), +fieldset[disabled][disabled] .btn-group.btn-raised:focus:not(:active), +fieldset[disabled][disabled] .btn-group-vertical.btn-raised:focus:not(:active), +.btn.disabled.btn-raised:focus:not(:active), +.input-group-btn .btn.disabled.btn-raised:focus:not(:active), +.btn-group.disabled.btn-raised:focus:not(:active), +.btn-group-vertical.disabled.btn-raised:focus:not(:active), +.btn:disabled.btn-raised:focus:not(:active), +.input-group-btn .btn:disabled.btn-raised:focus:not(:active), +.btn-group:disabled.btn-raised:focus:not(:active), +.btn-group-vertical:disabled.btn-raised:focus:not(:active), +.btn[disabled][disabled].btn-raised:focus:not(:active), +.input-group-btn .btn[disabled][disabled].btn-raised:focus:not(:active), +.btn-group[disabled][disabled].btn-raised:focus:not(:active), +.btn-group-vertical[disabled][disabled].btn-raised:focus:not(:active), +fieldset[disabled][disabled] .btn.btn-group-raised:focus:not(:active), +fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised:focus:not(:active), +fieldset[disabled][disabled] .btn-group.btn-group-raised:focus:not(:active), +fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised:focus:not(:active), +.btn.disabled.btn-group-raised:focus:not(:active), +.input-group-btn .btn.disabled.btn-group-raised:focus:not(:active), +.btn-group.disabled.btn-group-raised:focus:not(:active), +.btn-group-vertical.disabled.btn-group-raised:focus:not(:active), +.btn:disabled.btn-group-raised:focus:not(:active), +.input-group-btn .btn:disabled.btn-group-raised:focus:not(:active), +.btn-group:disabled.btn-group-raised:focus:not(:active), +.btn-group-vertical:disabled.btn-group-raised:focus:not(:active), +.btn[disabled][disabled].btn-group-raised:focus:not(:active), +.input-group-btn .btn[disabled][disabled].btn-group-raised:focus:not(:active), +.btn-group[disabled][disabled].btn-group-raised:focus:not(:active), +.btn-group-vertical[disabled][disabled].btn-group-raised:focus:not(:active) { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-group, +.btn-group-vertical { + position: relative; + margin: 10px 1px; +} +.btn-group.open > .dropdown-toggle.btn, +.btn-group-vertical.open > .dropdown-toggle.btn, +.btn-group.open > .dropdown-toggle.btn.btn-default, +.btn-group-vertical.open > .dropdown-toggle.btn.btn-default { + background-color: #EEEEEE; +} +.btn-group.open > .dropdown-toggle.btn.btn-inverse, +.btn-group-vertical.open > .dropdown-toggle.btn.btn-inverse { + background-color: #3f51b5; +} +.btn-group.open > .dropdown-toggle.btn.btn-primary, +.btn-group-vertical.open > .dropdown-toggle.btn.btn-primary { + background-color: #0d47a1; +} +.btn-group.open > .dropdown-toggle.btn.btn-success, +.btn-group-vertical.open > .dropdown-toggle.btn.btn-success { + background-color: #4caf50; +} +.btn-group.open > .dropdown-toggle.btn.btn-info, +.btn-group-vertical.open > .dropdown-toggle.btn.btn-info { + background-color: #03a9f4; +} +.btn-group.open > .dropdown-toggle.btn.btn-warning, +.btn-group-vertical.open > .dropdown-toggle.btn.btn-warning { + background-color: #ff5722; +} +.btn-group.open > .dropdown-toggle.btn.btn-danger, +.btn-group-vertical.open > .dropdown-toggle.btn.btn-danger { + background-color: #f44336; +} +.btn-group .dropdown-menu, +.btn-group-vertical .dropdown-menu { + border-radius: 0 0 2px 2px; +} +.btn-group.btn-group-raised, +.btn-group-vertical.btn-group-raised { + -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); +} +.btn-group .btn + .btn, +.btn-group-vertical .btn + .btn, +.btn-group .btn, +.btn-group-vertical .btn, +.btn-group .btn:active, +.btn-group-vertical .btn:active, +.btn-group .btn-group, +.btn-group-vertical .btn-group { + margin: 0; +} +.checkbox label { + cursor: pointer; + padding-left: 0; + color: rgba(0,0,0, 0.26); +} +.form-group.is-focused .checkbox label { + color: rgba(0,0,0, 0.26); +} +.form-group.is-focused .checkbox label:hover, +.form-group.is-focused .checkbox label:focus { + color: rgba(0,0,0, .54); +} +fieldset[disabled] .form-group.is-focused .checkbox label { + color: rgba(0,0,0, 0.26); +} +.checkbox input[type=checkbox] { + opacity: 0; + position: absolute; + margin: 0; + z-index: -1; + width: 0; + height: 0; + overflow: hidden; + left: 0; + pointer-events: none; +} +.checkbox .checkbox-material { + vertical-align: middle; + position: relative; + top: 3px; +} +.checkbox .checkbox-material:before { + display: block; + position: absolute; + left: 0; + content: ""; + background-color: rgba(0, 0, 0, 0.84); + height: 20px; + width: 20px; + border-radius: 100%; + z-index: 1; + opacity: 0; + margin: 0; + -webkit-transform: scale3d(2.3, 2.3, 1); + transform: scale3d(2.3, 2.3, 1); +} +.checkbox .checkbox-material .check { + position: relative; + display: inline-block; + width: 20px; + height: 20px; + border: 2px solid rgba(0,0,0, .54); + border-radius: 2px; + overflow: hidden; + z-index: 1; +} +.checkbox .checkbox-material .check:before { + position: absolute; + content: ""; + -webkit-transform: rotate(45deg); + -ms-transform: rotate(45deg); + -o-transform: rotate(45deg); + transform: rotate(45deg); + display: block; + margin-top: -4px; + margin-left: 6px; + width: 0; + height: 0; + -webkit-box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0 inset; + box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0 inset; + -webkit-animation: checkbox-off; + -o-animation: checkbox-off; + animation: checkbox-off; +} +.checkbox input[type=checkbox]:focus + .checkbox-material .check:after { + opacity: 0.2; +} +.checkbox input[type=checkbox]:checked + .checkbox-material .check { + color: #0d47a1; + border-color: #0d47a1; +} +.checkbox input[type=checkbox]:checked + .checkbox-material .check:before { + color: #0d47a1; + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px; + -webkit-animation: checkbox-on 0.3s forwards; + -o-animation: checkbox-on 0.3s forwards; + animation: checkbox-on 0.3s forwards; +} +.checkbox input[type=checkbox]:checked + .checkbox-material:before { + -webkit-animation: rippleOn; + -o-animation: rippleOn; + animation: rippleOn; +} +.checkbox input[type=checkbox]:checked + .checkbox-material .check:after { + -webkit-animation: rippleOn 500ms forwards; + -o-animation: rippleOn 500ms forwards; + animation: rippleOn 500ms forwards; +} +.checkbox input[type=checkbox]:not(:checked) + .checkbox-material:before { + -webkit-animation: rippleOff; + -o-animation: rippleOff; + animation: rippleOff; +} +.checkbox input[type=checkbox]:not(:checked) + .checkbox-material .check:after { + -webkit-animation: rippleOff 500ms forwards; + -o-animation: rippleOff 500ms forwards; + animation: rippleOff 500ms forwards; +} +fieldset[disabled] .checkbox, +fieldset[disabled] .checkbox input[type=checkbox], +.checkbox input[type=checkbox][disabled]:not(:checked) ~ .checkbox-material .check:before, +.checkbox input[type=checkbox][disabled]:not(:checked) ~ .checkbox-material .check, +.checkbox input[type=checkbox][disabled] + .circle { + opacity: 0.5; +} +.checkbox input[type=checkbox][disabled] + .checkbox-material .check:after { + background-color: rgba(0,0,0, 0.87); + -webkit-transform: rotate(-45deg); + -ms-transform: rotate(-45deg); + -o-transform: rotate(-45deg); + transform: rotate(-45deg); +} +.is-focused .checkbox .checkbox-material .check:before { + -webkit-animation: checkbox-off 0.3s forwards; + -o-animation: checkbox-off 0.3s forwards; + animation: checkbox-off 0.3s forwards; +} +.is-focused .checkbox input[type=checkbox]:checked + .checkbox-material:before { + -webkit-animation: rippleOn 500ms; + -o-animation: rippleOn 500ms; + animation: rippleOn 500ms; +} +.is-focused .checkbox input[type=checkbox]:not(:checked) + .checkbox-material:before { + -webkit-animation: rippleOff 500ms; + -o-animation: rippleOff 500ms; + animation: rippleOff 500ms; +} +@-webkit-keyframes checkbox-on { + 0% { + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px; + } + 50% { + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px 2px 0 11px; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px 2px 0 11px; + } + 100% { + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px; + } +} +@-o-keyframes checkbox-on { + 0% { + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px; + } + 50% { + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px 2px 0 11px; + } + 100% { + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px; + } +} +@keyframes checkbox-on { + 0% { + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px; + } + 50% { + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px 2px 0 11px; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px 2px 0 11px; + } + 100% { + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px; + } +} +@-webkit-keyframes checkbox-off { + 0% { + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; + } + 25% { + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; + } + 50% { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + margin-top: -4px; + margin-left: 6px; + width: 0; + height: 0; + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px, 0 0 0 0 inset; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px, 0 0 0 0 inset; + } + 51% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + margin-top: -2px; + margin-left: -2px; + width: 20px; + height: 20px; + -webkit-box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0px 0 0 10px inset; + box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0px 0 0 10px inset; + } + 100% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + margin-top: -2px; + margin-left: -2px; + width: 20px; + height: 20px; + -webkit-box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0px 0 0 0 inset; + box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0px 0 0 0 inset; + } +} +@-o-keyframes checkbox-off { + 0% { + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; + } + 25% { + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; + } + 50% { + -o-transform: rotate(45deg); + transform: rotate(45deg); + margin-top: -4px; + margin-left: 6px; + width: 0; + height: 0; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px, 0 0 0 0 inset; + } + 51% { + -o-transform: rotate(0deg); + transform: rotate(0deg); + margin-top: -2px; + margin-left: -2px; + width: 20px; + height: 20px; + box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0px 0 0 10px inset; + } + 100% { + -o-transform: rotate(0deg); + transform: rotate(0deg); + margin-top: -2px; + margin-left: -2px; + width: 20px; + height: 20px; + box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0px 0 0 0 inset; + } +} +@keyframes checkbox-off { + 0% { + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; + } + 25% { + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px, 0 0 0 0 inset; + } + 50% { + -webkit-transform: rotate(45deg); + -o-transform: rotate(45deg); + transform: rotate(45deg); + margin-top: -4px; + margin-left: 6px; + width: 0; + height: 0; + -webkit-box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px, 0 0 0 0 inset; + box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px, 0 0 0 0 inset; + } + 51% { + -webkit-transform: rotate(0deg); + -o-transform: rotate(0deg); + transform: rotate(0deg); + margin-top: -2px; + margin-left: -2px; + width: 20px; + height: 20px; + -webkit-box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0px 0 0 10px inset; + box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0px 0 0 10px inset; + } + 100% { + -webkit-transform: rotate(0deg); + -o-transform: rotate(0deg); + transform: rotate(0deg); + margin-top: -2px; + margin-left: -2px; + width: 20px; + height: 20px; + -webkit-box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0px 0 0 0 inset; + box-shadow: 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0 0 0 0, + 0px 0 0 0 inset; + } +} +@-webkit-keyframes rippleOn { + 0% { + opacity: 0; + } + 50% { + opacity: 0.2; + } + 100% { + opacity: 0; + } +} +@-o-keyframes rippleOn { + 0% { + opacity: 0; + } + 50% { + opacity: 0.2; + } + 100% { + opacity: 0; + } +} +@keyframes rippleOn { + 0% { + opacity: 0; + } + 50% { + opacity: 0.2; + } + 100% { + opacity: 0; + } +} +@-webkit-keyframes rippleOff { + 0% { + opacity: 0; + } + 50% { + opacity: 0.2; + } + 100% { + opacity: 0; + } +} +@-o-keyframes rippleOff { + 0% { + opacity: 0; + } + 50% { + opacity: 0.2; + } + 100% { + opacity: 0; + } +} +@keyframes rippleOff { + 0% { + opacity: 0; + } + 50% { + opacity: 0.2; + } + 100% { + opacity: 0; + } +} +.togglebutton { + vertical-align: middle; +} +.togglebutton, +.togglebutton label, +.togglebutton input, +.togglebutton .toggle { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.togglebutton label { + cursor: pointer; + color: rgba(0,0,0, 0.26); +} +.form-group.is-focused .togglebutton label { + color: rgba(0,0,0, 0.26); +} +.form-group.is-focused .togglebutton label:hover, +.form-group.is-focused .togglebutton label:focus { + color: rgba(0,0,0, .54); +} +fieldset[disabled] .form-group.is-focused .togglebutton label { + color: rgba(0,0,0, 0.26); +} +.togglebutton label input[type=checkbox] { + opacity: 0; + width: 0; + height: 0; +} +.togglebutton label .toggle { + text-align: left; +} +.togglebutton label .toggle, +.togglebutton label input[type=checkbox][disabled] + .toggle { + content: ""; + display: inline-block; + width: 30px; + height: 15px; + background-color: rgba(80, 80, 80, 0.7); + border-radius: 15px; + margin-right: 15px; + -webkit-transition: background 0.3s ease; + -o-transition: background 0.3s ease; + transition: background 0.3s ease; + vertical-align: middle; +} +.togglebutton label .toggle:after { + content: ""; + display: inline-block; + width: 20px; + height: 20px; + background-color: #F1F1F1; + border-radius: 20px; + position: relative; + -webkit-box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4); + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4); + left: -5px; + top: -2px; + -webkit-transition: left 0.3s ease, background 0.3s ease, -webkit-box-shadow 0.1s ease; + -o-transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease; + transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease; +} +.togglebutton label input[type=checkbox][disabled] + .toggle:after, +.togglebutton label input[type=checkbox][disabled]:checked + .toggle:after { + background-color: #BDBDBD; +} +.togglebutton label input[type=checkbox] + .toggle:active:after, +.togglebutton label input[type=checkbox][disabled] + .toggle:active:after { + -webkit-box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 0, 0, 0.1); +} +.togglebutton label input[type=checkbox]:checked + .toggle:after { + left: 15px; +} +.togglebutton label input[type=checkbox]:checked + .toggle { + background-color: rgba(13, 71, 161, 0.5); +} +.togglebutton label input[type=checkbox]:checked + .toggle:after { + background-color: #0d47a1; +} +.togglebutton label input[type=checkbox]:checked + .toggle:active:after { + -webkit-box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(13, 71, 161, 0.1); + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(13, 71, 161, 0.1); +} +.radio label { + cursor: pointer; + padding-left: 45px; + position: relative; + color: rgba(0,0,0, 0.26); +} +.form-group.is-focused .radio label { + color: rgba(0,0,0, 0.26); +} +.form-group.is-focused .radio label:hover, +.form-group.is-focused .radio label:focus { + color: rgba(0,0,0, .54); +} +fieldset[disabled] .form-group.is-focused .radio label { + color: rgba(0,0,0, 0.26); +} +.radio label span { + display: block; + position: absolute; + left: 10px; + top: 2px; + -webkit-transition-duration: 0.2s; + -o-transition-duration: 0.2s; + transition-duration: 0.2s; +} +.radio label .circle { + border: 2px solid rgba(0,0,0, .54); + height: 15px; + width: 15px; + border-radius: 100%; +} +.radio label .check { + height: 15px; + width: 15px; + border-radius: 100%; + background-color: #0d47a1; + -webkit-transform: scale3d(0, 0, 0); + transform: scale3d(0, 0, 0); +} +.radio label .check:after { + display: block; + position: absolute; + content: ""; + background-color: rgba(0,0,0, 0.87); + left: -18px; + top: -18px; + height: 50px; + width: 50px; + border-radius: 100%; + z-index: 1; + opacity: 0; + margin: 0; + -webkit-transform: scale3d(1.5, 1.5, 1); + transform: scale3d(1.5, 1.5, 1); +} +.radio label input[type=radio]:not(:checked) ~ .check:after { + -webkit-animation: rippleOff 500ms; + -o-animation: rippleOff 500ms; + animation: rippleOff 500ms; +} +.radio label input[type=radio]:checked ~ .check:after { + -webkit-animation: rippleOn; + -o-animation: rippleOn; + animation: rippleOn; +} +.radio input[type=radio] { + opacity: 0; + height: 0; + width: 0; + overflow: hidden; +} +.radio input[type=radio]:checked ~ .check, +.radio input[type=radio]:checked ~ .circle { + opacity: 1; +} +.radio input[type=radio]:checked ~ .check { + background-color: #0d47a1; +} +.radio input[type=radio]:checked ~ .circle { + border-color: #0d47a1; +} +.radio input[type=radio]:checked ~ .check { + -webkit-transform: scale3d(0.55, 0.55, 1); + transform: scale3d(0.55, 0.55, 1); +} +.radio input[type=radio][disabled] ~ .check, +.radio input[type=radio][disabled] ~ .circle { + opacity: 0.26; +} +.radio input[type=radio][disabled] ~ .check { + background-color: #000000; +} +.radio input[type=radio][disabled] ~ .circle { + border-color: #000000; +} +.theme-dark .radio input[type=radio][disabled] ~ .check, +.theme-dark .radio input[type=radio][disabled] ~ .circle { + opacity: 0.3; +} +.theme-dark .radio input[type=radio][disabled] ~ .check { + background-color: #ffffff; +} +.theme-dark .radio input[type=radio][disabled] ~ .circle { + border-color: #ffffff; +} +.is-focused .radio input[type=radio]:checked ~ .check:after { + -webkit-animation: rippleOn 500ms; + -o-animation: rippleOn 500ms; + animation: rippleOn 500ms; +} +@keyframes rippleOn { + 0% { + opacity: 0; + } + 50% { + opacity: 0.2; + } + 100% { + opacity: 0; + } +} +@keyframes rippleOff { + 0% { + opacity: 0; + } + 50% { + opacity: 0.2; + } + 100% { + opacity: 0; + } +} +legend { + margin-bottom: 22px; + font-size: 24px; +} +output { + padding-top: 8px; + font-size: 16px; + line-height: 1.42857143; +} +.form-control { + height: 38px; + padding: 7px 0; + font-size: 16px; + line-height: 1.42857143; +} +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"].form-control, + input[type="time"].form-control, + input[type="datetime-local"].form-control, + input[type="month"].form-control { + line-height: 38px; + } + input[type="date"].input-sm, + input[type="time"].input-sm, + input[type="datetime-local"].input-sm, + input[type="month"].input-sm, + .input-group-sm input[type="date"], + .input-group-sm input[type="time"], + .input-group-sm input[type="datetime-local"], + .input-group-sm input[type="month"] { + line-height: 24px; + } + input[type="date"].input-lg, + input[type="time"].input-lg, + input[type="datetime-local"].input-lg, + input[type="month"].input-lg, + .input-group-lg input[type="date"], + .input-group-lg input[type="time"], + .input-group-lg input[type="datetime-local"], + .input-group-lg input[type="month"] { + line-height: 44px; + } +} +.radio label, +.checkbox label { + min-height: 22px; +} +.form-control-static { + padding-top: 8px; + padding-bottom: 8px; + min-height: 38px; +} +.input-sm .input-sm { + height: 24px; + padding: 3px 0; + font-size: 11px; + line-height: 1.5; + border-radius: 0; +} +.input-sm select.input-sm { + height: 24px; + line-height: 24px; +} +.input-sm textarea.input-sm, +.input-sm select[multiple].input-sm { + height: auto; +} +.form-group-sm .form-control { + height: 24px; + padding: 3px 0; + font-size: 11px; + line-height: 1.5; +} +.form-group-sm select.form-control { + height: 24px; + line-height: 24px; +} +.form-group-sm textarea.form-control, +.form-group-sm select[multiple].form-control { + height: auto; +} +.form-group-sm .form-control-static { + height: 24px; + min-height: 33px; + padding: 4px 0; + font-size: 11px; + line-height: 1.5; +} +.input-lg .input-lg { + height: 44px; + padding: 9px 0; + font-size: 18px; + line-height: 1.3333333; + border-radius: 0; +} +.input-lg select.input-lg { + height: 44px; + line-height: 44px; +} +.input-lg textarea.input-lg, +.input-lg select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 44px; + padding: 9px 0; + font-size: 18px; + line-height: 1.3333333; +} +.form-group-lg select.form-control { + height: 44px; + line-height: 44px; +} +.form-group-lg textarea.form-control, +.form-group-lg select[multiple].form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 44px; + min-height: 40px; + padding: 10px 0; + font-size: 18px; + line-height: 1.3333333; +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + padding-top: 8px; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 30px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + padding-top: 8px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 12.9999997px; + font-size: 18px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 4px; + font-size: 11px; + } +} +.label { + border-radius: 1px; + padding: .3em .6em; +} +.label, +.label.label-default { + background-color: #9e9e9e; +} +.label.label-inverse { + background-color: #3f51b5; +} +.label.label-primary { + background-color: #0d47a1; +} +.label.label-success { + background-color: #4caf50; +} +.label.label-info { + background-color: #03a9f4; +} +.label.label-warning { + background-color: #ff5722; +} +.label.label-danger { + background-color: #f44336; +} +.form-control, +.form-group .form-control { + border: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#0d47a1), to(#0d47a1)), -webkit-gradient(linear, left top, left bottom, from(#D2D2D2), to(#D2D2D2)); + background-image: -webkit-linear-gradient(#0d47a1, #0d47a1), -webkit-linear-gradient(#D2D2D2, #D2D2D2); + background-image: -o-linear-gradient(#0d47a1, #0d47a1), -o-linear-gradient(#D2D2D2, #D2D2D2); + background-image: linear-gradient(#0d47a1, #0d47a1), linear-gradient(#D2D2D2, #D2D2D2); + -webkit-background-size: 0 2px, 100% 1px; + background-size: 0 2px, 100% 1px; + background-repeat: no-repeat; + background-position: center bottom, center -webkit-calc(100% - 1px); + background-position: center bottom, center calc(100% - 1px); + background-color: rgba(0, 0, 0, 0); + -webkit-transition: background 0s ease-out; + -o-transition: background 0s ease-out; + transition: background 0s ease-out; + float: none; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 0; +} +.form-control::-moz-placeholder, +.form-group .form-control::-moz-placeholder { + color: #BDBDBD; + font-weight: 400; +} +.form-control:-ms-input-placeholder, +.form-group .form-control:-ms-input-placeholder { + color: #BDBDBD; + font-weight: 400; +} +.form-control::-webkit-input-placeholder, +.form-group .form-control::-webkit-input-placeholder { + color: #BDBDBD; + font-weight: 400; +} +.form-control[readonly], +.form-group .form-control[readonly], +.form-control[disabled], +.form-group .form-control[disabled], +fieldset[disabled] .form-control, +fieldset[disabled] .form-group .form-control { + background-color: rgba(0, 0, 0, 0); +} +.form-control[disabled], +.form-group .form-control[disabled], +fieldset[disabled] .form-control, +fieldset[disabled] .form-group .form-control { + background-image: none; + border-bottom: 1px dotted #D2D2D2; +} +.form-group { + position: relative; +} +.form-group.label-static label.control-label, +.form-group.label-placeholder label.control-label, +.form-group.label-floating label.control-label { + position: absolute; + pointer-events: none; + -webkit-transition: 0.3s ease all; + -o-transition: 0.3s ease all; + transition: 0.3s ease all; +} +.form-group.label-floating label.control-label { + will-change: left, top, contents; +} +.form-group.label-placeholder:not(.is-empty) label.control-label { + display: none; +} +.form-group .help-block { + position: absolute; + display: none; +} +.form-group.is-focused .form-control { + outline: none; + background-image: -webkit-gradient(linear, left top, left bottom, from(#0d47a1), to(#0d47a1)), -webkit-gradient(linear, left top, left bottom, from(#D2D2D2), to(#D2D2D2)); + background-image: -webkit-linear-gradient(#0d47a1, #0d47a1), -webkit-linear-gradient(#D2D2D2, #D2D2D2); + background-image: -o-linear-gradient(#0d47a1, #0d47a1), -o-linear-gradient(#D2D2D2, #D2D2D2); + background-image: linear-gradient(#0d47a1, #0d47a1), linear-gradient(#D2D2D2, #D2D2D2); + -webkit-background-size: 100% 2px, 100% 1px; + background-size: 100% 2px, 100% 1px; + -webkit-box-shadow: none; + box-shadow: none; + -webkit-transition-duration: 0.3s; + -o-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.form-group.is-focused .form-control .material-input:after { + background-color: #0d47a1; +} +.form-group.is-focused label, +.form-group.is-focused label.control-label { + color: #0d47a1; +} +.form-group.is-focused.label-placeholder label, +.form-group.is-focused.label-placeholder label.control-label { + color: #BDBDBD; +} +.form-group.is-focused .help-block { + display: block; +} +.form-group.has-warning .form-control { + -webkit-box-shadow: none; + box-shadow: none; +} +.form-group.has-warning.is-focused .form-control { + background-image: -webkit-gradient(linear, left top, left bottom, from(#ff5722), to(#ff5722)), -webkit-gradient(linear, left top, left bottom, from(#D2D2D2), to(#D2D2D2)); + background-image: -webkit-linear-gradient(#ff5722, #ff5722), -webkit-linear-gradient(#D2D2D2, #D2D2D2); + background-image: -o-linear-gradient(#ff5722, #ff5722), -o-linear-gradient(#D2D2D2, #D2D2D2); + background-image: linear-gradient(#ff5722, #ff5722), linear-gradient(#D2D2D2, #D2D2D2); +} +.form-group.has-warning label.control-label, +.form-group.has-warning .help-block { + color: #ff5722; +} +.form-group.has-error .form-control { + -webkit-box-shadow: none; + box-shadow: none; +} +.form-group.has-error.is-focused .form-control { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f44336), to(#f44336)), -webkit-gradient(linear, left top, left bottom, from(#D2D2D2), to(#D2D2D2)); + background-image: -webkit-linear-gradient(#f44336, #f44336), -webkit-linear-gradient(#D2D2D2, #D2D2D2); + background-image: -o-linear-gradient(#f44336, #f44336), -o-linear-gradient(#D2D2D2, #D2D2D2); + background-image: linear-gradient(#f44336, #f44336), linear-gradient(#D2D2D2, #D2D2D2); +} +.form-group.has-error label.control-label, +.form-group.has-error .help-block { + color: #f44336; +} +.form-group.has-success .form-control { + -webkit-box-shadow: none; + box-shadow: none; +} +.form-group.has-success.is-focused .form-control { + background-image: -webkit-gradient(linear, left top, left bottom, from(#4caf50), to(#4caf50)), -webkit-gradient(linear, left top, left bottom, from(#D2D2D2), to(#D2D2D2)); + background-image: -webkit-linear-gradient(#4caf50, #4caf50), -webkit-linear-gradient(#D2D2D2, #D2D2D2); + background-image: -o-linear-gradient(#4caf50, #4caf50), -o-linear-gradient(#D2D2D2, #D2D2D2); + background-image: linear-gradient(#4caf50, #4caf50), linear-gradient(#D2D2D2, #D2D2D2); +} +.form-group.has-success label.control-label, +.form-group.has-success .help-block { + color: #4caf50; +} +.form-group.has-info .form-control { + -webkit-box-shadow: none; + box-shadow: none; +} +.form-group.has-info.is-focused .form-control { + background-image: -webkit-gradient(linear, left top, left bottom, from(#03a9f4), to(#03a9f4)), -webkit-gradient(linear, left top, left bottom, from(#D2D2D2), to(#D2D2D2)); + background-image: -webkit-linear-gradient(#03a9f4, #03a9f4), -webkit-linear-gradient(#D2D2D2, #D2D2D2); + background-image: -o-linear-gradient(#03a9f4, #03a9f4), -o-linear-gradient(#D2D2D2, #D2D2D2); + background-image: linear-gradient(#03a9f4, #03a9f4), linear-gradient(#D2D2D2, #D2D2D2); +} +.form-group.has-info label.control-label, +.form-group.has-info .help-block { + color: #03a9f4; +} +.form-group textarea { + resize: none; +} +.form-group textarea ~ .form-control-highlight { + margin-top: -11px; +} +.form-group select { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} +.form-group select ~ .material-input:after { + display: none; +} +.form-control { + margin-bottom: 7px; +} +.form-control::-moz-placeholder { + font-size: 16px; + line-height: 1.42857143; + color: #BDBDBD; + font-weight: 400; +} +.form-control:-ms-input-placeholder { + font-size: 16px; + line-height: 1.42857143; + color: #BDBDBD; + font-weight: 400; +} +.form-control::-webkit-input-placeholder { + font-size: 16px; + line-height: 1.42857143; + color: #BDBDBD; + font-weight: 400; +} +.checkbox label, +.radio label, +label { + font-size: 16px; + line-height: 1.42857143; + color: #BDBDBD; + font-weight: 400; +} +label.control-label { + font-size: 12px; + line-height: 1.07142857; + font-weight: 400; + margin: 16px 0 0 0; +} +.help-block { + margin-top: 0; + font-size: 12px; +} +.form-group { + padding-bottom: 7px; + margin: 28px 0 0 0; +} +.form-group .form-control { + margin-bottom: 7px; +} +.form-group .form-control::-moz-placeholder { + font-size: 16px; + line-height: 1.42857143; + color: #BDBDBD; + font-weight: 400; +} +.form-group .form-control:-ms-input-placeholder { + font-size: 16px; + line-height: 1.42857143; + color: #BDBDBD; + font-weight: 400; +} +.form-group .form-control::-webkit-input-placeholder { + font-size: 16px; + line-height: 1.42857143; + color: #BDBDBD; + font-weight: 400; +} +.form-group .checkbox label, +.form-group .radio label, +.form-group label { + font-size: 16px; + line-height: 1.42857143; + color: #BDBDBD; + font-weight: 400; +} +.form-group label.control-label { + font-size: 12px; + line-height: 1.07142857; + font-weight: 400; + margin: 16px 0 0 0; +} +.form-group .help-block { + margin-top: 0; + font-size: 12px; +} +.form-group.label-floating label.control-label, +.form-group.label-placeholder label.control-label { + top: -7px; + font-size: 16px; + line-height: 1.42857143; +} +.form-group.label-static label.control-label, +.form-group.label-floating.is-focused label.control-label, +.form-group.label-floating:not(.is-empty) label.control-label { + top: -30px; + left: 0; + font-size: 12px; + line-height: 1.07142857; +} +.form-group.label-floating input.form-control:-webkit-autofill ~ label.control-label label.control-label { + top: -30px; + left: 0; + font-size: 12px; + line-height: 1.07142857; +} +.form-group.form-group-sm { + padding-bottom: 3px; + margin: 21px 0 0 0; +} +.form-group.form-group-sm .form-control { + margin-bottom: 3px; +} +.form-group.form-group-sm .form-control::-moz-placeholder { + font-size: 11px; + line-height: 1.5; + color: #BDBDBD; + font-weight: 400; +} +.form-group.form-group-sm .form-control:-ms-input-placeholder { + font-size: 11px; + line-height: 1.5; + color: #BDBDBD; + font-weight: 400; +} +.form-group.form-group-sm .form-control::-webkit-input-placeholder { + font-size: 11px; + line-height: 1.5; + color: #BDBDBD; + font-weight: 400; +} +.form-group.form-group-sm .checkbox label, +.form-group.form-group-sm .radio label, +.form-group.form-group-sm label { + font-size: 11px; + line-height: 1.5; + color: #BDBDBD; + font-weight: 400; +} +.form-group.form-group-sm label.control-label { + font-size: 9px; + line-height: 1.125; + font-weight: 400; + margin: 16px 0 0 0; +} +.form-group.form-group-sm .help-block { + margin-top: 0; + font-size: 9px; +} +.form-group.form-group-sm.label-floating label.control-label, +.form-group.form-group-sm.label-placeholder label.control-label { + top: -11px; + font-size: 11px; + line-height: 1.5; +} +.form-group.form-group-sm.label-static label.control-label, +.form-group.form-group-sm.label-floating.is-focused label.control-label, +.form-group.form-group-sm.label-floating:not(.is-empty) label.control-label { + top: -25px; + left: 0; + font-size: 9px; + line-height: 1.125; +} +.form-group.form-group-sm.label-floating input.form-control:-webkit-autofill ~ label.control-label label.control-label { + top: -25px; + left: 0; + font-size: 9px; + line-height: 1.125; +} +.form-group.form-group-lg { + padding-bottom: 9px; + margin: 30px 0 0 0; +} +.form-group.form-group-lg .form-control { + margin-bottom: 9px; +} +.form-group.form-group-lg .form-control::-moz-placeholder { + font-size: 18px; + line-height: 1.3333333; + color: #BDBDBD; + font-weight: 400; +} +.form-group.form-group-lg .form-control:-ms-input-placeholder { + font-size: 18px; + line-height: 1.3333333; + color: #BDBDBD; + font-weight: 400; +} +.form-group.form-group-lg .form-control::-webkit-input-placeholder { + font-size: 18px; + line-height: 1.3333333; + color: #BDBDBD; + font-weight: 400; +} +.form-group.form-group-lg .checkbox label, +.form-group.form-group-lg .radio label, +.form-group.form-group-lg label { + font-size: 18px; + line-height: 1.3333333; + color: #BDBDBD; + font-weight: 400; +} +.form-group.form-group-lg label.control-label { + font-size: 14px; + line-height: 0.99999998; + font-weight: 400; + margin: 16px 0 0 0; +} +.form-group.form-group-lg .help-block { + margin-top: 0; + font-size: 14px; +} +.form-group.form-group-lg.label-floating label.control-label, +.form-group.form-group-lg.label-placeholder label.control-label { + top: -5px; + font-size: 18px; + line-height: 1.3333333; +} +.form-group.form-group-lg.label-static label.control-label, +.form-group.form-group-lg.label-floating.is-focused label.control-label, +.form-group.form-group-lg.label-floating:not(.is-empty) label.control-label { + top: -32px; + left: 0; + font-size: 14px; + line-height: 0.99999998; +} +.form-group.form-group-lg.label-floating input.form-control:-webkit-autofill ~ label.control-label label.control-label { + top: -32px; + left: 0; + font-size: 14px; + line-height: 0.99999998; +} +select.form-control { + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 0; +} +.form-group.is-focused select.form-control { + -webkit-box-shadow: none; + box-shadow: none; + border-color: #D2D2D2; +} +select.form-control[multiple], +.form-group.is-focused select.form-control[multiple] { + height: 85px; +} +.input-group-btn .btn { + margin: 0 0 7px 0; +} +.form-group.form-group-sm .input-group-btn .btn { + margin: 0 0 3px 0; +} +.form-group.form-group-lg .input-group-btn .btn { + margin: 0 0 9px 0; +} +.input-group .input-group-btn { + padding: 0 12px; +} +.input-group .input-group-addon { + border: 0; + background: transparent; +} +.form-group input[type=file] { + opacity: 0; + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 100; +} +legend { + border-bottom: 0; +} +.list-group { + border-radius: 0; +} +.list-group .list-group-item { + background-color: transparent; + overflow: hidden; + border: 0; + border-radius: 0; + padding: 0 16px; +} +.list-group .list-group-item.baseline { + border-bottom: 1px solid #cecece; +} +.list-group .list-group-item.baseline:last-child { + border-bottom: none; +} +.list-group .list-group-item .row-picture, +.list-group .list-group-item .row-action-primary { + display: inline-block; + padding-right: 16px; +} +.list-group .list-group-item .row-picture img, +.list-group .list-group-item .row-action-primary img, +.list-group .list-group-item .row-picture i, +.list-group .list-group-item .row-action-primary i, +.list-group .list-group-item .row-picture label, +.list-group .list-group-item .row-action-primary label { + display: block; + width: 56px; + height: 56px; +} +.list-group .list-group-item .row-picture img, +.list-group .list-group-item .row-action-primary img { + background: rgba(0, 0, 0, 0.1); + padding: 1px; +} +.list-group .list-group-item .row-picture img.circle, +.list-group .list-group-item .row-action-primary img.circle { + border-radius: 100%; +} +.list-group .list-group-item .row-picture i, +.list-group .list-group-item .row-action-primary i { + background: rgba(0, 0, 0, 0.25); + border-radius: 100%; + text-align: center; + line-height: 56px; + font-size: 20px; + color: white; +} +.list-group .list-group-item .row-picture label, +.list-group .list-group-item .row-action-primary label { + margin-left: 7px; + margin-right: -7px; + margin-top: 5px; + margin-bottom: -5px; +} +.list-group .list-group-item .row-picture label .checkbox-material, +.list-group .list-group-item .row-action-primary label .checkbox-material { + left: -10px; +} +.list-group .list-group-item .row-content { + display: inline-block; + width: -webkit-calc(100% - 92px); + width: calc(100% - 92px); + min-height: 66px; +} +.list-group .list-group-item .row-content .action-secondary { + position: absolute; + right: 16px; + top: 16px; +} +.list-group .list-group-item .row-content .action-secondary i { + font-size: 20px; + color: rgba(0, 0, 0, 0.25); + cursor: pointer; +} +.list-group .list-group-item .row-content .action-secondary ~ * { + max-width: -webkit-calc(100% - 30px); + max-width: calc(100% - 30px); +} +.list-group .list-group-item .row-content .least-content { + position: absolute; + right: 16px; + top: 0; + color: rgba(0, 0, 0, 0.54); + font-size: 14px; +} +.list-group .list-group-item .list-group-item-heading { + color: rgba(0, 0, 0, 0.77); + font-size: 20px; + line-height: 29px; +} +.list-group .list-group-item.active:hover, +.list-group .list-group-item.active:focus { + background: rgba(0, 0, 0, 0.15); + outline: 10px solid rgba(0, 0, 0, 0.15); +} +.list-group .list-group-item.active .list-group-item-heading, +.list-group .list-group-item.active .list-group-item-text { + color: rgba(0,0,0, 0.87); +} +.list-group .list-group-separator { + clear: both; + overflow: hidden; + margin-top: 10px; + margin-bottom: 10px; +} +.list-group .list-group-separator:before { + content: ""; + width: -webkit-calc(100% - 90px); + width: calc(100% - 90px); + border-bottom: 1px solid rgba(0, 0, 0, 0.1); + float: right; +} +.navbar { + background-color: #0d47a1; + border: 0; + border-radius: 0; +} +.navbar .navbar-brand { + position: relative; + height: 60px; + line-height: 30px; + color: inherit; +} +.navbar .navbar-brand:hover, +.navbar .navbar-brand:focus { + color: inherit; + background-color: transparent; +} +.navbar .navbar-text { + color: inherit; + margin-top: 20px; + margin-bottom: 20px; +} +.navbar .navbar-nav > li > a { + color: inherit; + padding-top: 20px; + padding-bottom: 20px; +} +.navbar .navbar-nav > li > a:hover, +.navbar .navbar-nav > li > a:focus { + color: inherit; + background-color: transparent; +} +.navbar .navbar-nav > .active > a, +.navbar .navbar-nav > .active > a:hover, +.navbar .navbar-nav > .active > a:focus { + color: inherit; + background-color: rgba(255, 255, 255, 0.1); +} +.navbar .navbar-nav > .disabled > a, +.navbar .navbar-nav > .disabled > a:hover, +.navbar .navbar-nav > .disabled > a:focus { + color: inherit; + background-color: transparent; + opacity: 0.9; +} +.navbar .navbar-toggle { + border: 0; +} +.navbar .navbar-toggle:hover, +.navbar .navbar-toggle:focus { + background-color: transparent; +} +.navbar .navbar-toggle .icon-bar { + background-color: inherit; + border: 1px solid; +} +.navbar .navbar-default .navbar-toggle, +.navbar .navbar-inverse .navbar-toggle { + border-color: transparent; +} +.navbar .navbar-collapse, +.navbar .navbar-form { + border-color: rgba(0, 0, 0, 0.1); +} +.navbar .navbar-nav > .open > a, +.navbar .navbar-nav > .open > a:hover, +.navbar .navbar-nav > .open > a:focus { + background-color: transparent; + color: inherit; +} +@media (max-width: 767px) { + .navbar .navbar-nav .navbar-text { + color: inherit; + margin-top: 15px; + margin-bottom: 15px; + } + .navbar .navbar-nav .open .dropdown-menu > .dropdown-header { + border: 0; + color: inherit; + } + .navbar .navbar-nav .open .dropdown-menu .divider { + border-bottom: 1px solid; + opacity: 0.08; + } + .navbar .navbar-nav .open .dropdown-menu > li > a { + color: inherit; + } + .navbar .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar .navbar-nav .open .dropdown-menu > li > a:focus { + color: inherit; + background-color: transparent; + } + .navbar .navbar-nav .open .dropdown-menu > .active > a, + .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { + color: inherit; + background-color: transparent; + } + .navbar .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: inherit; + background-color: transparent; + } +} +.navbar .navbar-link { + color: inherit; +} +.navbar .navbar-link:hover { + color: inherit; +} +.navbar .btn-link { + color: inherit; +} +.navbar .btn-link:hover, +.navbar .btn-link:focus { + color: inherit; +} +.navbar .btn-link[disabled]:hover, +fieldset[disabled] .navbar .btn-link:hover, +.navbar .btn-link[disabled]:focus, +fieldset[disabled] .navbar .btn-link:focus { + color: inherit; +} +.navbar .navbar-form { + margin-top: 16px; +} +.navbar .navbar-form .form-group { + margin: 0; + padding: 0; +} +.navbar .navbar-form .form-group .material-input:before, +.navbar .navbar-form .form-group.is-focused .material-input:after { + background-color: inherit; +} +.navbar .navbar-form .form-group .form-control, +.navbar .navbar-form .form-control { + border-color: inherit; + color: inherit; + padding: 0; + margin: 0; + height: 28px; + font-size: 14px; + line-height: 1.42857143; +} +.navbar, +.navbar.navbar-default { + background-color: #0d47a1; + color: rgba(255,255,255, 0.84); +} +.navbar .navbar-form .form-group input.form-control::-moz-placeholder, +.navbar.navbar-default .navbar-form .form-group input.form-control::-moz-placeholder, +.navbar .navbar-form input.form-control::-moz-placeholder, +.navbar.navbar-default .navbar-form input.form-control::-moz-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar .navbar-form .form-group input.form-control:-ms-input-placeholder, +.navbar.navbar-default .navbar-form .form-group input.form-control:-ms-input-placeholder, +.navbar .navbar-form input.form-control:-ms-input-placeholder, +.navbar.navbar-default .navbar-form input.form-control:-ms-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar .navbar-form .form-group input.form-control::-webkit-input-placeholder, +.navbar.navbar-default .navbar-form .form-group input.form-control::-webkit-input-placeholder, +.navbar .navbar-form input.form-control::-webkit-input-placeholder, +.navbar.navbar-default .navbar-form input.form-control::-webkit-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar .dropdown-menu, +.navbar.navbar-default .dropdown-menu { + border-radius: 2px; +} +.navbar .dropdown-menu li > a, +.navbar.navbar-default .dropdown-menu li > a { + font-size: 16px; + padding: 13px 16px; +} +.navbar .dropdown-menu li > a:hover, +.navbar.navbar-default .dropdown-menu li > a:hover, +.navbar .dropdown-menu li > a:focus, +.navbar.navbar-default .dropdown-menu li > a:focus { + color: #0d47a1; + background-color: #eeeeee; +} +.navbar .dropdown-menu .active > a, +.navbar.navbar-default .dropdown-menu .active > a { + background-color: #0d47a1; + color: rgba(255,255,255, 0.84); +} +.navbar .dropdown-menu .active > a:hover, +.navbar.navbar-default .dropdown-menu .active > a:hover, +.navbar .dropdown-menu .active > a:focus, +.navbar.navbar-default .dropdown-menu .active > a:focus { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-inverse { + background-color: #3f51b5; + color: #ffffff; +} +.navbar.navbar-inverse .navbar-form .form-group input.form-control::-moz-placeholder, +.navbar.navbar-inverse .navbar-form input.form-control::-moz-placeholder { + color: #ffffff; +} +.navbar.navbar-inverse .navbar-form .form-group input.form-control:-ms-input-placeholder, +.navbar.navbar-inverse .navbar-form input.form-control:-ms-input-placeholder { + color: #ffffff; +} +.navbar.navbar-inverse .navbar-form .form-group input.form-control::-webkit-input-placeholder, +.navbar.navbar-inverse .navbar-form input.form-control::-webkit-input-placeholder { + color: #ffffff; +} +.navbar.navbar-inverse .dropdown-menu { + border-radius: 2px; +} +.navbar.navbar-inverse .dropdown-menu li > a { + font-size: 16px; + padding: 13px 16px; +} +.navbar.navbar-inverse .dropdown-menu li > a:hover, +.navbar.navbar-inverse .dropdown-menu li > a:focus { + color: #3f51b5; + background-color: #eeeeee; +} +.navbar.navbar-inverse .dropdown-menu .active > a { + background-color: #3f51b5; + color: #ffffff; +} +.navbar.navbar-inverse .dropdown-menu .active > a:hover, +.navbar.navbar-inverse .dropdown-menu .active > a:focus { + color: #ffffff; +} +.navbar.navbar-primary { + background-color: #0d47a1; + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-primary .navbar-form .form-group input.form-control::-moz-placeholder, +.navbar.navbar-primary .navbar-form input.form-control::-moz-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-primary .navbar-form .form-group input.form-control:-ms-input-placeholder, +.navbar.navbar-primary .navbar-form input.form-control:-ms-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-primary .navbar-form .form-group input.form-control::-webkit-input-placeholder, +.navbar.navbar-primary .navbar-form input.form-control::-webkit-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-primary .dropdown-menu { + border-radius: 2px; +} +.navbar.navbar-primary .dropdown-menu li > a { + font-size: 16px; + padding: 13px 16px; +} +.navbar.navbar-primary .dropdown-menu li > a:hover, +.navbar.navbar-primary .dropdown-menu li > a:focus { + color: #0d47a1; + background-color: #eeeeee; +} +.navbar.navbar-primary .dropdown-menu .active > a { + background-color: #0d47a1; + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-primary .dropdown-menu .active > a:hover, +.navbar.navbar-primary .dropdown-menu .active > a:focus { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-success { + background-color: #4caf50; + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-success .navbar-form .form-group input.form-control::-moz-placeholder, +.navbar.navbar-success .navbar-form input.form-control::-moz-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-success .navbar-form .form-group input.form-control:-ms-input-placeholder, +.navbar.navbar-success .navbar-form input.form-control:-ms-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-success .navbar-form .form-group input.form-control::-webkit-input-placeholder, +.navbar.navbar-success .navbar-form input.form-control::-webkit-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-success .dropdown-menu { + border-radius: 2px; +} +.navbar.navbar-success .dropdown-menu li > a { + font-size: 16px; + padding: 13px 16px; +} +.navbar.navbar-success .dropdown-menu li > a:hover, +.navbar.navbar-success .dropdown-menu li > a:focus { + color: #4caf50; + background-color: #eeeeee; +} +.navbar.navbar-success .dropdown-menu .active > a { + background-color: #4caf50; + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-success .dropdown-menu .active > a:hover, +.navbar.navbar-success .dropdown-menu .active > a:focus { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-info { + background-color: #03a9f4; + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-info .navbar-form .form-group input.form-control::-moz-placeholder, +.navbar.navbar-info .navbar-form input.form-control::-moz-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-info .navbar-form .form-group input.form-control:-ms-input-placeholder, +.navbar.navbar-info .navbar-form input.form-control:-ms-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-info .navbar-form .form-group input.form-control::-webkit-input-placeholder, +.navbar.navbar-info .navbar-form input.form-control::-webkit-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-info .dropdown-menu { + border-radius: 2px; +} +.navbar.navbar-info .dropdown-menu li > a { + font-size: 16px; + padding: 13px 16px; +} +.navbar.navbar-info .dropdown-menu li > a:hover, +.navbar.navbar-info .dropdown-menu li > a:focus { + color: #03a9f4; + background-color: #eeeeee; +} +.navbar.navbar-info .dropdown-menu .active > a { + background-color: #03a9f4; + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-info .dropdown-menu .active > a:hover, +.navbar.navbar-info .dropdown-menu .active > a:focus { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-warning { + background-color: #ff5722; + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-warning .navbar-form .form-group input.form-control::-moz-placeholder, +.navbar.navbar-warning .navbar-form input.form-control::-moz-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-warning .navbar-form .form-group input.form-control:-ms-input-placeholder, +.navbar.navbar-warning .navbar-form input.form-control:-ms-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-warning .navbar-form .form-group input.form-control::-webkit-input-placeholder, +.navbar.navbar-warning .navbar-form input.form-control::-webkit-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-warning .dropdown-menu { + border-radius: 2px; +} +.navbar.navbar-warning .dropdown-menu li > a { + font-size: 16px; + padding: 13px 16px; +} +.navbar.navbar-warning .dropdown-menu li > a:hover, +.navbar.navbar-warning .dropdown-menu li > a:focus { + color: #ff5722; + background-color: #eeeeee; +} +.navbar.navbar-warning .dropdown-menu .active > a { + background-color: #ff5722; + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-warning .dropdown-menu .active > a:hover, +.navbar.navbar-warning .dropdown-menu .active > a:focus { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-danger { + background-color: #f44336; + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-danger .navbar-form .form-group input.form-control::-moz-placeholder, +.navbar.navbar-danger .navbar-form input.form-control::-moz-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-danger .navbar-form .form-group input.form-control:-ms-input-placeholder, +.navbar.navbar-danger .navbar-form input.form-control:-ms-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-danger .navbar-form .form-group input.form-control::-webkit-input-placeholder, +.navbar.navbar-danger .navbar-form input.form-control::-webkit-input-placeholder { + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-danger .dropdown-menu { + border-radius: 2px; +} +.navbar.navbar-danger .dropdown-menu li > a { + font-size: 16px; + padding: 13px 16px; +} +.navbar.navbar-danger .dropdown-menu li > a:hover, +.navbar.navbar-danger .dropdown-menu li > a:focus { + color: #f44336; + background-color: #eeeeee; +} +.navbar.navbar-danger .dropdown-menu .active > a { + background-color: #f44336; + color: rgba(255,255,255, 0.84); +} +.navbar.navbar-danger .dropdown-menu .active > a:hover, +.navbar.navbar-danger .dropdown-menu .active > a:focus { + color: rgba(255,255,255, 0.84); +} +.navbar-inverse { + background-color: #3f51b5; +} +@media (max-width: 1199px) { + .navbar .navbar-brand { + height: 50px; + padding: 10px 15px; + } + .navbar .navbar-form { + margin-top: 10px; + } + .navbar .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} +.dropdown-menu { + border: 0; + -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26); + box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26); +} +.dropdown-menu .divider { + background-color: rgba(0, 0, 0, 0.12); +} +.dropdown-menu li { + overflow: hidden; + position: relative; +} +.dropdown-menu li a:hover { + background-color: transparent; + color: #0d47a1; +} +.alert { + border: 0; + border-radius: 0; +} +.alert, +.alert.alert-default { + background-color: rgba(255,255,255, 0.84); + color: rgba(255,255,255, 0.84); +} +.alert a, +.alert.alert-default a, +.alert .alert-link, +.alert.alert-default .alert-link { + color: rgba(255,255,255, 0.84); +} +.alert.alert-inverse { + background-color: #3f51b5; + color: #ffffff; +} +.alert.alert-inverse a, +.alert.alert-inverse .alert-link { + color: #ffffff; +} +.alert.alert-primary { + background-color: #0d47a1; + color: rgba(255,255,255, 0.84); +} +.alert.alert-primary a, +.alert.alert-primary .alert-link { + color: rgba(255,255,255, 0.84); +} +.alert.alert-success { + background-color: #4caf50; + color: rgba(255,255,255, 0.84); +} +.alert.alert-success a, +.alert.alert-success .alert-link { + color: rgba(255,255,255, 0.84); +} +.alert.alert-info { + background-color: #03a9f4; + color: rgba(255,255,255, 0.84); +} +.alert.alert-info a, +.alert.alert-info .alert-link { + color: rgba(255,255,255, 0.84); +} +.alert.alert-warning { + background-color: #ff5722; + color: rgba(255,255,255, 0.84); +} +.alert.alert-warning a, +.alert.alert-warning .alert-link { + color: rgba(255,255,255, 0.84); +} +.alert.alert-danger { + background-color: #f44336; + color: rgba(255,255,255, 0.84); +} +.alert.alert-danger a, +.alert.alert-danger .alert-link { + color: rgba(255,255,255, 0.84); +} +.alert-info, +.alert-danger, +.alert-warning, +.alert-success { + color: rgba(255,255,255, 0.84); +} +.alert-default a, +.alert-default .alert-link { + color: rgba(0,0,0, 0.87); +} +.progress { + height: 4px; + border-radius: 0; + -webkit-box-shadow: none; + box-shadow: none; + background: #c8c8c8; +} +.progress .progress-bar { + -webkit-box-shadow: none; + box-shadow: none; +} +.progress .progress-bar, +.progress .progress-bar.progress-bar-default { + background-color: #0d47a1; +} +.progress .progress-bar.progress-bar-inverse { + background-color: #3f51b5; +} +.progress .progress-bar.progress-bar-primary { + background-color: #0d47a1; +} +.progress .progress-bar.progress-bar-success { + background-color: #4caf50; +} +.progress .progress-bar.progress-bar-info { + background-color: #03a9f4; +} +.progress .progress-bar.progress-bar-warning { + background-color: #ff5722; +} +.progress .progress-bar.progress-bar-danger { + background-color: #f44336; +} +.text-warning { + color: #ff5722; +} +.text-primary { + color: #0d47a1; +} +.text-danger { + color: #f44336; +} +.text-success { + color: #4caf50; +} +.text-info { + color: #03a9f4; +} +.nav-tabs { + background: #0d47a1; +} +.nav-tabs > li > a { + color: #FFFFFF; + border: 0; + margin: 0; +} +.nav-tabs > li > a:hover { + background-color: transparent; + border: 0; +} +.nav-tabs > li > a, +.nav-tabs > li > a:hover, +.nav-tabs > li > a:focus { + background-color: transparent !important; + border: 0 !important; + color: #FFFFFF !important; + font-weight: 500; +} +.nav-tabs > li.disabled > a, +.nav-tabs > li.disabled > a:hover { + color: rgba(255, 255, 255, 0.5); +} +.popover, +.tooltip-inner { + color: #ececec; + line-height: 1em; + background: rgba(101, 101, 101, 0.9); + border: none; + border-radius: 2px; + -webkit-box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 6px 0 rgba(0, 0, 0, 0.12); + box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 6px 0 rgba(0, 0, 0, 0.12); +} +.tooltip, +.tooltip.in { + opacity: 1; +} +.popover .arrow, +.tooltip .arrow, +.popover .tooltip-arrow, +.tooltip .tooltip-arrow { + display: none; +} +.card { + /***** Make height equal to width (http://stackoverflow.com/a/6615994) ****/ + display: inline-block; + position: relative; + width: 100%; + /**************************************************************************/ + border-radius: 2px; + color: rgba(0,0,0, 0.87); + background: #fff; + -webkit-box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); +} +.card .card-height-indicator { + margin-top: 100%; +} +.card .card-content { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; +} +.card .card-image { + height: 60%; + position: relative; + overflow: hidden; +} +.card .card-image img { + width: 100%; + height: 100%; + border-top-left-radius: 2px; + border-top-right-radius: 2px; + pointer-events: none; +} +.card .card-image .card-image-headline { + position: absolute; + bottom: 16px; + left: 18px; + color: #fff; + font-size: 2em; +} +.card .card-body { + height: 30%; + padding: 18px; +} +.card .card-footer { + height: 10%; + padding: 18px; +} +.card .card-footer button, +.card .card-footer a { + margin: 0 !important; + position: relative; + bottom: 25px; + width: auto; +} +.card .card-footer button:first-child, +.card .card-footer a:first-child { + left: -15px; +} +.modal-content { + -webkit-box-shadow: 0 27px 24px 0 rgba(0, 0, 0, 0.2), 0 40px 77px 0 rgba(0, 0, 0, 0.22); + box-shadow: 0 27px 24px 0 rgba(0, 0, 0, 0.2), 0 40px 77px 0 rgba(0, 0, 0, 0.22); + border-radius: 2px; + border: none; +} +.modal-content .modal-header { + border-bottom: none; + padding-top: 24px; + padding-right: 24px; + padding-bottom: 0; + padding-left: 24px; +} +.modal-content .modal-body { + padding-top: 24px; + padding-right: 24px; + padding-bottom: 16px; + padding-left: 24px; +} +.modal-content .modal-footer { + border-top: none; + padding: 7px; +} +.modal-content .modal-footer button { + margin: 0; + padding-left: 16px; + padding-right: 16px; + width: auto; +} +.modal-content .modal-footer button.pull-left { + padding-left: 5px; + padding-right: 5px; + position: relative; + left: -5px; +} +.modal-content .modal-footer button + button { + margin-bottom: 16px; +} +.modal-content .modal-body + .modal-footer { + padding-top: 0; +} +.modal-backdrop { + background: rgba(0, 0, 0, 0.3); +} +.panel { + border-radius: 2px; + border: 0; + -webkit-box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 6px 0 rgba(0, 0, 0, 0.12); + box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 6px 0 rgba(0, 0, 0, 0.12); +} +.panel > .panel-heading, +.panel.panel-default > .panel-heading { + background-color: #eeeeee; +} +.panel.panel-inverse > .panel-heading { + background-color: #3f51b5; +} +.panel.panel-primary > .panel-heading { + background-color: #0d47a1; +} +.panel.panel-success > .panel-heading { + background-color: #4caf50; +} +.panel.panel-info > .panel-heading { + background-color: #03a9f4; +} +.panel.panel-warning > .panel-heading { + background-color: #ff5722; +} +.panel.panel-danger > .panel-heading { + background-color: #f44336; +} +[class*="panel-"] > .panel-heading { + color: rgba(255,255,255, 0.84); + border: 0; +} +.panel-default > .panel-heading, +.panel:not([class*="panel-"]) > .panel-heading { + color: rgba(0,0,0, 0.87); +} +.panel-footer { + background-color: #eeeeee; +} +hr.on-dark { + color: #1a1a1a; +} +hr.on-light { + color: #ffffff; +} +@media (-webkit-min-device-pixel-ratio: 0.75), (min--moz-device-pixel-ratio: 0.75), (-o-device-pixel-ratio: 3/4), (min-device-pixel-ratio: 0.75), (-o-min-device-pixel-ratio: 3/4), (min-resolution: 0.75dppx), (-webkit-min-device-pixel-ratio: 1.25), (-o-min-device-pixel-ratio: 5/4), (min-resolution: 120dpi) { + hr { + height: 0.75px; + } +} +@media (-webkit-min-device-pixel-ratio: 1), (min--moz-device-pixel-ratio: 1), (-o-device-pixel-ratio: 1), (min-device-pixel-ratio: 1), (-o-min-device-pixel-ratio: 1/1), (min-resolution: 1dppx), (-webkit-min-device-pixel-ratio: 1.6666666666666667), (-o-min-device-pixel-ratio: 5/3), (min-resolution: 160dpi) { + hr { + height: 1px; + } +} +@media (-webkit-min-device-pixel-ratio: 1.33), (min--moz-device-pixel-ratio: 1.33), (-o-device-pixel-ratio: 133/100), (min-device-pixel-ratio: 1.33), (-o-min-device-pixel-ratio: 133/100), (min-resolution: 1.33dppx), (-webkit-min-device-pixel-ratio: 2.21875), (-o-min-device-pixel-ratio: 71/32), (min-resolution: 213dpi) { + hr { + height: 1.333px; + } +} +@media (-webkit-min-device-pixel-ratio: 1.5), (min--moz-device-pixel-ratio: 1.5), (-o-device-pixel-ratio: 3/2), (min-device-pixel-ratio: 1.5), (-o-min-device-pixel-ratio: 3/2), (min-resolution: 1.5dppx), (-webkit-min-device-pixel-ratio: 2.5), (-o-min-device-pixel-ratio: 5/2), (min-resolution: 240dpi) { + hr { + height: 1.5px; + } +} +@media (-webkit-min-device-pixel-ratio: 2), (min--moz-device-pixel-ratio: 2), (-o-device-pixel-ratio: 2/1), (min-device-pixel-ratio: 2), (-o-min-device-pixel-ratio: 2/1), (min-resolution: 2dppx), (-webkit-min-device-pixel-ratio: 3.9583333333333335), (-o-min-device-pixel-ratio: 95/24), (min-resolution: 380dpi) { + hr { + height: 2px; + } +} +@media (-webkit-min-device-pixel-ratio: 3), (min--moz-device-pixel-ratio: 3), (-o-device-pixel-ratio: 3/1), (min-device-pixel-ratio: 3), (-o-min-device-pixel-ratio: 3/1), (min-resolution: 3dppx), (-webkit-min-device-pixel-ratio: 5), (-o-min-device-pixel-ratio: 5/1), (min-resolution: 480dpi) { + hr { + height: 3px; + } +} +@media (-webkit-min-device-pixel-ratio: 4), (min--moz-device-pixel-ratio: 4), (-o-device-pixel-ratio: 4/1), (min-device-pixel-ratio: 3), (-o-min-device-pixel-ratio: 4/1), (min-resolution: 4dppx), (-webkit-min-device-pixel-ratio: 6.666666666666667), (-o-min-device-pixel-ratio: 20/3), (min-resolution: 640dpi) { + hr { + height: 4px; + } +} +* { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-tap-highlight-color: transparent; +} +*:focus { + outline: 0; +} +.snackbar { + background-color: #323232; + color: rgba(255,255,255, 0.84); + font-size: 14px; + border-radius: 2px; + -webkit-box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 6px 0 rgba(0, 0, 0, 0.12); + box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 6px 0 rgba(0, 0, 0, 0.12); + height: 0; + -webkit-transition: -webkit-transform 0.2s ease-in-out, opacity 0.2s ease-in, height 0s linear 0.2s, padding 0s linear 0.2s, height 0s linear 0.2s; + -o-transition: -o-transform 0.2s ease-in-out, opacity 0.2s ease-in, height 0s linear 0.2s, padding 0s linear 0.2s, height 0s linear 0.2s; + transition: transform 0.2s ease-in-out, opacity 0.2s ease-in, height 0s linear 0.2s, padding 0s linear 0.2s, height 0s linear 0.2s; + -webkit-transform: translateY(200%); + -ms-transform: translateY(200%); + -o-transform: translateY(200%); + transform: translateY(200%); +} +.snackbar.snackbar-opened { + padding: 14px 15px; + margin-bottom: 20px; + height: auto; + -webkit-transition: -webkit-transform 0.2s ease-in-out, opacity 0.2s ease-in, height 0s linear 0.2s, height 0s linear 0.2s; + -o-transition: -o-transform 0.2s ease-in-out, opacity 0.2s ease-in, height 0s linear 0.2s, height 0s linear 0.2s; + transition: transform 0.2s ease-in-out, opacity 0.2s ease-in, height 0s linear 0.2s, height 0s linear 0.2s; + -webkit-transform: none; + -ms-transform: none; + -o-transform: none; + transform: none; +} +.snackbar.toast { + border-radius: 200px; +} +.noUi-target, +.noUi-target * { + -webkit-touch-callout: none; + -ms-touch-action: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.noUi-base { + width: 100%; + height: 100%; + position: relative; +} +.noUi-origin { + position: absolute; + right: 0; + top: 0; + left: 0; + bottom: 0; +} +.noUi-handle { + position: relative; + z-index: 1; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.noUi-stacking .noUi-handle { + z-index: 10; +} +.noUi-state-tap .noUi-origin { + -webkit-transition: left 0.3s, top 0.3s; + -o-transition: left 0.3s, top 0.3s; + transition: left 0.3s, top 0.3s; +} +.noUi-state-drag * { + cursor: inherit !important; +} +.noUi-horizontal { + height: 10px; +} +.noUi-handle { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 12px; + height: 12px; + left: -10px; + top: -5px; + cursor: ew-resize; + border-radius: 100%; + -webkit-transition: all 0.2s ease-out; + -o-transition: all 0.2s ease-out; + transition: all 0.2s ease-out; + border: 1px solid; +} +.noUi-vertical .noUi-handle { + margin-left: 5px; + cursor: ns-resize; +} +.noUi-horizontal.noUi-extended { + padding: 0 15px; +} +.noUi-horizontal.noUi-extended .noUi-origin { + right: -15px; +} +.noUi-background { + height: 2px; + margin: 20px 0; +} +.noUi-origin { + margin: 0; + border-radius: 0; + height: 2px; + background: #c8c8c8; +} +.noUi-origin[style^="left: 0"] .noUi-handle { + background-color: #fff; + border: 2px solid #c8c8c8; +} +.noUi-origin[style^="left: 0"] .noUi-handle.noUi-active { + border-width: 1px; +} +.noUi-target { + border-radius: 2px; +} +.noUi-horizontal { + height: 2px; + margin: 15px 0; +} +.noUi-vertical { + height: 100%; + width: 2px; + margin: 0 15px; + display: inline-block; +} +.noUi-handle.noUi-active { + -webkit-transform: scale3d(2.5, 2.5, 1); + transform: scale3d(2.5, 2.5, 1); +} +[disabled].noUi-slider { + opacity: 0.5; +} +[disabled] .noUi-handle { + cursor: not-allowed; +} +.slider { + background: #c8c8c8; +} +.slider.noUi-connect, +.slider.slider-default.noUi-connect { + background-color: #0d47a1; +} +.slider.slider-inverse.noUi-connect { + background-color: #3f51b5; +} +.slider.slider-primary.noUi-connect { + background-color: #0d47a1; +} +.slider.slider-success.noUi-connect { + background-color: #4caf50; +} +.slider.slider-info.noUi-connect { + background-color: #03a9f4; +} +.slider.slider-warning.noUi-connect { + background-color: #ff5722; +} +.slider.slider-danger.noUi-connect { + background-color: #f44336; +} +.slider .noUi-connect, +.slider.slider-default .noUi-connect { + background-color: #0d47a1; +} +.slider.slider-inverse .noUi-connect { + background-color: #3f51b5; +} +.slider.slider-primary .noUi-connect { + background-color: #0d47a1; +} +.slider.slider-success .noUi-connect { + background-color: #4caf50; +} +.slider.slider-info .noUi-connect { + background-color: #03a9f4; +} +.slider.slider-warning .noUi-connect { + background-color: #ff5722; +} +.slider.slider-danger .noUi-connect { + background-color: #f44336; +} +.slider .noUi-handle, +.slider.slider-default .noUi-handle { + background-color: #0d47a1; +} +.slider.slider-inverse .noUi-handle { + background-color: #3f51b5; +} +.slider.slider-primary .noUi-handle { + background-color: #0d47a1; +} +.slider.slider-success .noUi-handle { + background-color: #4caf50; +} +.slider.slider-info .noUi-handle { + background-color: #03a9f4; +} +.slider.slider-warning .noUi-handle { + background-color: #ff5722; +} +.slider.slider-danger .noUi-handle { + background-color: #f44336; +} +.slider .noUi-handle, +.slider.slider-default .noUi-handle { + border-color: #0d47a1; +} +.slider.slider-inverse .noUi-handle { + border-color: #3f51b5; +} +.slider.slider-primary .noUi-handle { + border-color: #0d47a1; +} +.slider.slider-success .noUi-handle { + border-color: #4caf50; +} +.slider.slider-info .noUi-handle { + border-color: #03a9f4; +} +.slider.slider-warning .noUi-handle { + border-color: #ff5722; +} +.slider.slider-danger .noUi-handle { + border-color: #f44336; +} +.selectize-control.single, +.selectize-control.multi { + padding: 0; +} +.selectize-control.single .selectize-input, +.selectize-control.multi .selectize-input, +.selectize-control.single .selectize-input.input-active, +.selectize-control.multi .selectize-input.input-active { + cursor: text; + background: transparent; + -webkit-box-shadow: none; + box-shadow: none; + border: 0; + padding: 0; + height: 100%; + font-size: 14px; + line-height: 30px; +} +.selectize-control.single .selectize-input .has-items, +.selectize-control.multi .selectize-input .has-items, +.selectize-control.single .selectize-input.input-active .has-items, +.selectize-control.multi .selectize-input.input-active .has-items { + padding: 0; +} +.selectize-control.single .selectize-input:after, +.selectize-control.multi .selectize-input:after, +.selectize-control.single .selectize-input.input-active:after, +.selectize-control.multi .selectize-input.input-active:after { + right: 5px; + position: absolute; + font-size: 25px; + content: "\e5c5"; + font-family: 'Material Icons'; + speak: none; + font-style: normal; + font-weight: normal; + font-variant: normal; + text-transform: none; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.selectize-control.single .selectize-input input, +.selectize-control.multi .selectize-input input, +.selectize-control.single .selectize-input.input-active input, +.selectize-control.multi .selectize-input.input-active input { + font-size: 14px; + outline: 0; + border: 0; + background: transparent; +} +.selectize-control.single .selectize-input.label-floating-fix input, +.selectize-control.multi .selectize-input.label-floating-fix input, +.selectize-control.single .selectize-input.input-active.label-floating-fix input, +.selectize-control.multi .selectize-input.input-active.label-floating-fix input { + opacity: 0; +} +.selectize-control.single .selectize-input > div, +.selectize-control.multi .selectize-input > div, +.selectize-control.single .selectize-input.input-active > div, +.selectize-control.multi .selectize-input.input-active > div, +.selectize-control.single .selectize-input > .item, +.selectize-control.multi .selectize-input > .item, +.selectize-control.single .selectize-input.input-active > .item, +.selectize-control.multi .selectize-input.input-active > .item { + display: inline-block; + margin: 0 8px 3px 0; + padding: 0; + background: transparent; + border: 0; +} +.selectize-control.single .selectize-input > div:after, +.selectize-control.multi .selectize-input > div:after, +.selectize-control.single .selectize-input.input-active > div:after, +.selectize-control.multi .selectize-input.input-active > div:after, +.selectize-control.single .selectize-input > .item:after, +.selectize-control.multi .selectize-input > .item:after, +.selectize-control.single .selectize-input.input-active > .item:after, +.selectize-control.multi .selectize-input.input-active > .item:after { + content: ","; +} +.selectize-control.single .selectize-input > div:last-of-type:after, +.selectize-control.multi .selectize-input > div:last-of-type:after, +.selectize-control.single .selectize-input.input-active > div:last-of-type:after, +.selectize-control.multi .selectize-input.input-active > div:last-of-type:after, +.selectize-control.single .selectize-input > .item:last-of-type:after, +.selectize-control.multi .selectize-input > .item:last-of-type:after, +.selectize-control.single .selectize-input.input-active > .item:last-of-type:after, +.selectize-control.multi .selectize-input.input-active > .item:last-of-type:after { + content: ""; +} +.selectize-control.single .selectize-input > div.active, +.selectize-control.multi .selectize-input > div.active, +.selectize-control.single .selectize-input.input-active > div.active, +.selectize-control.multi .selectize-input.input-active > div.active, +.selectize-control.single .selectize-input > .item.active, +.selectize-control.multi .selectize-input > .item.active, +.selectize-control.single .selectize-input.input-active > .item.active, +.selectize-control.multi .selectize-input.input-active > .item.active { + font-weight: bold; + background: transparent; + border: 0; +} +.selectize-control.single .selectize-dropdown, +.selectize-control.multi .selectize-dropdown { + position: absolute; + z-index: 1000; + border: 0; + width: 100% !important; + left: 0 !important; + height: auto; + background-color: #FFF; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + border-radius: 2px; + padding: 0; + margin-top: 3px; +} +.selectize-control.single .selectize-dropdown .active, +.selectize-control.multi .selectize-dropdown .active { + background-color: inherit; +} +.selectize-control.single .selectize-dropdown .highlight, +.selectize-control.multi .selectize-dropdown .highlight { + background-color: #d5d8ff; +} +.selectize-control.single .selectize-dropdown .selected, +.selectize-control.multi .selectize-dropdown .selected, +.selectize-control.single .selectize-dropdown .selected.active, +.selectize-control.multi .selectize-dropdown .selected.active { + background-color: #EEEEEE; +} +.selectize-control.single .selectize-dropdown [data-selectable], +.selectize-control.multi .selectize-dropdown [data-selectable], +.selectize-control.single .selectize-dropdown .optgroup-header, +.selectize-control.multi .selectize-dropdown .optgroup-header { + padding: 10px 20px; + cursor: pointer; +} +.selectize-control.single .dropdown-active ~ .selectize-dropdown, +.selectize-control.multi .dropdown-active ~ .selectize-dropdown { + display: block; +} +.dropdownjs::after { + right: 5px; + top: 3px; + font-size: 25px; + position: absolute; + font-family: 'Material Icons'; + font-style: normal; + font-weight: 400; + content: "\e5c5"; + pointer-events: none; + color: #757575; +} +/*# sourceMappingURL=bootstrap-material-design.css.map */ \ No newline at end of file diff --git a/src/GenericMvc.Test.App/wwwroot/css/material-dist/bootstrap-material-design.min.css b/src/GenericMvc.Test.App/wwwroot/css/material-dist/bootstrap-material-design.min.css new file mode 100644 index 0000000..16f8047 --- /dev/null +++ b/src/GenericMvc.Test.App/wwwroot/css/material-dist/bootstrap-material-design.min.css @@ -0,0 +1,2 @@ +body{background-color:#EEE}body.inverse{background:#333}body.inverse,body.inverse .form-control{color:rgba(255,255,255,.84)}body.inverse .card,body.inverse .card .form-control,body.inverse .modal,body.inverse .modal .form-control,body.inverse .panel-default,body.inverse .panel-default .form-control{background-color:initial;color:initial}.h1,.h2,.h3,.h4,body,h1,h2,h3,h4,h5,h6{font-family:Roboto,Helvetica,Arial,sans-serif;font-weight:300}h5,h6{font-weight:400}a,a:focus,a:hover{color:#0d47a1}a .material-icons,a:focus .material-icons,a:hover .material-icons{vertical-align:middle}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:0}.form-horizontal .radio{margin-bottom:10px}.form-horizontal label{text-align:right}.form-horizontal label.control-label{margin:0}body .container .well.well-sm,body .container-fluid .well.well-sm{padding:10px}body .container .well.well-lg,body .container-fluid .well.well-lg{padding:26px}body .container .jumbotron,body .container .well,body .container-fluid .jumbotron,body .container-fluid .well{background-color:#fff;padding:19px;margin-bottom:20px;-webkit-box-shadow:0 8px 17px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);box-shadow:0 8px 17px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);border-radius:2px;border:0}body .container .jumbotron p,body .container .well p,body .container-fluid .jumbotron p,body .container-fluid .well p{font-weight:300}body .container .jumbotron,body .container .jumbotron-default,body .container .well,body .container .well-default,body .container-fluid .jumbotron,body .container-fluid .jumbotron-default,body .container-fluid .well,body .container-fluid .well-default{background-color:#fff}body .container .jumbotron-inverse,body .container .well-inverse,body .container-fluid .jumbotron-inverse,body .container-fluid .well-inverse{background-color:#3f51b5}body .container .jumbotron-primary,body .container .well-primary,body .container-fluid .jumbotron-primary,body .container-fluid .well-primary{background-color:#0d47a1}body .container .jumbotron-success,body .container .well-success,body .container-fluid .jumbotron-success,body .container-fluid .well-success{background-color:#4caf50}body .container .jumbotron-info,body .container .well-info,body .container-fluid .jumbotron-info,body .container-fluid .well-info{background-color:#03a9f4}body .container .jumbotron-warning,body .container .well-warning,body .container-fluid .jumbotron-warning,body .container-fluid .well-warning{background-color:#ff5722}body .container .jumbotron-danger,body .container .well-danger,body .container-fluid .jumbotron-danger,body .container-fluid .well-danger{background-color:#f44336}.btn,.input-group-btn .btn{border:none;border-radius:2px;position:relative;padding:8px 30px;margin:10px 1px;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:0;will-change:box-shadow,transform;-webkit-transition:-webkit-box-shadow .2s cubic-bezier(.4,0,1,1),background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);-o-transition:box-shadow .2s cubic-bezier(.4,0,1,1),background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);transition:box-shadow .2s cubic-bezier(.4,0,1,1),background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);outline:0;cursor:pointer;text-decoration:none;background:0 0}.btn::-moz-focus-inner,.input-group-btn .btn::-moz-focus-inner{border:0}.btn:not(.btn-raised),.input-group-btn .btn:not(.btn-raised){-webkit-box-shadow:none;box-shadow:none}.btn:not(.btn-raised),.btn:not(.btn-raised).btn-default,.input-group-btn .btn:not(.btn-raised),.input-group-btn .btn:not(.btn-raised).btn-default{color:rgba(0,0,0,.87)}.btn:not(.btn-raised).btn-inverse,.input-group-btn .btn:not(.btn-raised).btn-inverse{color:#3f51b5}.btn:not(.btn-raised).btn-primary,.input-group-btn .btn:not(.btn-raised).btn-primary{color:#0d47a1}.btn:not(.btn-raised).btn-success,.input-group-btn .btn:not(.btn-raised).btn-success{color:#4caf50}.btn:not(.btn-raised).btn-info,.input-group-btn .btn:not(.btn-raised).btn-info{color:#03a9f4}.btn:not(.btn-raised).btn-warning,.input-group-btn .btn:not(.btn-raised).btn-warning{color:#ff5722}.btn:not(.btn-raised).btn-danger,.input-group-btn .btn:not(.btn-raised).btn-danger{color:#f44336}.btn:not(.btn-raised):not(.btn-link):focus,.btn:not(.btn-raised):not(.btn-link):hover,.input-group-btn .btn:not(.btn-raised):not(.btn-link):focus,.input-group-btn .btn:not(.btn-raised):not(.btn-link):hover{background-color:rgba(153,153,153,.2)}.theme-dark .btn:not(.btn-raised):not(.btn-link):focus,.theme-dark .btn:not(.btn-raised):not(.btn-link):hover,.theme-dark .input-group-btn .btn:not(.btn-raised):not(.btn-link):focus,.theme-dark .input-group-btn .btn:not(.btn-raised):not(.btn-link):hover{background-color:rgba(204,204,204,.15)}.btn-group-raised .btn,.btn-group-raised .btn.btn-default,.btn-group-raised .input-group-btn .btn,.btn-group-raised .input-group-btn .btn.btn-default,.btn.btn-fab,.btn.btn-fab.btn-default,.btn.btn-raised,.btn.btn-raised.btn-default,.input-group-btn .btn.btn-fab,.input-group-btn .btn.btn-fab.btn-default,.input-group-btn .btn.btn-raised,.input-group-btn .btn.btn-raised.btn-default{background-color:#EEE;color:rgba(0,0,0,.87)}.btn-group-raised .btn.btn-inverse,.btn-group-raised .input-group-btn .btn.btn-inverse,.btn.btn-fab.btn-inverse,.btn.btn-raised.btn-inverse,.input-group-btn .btn.btn-fab.btn-inverse,.input-group-btn .btn.btn-raised.btn-inverse{background-color:#3f51b5;color:#fff}.btn-group-raised .btn.btn-primary,.btn-group-raised .input-group-btn .btn.btn-primary,.btn.btn-fab.btn-primary,.btn.btn-raised.btn-primary,.input-group-btn .btn.btn-fab.btn-primary,.input-group-btn .btn.btn-raised.btn-primary{background-color:#0d47a1;color:rgba(255,255,255,.84)}.btn-group-raised .btn.btn-success,.btn-group-raised .input-group-btn .btn.btn-success,.btn.btn-fab.btn-success,.btn.btn-raised.btn-success,.input-group-btn .btn.btn-fab.btn-success,.input-group-btn .btn.btn-raised.btn-success{background-color:#4caf50;color:rgba(255,255,255,.84)}.btn-group-raised .btn.btn-info,.btn-group-raised .input-group-btn .btn.btn-info,.btn.btn-fab.btn-info,.btn.btn-raised.btn-info,.input-group-btn .btn.btn-fab.btn-info,.input-group-btn .btn.btn-raised.btn-info{background-color:#03a9f4;color:rgba(255,255,255,.84)}.btn-group-raised .btn.btn-warning,.btn-group-raised .input-group-btn .btn.btn-warning,.btn.btn-fab.btn-warning,.btn.btn-raised.btn-warning,.input-group-btn .btn.btn-fab.btn-warning,.input-group-btn .btn.btn-raised.btn-warning{background-color:#ff5722;color:rgba(255,255,255,.84)}.btn-group-raised .btn.btn-danger,.btn-group-raised .input-group-btn .btn.btn-danger,.btn.btn-fab.btn-danger,.btn.btn-raised.btn-danger,.input-group-btn .btn.btn-fab.btn-danger,.input-group-btn .btn.btn-raised.btn-danger{background-color:#f44336;color:rgba(255,255,255,.84)}.btn-group-raised .btn:not(.btn-link),.btn-group-raised .input-group-btn .btn:not(.btn-link),.btn.btn-raised:not(.btn-link),.input-group-btn .btn.btn-raised:not(.btn-link){-webkit-box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12)}.btn-group-raised .btn:not(.btn-link).active,.btn-group-raised .btn:not(.btn-link):active,.btn-group-raised .btn:not(.btn-link):focus,.btn-group-raised .btn:not(.btn-link):hover,.btn-group-raised .input-group-btn .btn:not(.btn-link).active,.btn-group-raised .input-group-btn .btn:not(.btn-link):active,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus,.btn-group-raised .input-group-btn .btn:not(.btn-link):hover,.btn.btn-raised:not(.btn-link).active,.btn.btn-raised:not(.btn-link):active,.btn.btn-raised:not(.btn-link):focus,.btn.btn-raised:not(.btn-link):hover,.input-group-btn .btn.btn-raised:not(.btn-link).active,.input-group-btn .btn.btn-raised:not(.btn-link):active,.input-group-btn .btn.btn-raised:not(.btn-link):focus,.input-group-btn .btn.btn-raised:not(.btn-link):hover{outline:0}.btn-group-raised .btn:not(.btn-link).active,.btn-group-raised .btn:not(.btn-link).active.btn-default,.btn-group-raised .btn:not(.btn-link):active,.btn-group-raised .btn:not(.btn-link):active.btn-default,.btn-group-raised .btn:not(.btn-link):focus,.btn-group-raised .btn:not(.btn-link):focus.btn-default,.btn-group-raised .btn:not(.btn-link):hover,.btn-group-raised .btn:not(.btn-link):hover.btn-default,.btn-group-raised .input-group-btn .btn:not(.btn-link).active,.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-default,.btn-group-raised .input-group-btn .btn:not(.btn-link):active,.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-default,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-default,.btn-group-raised .input-group-btn .btn:not(.btn-link):hover,.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-default,.btn.btn-raised:not(.btn-link).active,.btn.btn-raised:not(.btn-link).active.btn-default,.btn.btn-raised:not(.btn-link):active,.btn.btn-raised:not(.btn-link):active.btn-default,.btn.btn-raised:not(.btn-link):focus,.btn.btn-raised:not(.btn-link):focus.btn-default,.btn.btn-raised:not(.btn-link):hover,.btn.btn-raised:not(.btn-link):hover.btn-default,.input-group-btn .btn.btn-raised:not(.btn-link).active,.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-default,.input-group-btn .btn.btn-raised:not(.btn-link):active,.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-default,.input-group-btn .btn.btn-raised:not(.btn-link):focus,.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-default,.input-group-btn .btn.btn-raised:not(.btn-link):hover,.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-default{background-color:#e4e4e4}.btn-group-raised .btn:not(.btn-link).active.btn-inverse,.btn-group-raised .btn:not(.btn-link):active.btn-inverse,.btn-group-raised .btn:not(.btn-link):focus.btn-inverse,.btn-group-raised .btn:not(.btn-link):hover.btn-inverse,.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-inverse,.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-inverse,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-inverse,.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-inverse,.btn.btn-raised:not(.btn-link).active.btn-inverse,.btn.btn-raised:not(.btn-link):active.btn-inverse,.btn.btn-raised:not(.btn-link):focus.btn-inverse,.btn.btn-raised:not(.btn-link):hover.btn-inverse,.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-inverse,.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-inverse,.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-inverse,.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-inverse{background-color:#495bc0}.btn-group-raised .btn:not(.btn-link).active.btn-primary,.btn-group-raised .btn:not(.btn-link):active.btn-primary,.btn-group-raised .btn:not(.btn-link):focus.btn-primary,.btn-group-raised .btn:not(.btn-link):hover.btn-primary,.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-primary,.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-primary,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-primary,.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-primary,.btn.btn-raised:not(.btn-link).active.btn-primary,.btn.btn-raised:not(.btn-link):active.btn-primary,.btn.btn-raised:not(.btn-link):focus.btn-primary,.btn.btn-raised:not(.btn-link):hover.btn-primary,.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-primary,.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-primary,.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-primary,.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-primary{background-color:#0f4fb4}.btn-group-raised .btn:not(.btn-link).active.btn-success,.btn-group-raised .btn:not(.btn-link):active.btn-success,.btn-group-raised .btn:not(.btn-link):focus.btn-success,.btn-group-raised .btn:not(.btn-link):hover.btn-success,.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-success,.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-success,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-success,.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-success,.btn.btn-raised:not(.btn-link).active.btn-success,.btn.btn-raised:not(.btn-link):active.btn-success,.btn.btn-raised:not(.btn-link):focus.btn-success,.btn.btn-raised:not(.btn-link):hover.btn-success,.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-success,.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-success,.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-success,.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-success{background-color:#59b75c}.btn-group-raised .btn:not(.btn-link).active.btn-info,.btn-group-raised .btn:not(.btn-link):active.btn-info,.btn-group-raised .btn:not(.btn-link):focus.btn-info,.btn-group-raised .btn:not(.btn-link):hover.btn-info,.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-info,.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-info,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-info,.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-info,.btn.btn-raised:not(.btn-link).active.btn-info,.btn.btn-raised:not(.btn-link):active.btn-info,.btn.btn-raised:not(.btn-link):focus.btn-info,.btn.btn-raised:not(.btn-link):hover.btn-info,.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-info,.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-info,.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-info,.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-info{background-color:#0fb2fc}.btn-group-raised .btn:not(.btn-link).active.btn-warning,.btn-group-raised .btn:not(.btn-link):active.btn-warning,.btn-group-raised .btn:not(.btn-link):focus.btn-warning,.btn-group-raised .btn:not(.btn-link):hover.btn-warning,.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-warning,.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-warning,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-warning,.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-warning,.btn.btn-raised:not(.btn-link).active.btn-warning,.btn.btn-raised:not(.btn-link):active.btn-warning,.btn.btn-raised:not(.btn-link):focus.btn-warning,.btn.btn-raised:not(.btn-link):hover.btn-warning,.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-warning,.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-warning,.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-warning,.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-warning{background-color:#ff6736}.btn-group-raised .btn:not(.btn-link).active.btn-danger,.btn-group-raised .btn:not(.btn-link):active.btn-danger,.btn-group-raised .btn:not(.btn-link):focus.btn-danger,.btn-group-raised .btn:not(.btn-link):hover.btn-danger,.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-danger,.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-danger,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-danger,.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-danger,.btn.btn-raised:not(.btn-link).active.btn-danger,.btn.btn-raised:not(.btn-link):active.btn-danger,.btn.btn-raised:not(.btn-link):focus.btn-danger,.btn.btn-raised:not(.btn-link):hover.btn-danger,.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-danger,.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-danger,.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-danger,.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-danger{background-color:#f55549}.btn-group-raised .btn:not(.btn-link).active,.btn-group-raised .btn:not(.btn-link).active:hover,.btn-group-raised .btn:not(.btn-link):active,.btn-group-raised .btn:not(.btn-link):active:hover,.btn-group-raised .input-group-btn .btn:not(.btn-link).active,.btn-group-raised .input-group-btn .btn:not(.btn-link).active:hover,.btn-group-raised .input-group-btn .btn:not(.btn-link):active,.btn-group-raised .input-group-btn .btn:not(.btn-link):active:hover,.btn.btn-raised:not(.btn-link).active,.btn.btn-raised:not(.btn-link).active:hover,.btn.btn-raised:not(.btn-link):active,.btn.btn-raised:not(.btn-link):active:hover,.input-group-btn .btn.btn-raised:not(.btn-link).active,.input-group-btn .btn.btn-raised:not(.btn-link).active:hover,.input-group-btn .btn.btn-raised:not(.btn-link):active,.input-group-btn .btn.btn-raised:not(.btn-link):active:hover{-webkit-box-shadow:0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.2);box-shadow:0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.2)}.btn-group-raised .btn:not(.btn-link):focus,.btn-group-raised .btn:not(.btn-link):focus.active,.btn-group-raised .btn:not(.btn-link):focus.active:hover,.btn-group-raised .btn:not(.btn-link):focus:active,.btn-group-raised .btn:not(.btn-link):focus:active:hover,.btn-group-raised .btn:not(.btn-link):focus:hover,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.active,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.active:hover,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus:active,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus:active:hover,.btn-group-raised .input-group-btn .btn:not(.btn-link):focus:hover,.btn.btn-raised:not(.btn-link):focus,.btn.btn-raised:not(.btn-link):focus.active,.btn.btn-raised:not(.btn-link):focus.active:hover,.btn.btn-raised:not(.btn-link):focus:active,.btn.btn-raised:not(.btn-link):focus:active:hover,.btn.btn-raised:not(.btn-link):focus:hover,.input-group-btn .btn.btn-raised:not(.btn-link):focus,.input-group-btn .btn.btn-raised:not(.btn-link):focus.active,.input-group-btn .btn.btn-raised:not(.btn-link):focus.active:hover,.input-group-btn .btn.btn-raised:not(.btn-link):focus:active,.input-group-btn .btn.btn-raised:not(.btn-link):focus:active:hover,.input-group-btn .btn.btn-raised:not(.btn-link):focus:hover{-webkit-box-shadow:0 0 8px rgba(0,0,0,.18),0 8px 16px rgba(0,0,0,.36);box-shadow:0 0 8px rgba(0,0,0,.18),0 8px 16px rgba(0,0,0,.36)}.btn.btn-fab,.input-group-btn .btn.btn-fab{border-radius:50%;font-size:24px;height:56px;margin:auto;min-width:56px;width:56px;padding:0;overflow:hidden;-webkit-box-shadow:0 1px 1.5px 0 rgba(0,0,0,.12),0 1px 1px 0 rgba(0,0,0,.24);box-shadow:0 1px 1.5px 0 rgba(0,0,0,.12),0 1px 1px 0 rgba(0,0,0,.24);position:relative;line-height:normal}.btn.btn-fab .ripple-container,.input-group-btn .btn.btn-fab .ripple-container{border-radius:50%}.btn-group-sm .btn.btn-fab,.btn-group-sm .input-group-btn .btn.btn-fab,.btn.btn-fab.btn-fab-mini,.input-group-btn .btn.btn-fab.btn-fab-mini{height:40px;min-width:40px;width:40px}.btn-group-sm .btn.btn-fab.material-icons,.btn-group-sm .input-group-btn .btn.btn-fab.material-icons,.btn.btn-fab.btn-fab-mini.material-icons,.input-group-btn .btn.btn-fab.btn-fab-mini.material-icons{top:0;left:0}.btn.btn-fab i.material-icons,.input-group-btn .btn.btn-fab i.material-icons{position:absolute;top:50%;left:50%;-webkit-transform:translate(-12px,-12px);-ms-transform:translate(-12px,-12px);-o-transform:translate(-12px,-12px);transform:translate(-12px,-12px);line-height:24px;width:24px}.btn i.material-icons,.input-group-btn .btn i.material-icons{vertical-align:middle}.btn-group-lg .btn,.btn-group-lg .input-group-btn .btn,.btn.btn-lg,.input-group-btn .btn.btn-lg{font-size:16px}.btn-group-sm .btn,.btn-group-sm .input-group-btn .btn,.btn.btn-sm,.input-group-btn .btn.btn-sm{padding:5px 20px;font-size:12px}.btn-group-xs .btn,.btn-group-xs .input-group-btn .btn,.btn.btn-xs,.input-group-btn .btn.btn-xs{padding:4px 15px;font-size:10px}.btn-group-vertical.disabled,.btn-group-vertical:disabled,.btn-group-vertical[disabled][disabled],.btn-group.disabled,.btn-group:disabled,.btn-group[disabled][disabled],.btn.disabled,.btn:disabled,.btn[disabled][disabled],.input-group-btn .btn.disabled,.input-group-btn .btn:disabled,.input-group-btn .btn[disabled][disabled],fieldset[disabled][disabled] .btn,fieldset[disabled][disabled] .btn-group,fieldset[disabled][disabled] .btn-group-vertical,fieldset[disabled][disabled] .input-group-btn .btn{color:rgba(0,0,0,.26);background:0 0}.theme-dark .btn-group-vertical.disabled,.theme-dark .btn-group-vertical:disabled,.theme-dark .btn-group-vertical[disabled][disabled],.theme-dark .btn-group.disabled,.theme-dark .btn-group:disabled,.theme-dark .btn-group[disabled][disabled],.theme-dark .btn.disabled,.theme-dark .btn:disabled,.theme-dark .btn[disabled][disabled],.theme-dark .input-group-btn .btn.disabled,.theme-dark .input-group-btn .btn:disabled,.theme-dark .input-group-btn .btn[disabled][disabled],.theme-dark fieldset[disabled][disabled] .btn,.theme-dark fieldset[disabled][disabled] .btn-group,.theme-dark fieldset[disabled][disabled] .btn-group-vertical,.theme-dark fieldset[disabled][disabled] .input-group-btn .btn{color:rgba(255,255,255,.3)}.btn-group-vertical.disabled.btn-group-raised,.btn-group-vertical.disabled.btn-group-raised.active,.btn-group-vertical.disabled.btn-group-raised:active,.btn-group-vertical.disabled.btn-group-raised:focus:not(:active),.btn-group-vertical.disabled.btn-raised,.btn-group-vertical.disabled.btn-raised.active,.btn-group-vertical.disabled.btn-raised:active,.btn-group-vertical.disabled.btn-raised:focus:not(:active),.btn-group-vertical:disabled.btn-group-raised,.btn-group-vertical:disabled.btn-group-raised.active,.btn-group-vertical:disabled.btn-group-raised:active,.btn-group-vertical:disabled.btn-group-raised:focus:not(:active),.btn-group-vertical:disabled.btn-raised,.btn-group-vertical:disabled.btn-raised.active,.btn-group-vertical:disabled.btn-raised:active,.btn-group-vertical:disabled.btn-raised:focus:not(:active),.btn-group-vertical[disabled][disabled].btn-group-raised,.btn-group-vertical[disabled][disabled].btn-group-raised.active,.btn-group-vertical[disabled][disabled].btn-group-raised:active,.btn-group-vertical[disabled][disabled].btn-group-raised:focus:not(:active),.btn-group-vertical[disabled][disabled].btn-raised,.btn-group-vertical[disabled][disabled].btn-raised.active,.btn-group-vertical[disabled][disabled].btn-raised:active,.btn-group-vertical[disabled][disabled].btn-raised:focus:not(:active),.btn-group.disabled.btn-group-raised,.btn-group.disabled.btn-group-raised.active,.btn-group.disabled.btn-group-raised:active,.btn-group.disabled.btn-group-raised:focus:not(:active),.btn-group.disabled.btn-raised,.btn-group.disabled.btn-raised.active,.btn-group.disabled.btn-raised:active,.btn-group.disabled.btn-raised:focus:not(:active),.btn-group:disabled.btn-group-raised,.btn-group:disabled.btn-group-raised.active,.btn-group:disabled.btn-group-raised:active,.btn-group:disabled.btn-group-raised:focus:not(:active),.btn-group:disabled.btn-raised,.btn-group:disabled.btn-raised.active,.btn-group:disabled.btn-raised:active,.btn-group:disabled.btn-raised:focus:not(:active),.btn-group[disabled][disabled].btn-group-raised,.btn-group[disabled][disabled].btn-group-raised.active,.btn-group[disabled][disabled].btn-group-raised:active,.btn-group[disabled][disabled].btn-group-raised:focus:not(:active),.btn-group[disabled][disabled].btn-raised,.btn-group[disabled][disabled].btn-raised.active,.btn-group[disabled][disabled].btn-raised:active,.btn-group[disabled][disabled].btn-raised:focus:not(:active),.btn.disabled.btn-group-raised,.btn.disabled.btn-group-raised.active,.btn.disabled.btn-group-raised:active,.btn.disabled.btn-group-raised:focus:not(:active),.btn.disabled.btn-raised,.btn.disabled.btn-raised.active,.btn.disabled.btn-raised:active,.btn.disabled.btn-raised:focus:not(:active),.btn:disabled.btn-group-raised,.btn:disabled.btn-group-raised.active,.btn:disabled.btn-group-raised:active,.btn:disabled.btn-group-raised:focus:not(:active),.btn:disabled.btn-raised,.btn:disabled.btn-raised.active,.btn:disabled.btn-raised:active,.btn:disabled.btn-raised:focus:not(:active),.btn[disabled][disabled].btn-group-raised,.btn[disabled][disabled].btn-group-raised.active,.btn[disabled][disabled].btn-group-raised:active,.btn[disabled][disabled].btn-group-raised:focus:not(:active),.btn[disabled][disabled].btn-raised,.btn[disabled][disabled].btn-raised.active,.btn[disabled][disabled].btn-raised:active,.btn[disabled][disabled].btn-raised:focus:not(:active),.input-group-btn .btn.disabled.btn-group-raised,.input-group-btn .btn.disabled.btn-group-raised.active,.input-group-btn .btn.disabled.btn-group-raised:active,.input-group-btn .btn.disabled.btn-group-raised:focus:not(:active),.input-group-btn .btn.disabled.btn-raised,.input-group-btn .btn.disabled.btn-raised.active,.input-group-btn .btn.disabled.btn-raised:active,.input-group-btn .btn.disabled.btn-raised:focus:not(:active),.input-group-btn .btn:disabled.btn-group-raised,.input-group-btn .btn:disabled.btn-group-raised.active,.input-group-btn .btn:disabled.btn-group-raised:active,.input-group-btn .btn:disabled.btn-group-raised:focus:not(:active),.input-group-btn .btn:disabled.btn-raised,.input-group-btn .btn:disabled.btn-raised.active,.input-group-btn .btn:disabled.btn-raised:active,.input-group-btn .btn:disabled.btn-raised:focus:not(:active),.input-group-btn .btn[disabled][disabled].btn-group-raised,.input-group-btn .btn[disabled][disabled].btn-group-raised.active,.input-group-btn .btn[disabled][disabled].btn-group-raised:active,.input-group-btn .btn[disabled][disabled].btn-group-raised:focus:not(:active),.input-group-btn .btn[disabled][disabled].btn-raised,.input-group-btn .btn[disabled][disabled].btn-raised.active,.input-group-btn .btn[disabled][disabled].btn-raised:active,.input-group-btn .btn[disabled][disabled].btn-raised:focus:not(:active),fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised,fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised.active,fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised:active,fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised:focus:not(:active),fieldset[disabled][disabled] .btn-group-vertical.btn-raised,fieldset[disabled][disabled] .btn-group-vertical.btn-raised.active,fieldset[disabled][disabled] .btn-group-vertical.btn-raised:active,fieldset[disabled][disabled] .btn-group-vertical.btn-raised:focus:not(:active),fieldset[disabled][disabled] .btn-group.btn-group-raised,fieldset[disabled][disabled] .btn-group.btn-group-raised.active,fieldset[disabled][disabled] .btn-group.btn-group-raised:active,fieldset[disabled][disabled] .btn-group.btn-group-raised:focus:not(:active),fieldset[disabled][disabled] .btn-group.btn-raised,fieldset[disabled][disabled] .btn-group.btn-raised.active,fieldset[disabled][disabled] .btn-group.btn-raised:active,fieldset[disabled][disabled] .btn-group.btn-raised:focus:not(:active),fieldset[disabled][disabled] .btn.btn-group-raised,fieldset[disabled][disabled] .btn.btn-group-raised.active,fieldset[disabled][disabled] .btn.btn-group-raised:active,fieldset[disabled][disabled] .btn.btn-group-raised:focus:not(:active),fieldset[disabled][disabled] .btn.btn-raised,fieldset[disabled][disabled] .btn.btn-raised.active,fieldset[disabled][disabled] .btn.btn-raised:active,fieldset[disabled][disabled] .btn.btn-raised:focus:not(:active),fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised,fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised.active,fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised:active,fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised:focus:not(:active),fieldset[disabled][disabled] .input-group-btn .btn.btn-raised,fieldset[disabled][disabled] .input-group-btn .btn.btn-raised.active,fieldset[disabled][disabled] .input-group-btn .btn.btn-raised:active,fieldset[disabled][disabled] .input-group-btn .btn.btn-raised:focus:not(:active){-webkit-box-shadow:none;box-shadow:none}.btn-group,.btn-group-vertical{position:relative;margin:10px 1px}.btn-group-vertical.open>.dropdown-toggle.btn,.btn-group-vertical.open>.dropdown-toggle.btn.btn-default,.btn-group.open>.dropdown-toggle.btn,.btn-group.open>.dropdown-toggle.btn.btn-default{background-color:#EEE}.btn-group-vertical.open>.dropdown-toggle.btn.btn-inverse,.btn-group.open>.dropdown-toggle.btn.btn-inverse{background-color:#3f51b5}.btn-group-vertical.open>.dropdown-toggle.btn.btn-primary,.btn-group.open>.dropdown-toggle.btn.btn-primary{background-color:#0d47a1}.btn-group-vertical.open>.dropdown-toggle.btn.btn-success,.btn-group.open>.dropdown-toggle.btn.btn-success{background-color:#4caf50}.btn-group-vertical.open>.dropdown-toggle.btn.btn-info,.btn-group.open>.dropdown-toggle.btn.btn-info{background-color:#03a9f4}.btn-group-vertical.open>.dropdown-toggle.btn.btn-warning,.btn-group.open>.dropdown-toggle.btn.btn-warning{background-color:#ff5722}.btn-group-vertical.open>.dropdown-toggle.btn.btn-danger,.btn-group.open>.dropdown-toggle.btn.btn-danger{background-color:#f44336}.btn-group .dropdown-menu,.btn-group-vertical .dropdown-menu{border-radius:0 0 2px 2px}.btn-group-vertical.btn-group-raised,.btn-group.btn-group-raised{-webkit-box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12)}.btn-group .btn,.btn-group .btn+.btn,.btn-group .btn-group,.btn-group .btn:active,.btn-group-vertical .btn,.btn-group-vertical .btn+.btn,.btn-group-vertical .btn-group,.btn-group-vertical .btn:active{margin:0}.checkbox label{cursor:pointer;padding-left:0;color:rgba(0,0,0,.26)}.form-group.is-focused .checkbox label{color:rgba(0,0,0,.26)}.form-group.is-focused .checkbox label:focus,.form-group.is-focused .checkbox label:hover{color:rgba(0,0,0,.54)}fieldset[disabled] .form-group.is-focused .checkbox label{color:rgba(0,0,0,.26)}.checkbox input[type=checkbox]{opacity:0;position:absolute;margin:0;z-index:-1;width:0;height:0;overflow:hidden;left:0;pointer-events:none}.checkbox .checkbox-material{vertical-align:middle;position:relative;top:3px}.checkbox .checkbox-material:before{display:block;position:absolute;left:0;content:"";background-color:rgba(0,0,0,.84);height:20px;width:20px;border-radius:100%;z-index:1;opacity:0;margin:0;-webkit-transform:scale3d(2.3,2.3,1);transform:scale3d(2.3,2.3,1)}.checkbox .checkbox-material .check{position:relative;display:inline-block;width:20px;height:20px;border:2px solid rgba(0,0,0,.54);border-radius:2px;overflow:hidden;z-index:1}.checkbox .checkbox-material .check:before{position:absolute;content:"";-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);display:block;margin-top:-4px;margin-left:6px;width:0;height:0;-webkit-box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0 inset;box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0 inset;-webkit-animation:checkbox-off;-o-animation:checkbox-off;animation:checkbox-off}.checkbox input[type=checkbox]:focus+.checkbox-material .check:after{opacity:.2}.checkbox input[type=checkbox]:checked+.checkbox-material .check{color:#0d47a1;border-color:#0d47a1}.checkbox input[type=checkbox]:checked+.checkbox-material .check:before{color:#0d47a1;-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px;-webkit-animation:checkbox-on .3s forwards;-o-animation:checkbox-on .3s forwards;animation:checkbox-on .3s forwards}.checkbox input[type=checkbox]:checked+.checkbox-material:before{-webkit-animation:rippleOn;-o-animation:rippleOn;animation:rippleOn}.checkbox input[type=checkbox]:checked+.checkbox-material .check:after{-webkit-animation:rippleOn .5s forwards;-o-animation:rippleOn .5s forwards;animation:rippleOn .5s forwards}.checkbox input[type=checkbox]:not(:checked)+.checkbox-material:before{-webkit-animation:rippleOff;-o-animation:rippleOff;animation:rippleOff}.checkbox input[type=checkbox]:not(:checked)+.checkbox-material .check:after{-webkit-animation:rippleOff .5s forwards;-o-animation:rippleOff .5s forwards;animation:rippleOff .5s forwards}.checkbox input[type=checkbox][disabled]+.circle,.checkbox input[type=checkbox][disabled]:not(:checked)~.checkbox-material .check,.checkbox input[type=checkbox][disabled]:not(:checked)~.checkbox-material .check:before,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox input[type=checkbox]{opacity:.5}.checkbox input[type=checkbox][disabled]+.checkbox-material .check:after{background-color:rgba(0,0,0,.87);-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.is-focused .checkbox .checkbox-material .check:before{-webkit-animation:checkbox-off .3s forwards;-o-animation:checkbox-off .3s forwards;animation:checkbox-off .3s forwards}.is-focused .checkbox input[type=checkbox]:checked+.checkbox-material:before{-webkit-animation:rippleOn .5s;-o-animation:rippleOn .5s;animation:rippleOn .5s}.is-focused .checkbox input[type=checkbox]:not(:checked)+.checkbox-material:before{-webkit-animation:rippleOff .5s;-o-animation:rippleOff .5s;animation:rippleOff .5s}@-webkit-keyframes checkbox-on{0%{-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,15px 2px 0 11px;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,15px 2px 0 11px}50%{-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px 2px 0 11px;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px 2px 0 11px}100%{-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px}}@-o-keyframes checkbox-on{0%{box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,15px 2px 0 11px}50%{box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px 2px 0 11px}100%{box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px}}@keyframes checkbox-on{0%{-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,15px 2px 0 11px;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,15px 2px 0 11px}50%{-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px 2px 0 11px;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px 2px 0 11px}100%{-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px}}@-webkit-keyframes checkbox-off{0%{-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px,0 0 0 0 inset;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px,0 0 0 0 inset}25%{-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px,0 0 0 0 inset;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px,0 0 0 0 inset}50%{-webkit-transform:rotate(45deg);transform:rotate(45deg);margin-top:-4px;margin-left:6px;width:0;height:0;-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,15px 2px 0 11px,0 0 0 0 inset;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,15px 2px 0 11px,0 0 0 0 inset}51%{-webkit-transform:rotate(0);transform:rotate(0);margin-top:-2px;margin-left:-2px;width:20px;height:20px;-webkit-box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 10px inset;box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 10px inset}100%{-webkit-transform:rotate(0);transform:rotate(0);margin-top:-2px;margin-left:-2px;width:20px;height:20px;-webkit-box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0 inset;box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0 inset}}@-o-keyframes checkbox-off{0%{box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px,0 0 0 0 inset}25%{box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px,0 0 0 0 inset}50%{-o-transform:rotate(45deg);transform:rotate(45deg);margin-top:-4px;margin-left:6px;width:0;height:0;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,15px 2px 0 11px,0 0 0 0 inset}51%{-o-transform:rotate(0);transform:rotate(0);margin-top:-2px;margin-left:-2px;width:20px;height:20px;box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 10px inset}100%{-o-transform:rotate(0);transform:rotate(0);margin-top:-2px;margin-left:-2px;width:20px;height:20px;box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0 inset}}@keyframes checkbox-off{0%{-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px,0 0 0 0 inset;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px,0 0 0 0 inset}25%{-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px,0 0 0 0 inset;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,20px -12px 0 11px,0 0 0 0 inset}50%{-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);margin-top:-4px;margin-left:6px;width:0;height:0;-webkit-box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,15px 2px 0 11px,0 0 0 0 inset;box-shadow:0 0 0 10px,10px -10px 0 10px,32px 0 0 20px,0 32px 0 20px,-5px 5px 0 10px,15px 2px 0 11px,0 0 0 0 inset}51%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0);margin-top:-2px;margin-left:-2px;width:20px;height:20px;-webkit-box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 10px inset;box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 10px inset}100%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0);margin-top:-2px;margin-left:-2px;width:20px;height:20px;-webkit-box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0 inset;box-shadow:0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0,0 0 0 0 inset}}@-webkit-keyframes rippleOn{0%{opacity:0}50%{opacity:.2}100%{opacity:0}}@-o-keyframes rippleOn{0%{opacity:0}50%{opacity:.2}100%{opacity:0}}@keyframes rippleOn{0%{opacity:0}50%{opacity:.2}100%{opacity:0}}@-webkit-keyframes rippleOff{0%{opacity:0}50%{opacity:.2}100%{opacity:0}}@-o-keyframes rippleOff{0%{opacity:0}50%{opacity:.2}100%{opacity:0}}@keyframes rippleOff{0%{opacity:0}50%{opacity:.2}100%{opacity:0}}.togglebutton{vertical-align:middle}.togglebutton,.togglebutton .toggle,.togglebutton input,.togglebutton label{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.togglebutton label{cursor:pointer;color:rgba(0,0,0,.26)}.form-group.is-focused .togglebutton label{color:rgba(0,0,0,.26)}.form-group.is-focused .togglebutton label:focus,.form-group.is-focused .togglebutton label:hover{color:rgba(0,0,0,.54)}fieldset[disabled] .form-group.is-focused .togglebutton label{color:rgba(0,0,0,.26)}.togglebutton label input[type=checkbox]{opacity:0;width:0;height:0}.togglebutton label .toggle{text-align:left}.togglebutton label .toggle,.togglebutton label input[type=checkbox][disabled]+.toggle{content:"";display:inline-block;width:30px;height:15px;background-color:rgba(80,80,80,.7);border-radius:15px;margin-right:15px;-webkit-transition:background .3s ease;-o-transition:background .3s ease;transition:background .3s ease;vertical-align:middle}.togglebutton label .toggle:after{content:"";display:inline-block;width:20px;height:20px;background-color:#F1F1F1;border-radius:20px;position:relative;-webkit-box-shadow:0 1px 3px 1px rgba(0,0,0,.4);box-shadow:0 1px 3px 1px rgba(0,0,0,.4);left:-5px;top:-2px;-webkit-transition:left .3s ease,background .3s ease,-webkit-box-shadow .1s ease;-o-transition:left .3s ease,background .3s ease,box-shadow .1s ease;transition:left .3s ease,background .3s ease,box-shadow .1s ease}.togglebutton label input[type=checkbox][disabled]+.toggle:after,.togglebutton label input[type=checkbox][disabled]:checked+.toggle:after{background-color:#BDBDBD}.togglebutton label input[type=checkbox]+.toggle:active:after,.togglebutton label input[type=checkbox][disabled]+.toggle:active:after{-webkit-box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(0,0,0,.1);box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(0,0,0,.1)}.togglebutton label input[type=checkbox]:checked+.toggle:after{left:15px}.togglebutton label input[type=checkbox]:checked+.toggle{background-color:rgba(13,71,161,.5)}.togglebutton label input[type=checkbox]:checked+.toggle:after{background-color:#0d47a1}.togglebutton label input[type=checkbox]:checked+.toggle:active:after{-webkit-box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(13,71,161,.1);box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(13,71,161,.1)}.radio label{cursor:pointer;padding-left:45px;position:relative;color:rgba(0,0,0,.26)}.form-group.is-focused .radio label{color:rgba(0,0,0,.26)}.form-group.is-focused .radio label:focus,.form-group.is-focused .radio label:hover{color:rgba(0,0,0,.54)}fieldset[disabled] .form-group.is-focused .radio label{color:rgba(0,0,0,.26)}.radio label span{display:block;position:absolute;left:10px;top:2px;-webkit-transition-duration:.2s;-o-transition-duration:.2s;transition-duration:.2s}.radio label .circle{border:2px solid rgba(0,0,0,.54);height:15px;width:15px;border-radius:100%}.radio label .check{height:15px;width:15px;border-radius:100%;background-color:#0d47a1;-webkit-transform:scale3d(0,0,0);transform:scale3d(0,0,0)}.radio label .check:after{display:block;position:absolute;content:"";background-color:rgba(0,0,0,.87);left:-18px;top:-18px;height:50px;width:50px;border-radius:100%;z-index:1;opacity:0;margin:0;-webkit-transform:scale3d(1.5,1.5,1);transform:scale3d(1.5,1.5,1)}.radio label input[type=radio]:not(:checked)~.check:after{-webkit-animation:rippleOff .5s;-o-animation:rippleOff .5s;animation:rippleOff .5s}.radio label input[type=radio]:checked~.check:after{-webkit-animation:rippleOn;-o-animation:rippleOn;animation:rippleOn}.radio input[type=radio]{opacity:0;height:0;width:0;overflow:hidden}.radio input[type=radio]:checked~.check,.radio input[type=radio]:checked~.circle{opacity:1}.radio input[type=radio]:checked~.check{background-color:#0d47a1}.radio input[type=radio]:checked~.circle{border-color:#0d47a1}.radio input[type=radio]:checked~.check{-webkit-transform:scale3d(.55,.55,1);transform:scale3d(.55,.55,1)}.radio input[type=radio][disabled]~.check,.radio input[type=radio][disabled]~.circle{opacity:.26}.radio input[type=radio][disabled]~.check{background-color:#000}.radio input[type=radio][disabled]~.circle{border-color:#000}.theme-dark .radio input[type=radio][disabled]~.check,.theme-dark .radio input[type=radio][disabled]~.circle{opacity:.3}.theme-dark .radio input[type=radio][disabled]~.check{background-color:#fff}.theme-dark .radio input[type=radio][disabled]~.circle{border-color:#fff}.is-focused .radio input[type=radio]:checked~.check:after{-webkit-animation:rippleOn .5s;-o-animation:rippleOn .5s;animation:rippleOn .5s}@keyframes rippleOn{0%{opacity:0}50%{opacity:.2}100%{opacity:0}}@keyframes rippleOff{0%{opacity:0}50%{opacity:.2}100%{opacity:0}}legend{margin-bottom:22px;font-size:24px}output{padding-top:8px;font-size:16px;line-height:1.42857143}.form-control{height:38px;padding:7px 0;font-size:16px;line-height:1.42857143}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=time].form-control,input[type=datetime-local].form-control,input[type=month].form-control{line-height:38px}.input-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:24px}.input-group-lg input[type=date],.input-group-lg input[type=time],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:44px}}.checkbox label,.radio label{min-height:22px}.form-control-static{padding-top:8px;padding-bottom:8px;min-height:38px}.input-sm .input-sm{height:24px;padding:3px 0;font-size:11px;line-height:1.5;border-radius:0}.input-sm select.input-sm{height:24px;line-height:24px}.input-sm select[multiple].input-sm,.input-sm textarea.input-sm{height:auto}.form-group-sm .form-control{height:24px;padding:3px 0;font-size:11px;line-height:1.5}.form-group-sm select.form-control{height:24px;line-height:24px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:24px;min-height:33px;padding:4px 0;font-size:11px;line-height:1.5}.input-lg .input-lg{height:44px;padding:9px 0;font-size:18px;line-height:1.3333333;border-radius:0}.input-lg select.input-lg{height:44px;line-height:44px}.input-lg select[multiple].input-lg,.input-lg textarea.input-lg{height:auto}.form-group-lg .form-control{height:44px;padding:9px 0;font-size:18px;line-height:1.3333333}.form-group-lg select.form-control{height:44px;line-height:44px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:44px;min-height:40px;padding:10px 0;font-size:18px;line-height:1.3333333}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:8px}.form-horizontal .checkbox,.form-horizontal .radio{min-height:30px}@media (min-width:768px){.form-horizontal .control-label{padding-top:8px}}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:13px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:4px;font-size:11px}}.label{border-radius:1px;padding:.3em .6em}.label,.label.label-default{background-color:#9e9e9e}.label.label-inverse{background-color:#3f51b5}.label.label-primary{background-color:#0d47a1}.label.label-success{background-color:#4caf50}.label.label-info{background-color:#03a9f4}.label.label-warning{background-color:#ff5722}.label.label-danger{background-color:#f44336}.form-control,.form-group .form-control{border:0;background-image:-webkit-gradient(linear,left top,left bottom,from(#0d47a1),to(#0d47a1)),-webkit-gradient(linear,left top,left bottom,from(#D2D2D2),to(#D2D2D2));background-image:-webkit-linear-gradient(#0d47a1,#0d47a1),-webkit-linear-gradient(#D2D2D2,#D2D2D2);background-image:-o-linear-gradient(#0d47a1,#0d47a1),-o-linear-gradient(#D2D2D2,#D2D2D2);background-image:linear-gradient(#0d47a1,#0d47a1),linear-gradient(#D2D2D2,#D2D2D2);-webkit-background-size:0 2px,100% 1px;background-size:0 2px,100% 1px;background-repeat:no-repeat;background-position:center bottom,center -webkit-calc(100% - 1px);background-position:center bottom,center calc(100% - 1px);background-color:rgba(0,0,0,0);-webkit-transition:background 0s ease-out;-o-transition:background 0s ease-out;transition:background 0s ease-out;float:none;-webkit-box-shadow:none;box-shadow:none;border-radius:0}.form-control::-moz-placeholder,.form-group .form-control::-moz-placeholder{color:#BDBDBD;font-weight:400}.form-control:-ms-input-placeholder,.form-group .form-control:-ms-input-placeholder{color:#BDBDBD;font-weight:400}.form-control::-webkit-input-placeholder,.form-group .form-control::-webkit-input-placeholder{color:#BDBDBD;font-weight:400}.form-control[disabled],.form-control[readonly],.form-group .form-control[disabled],.form-group .form-control[readonly],fieldset[disabled] .form-control,fieldset[disabled] .form-group .form-control{background-color:rgba(0,0,0,0)}.form-control[disabled],.form-group .form-control[disabled],fieldset[disabled] .form-control,fieldset[disabled] .form-group .form-control{background-image:none;border-bottom:1px dotted #D2D2D2}.form-group{position:relative}.form-group.label-floating label.control-label,.form-group.label-placeholder label.control-label,.form-group.label-static label.control-label{position:absolute;pointer-events:none;-webkit-transition:.3s ease all;-o-transition:.3s ease all;transition:.3s ease all}.form-group.label-floating label.control-label{will-change:left,top,contents}.form-group.label-placeholder:not(.is-empty) label.control-label{display:none}.form-group .help-block{position:absolute;display:none}.form-group.is-focused .form-control{outline:0;background-image:-webkit-gradient(linear,left top,left bottom,from(#0d47a1),to(#0d47a1)),-webkit-gradient(linear,left top,left bottom,from(#D2D2D2),to(#D2D2D2));background-image:-webkit-linear-gradient(#0d47a1,#0d47a1),-webkit-linear-gradient(#D2D2D2,#D2D2D2);background-image:-o-linear-gradient(#0d47a1,#0d47a1),-o-linear-gradient(#D2D2D2,#D2D2D2);background-image:linear-gradient(#0d47a1,#0d47a1),linear-gradient(#D2D2D2,#D2D2D2);-webkit-background-size:100% 2px,100% 1px;background-size:100% 2px,100% 1px;-webkit-box-shadow:none;box-shadow:none;-webkit-transition-duration:.3s;-o-transition-duration:.3s;transition-duration:.3s}.form-group.is-focused .form-control .material-input:after{background-color:#0d47a1}.form-group.is-focused label,.form-group.is-focused label.control-label{color:#0d47a1}.form-group.is-focused.label-placeholder label,.form-group.is-focused.label-placeholder label.control-label{color:#BDBDBD}.form-group.is-focused .help-block{display:block}.form-group.has-warning .form-control{-webkit-box-shadow:none;box-shadow:none}.form-group.has-warning.is-focused .form-control{background-image:-webkit-gradient(linear,left top,left bottom,from(#ff5722),to(#ff5722)),-webkit-gradient(linear,left top,left bottom,from(#D2D2D2),to(#D2D2D2));background-image:-webkit-linear-gradient(#ff5722,#ff5722),-webkit-linear-gradient(#D2D2D2,#D2D2D2);background-image:-o-linear-gradient(#ff5722,#ff5722),-o-linear-gradient(#D2D2D2,#D2D2D2);background-image:linear-gradient(#ff5722,#ff5722),linear-gradient(#D2D2D2,#D2D2D2)}.form-group.has-warning .help-block,.form-group.has-warning label.control-label{color:#ff5722}.form-group.has-error .form-control{-webkit-box-shadow:none;box-shadow:none}.form-group.has-error.is-focused .form-control{background-image:-webkit-gradient(linear,left top,left bottom,from(#f44336),to(#f44336)),-webkit-gradient(linear,left top,left bottom,from(#D2D2D2),to(#D2D2D2));background-image:-webkit-linear-gradient(#f44336,#f44336),-webkit-linear-gradient(#D2D2D2,#D2D2D2);background-image:-o-linear-gradient(#f44336,#f44336),-o-linear-gradient(#D2D2D2,#D2D2D2);background-image:linear-gradient(#f44336,#f44336),linear-gradient(#D2D2D2,#D2D2D2)}.form-group.has-error .help-block,.form-group.has-error label.control-label{color:#f44336}.form-group.has-success .form-control{-webkit-box-shadow:none;box-shadow:none}.form-group.has-success.is-focused .form-control{background-image:-webkit-gradient(linear,left top,left bottom,from(#4caf50),to(#4caf50)),-webkit-gradient(linear,left top,left bottom,from(#D2D2D2),to(#D2D2D2));background-image:-webkit-linear-gradient(#4caf50,#4caf50),-webkit-linear-gradient(#D2D2D2,#D2D2D2);background-image:-o-linear-gradient(#4caf50,#4caf50),-o-linear-gradient(#D2D2D2,#D2D2D2);background-image:linear-gradient(#4caf50,#4caf50),linear-gradient(#D2D2D2,#D2D2D2)}.form-group.has-success .help-block,.form-group.has-success label.control-label{color:#4caf50}.form-group.has-info .form-control{-webkit-box-shadow:none;box-shadow:none}.form-group.has-info.is-focused .form-control{background-image:-webkit-gradient(linear,left top,left bottom,from(#03a9f4),to(#03a9f4)),-webkit-gradient(linear,left top,left bottom,from(#D2D2D2),to(#D2D2D2));background-image:-webkit-linear-gradient(#03a9f4,#03a9f4),-webkit-linear-gradient(#D2D2D2,#D2D2D2);background-image:-o-linear-gradient(#03a9f4,#03a9f4),-o-linear-gradient(#D2D2D2,#D2D2D2);background-image:linear-gradient(#03a9f4,#03a9f4),linear-gradient(#D2D2D2,#D2D2D2)}.form-group.has-info .help-block,.form-group.has-info label.control-label{color:#03a9f4}.form-group textarea{resize:none}.form-group textarea~.form-control-highlight{margin-top:-11px}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-group select~.material-input:after{display:none}.form-control{margin-bottom:7px}.form-control::-moz-placeholder{font-size:16px;line-height:1.42857143;color:#BDBDBD;font-weight:400}.form-control:-ms-input-placeholder{font-size:16px;line-height:1.42857143;color:#BDBDBD;font-weight:400}.form-control::-webkit-input-placeholder{font-size:16px;line-height:1.42857143;color:#BDBDBD;font-weight:400}.checkbox label,.radio label,label{font-size:16px;line-height:1.42857143;color:#BDBDBD;font-weight:400}label.control-label{font-size:12px;line-height:1.07142857;font-weight:400;margin:16px 0 0 0}.help-block{margin-top:0;font-size:12px}.form-group{padding-bottom:7px;margin:28px 0 0 0}.form-group .form-control{margin-bottom:7px}.form-group .form-control::-moz-placeholder{font-size:16px;line-height:1.42857143;color:#BDBDBD;font-weight:400}.form-group .form-control:-ms-input-placeholder{font-size:16px;line-height:1.42857143;color:#BDBDBD;font-weight:400}.form-group .form-control::-webkit-input-placeholder{font-size:16px;line-height:1.42857143;color:#BDBDBD;font-weight:400}.form-group .checkbox label,.form-group .radio label,.form-group label{font-size:16px;line-height:1.42857143;color:#BDBDBD;font-weight:400}.form-group label.control-label{font-size:12px;line-height:1.07142857;font-weight:400;margin:16px 0 0 0}.form-group .help-block{margin-top:0;font-size:12px}.form-group.label-floating label.control-label,.form-group.label-placeholder label.control-label{top:-7px;font-size:16px;line-height:1.42857143}.form-group.label-floating.is-focused label.control-label,.form-group.label-floating:not(.is-empty) label.control-label,.form-group.label-static label.control-label{top:-30px;left:0;font-size:12px;line-height:1.07142857}.form-group.label-floating input.form-control:-webkit-autofill~label.control-label label.control-label{top:-30px;left:0;font-size:12px;line-height:1.07142857}.form-group.form-group-sm{padding-bottom:3px;margin:21px 0 0 0}.form-group.form-group-sm .form-control{margin-bottom:3px}.form-group.form-group-sm .form-control::-moz-placeholder{font-size:11px;line-height:1.5;color:#BDBDBD;font-weight:400}.form-group.form-group-sm .form-control:-ms-input-placeholder{font-size:11px;line-height:1.5;color:#BDBDBD;font-weight:400}.form-group.form-group-sm .form-control::-webkit-input-placeholder{font-size:11px;line-height:1.5;color:#BDBDBD;font-weight:400}.form-group.form-group-sm .checkbox label,.form-group.form-group-sm .radio label,.form-group.form-group-sm label{font-size:11px;line-height:1.5;color:#BDBDBD;font-weight:400}.form-group.form-group-sm label.control-label{font-size:9px;line-height:1.125;font-weight:400;margin:16px 0 0 0}.form-group.form-group-sm .help-block{margin-top:0;font-size:9px}.form-group.form-group-sm.label-floating label.control-label,.form-group.form-group-sm.label-placeholder label.control-label{top:-11px;font-size:11px;line-height:1.5}.form-group.form-group-sm.label-floating.is-focused label.control-label,.form-group.form-group-sm.label-floating:not(.is-empty) label.control-label,.form-group.form-group-sm.label-static label.control-label{top:-25px;left:0;font-size:9px;line-height:1.125}.form-group.form-group-sm.label-floating input.form-control:-webkit-autofill~label.control-label label.control-label{top:-25px;left:0;font-size:9px;line-height:1.125}.form-group.form-group-lg{padding-bottom:9px;margin:30px 0 0 0}.form-group.form-group-lg .form-control{margin-bottom:9px}.form-group.form-group-lg .form-control::-moz-placeholder{font-size:18px;line-height:1.3333333;color:#BDBDBD;font-weight:400}.form-group.form-group-lg .form-control:-ms-input-placeholder{font-size:18px;line-height:1.3333333;color:#BDBDBD;font-weight:400}.form-group.form-group-lg .form-control::-webkit-input-placeholder{font-size:18px;line-height:1.3333333;color:#BDBDBD;font-weight:400}.form-group.form-group-lg .checkbox label,.form-group.form-group-lg .radio label,.form-group.form-group-lg label{font-size:18px;line-height:1.3333333;color:#BDBDBD;font-weight:400}.form-group.form-group-lg label.control-label{font-size:14px;line-height:.99999998;font-weight:400;margin:16px 0 0 0}.form-group.form-group-lg .help-block{margin-top:0;font-size:14px}.form-group.form-group-lg.label-floating label.control-label,.form-group.form-group-lg.label-placeholder label.control-label{top:-5px;font-size:18px;line-height:1.3333333}.form-group.form-group-lg.label-floating.is-focused label.control-label,.form-group.form-group-lg.label-floating:not(.is-empty) label.control-label,.form-group.form-group-lg.label-static label.control-label{top:-32px;left:0;font-size:14px;line-height:.99999998}.form-group.form-group-lg.label-floating input.form-control:-webkit-autofill~label.control-label label.control-label{top:-32px;left:0;font-size:14px;line-height:.99999998}select.form-control{border:0;-webkit-box-shadow:none;box-shadow:none;border-radius:0}.form-group.is-focused select.form-control{-webkit-box-shadow:none;box-shadow:none;border-color:#D2D2D2}.form-group.is-focused select.form-control[multiple],select.form-control[multiple]{height:85px}.input-group-btn .btn{margin:0 0 7px 0}.form-group.form-group-sm .input-group-btn .btn{margin:0 0 3px 0}.form-group.form-group-lg .input-group-btn .btn{margin:0 0 9px 0}.input-group .input-group-btn{padding:0 12px}.input-group .input-group-addon{border:0;background:0 0}.form-group input[type=file]{opacity:0;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:100}legend{border-bottom:0}.list-group{border-radius:0}.list-group .list-group-item{background-color:transparent;overflow:hidden;border:0;border-radius:0;padding:0 16px}.list-group .list-group-item.baseline{border-bottom:1px solid #cecece}.list-group .list-group-item.baseline:last-child{border-bottom:none}.list-group .list-group-item .row-action-primary,.list-group .list-group-item .row-picture{display:inline-block;padding-right:16px}.list-group .list-group-item .row-action-primary i,.list-group .list-group-item .row-action-primary img,.list-group .list-group-item .row-action-primary label,.list-group .list-group-item .row-picture i,.list-group .list-group-item .row-picture img,.list-group .list-group-item .row-picture label{display:block;width:56px;height:56px}.list-group .list-group-item .row-action-primary img,.list-group .list-group-item .row-picture img{background:rgba(0,0,0,.1);padding:1px}.list-group .list-group-item .row-action-primary img.circle,.list-group .list-group-item .row-picture img.circle{border-radius:100%}.list-group .list-group-item .row-action-primary i,.list-group .list-group-item .row-picture i{background:rgba(0,0,0,.25);border-radius:100%;text-align:center;line-height:56px;font-size:20px;color:#fff}.list-group .list-group-item .row-action-primary label,.list-group .list-group-item .row-picture label{margin-left:7px;margin-right:-7px;margin-top:5px;margin-bottom:-5px}.list-group .list-group-item .row-action-primary label .checkbox-material,.list-group .list-group-item .row-picture label .checkbox-material{left:-10px}.list-group .list-group-item .row-content{display:inline-block;width:-webkit-calc(100% - 92px);width:calc(100% - 92px);min-height:66px}.list-group .list-group-item .row-content .action-secondary{position:absolute;right:16px;top:16px}.list-group .list-group-item .row-content .action-secondary i{font-size:20px;color:rgba(0,0,0,.25);cursor:pointer}.list-group .list-group-item .row-content .action-secondary~*{max-width:-webkit-calc(100% - 30px);max-width:calc(100% - 30px)}.list-group .list-group-item .row-content .least-content{position:absolute;right:16px;top:0;color:rgba(0,0,0,.54);font-size:14px}.list-group .list-group-item .list-group-item-heading{color:rgba(0,0,0,.77);font-size:20px;line-height:29px}.list-group .list-group-item.active:focus,.list-group .list-group-item.active:hover{background:rgba(0,0,0,.15);outline:10px solid rgba(0,0,0,.15)}.list-group .list-group-item.active .list-group-item-heading,.list-group .list-group-item.active .list-group-item-text{color:rgba(0,0,0,.87)}.list-group .list-group-separator{clear:both;overflow:hidden;margin-top:10px;margin-bottom:10px}.list-group .list-group-separator:before{content:"";width:-webkit-calc(100% - 90px);width:calc(100% - 90px);border-bottom:1px solid rgba(0,0,0,.1);float:right}.navbar{background-color:#0d47a1;border:0;border-radius:0}.navbar .navbar-brand{position:relative;height:60px;line-height:30px;color:inherit}.navbar .navbar-brand:focus,.navbar .navbar-brand:hover{color:inherit;background-color:transparent}.navbar .navbar-text{color:inherit;margin-top:20px;margin-bottom:20px}.navbar .navbar-nav>li>a{color:inherit;padding-top:20px;padding-bottom:20px}.navbar .navbar-nav>li>a:focus,.navbar .navbar-nav>li>a:hover{color:inherit;background-color:transparent}.navbar .navbar-nav>.active>a,.navbar .navbar-nav>.active>a:focus,.navbar .navbar-nav>.active>a:hover{color:inherit;background-color:rgba(255,255,255,.1)}.navbar .navbar-nav>.disabled>a,.navbar .navbar-nav>.disabled>a:focus,.navbar .navbar-nav>.disabled>a:hover{color:inherit;background-color:transparent;opacity:.9}.navbar .navbar-toggle{border:0}.navbar .navbar-toggle:focus,.navbar .navbar-toggle:hover{background-color:transparent}.navbar .navbar-toggle .icon-bar{background-color:inherit;border:1px solid}.navbar .navbar-default .navbar-toggle,.navbar .navbar-inverse .navbar-toggle{border-color:transparent}.navbar .navbar-collapse,.navbar .navbar-form{border-color:rgba(0,0,0,.1)}.navbar .navbar-nav>.open>a,.navbar .navbar-nav>.open>a:focus,.navbar .navbar-nav>.open>a:hover{background-color:transparent;color:inherit}@media (max-width:767px){.navbar .navbar-nav .navbar-text{color:inherit;margin-top:15px;margin-bottom:15px}.navbar .navbar-nav .open .dropdown-menu>.dropdown-header{border:0;color:inherit}.navbar .navbar-nav .open .dropdown-menu .divider{border-bottom:1px solid;opacity:.08}.navbar .navbar-nav .open .dropdown-menu>li>a{color:inherit}.navbar .navbar-nav .open .dropdown-menu>li>a:focus,.navbar .navbar-nav .open .dropdown-menu>li>a:hover{color:inherit;background-color:transparent}.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:inherit;background-color:transparent}.navbar .navbar-nav .open .dropdown-menu>.disabled>a,.navbar .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:inherit;background-color:transparent}}.navbar .navbar-link{color:inherit}.navbar .navbar-link:hover{color:inherit}.navbar .btn-link{color:inherit}.navbar .btn-link:focus,.navbar .btn-link:hover{color:inherit}.navbar .btn-link[disabled]:focus,.navbar .btn-link[disabled]:hover,fieldset[disabled] .navbar .btn-link:focus,fieldset[disabled] .navbar .btn-link:hover{color:inherit}.navbar .navbar-form{margin-top:16px}.navbar .navbar-form .form-group{margin:0;padding:0}.navbar .navbar-form .form-group .material-input:before,.navbar .navbar-form .form-group.is-focused .material-input:after{background-color:inherit}.navbar .navbar-form .form-control,.navbar .navbar-form .form-group .form-control{border-color:inherit;color:inherit;padding:0;margin:0;height:28px;font-size:14px;line-height:1.42857143}.navbar,.navbar.navbar-default{background-color:#0d47a1;color:rgba(255,255,255,.84)}.navbar .navbar-form .form-group input.form-control::-moz-placeholder,.navbar .navbar-form input.form-control::-moz-placeholder,.navbar.navbar-default .navbar-form .form-group input.form-control::-moz-placeholder,.navbar.navbar-default .navbar-form input.form-control::-moz-placeholder{color:rgba(255,255,255,.84)}.navbar .navbar-form .form-group input.form-control:-ms-input-placeholder,.navbar .navbar-form input.form-control:-ms-input-placeholder,.navbar.navbar-default .navbar-form .form-group input.form-control:-ms-input-placeholder,.navbar.navbar-default .navbar-form input.form-control:-ms-input-placeholder{color:rgba(255,255,255,.84)}.navbar .navbar-form .form-group input.form-control::-webkit-input-placeholder,.navbar .navbar-form input.form-control::-webkit-input-placeholder,.navbar.navbar-default .navbar-form .form-group input.form-control::-webkit-input-placeholder,.navbar.navbar-default .navbar-form input.form-control::-webkit-input-placeholder{color:rgba(255,255,255,.84)}.navbar .dropdown-menu,.navbar.navbar-default .dropdown-menu{border-radius:2px}.navbar .dropdown-menu li>a,.navbar.navbar-default .dropdown-menu li>a{font-size:16px;padding:13px 16px}.navbar .dropdown-menu li>a:focus,.navbar .dropdown-menu li>a:hover,.navbar.navbar-default .dropdown-menu li>a:focus,.navbar.navbar-default .dropdown-menu li>a:hover{color:#0d47a1;background-color:#eee}.navbar .dropdown-menu .active>a,.navbar.navbar-default .dropdown-menu .active>a{background-color:#0d47a1;color:rgba(255,255,255,.84)}.navbar .dropdown-menu .active>a:focus,.navbar .dropdown-menu .active>a:hover,.navbar.navbar-default .dropdown-menu .active>a:focus,.navbar.navbar-default .dropdown-menu .active>a:hover{color:rgba(255,255,255,.84)}.navbar.navbar-inverse{background-color:#3f51b5;color:#fff}.navbar.navbar-inverse .navbar-form .form-group input.form-control::-moz-placeholder,.navbar.navbar-inverse .navbar-form input.form-control::-moz-placeholder{color:#fff}.navbar.navbar-inverse .navbar-form .form-group input.form-control:-ms-input-placeholder,.navbar.navbar-inverse .navbar-form input.form-control:-ms-input-placeholder{color:#fff}.navbar.navbar-inverse .navbar-form .form-group input.form-control::-webkit-input-placeholder,.navbar.navbar-inverse .navbar-form input.form-control::-webkit-input-placeholder{color:#fff}.navbar.navbar-inverse .dropdown-menu{border-radius:2px}.navbar.navbar-inverse .dropdown-menu li>a{font-size:16px;padding:13px 16px}.navbar.navbar-inverse .dropdown-menu li>a:focus,.navbar.navbar-inverse .dropdown-menu li>a:hover{color:#3f51b5;background-color:#eee}.navbar.navbar-inverse .dropdown-menu .active>a{background-color:#3f51b5;color:#fff}.navbar.navbar-inverse .dropdown-menu .active>a:focus,.navbar.navbar-inverse .dropdown-menu .active>a:hover{color:#fff}.navbar.navbar-primary{background-color:#0d47a1;color:rgba(255,255,255,.84)}.navbar.navbar-primary .navbar-form .form-group input.form-control::-moz-placeholder,.navbar.navbar-primary .navbar-form input.form-control::-moz-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-primary .navbar-form .form-group input.form-control:-ms-input-placeholder,.navbar.navbar-primary .navbar-form input.form-control:-ms-input-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-primary .navbar-form .form-group input.form-control::-webkit-input-placeholder,.navbar.navbar-primary .navbar-form input.form-control::-webkit-input-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-primary .dropdown-menu{border-radius:2px}.navbar.navbar-primary .dropdown-menu li>a{font-size:16px;padding:13px 16px}.navbar.navbar-primary .dropdown-menu li>a:focus,.navbar.navbar-primary .dropdown-menu li>a:hover{color:#0d47a1;background-color:#eee}.navbar.navbar-primary .dropdown-menu .active>a{background-color:#0d47a1;color:rgba(255,255,255,.84)}.navbar.navbar-primary .dropdown-menu .active>a:focus,.navbar.navbar-primary .dropdown-menu .active>a:hover{color:rgba(255,255,255,.84)}.navbar.navbar-success{background-color:#4caf50;color:rgba(255,255,255,.84)}.navbar.navbar-success .navbar-form .form-group input.form-control::-moz-placeholder,.navbar.navbar-success .navbar-form input.form-control::-moz-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-success .navbar-form .form-group input.form-control:-ms-input-placeholder,.navbar.navbar-success .navbar-form input.form-control:-ms-input-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-success .navbar-form .form-group input.form-control::-webkit-input-placeholder,.navbar.navbar-success .navbar-form input.form-control::-webkit-input-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-success .dropdown-menu{border-radius:2px}.navbar.navbar-success .dropdown-menu li>a{font-size:16px;padding:13px 16px}.navbar.navbar-success .dropdown-menu li>a:focus,.navbar.navbar-success .dropdown-menu li>a:hover{color:#4caf50;background-color:#eee}.navbar.navbar-success .dropdown-menu .active>a{background-color:#4caf50;color:rgba(255,255,255,.84)}.navbar.navbar-success .dropdown-menu .active>a:focus,.navbar.navbar-success .dropdown-menu .active>a:hover{color:rgba(255,255,255,.84)}.navbar.navbar-info{background-color:#03a9f4;color:rgba(255,255,255,.84)}.navbar.navbar-info .navbar-form .form-group input.form-control::-moz-placeholder,.navbar.navbar-info .navbar-form input.form-control::-moz-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-info .navbar-form .form-group input.form-control:-ms-input-placeholder,.navbar.navbar-info .navbar-form input.form-control:-ms-input-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-info .navbar-form .form-group input.form-control::-webkit-input-placeholder,.navbar.navbar-info .navbar-form input.form-control::-webkit-input-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-info .dropdown-menu{border-radius:2px}.navbar.navbar-info .dropdown-menu li>a{font-size:16px;padding:13px 16px}.navbar.navbar-info .dropdown-menu li>a:focus,.navbar.navbar-info .dropdown-menu li>a:hover{color:#03a9f4;background-color:#eee}.navbar.navbar-info .dropdown-menu .active>a{background-color:#03a9f4;color:rgba(255,255,255,.84)}.navbar.navbar-info .dropdown-menu .active>a:focus,.navbar.navbar-info .dropdown-menu .active>a:hover{color:rgba(255,255,255,.84)}.navbar.navbar-warning{background-color:#ff5722;color:rgba(255,255,255,.84)}.navbar.navbar-warning .navbar-form .form-group input.form-control::-moz-placeholder,.navbar.navbar-warning .navbar-form input.form-control::-moz-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-warning .navbar-form .form-group input.form-control:-ms-input-placeholder,.navbar.navbar-warning .navbar-form input.form-control:-ms-input-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-warning .navbar-form .form-group input.form-control::-webkit-input-placeholder,.navbar.navbar-warning .navbar-form input.form-control::-webkit-input-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-warning .dropdown-menu{border-radius:2px}.navbar.navbar-warning .dropdown-menu li>a{font-size:16px;padding:13px 16px}.navbar.navbar-warning .dropdown-menu li>a:focus,.navbar.navbar-warning .dropdown-menu li>a:hover{color:#ff5722;background-color:#eee}.navbar.navbar-warning .dropdown-menu .active>a{background-color:#ff5722;color:rgba(255,255,255,.84)}.navbar.navbar-warning .dropdown-menu .active>a:focus,.navbar.navbar-warning .dropdown-menu .active>a:hover{color:rgba(255,255,255,.84)}.navbar.navbar-danger{background-color:#f44336;color:rgba(255,255,255,.84)}.navbar.navbar-danger .navbar-form .form-group input.form-control::-moz-placeholder,.navbar.navbar-danger .navbar-form input.form-control::-moz-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-danger .navbar-form .form-group input.form-control:-ms-input-placeholder,.navbar.navbar-danger .navbar-form input.form-control:-ms-input-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-danger .navbar-form .form-group input.form-control::-webkit-input-placeholder,.navbar.navbar-danger .navbar-form input.form-control::-webkit-input-placeholder{color:rgba(255,255,255,.84)}.navbar.navbar-danger .dropdown-menu{border-radius:2px}.navbar.navbar-danger .dropdown-menu li>a{font-size:16px;padding:13px 16px}.navbar.navbar-danger .dropdown-menu li>a:focus,.navbar.navbar-danger .dropdown-menu li>a:hover{color:#f44336;background-color:#eee}.navbar.navbar-danger .dropdown-menu .active>a{background-color:#f44336;color:rgba(255,255,255,.84)}.navbar.navbar-danger .dropdown-menu .active>a:focus,.navbar.navbar-danger .dropdown-menu .active>a:hover{color:rgba(255,255,255,.84)}.navbar-inverse{background-color:#3f51b5}@media (max-width:1199px){.navbar .navbar-brand{height:50px;padding:10px 15px}.navbar .navbar-form{margin-top:10px}.navbar .navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.dropdown-menu{border:0;-webkit-box-shadow:0 2px 5px 0 rgba(0,0,0,.26);box-shadow:0 2px 5px 0 rgba(0,0,0,.26)}.dropdown-menu .divider{background-color:rgba(0,0,0,.12)}.dropdown-menu li{overflow:hidden;position:relative}.dropdown-menu li a:hover{background-color:transparent;color:#0d47a1}.alert{border:0;border-radius:0}.alert,.alert.alert-default{background-color:rgba(255,255,255,.84);color:rgba(255,255,255,.84)}.alert .alert-link,.alert a,.alert.alert-default .alert-link,.alert.alert-default a{color:rgba(255,255,255,.84)}.alert.alert-inverse{background-color:#3f51b5;color:#fff}.alert.alert-inverse .alert-link,.alert.alert-inverse a{color:#fff}.alert.alert-primary{background-color:#0d47a1;color:rgba(255,255,255,.84)}.alert.alert-primary .alert-link,.alert.alert-primary a{color:rgba(255,255,255,.84)}.alert.alert-success{background-color:#4caf50;color:rgba(255,255,255,.84)}.alert.alert-success .alert-link,.alert.alert-success a{color:rgba(255,255,255,.84)}.alert.alert-info{background-color:#03a9f4;color:rgba(255,255,255,.84)}.alert.alert-info .alert-link,.alert.alert-info a{color:rgba(255,255,255,.84)}.alert.alert-warning{background-color:#ff5722;color:rgba(255,255,255,.84)}.alert.alert-warning .alert-link,.alert.alert-warning a{color:rgba(255,255,255,.84)}.alert.alert-danger{background-color:#f44336;color:rgba(255,255,255,.84)}.alert.alert-danger .alert-link,.alert.alert-danger a{color:rgba(255,255,255,.84)}.alert-danger,.alert-info,.alert-success,.alert-warning{color:rgba(255,255,255,.84)}.alert-default .alert-link,.alert-default a{color:rgba(0,0,0,.87)}.progress{height:4px;border-radius:0;-webkit-box-shadow:none;box-shadow:none;background:#c8c8c8}.progress .progress-bar{-webkit-box-shadow:none;box-shadow:none}.progress .progress-bar,.progress .progress-bar.progress-bar-default{background-color:#0d47a1}.progress .progress-bar.progress-bar-inverse{background-color:#3f51b5}.progress .progress-bar.progress-bar-primary{background-color:#0d47a1}.progress .progress-bar.progress-bar-success{background-color:#4caf50}.progress .progress-bar.progress-bar-info{background-color:#03a9f4}.progress .progress-bar.progress-bar-warning{background-color:#ff5722}.progress .progress-bar.progress-bar-danger{background-color:#f44336}.text-warning{color:#ff5722}.text-primary{color:#0d47a1}.text-danger{color:#f44336}.text-success{color:#4caf50}.text-info{color:#03a9f4}.nav-tabs{background:#0d47a1}.nav-tabs>li>a{color:#FFF;border:0;margin:0}.nav-tabs>li>a:hover{background-color:transparent;border:0}.nav-tabs>li>a,.nav-tabs>li>a:focus,.nav-tabs>li>a:hover{background-color:transparent!important;border:0!important;color:#FFF!important;font-weight:500}.nav-tabs>li.disabled>a,.nav-tabs>li.disabled>a:hover{color:rgba(255,255,255,.5)}.popover,.tooltip-inner{color:#ececec;line-height:1em;background:rgba(101,101,101,.9);border:none;border-radius:2px;-webkit-box-shadow:0 1px 6px 0 rgba(0,0,0,.12),0 1px 6px 0 rgba(0,0,0,.12);box-shadow:0 1px 6px 0 rgba(0,0,0,.12),0 1px 6px 0 rgba(0,0,0,.12)}.tooltip,.tooltip.in{opacity:1}.popover .arrow,.popover .tooltip-arrow,.tooltip .arrow,.tooltip .tooltip-arrow{display:none}.card{display:inline-block;position:relative;width:100%;border-radius:2px;color:rgba(0,0,0,.87);background:#fff;-webkit-box-shadow:0 8px 17px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);box-shadow:0 8px 17px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19)}.card .card-height-indicator{margin-top:100%}.card .card-content{position:absolute;top:0;bottom:0;left:0;right:0}.card .card-image{height:60%;position:relative;overflow:hidden}.card .card-image img{width:100%;height:100%;border-top-left-radius:2px;border-top-right-radius:2px;pointer-events:none}.card .card-image .card-image-headline{position:absolute;bottom:16px;left:18px;color:#fff;font-size:2em}.card .card-body{height:30%;padding:18px}.card .card-footer{height:10%;padding:18px}.card .card-footer a,.card .card-footer button{margin:0!important;position:relative;bottom:25px;width:auto}.card .card-footer a:first-child,.card .card-footer button:first-child{left:-15px}.modal-content{-webkit-box-shadow:0 27px 24px 0 rgba(0,0,0,.2),0 40px 77px 0 rgba(0,0,0,.22);box-shadow:0 27px 24px 0 rgba(0,0,0,.2),0 40px 77px 0 rgba(0,0,0,.22);border-radius:2px;border:none}.modal-content .modal-header{border-bottom:none;padding-top:24px;padding-right:24px;padding-bottom:0;padding-left:24px}.modal-content .modal-body{padding-top:24px;padding-right:24px;padding-bottom:16px;padding-left:24px}.modal-content .modal-footer{border-top:none;padding:7px}.modal-content .modal-footer button{margin:0;padding-left:16px;padding-right:16px;width:auto}.modal-content .modal-footer button.pull-left{padding-left:5px;padding-right:5px;position:relative;left:-5px}.modal-content .modal-footer button+button{margin-bottom:16px}.modal-content .modal-body+.modal-footer{padding-top:0}.modal-backdrop{background:rgba(0,0,0,.3)}.panel{border-radius:2px;border:0;-webkit-box-shadow:0 1px 6px 0 rgba(0,0,0,.12),0 1px 6px 0 rgba(0,0,0,.12);box-shadow:0 1px 6px 0 rgba(0,0,0,.12),0 1px 6px 0 rgba(0,0,0,.12)}.panel.panel-default>.panel-heading,.panel>.panel-heading{background-color:#eee}.panel.panel-inverse>.panel-heading{background-color:#3f51b5}.panel.panel-primary>.panel-heading{background-color:#0d47a1}.panel.panel-success>.panel-heading{background-color:#4caf50}.panel.panel-info>.panel-heading{background-color:#03a9f4}.panel.panel-warning>.panel-heading{background-color:#ff5722}.panel.panel-danger>.panel-heading{background-color:#f44336}[class*=panel-]>.panel-heading{color:rgba(255,255,255,.84);border:0}.panel-default>.panel-heading,.panel:not([class*=panel-])>.panel-heading{color:rgba(0,0,0,.87)}.panel-footer{background-color:#eee}hr.on-dark{color:#1a1a1a}hr.on-light{color:#fff}@media (-webkit-min-device-pixel-ratio:0.75),(min--moz-device-pixel-ratio:0.75),(-o-device-pixel-ratio:3/4),(min-device-pixel-ratio:0.75),(-o-min-device-pixel-ratio:3/4),(min-resolution:0.75dppx),(-webkit-min-device-pixel-ratio:1.25),(-o-min-device-pixel-ratio:5/4),(min-resolution:120dpi){hr{height:.75px}}@media (-webkit-min-device-pixel-ratio:1),(min--moz-device-pixel-ratio:1),(-o-device-pixel-ratio:1),(min-device-pixel-ratio:1),(-o-min-device-pixel-ratio:1/1),(min-resolution:1dppx),(-webkit-min-device-pixel-ratio:1.6666666666666667),(-o-min-device-pixel-ratio:5/3),(min-resolution:160dpi){hr{height:1px}}@media (-webkit-min-device-pixel-ratio:1.33),(min--moz-device-pixel-ratio:1.33),(-o-device-pixel-ratio:133/100),(min-device-pixel-ratio:1.33),(-o-min-device-pixel-ratio:133/100),(min-resolution:1.33dppx),(-webkit-min-device-pixel-ratio:2.21875),(-o-min-device-pixel-ratio:71/32),(min-resolution:213dpi){hr{height:1.33px}}@media (-webkit-min-device-pixel-ratio:1.5),(min--moz-device-pixel-ratio:1.5),(-o-device-pixel-ratio:3/2),(min-device-pixel-ratio:1.5),(-o-min-device-pixel-ratio:3/2),(min-resolution:1.5dppx),(-webkit-min-device-pixel-ratio:2.5),(-o-min-device-pixel-ratio:5/2),(min-resolution:240dpi){hr{height:1.5px}}@media (-webkit-min-device-pixel-ratio:2),(min--moz-device-pixel-ratio:2),(-o-device-pixel-ratio:2/1),(min-device-pixel-ratio:2),(-o-min-device-pixel-ratio:2/1),(min-resolution:2dppx),(-webkit-min-device-pixel-ratio:3.9583333333333335),(-o-min-device-pixel-ratio:95/24),(min-resolution:380dpi){hr{height:2px}}@media (-webkit-min-device-pixel-ratio:3),(min--moz-device-pixel-ratio:3),(-o-device-pixel-ratio:3/1),(min-device-pixel-ratio:3),(-o-min-device-pixel-ratio:3/1),(min-resolution:3dppx),(-webkit-min-device-pixel-ratio:5),(-o-min-device-pixel-ratio:5/1),(min-resolution:480dpi){hr{height:3px}}@media (-webkit-min-device-pixel-ratio:4),(min--moz-device-pixel-ratio:4),(-o-device-pixel-ratio:4/1),(min-device-pixel-ratio:3),(-o-min-device-pixel-ratio:4/1),(min-resolution:4dppx),(-webkit-min-device-pixel-ratio:6.666666666666667),(-o-min-device-pixel-ratio:20/3),(min-resolution:640dpi){hr{height:4px}}*{-webkit-tap-highlight-color:rgba(255,255,255,0);-webkit-tap-highlight-color:transparent}:focus{outline:0}.snackbar{background-color:#323232;color:rgba(255,255,255,.84);font-size:14px;border-radius:2px;-webkit-box-shadow:0 1px 6px 0 rgba(0,0,0,.12),0 1px 6px 0 rgba(0,0,0,.12);box-shadow:0 1px 6px 0 rgba(0,0,0,.12),0 1px 6px 0 rgba(0,0,0,.12);height:0;-webkit-transition:-webkit-transform .2s ease-in-out,opacity .2s ease-in,height 0s linear .2s,padding 0s linear .2s,height 0s linear .2s;-o-transition:-o-transform .2s ease-in-out,opacity .2s ease-in,height 0s linear .2s,padding 0s linear .2s,height 0s linear .2s;transition:transform .2s ease-in-out,opacity .2s ease-in,height 0s linear .2s,padding 0s linear .2s,height 0s linear .2s;-webkit-transform:translateY(200%);-ms-transform:translateY(200%);-o-transform:translateY(200%);transform:translateY(200%)}.snackbar.snackbar-opened{padding:14px 15px;margin-bottom:20px;height:auto;-webkit-transition:-webkit-transform .2s ease-in-out,opacity .2s ease-in,height 0s linear .2s,height 0s linear .2s;-o-transition:-o-transform .2s ease-in-out,opacity .2s ease-in,height 0s linear .2s,height 0s linear .2s;transition:transform .2s ease-in-out,opacity .2s ease-in,height 0s linear .2s,height 0s linear .2s;-webkit-transform:none;-ms-transform:none;-o-transform:none;transform:none}.snackbar.toast{border-radius:200px}.noUi-target,.noUi-target *{-webkit-touch-callout:none;-ms-touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.noUi-base{width:100%;height:100%;position:relative}.noUi-origin{position:absolute;right:0;top:0;left:0;bottom:0}.noUi-handle{position:relative;z-index:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.noUi-stacking .noUi-handle{z-index:10}.noUi-state-tap .noUi-origin{-webkit-transition:left .3s,top .3s;-o-transition:left .3s,top .3s;transition:left .3s,top .3s}.noUi-state-drag *{cursor:inherit!important}.noUi-horizontal{height:10px}.noUi-handle{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:12px;height:12px;left:-10px;top:-5px;cursor:ew-resize;border-radius:100%;-webkit-transition:all .2s ease-out;-o-transition:all .2s ease-out;transition:all .2s ease-out;border:1px solid}.noUi-vertical .noUi-handle{margin-left:5px;cursor:ns-resize}.noUi-horizontal.noUi-extended{padding:0 15px}.noUi-horizontal.noUi-extended .noUi-origin{right:-15px}.noUi-background{height:2px;margin:20px 0}.noUi-origin{margin:0;border-radius:0;height:2px;background:#c8c8c8}.noUi-origin[style^="left: 0"] .noUi-handle{background-color:#fff;border:2px solid #c8c8c8}.noUi-origin[style^="left: 0"] .noUi-handle.noUi-active{border-width:1px}.noUi-target{border-radius:2px}.noUi-horizontal{height:2px;margin:15px 0}.noUi-vertical{height:100%;width:2px;margin:0 15px;display:inline-block}.noUi-handle.noUi-active{-webkit-transform:scale3d(2.5,2.5,1);transform:scale3d(2.5,2.5,1)}[disabled].noUi-slider{opacity:.5}[disabled] .noUi-handle{cursor:not-allowed}.slider{background:#c8c8c8}.slider.noUi-connect,.slider.slider-default.noUi-connect{background-color:#0d47a1}.slider.slider-inverse.noUi-connect{background-color:#3f51b5}.slider.slider-primary.noUi-connect{background-color:#0d47a1}.slider.slider-success.noUi-connect{background-color:#4caf50}.slider.slider-info.noUi-connect{background-color:#03a9f4}.slider.slider-warning.noUi-connect{background-color:#ff5722}.slider.slider-danger.noUi-connect{background-color:#f44336}.slider .noUi-connect,.slider.slider-default .noUi-connect{background-color:#0d47a1}.slider.slider-inverse .noUi-connect{background-color:#3f51b5}.slider.slider-primary .noUi-connect{background-color:#0d47a1}.slider.slider-success .noUi-connect{background-color:#4caf50}.slider.slider-info .noUi-connect{background-color:#03a9f4}.slider.slider-warning .noUi-connect{background-color:#ff5722}.slider.slider-danger .noUi-connect{background-color:#f44336}.slider .noUi-handle,.slider.slider-default .noUi-handle{background-color:#0d47a1}.slider.slider-inverse .noUi-handle{background-color:#3f51b5}.slider.slider-primary .noUi-handle{background-color:#0d47a1}.slider.slider-success .noUi-handle{background-color:#4caf50}.slider.slider-info .noUi-handle{background-color:#03a9f4}.slider.slider-warning .noUi-handle{background-color:#ff5722}.slider.slider-danger .noUi-handle{background-color:#f44336}.slider .noUi-handle,.slider.slider-default .noUi-handle{border-color:#0d47a1}.slider.slider-inverse .noUi-handle{border-color:#3f51b5}.slider.slider-primary .noUi-handle{border-color:#0d47a1}.slider.slider-success .noUi-handle{border-color:#4caf50}.slider.slider-info .noUi-handle{border-color:#03a9f4}.slider.slider-warning .noUi-handle{border-color:#ff5722}.slider.slider-danger .noUi-handle{border-color:#f44336}.selectize-control.multi,.selectize-control.single{padding:0}.selectize-control.multi .selectize-input,.selectize-control.multi .selectize-input.input-active,.selectize-control.single .selectize-input,.selectize-control.single .selectize-input.input-active{cursor:text;background:0 0;-webkit-box-shadow:none;box-shadow:none;border:0;padding:0;height:100%;font-size:14px;line-height:30px}.selectize-control.multi .selectize-input .has-items,.selectize-control.multi .selectize-input.input-active .has-items,.selectize-control.single .selectize-input .has-items,.selectize-control.single .selectize-input.input-active .has-items{padding:0}.selectize-control.multi .selectize-input.input-active:after,.selectize-control.multi .selectize-input:after,.selectize-control.single .selectize-input.input-active:after,.selectize-control.single .selectize-input:after{right:5px;position:absolute;font-size:25px;content:"\e5c5";font-family:'Material Icons';speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.selectize-control.multi .selectize-input input,.selectize-control.multi .selectize-input.input-active input,.selectize-control.single .selectize-input input,.selectize-control.single .selectize-input.input-active input{font-size:14px;outline:0;border:0;background:0 0}.selectize-control.multi .selectize-input.input-active.label-floating-fix input,.selectize-control.multi .selectize-input.label-floating-fix input,.selectize-control.single .selectize-input.input-active.label-floating-fix input,.selectize-control.single .selectize-input.label-floating-fix input{opacity:0}.selectize-control.multi .selectize-input.input-active>.item,.selectize-control.multi .selectize-input.input-active>div,.selectize-control.multi .selectize-input>.item,.selectize-control.multi .selectize-input>div,.selectize-control.single .selectize-input.input-active>.item,.selectize-control.single .selectize-input.input-active>div,.selectize-control.single .selectize-input>.item,.selectize-control.single .selectize-input>div{display:inline-block;margin:0 8px 3px 0;padding:0;background:0 0;border:0}.selectize-control.multi .selectize-input.input-active>.item:after,.selectize-control.multi .selectize-input.input-active>div:after,.selectize-control.multi .selectize-input>.item:after,.selectize-control.multi .selectize-input>div:after,.selectize-control.single .selectize-input.input-active>.item:after,.selectize-control.single .selectize-input.input-active>div:after,.selectize-control.single .selectize-input>.item:after,.selectize-control.single .selectize-input>div:after{content:","}.selectize-control.multi .selectize-input.input-active>.item:last-of-type:after,.selectize-control.multi .selectize-input.input-active>div:last-of-type:after,.selectize-control.multi .selectize-input>.item:last-of-type:after,.selectize-control.multi .selectize-input>div:last-of-type:after,.selectize-control.single .selectize-input.input-active>.item:last-of-type:after,.selectize-control.single .selectize-input.input-active>div:last-of-type:after,.selectize-control.single .selectize-input>.item:last-of-type:after,.selectize-control.single .selectize-input>div:last-of-type:after{content:""}.selectize-control.multi .selectize-input.input-active>.item.active,.selectize-control.multi .selectize-input.input-active>div.active,.selectize-control.multi .selectize-input>.item.active,.selectize-control.multi .selectize-input>div.active,.selectize-control.single .selectize-input.input-active>.item.active,.selectize-control.single .selectize-input.input-active>div.active,.selectize-control.single .selectize-input>.item.active,.selectize-control.single .selectize-input>div.active{font-weight:700;background:0 0;border:0}.selectize-control.multi .selectize-dropdown,.selectize-control.single .selectize-dropdown{position:absolute;z-index:1000;border:0;width:100%!important;left:0!important;height:auto;background-color:#FFF;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);border-radius:2px;padding:0;margin-top:3px}.selectize-control.multi .selectize-dropdown .active,.selectize-control.single .selectize-dropdown .active{background-color:inherit}.selectize-control.multi .selectize-dropdown .highlight,.selectize-control.single .selectize-dropdown .highlight{background-color:#d5d8ff}.selectize-control.multi .selectize-dropdown .selected,.selectize-control.multi .selectize-dropdown .selected.active,.selectize-control.single .selectize-dropdown .selected,.selectize-control.single .selectize-dropdown .selected.active{background-color:#EEE}.selectize-control.multi .selectize-dropdown .optgroup-header,.selectize-control.multi .selectize-dropdown [data-selectable],.selectize-control.single .selectize-dropdown .optgroup-header,.selectize-control.single .selectize-dropdown [data-selectable]{padding:10px 20px;cursor:pointer}.selectize-control.multi .dropdown-active~.selectize-dropdown,.selectize-control.single .dropdown-active~.selectize-dropdown{display:block}.dropdownjs::after{right:5px;top:3px;font-size:25px;position:absolute;font-family:'Material Icons';font-style:normal;font-weight:400;content:"\e5c5";pointer-events:none;color:#757575} +/*# sourceMappingURL=bootstrap-material-design.min.css.map */ \ No newline at end of file diff --git a/src/GenericMvc.Test.App/wwwroot/css/material-dist/ripples.css b/src/GenericMvc.Test.App/wwwroot/css/material-dist/ripples.css new file mode 100644 index 0000000..cc88c40 --- /dev/null +++ b/src/GenericMvc.Test.App/wwwroot/css/material-dist/ripples.css @@ -0,0 +1,47 @@ +.withripple { + position: relative; +} +.ripple-container { + position: absolute; + top: 0; + left: 0; + z-index: 1; + width: 100%; + height: 100%; + overflow: hidden; + border-radius: inherit; + pointer-events: none; +} +.ripple { + position: absolute; + width: 20px; + height: 20px; + margin-left: -10px; + margin-top: -10px; + border-radius: 100%; + background-color: #000; + background-color: rgba(0, 0, 0, 0.05); + -webkit-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + transform: scale(1); + -webkit-transform-origin: 50%; + -ms-transform-origin: 50%; + -o-transform-origin: 50%; + transform-origin: 50%; + opacity: 0; + pointer-events: none; +} +.ripple.ripple-on { + -webkit-transition: opacity 0.15s ease-in 0s, -webkit-transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; + -o-transition: opacity 0.15s ease-in 0s, -o-transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; + transition: opacity 0.15s ease-in 0s, transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.1s; + opacity: 0.1; +} +.ripple.ripple-out { + -webkit-transition: opacity 0.1s linear 0s !important; + -o-transition: opacity 0.1s linear 0s !important; + transition: opacity 0.1s linear 0s !important; + opacity: 0; +} +/*# sourceMappingURL=ripples.css.map */ \ No newline at end of file diff --git a/src/GenericMvc.Test.App/wwwroot/css/material-dist/ripples.min.css b/src/GenericMvc.Test.App/wwwroot/css/material-dist/ripples.min.css new file mode 100644 index 0000000..80151de --- /dev/null +++ b/src/GenericMvc.Test.App/wwwroot/css/material-dist/ripples.min.css @@ -0,0 +1,2 @@ +.withripple{position:relative}.ripple-container{position:absolute;top:0;left:0;z-index:1;width:100%;height:100%;overflow:hidden;border-radius:inherit;pointer-events:none}.ripple{position:absolute;width:20px;height:20px;margin-left:-10px;margin-top:-10px;border-radius:100%;background-color:#000;background-color:rgba(0,0,0,.05);-webkit-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);-webkit-transform-origin:50%;-ms-transform-origin:50%;-o-transform-origin:50%;transform-origin:50%;opacity:0;pointer-events:none}.ripple.ripple-on{-webkit-transition:opacity .15s ease-in 0s,-webkit-transform .5s cubic-bezier(.4,0,.2,1) .1s;-o-transition:opacity .15s ease-in 0s,-o-transform .5s cubic-bezier(.4,0,.2,1) .1s;transition:opacity .15s ease-in 0s,transform .5s cubic-bezier(.4,0,.2,1) .1s;opacity:.1}.ripple.ripple-out{-webkit-transition:opacity .1s linear 0s!important;-o-transition:opacity .1s linear 0s!important;transition:opacity .1s linear 0s!important;opacity:0} +/*# sourceMappingURL=ripples.min.css.map */ \ No newline at end of file diff --git a/src/GenericMvc.Test.App/wwwroot/lib/jquery/.bower.json b/src/GenericMvc.Test.App/wwwroot/lib/jquery/.bower.json index 419488b..c0cd1e6 100644 --- a/src/GenericMvc.Test.App/wwwroot/lib/jquery/.bower.json +++ b/src/GenericMvc.Test.App/wwwroot/lib/jquery/.bower.json @@ -1,25 +1,38 @@ { "name": "jquery", + "version": "2.1.4", "main": "dist/jquery.js", "license": "MIT", "ignore": [ + "**/.*", + "build", + "dist/cdn", + "speed", + "test", + "*.md", + "AUTHORS.txt", + "Gruntfile.js", "package.json" ], + "devDependencies": { + "sizzle": "2.1.1-jquery.2.1.2", + "requirejs": "2.1.10", + "qunit": "1.14.0", + "sinon": "1.8.1" + }, "keywords": [ "jquery", "javascript", - "browser", "library" ], "homepage": "https://github.com/jquery/jquery-dist", - "version": "2.2.0", - "_release": "2.2.0", + "_release": "2.1.4", "_resolution": { "type": "version", - "tag": "2.2.0", - "commit": "6fc01e29bdad0964f62ef56d01297039cdcadbe5" + "tag": "2.1.4", + "commit": "7751e69b615c6eca6f783a81e292a55725af6b85" }, - "_source": "git://github.com/jquery/jquery-dist.git", - "_target": "2.2.0", + "_source": "https://github.com/jquery/jquery-dist.git", + "_target": "~2.1.1", "_originalSource": "jquery" } \ No newline at end of file diff --git a/src/GenericMvc.Test.App/wwwroot/lib/jquery/LICENSE.txt b/src/GenericMvc.Test.App/wwwroot/lib/jquery/LICENSE.txt deleted file mode 100644 index 5312a4c..0000000 --- a/src/GenericMvc.Test.App/wwwroot/lib/jquery/LICENSE.txt +++ /dev/null @@ -1,36 +0,0 @@ -Copyright jQuery Foundation and other contributors, https://jquery.org/ - -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -available at https://github.com/jquery/jquery - -The following license applies to all parts of this software except as -documented below: - -==== - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==== - -All files located in the node_modules and external directories are -externally maintained libraries used by this software which have their -own licenses; we recommend you read them, as their terms may differ from -the terms above. diff --git a/src/GenericMvc.Test.App/wwwroot/lib/jquery/dist/jquery.js b/src/GenericMvc.Test.App/wwwroot/lib/jquery/dist/jquery.js index 1e0ba99..eed1777 100644 --- a/src/GenericMvc.Test.App/wwwroot/lib/jquery/dist/jquery.js +++ b/src/GenericMvc.Test.App/wwwroot/lib/jquery/dist/jquery.js @@ -1,15 +1,15 @@ /*! - * jQuery JavaScript Library v2.2.0 + * jQuery JavaScript Library v2.1.4 * http://jquery.com/ * * Includes Sizzle.js * http://sizzlejs.com/ * - * Copyright jQuery Foundation and other contributors + * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors * Released under the MIT license * http://jquery.org/license * - * Date: 2016-01-08T20:02Z + * Date: 2015-04-28T16:01Z */ (function( global, factory ) { @@ -41,10 +41,9 @@ // Can't be in strict mode, several libs including ASP.NET trace // the stack via arguments.caller.callee and Firefox dies if // you try to trace through "use strict" call chains. (#13335) -//"use strict"; -var arr = []; +// -var document = window.document; +var arr = []; var slice = arr.slice; @@ -65,11 +64,13 @@ var support = {}; var - version = "2.2.0", + // Use the correct document accordingly with window argument (sandbox) + document = window.document, + + version = "2.1.4", // Define a local copy of jQuery jQuery = function( selector, context ) { - // The jQuery object is actually just the init constructor 'enhanced' // Need init if jQuery is called (just allow error to be thrown if not included) return new jQuery.fn.init( selector, context ); @@ -89,7 +90,6 @@ var }; jQuery.fn = jQuery.prototype = { - // The current version of jQuery being used jquery: version, @@ -133,14 +133,16 @@ jQuery.fn = jQuery.prototype = { }, // Execute a callback for every element in the matched set. - each: function( callback ) { - return jQuery.each( this, callback ); + // (You can seed the arguments with an array of args, but this is + // only used internally.) + each: function( callback, args ) { + return jQuery.each( this, callback, args ); }, map: function( callback ) { - return this.pushStack( jQuery.map( this, function( elem, i ) { + return this.pushStack( jQuery.map(this, function( elem, i ) { return callback.call( elem, i, elem ); - } ) ); + })); }, slice: function() { @@ -158,11 +160,11 @@ jQuery.fn = jQuery.prototype = { eq: function( i ) { var len = this.length, j = +i + ( i < 0 ? len : 0 ); - return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); + return this.pushStack( j >= 0 && j < len ? [ this[j] ] : [] ); }, end: function() { - return this.prevObject || this.constructor(); + return this.prevObject || this.constructor(null); }, // For internal use only. @@ -174,7 +176,7 @@ jQuery.fn = jQuery.prototype = { jQuery.extend = jQuery.fn.extend = function() { var options, name, src, copy, copyIsArray, clone, - target = arguments[ 0 ] || {}, + target = arguments[0] || {}, i = 1, length = arguments.length, deep = false; @@ -189,7 +191,7 @@ jQuery.extend = jQuery.fn.extend = function() { } // Handle case when target is a string or something (possible in deep copy) - if ( typeof target !== "object" && !jQuery.isFunction( target ) ) { + if ( typeof target !== "object" && !jQuery.isFunction(target) ) { target = {}; } @@ -200,10 +202,8 @@ jQuery.extend = jQuery.fn.extend = function() { } for ( ; i < length; i++ ) { - // Only deal with non-null/undefined values - if ( ( options = arguments[ i ] ) != null ) { - + if ( (options = arguments[ i ]) != null ) { // Extend the base object for ( name in options ) { src = target[ name ]; @@ -215,15 +215,13 @@ jQuery.extend = jQuery.fn.extend = function() { } // Recurse if we're merging plain objects or arrays - if ( deep && copy && ( jQuery.isPlainObject( copy ) || - ( copyIsArray = jQuery.isArray( copy ) ) ) ) { - + if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) { if ( copyIsArray ) { copyIsArray = false; - clone = src && jQuery.isArray( src ) ? src : []; + clone = src && jQuery.isArray(src) ? src : []; } else { - clone = src && jQuery.isPlainObject( src ) ? src : {}; + clone = src && jQuery.isPlainObject(src) ? src : {}; } // Never move original objects, clone them @@ -241,8 +239,7 @@ jQuery.extend = jQuery.fn.extend = function() { return target; }; -jQuery.extend( { - +jQuery.extend({ // Unique for each copy of jQuery on the page expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), @@ -256,7 +253,7 @@ jQuery.extend( { noop: function() {}, isFunction: function( obj ) { - return jQuery.type( obj ) === "function"; + return jQuery.type(obj) === "function"; }, isArray: Array.isArray, @@ -266,17 +263,14 @@ jQuery.extend( { }, isNumeric: function( obj ) { - // parseFloat NaNs numeric-cast false positives (null|true|false|"") // ...but misinterprets leading-number strings, particularly hex literals ("0x...") // subtraction forces infinities to NaN // adding 1 corrects loss of precision from parseFloat (#15100) - var realStringObj = obj && obj.toString(); - return !jQuery.isArray( obj ) && ( realStringObj - parseFloat( realStringObj ) + 1 ) >= 0; + return !jQuery.isArray( obj ) && (obj - parseFloat( obj ) + 1) >= 0; }, isPlainObject: function( obj ) { - // Not plain objects: // - Any object or value whose internal [[Class]] property is not "[object Object]" // - DOM nodes @@ -307,10 +301,9 @@ jQuery.extend( { if ( obj == null ) { return obj + ""; } - // Support: Android<4.0, iOS<6 (functionish RegExp) return typeof obj === "object" || typeof obj === "function" ? - class2type[ toString.call( obj ) ] || "object" : + class2type[ toString.call(obj) ] || "object" : typeof obj; }, @@ -322,19 +315,16 @@ jQuery.extend( { code = jQuery.trim( code ); if ( code ) { - // If the code includes a valid, prologue position // strict mode pragma, execute code by injecting a // script tag into the document. - if ( code.indexOf( "use strict" ) === 1 ) { - script = document.createElement( "script" ); + if ( code.indexOf("use strict") === 1 ) { + script = document.createElement("script"); script.text = code; document.head.appendChild( script ).parentNode.removeChild( script ); } else { - - // Otherwise, avoid the DOM node creation, insertion - // and removal by using an indirect global eval - + // Otherwise, avoid the DOM node creation, insertion + // and removal by using an indirect global eval indirect( code ); } } @@ -351,20 +341,49 @@ jQuery.extend( { return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); }, - each: function( obj, callback ) { - var length, i = 0; + // args is for internal usage only + each: function( obj, callback, args ) { + var value, + i = 0, + length = obj.length, + isArray = isArraylike( obj ); - if ( isArrayLike( obj ) ) { - length = obj.length; - for ( ; i < length; i++ ) { - if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { - break; + if ( args ) { + if ( isArray ) { + for ( ; i < length; i++ ) { + value = callback.apply( obj[ i ], args ); + + if ( value === false ) { + break; + } + } + } else { + for ( i in obj ) { + value = callback.apply( obj[ i ], args ); + + if ( value === false ) { + break; + } } } + + // A special, fast, case for the most common use of each } else { - for ( i in obj ) { - if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { - break; + if ( isArray ) { + for ( ; i < length; i++ ) { + value = callback.call( obj[ i ], i, obj[ i ] ); + + if ( value === false ) { + break; + } + } + } else { + for ( i in obj ) { + value = callback.call( obj[ i ], i, obj[ i ] ); + + if ( value === false ) { + break; + } } } } @@ -384,7 +403,7 @@ jQuery.extend( { var ret = results || []; if ( arr != null ) { - if ( isArrayLike( Object( arr ) ) ) { + if ( isArraylike( Object(arr) ) ) { jQuery.merge( ret, typeof arr === "string" ? [ arr ] : arr @@ -436,13 +455,14 @@ jQuery.extend( { // arg is for internal usage only map: function( elems, callback, arg ) { - var length, value, + var value, i = 0, + length = elems.length, + isArray = isArraylike( elems ), ret = []; // Go through the array, translating each of the items to their new values - if ( isArrayLike( elems ) ) { - length = elems.length; + if ( isArray ) { for ( ; i < length; i++ ) { value = callback( elems[ i ], i, arg ); @@ -503,50 +523,43 @@ jQuery.extend( { // jQuery.support is not used in Core but other projects attach their // properties to it so it needs to exist. support: support -} ); - -// JSHint would error on this code due to the Symbol not being defined in ES5. -// Defining this global in .jshintrc would create a danger of using the global -// unguarded in another place, it seems safer to just disable JSHint for these -// three lines. -/* jshint ignore: start */ -if ( typeof Symbol === "function" ) { - jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; -} -/* jshint ignore: end */ +}); // Populate the class2type map -jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), -function( i, name ) { +jQuery.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function(i, name) { class2type[ "[object " + name + "]" ] = name.toLowerCase(); -} ); +}); -function isArrayLike( obj ) { +function isArraylike( obj ) { // Support: iOS 8.2 (not reproducible in simulator) // `in` check used to prevent JIT error (gh-2145) // hasOwn isn't used here due to false negatives // regarding Nodelist length in IE - var length = !!obj && "length" in obj && obj.length, + var length = "length" in obj && obj.length, type = jQuery.type( obj ); if ( type === "function" || jQuery.isWindow( obj ) ) { return false; } + if ( obj.nodeType === 1 && length ) { + return true; + } + return type === "array" || length === 0 || typeof length === "number" && length > 0 && ( length - 1 ) in obj; } var Sizzle = /*! - * Sizzle CSS Selector Engine v2.2.1 + * Sizzle CSS Selector Engine v2.2.0-pre * http://sizzlejs.com/ * - * Copyright jQuery Foundation and other contributors + * Copyright 2008, 2014 jQuery Foundation, Inc. and other contributors * Released under the MIT license * http://jquery.org/license * - * Date: 2015-10-17 + * Date: 2014-12-16 */ (function( window ) { @@ -614,21 +627,25 @@ var i, // Regular expressions - // http://www.w3.org/TR/css3-selectors/#whitespace + // Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace whitespace = "[\\x20\\t\\r\\n\\f]", + // http://www.w3.org/TR/css3-syntax/#characters + characterEncoding = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", - // http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier - identifier = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", + // Loosely modeled on CSS identifier characters + // An unquoted value should be a CSS identifier http://www.w3.org/TR/css3-selectors/#attribute-selectors + // Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier + identifier = characterEncoding.replace( "w", "w#" ), // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors - attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + + attributes = "\\[" + whitespace + "*(" + characterEncoding + ")(?:" + whitespace + // Operator (capture 2) "*([*^$|!~]?=)" + whitespace + // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]" "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + "*\\]", - pseudos = ":(" + identifier + ")(?:\\((" + + pseudos = ":(" + characterEncoding + ")(?:\\((" + // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: // 1. quoted (capture 3; capture 4 or capture 5) "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + @@ -651,9 +668,9 @@ var i, ridentifier = new RegExp( "^" + identifier + "$" ), matchExpr = { - "ID": new RegExp( "^#(" + identifier + ")" ), - "CLASS": new RegExp( "^\\.(" + identifier + ")" ), - "TAG": new RegExp( "^(" + identifier + "|[*])" ), + "ID": new RegExp( "^#(" + characterEncoding + ")" ), + "CLASS": new RegExp( "^\\.(" + characterEncoding + ")" ), + "TAG": new RegExp( "^(" + characterEncoding.replace( "w", "w*" ) + ")" ), "ATTR": new RegExp( "^" + attributes ), "PSEUDO": new RegExp( "^" + pseudos ), "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + @@ -731,129 +748,103 @@ try { } function Sizzle( selector, context, results, seed ) { - var m, i, elem, nid, nidselect, match, groups, newSelector, - newContext = context && context.ownerDocument, + var match, elem, m, nodeType, + // QSA vars + i, groups, old, nid, newContext, newSelector; - // nodeType defaults to 9, since context defaults to document - nodeType = context ? context.nodeType : 9; + if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) { + setDocument( context ); + } + context = context || document; results = results || []; + nodeType = context.nodeType; - // Return early from calls with invalid selector or context if ( typeof selector !== "string" || !selector || nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { return results; } - // Try to shortcut find operations (as opposed to filters) in HTML documents - if ( !seed ) { - - if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) { - setDocument( context ); - } - context = context || document; - - if ( documentIsHTML ) { - - // If the selector is sufficiently simple, try using a "get*By*" DOM method - // (excepting DocumentFragment context, where the methods don't exist) - if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) { - - // ID selector - if ( (m = match[1]) ) { - - // Document context - if ( nodeType === 9 ) { - if ( (elem = context.getElementById( m )) ) { - - // Support: IE, Opera, Webkit - // TODO: identify versions - // getElementById can match elements by name instead of ID - if ( elem.id === m ) { - results.push( elem ); - return results; - } - } else { - return results; - } - - // Element context - } else { - - // Support: IE, Opera, Webkit - // TODO: identify versions - // getElementById can match elements by name instead of ID - if ( newContext && (elem = newContext.getElementById( m )) && - contains( context, elem ) && - elem.id === m ) { + if ( !seed && documentIsHTML ) { + // Try to shortcut find operations when possible (e.g., not under DocumentFragment) + if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) { + // Speed-up: Sizzle("#ID") + if ( (m = match[1]) ) { + if ( nodeType === 9 ) { + elem = context.getElementById( m ); + // Check parentNode to catch when Blackberry 4.6 returns + // nodes that are no longer in the document (jQuery #6963) + if ( elem && elem.parentNode ) { + // Handle the case where IE, Opera, and Webkit return items + // by name instead of ID + if ( elem.id === m ) { results.push( elem ); return results; } + } else { + return results; + } + } else { + // Context is not a document + if ( context.ownerDocument && (elem = context.ownerDocument.getElementById( m )) && + contains( context, elem ) && elem.id === m ) { + results.push( elem ); + return results; } - - // Type selector - } else if ( match[2] ) { - push.apply( results, context.getElementsByTagName( selector ) ); - return results; - - // Class selector - } else if ( (m = match[3]) && support.getElementsByClassName && - context.getElementsByClassName ) { - - push.apply( results, context.getElementsByClassName( m ) ); - return results; } - } - // Take advantage of querySelectorAll - if ( support.qsa && - !compilerCache[ selector + " " ] && - (!rbuggyQSA || !rbuggyQSA.test( selector )) ) { + // Speed-up: Sizzle("TAG") + } else if ( match[2] ) { + push.apply( results, context.getElementsByTagName( selector ) ); + return results; - if ( nodeType !== 1 ) { - newContext = context; - newSelector = selector; + // Speed-up: Sizzle(".CLASS") + } else if ( (m = match[3]) && support.getElementsByClassName ) { + push.apply( results, context.getElementsByClassName( m ) ); + return results; + } + } - // qSA looks outside Element context, which is not what we want - // Thanks to Andrew Dupont for this workaround technique - // Support: IE <=8 - // Exclude object elements - } else if ( context.nodeName.toLowerCase() !== "object" ) { + // QSA path + if ( support.qsa && (!rbuggyQSA || !rbuggyQSA.test( selector )) ) { + nid = old = expando; + newContext = context; + newSelector = nodeType !== 1 && selector; - // Capture the context ID, setting it first if necessary - if ( (nid = context.getAttribute( "id" )) ) { - nid = nid.replace( rescape, "\\$&" ); - } else { - context.setAttribute( "id", (nid = expando) ); - } + // qSA works strangely on Element-rooted queries + // We can work around this by specifying an extra ID on the root + // and working up from there (Thanks to Andrew Dupont for the technique) + // IE 8 doesn't work on object elements + if ( nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) { + groups = tokenize( selector ); - // Prefix every selector in the list - groups = tokenize( selector ); - i = groups.length; - nidselect = ridentifier.test( nid ) ? "#" + nid : "[id='" + nid + "']"; - while ( i-- ) { - groups[i] = nidselect + " " + toSelector( groups[i] ); - } - newSelector = groups.join( "," ); + if ( (old = context.getAttribute("id")) ) { + nid = old.replace( rescape, "\\$&" ); + } else { + context.setAttribute( "id", nid ); + } + nid = "[id='" + nid + "'] "; - // Expand context for sibling selectors - newContext = rsibling.test( selector ) && testContext( context.parentNode ) || - context; + i = groups.length; + while ( i-- ) { + groups[i] = nid + toSelector( groups[i] ); } + newContext = rsibling.test( selector ) && testContext( context.parentNode ) || context; + newSelector = groups.join(","); + } - if ( newSelector ) { - try { - push.apply( results, - newContext.querySelectorAll( newSelector ) - ); - return results; - } catch ( qsaError ) { - } finally { - if ( nid === expando ) { - context.removeAttribute( "id" ); - } + if ( newSelector ) { + try { + push.apply( results, + newContext.querySelectorAll( newSelector ) + ); + return results; + } catch(qsaError) { + } finally { + if ( !old ) { + context.removeAttribute("id"); } } } @@ -866,7 +857,7 @@ function Sizzle( selector, context, results, seed ) { /** * Create key-value caches of limited size - * @returns {function(string, object)} Returns the Object data after storing it on itself with + * @returns {Function(string, Object)} Returns the Object data after storing it on itself with * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) * deleting the oldest entry */ @@ -921,7 +912,7 @@ function assert( fn ) { */ function addHandle( attrs, handler ) { var arr = attrs.split("|"), - i = arr.length; + i = attrs.length; while ( i-- ) { Expr.attrHandle[ arr[i] ] = handler; @@ -1034,29 +1025,33 @@ setDocument = Sizzle.setDocument = function( node ) { var hasCompare, parent, doc = node ? node.ownerDocument || node : preferredDoc; - // Return early if doc is invalid or already selected + // If no document and documentElement is available, return if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) { return document; } - // Update global variables + // Set our document document = doc; - docElem = document.documentElement; - documentIsHTML = !isXML( document ); - - // Support: IE 9-11, Edge - // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) - if ( (parent = document.defaultView) && parent.top !== parent ) { - // Support: IE 11 + docElem = doc.documentElement; + parent = doc.defaultView; + + // Support: IE>8 + // If iframe document is assigned to "document" variable and if iframe has been reloaded, + // IE will throw "permission denied" error when accessing "document" variable, see jQuery #13936 + // IE6-8 do not support the defaultView property so parent will be undefined + if ( parent && parent !== parent.top ) { + // IE11 does not have attachEvent, so all must suffer if ( parent.addEventListener ) { parent.addEventListener( "unload", unloadHandler, false ); - - // Support: IE 9 - 10 only } else if ( parent.attachEvent ) { parent.attachEvent( "onunload", unloadHandler ); } } + /* Support tests + ---------------------------------------------------------------------- */ + documentIsHTML = !isXML( doc ); + /* Attributes ---------------------------------------------------------------------- */ @@ -1073,12 +1068,12 @@ setDocument = Sizzle.setDocument = function( node ) { // Check if getElementsByTagName("*") returns only elements support.getElementsByTagName = assert(function( div ) { - div.appendChild( document.createComment("") ); + div.appendChild( doc.createComment("") ); return !div.getElementsByTagName("*").length; }); // Support: IE<9 - support.getElementsByClassName = rnative.test( document.getElementsByClassName ); + support.getElementsByClassName = rnative.test( doc.getElementsByClassName ); // Support: IE<10 // Check if getElementById returns elements by name @@ -1086,7 +1081,7 @@ setDocument = Sizzle.setDocument = function( node ) { // so use a roundabout getElementsByName test support.getById = assert(function( div ) { docElem.appendChild( div ).id = expando; - return !document.getElementsByName || !document.getElementsByName( expando ).length; + return !doc.getElementsByName || !doc.getElementsByName( expando ).length; }); // ID find and filter @@ -1094,7 +1089,9 @@ setDocument = Sizzle.setDocument = function( node ) { Expr.find["ID"] = function( id, context ) { if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { var m = context.getElementById( id ); - return m ? [ m ] : []; + // Check parentNode to catch when Blackberry 4.6 returns + // nodes that are no longer in the document #6963 + return m && m.parentNode ? [ m ] : []; } }; Expr.filter["ID"] = function( id ) { @@ -1111,8 +1108,7 @@ setDocument = Sizzle.setDocument = function( node ) { Expr.filter["ID"] = function( id ) { var attrId = id.replace( runescape, funescape ); return function( elem ) { - var node = typeof elem.getAttributeNode !== "undefined" && - elem.getAttributeNode("id"); + var node = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode("id"); return node && node.value === attrId; }; }; @@ -1152,7 +1148,7 @@ setDocument = Sizzle.setDocument = function( node ) { // Class Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) { - if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { + if ( documentIsHTML ) { return context.getElementsByClassName( className ); } }; @@ -1172,7 +1168,7 @@ setDocument = Sizzle.setDocument = function( node ) { // See http://bugs.jquery.com/ticket/13378 rbuggyQSA = []; - if ( (support.qsa = rnative.test( document.querySelectorAll )) ) { + if ( (support.qsa = rnative.test( doc.querySelectorAll )) ) { // Build QSA regex // Regex strategy adopted from Diego Perini assert(function( div ) { @@ -1182,7 +1178,7 @@ setDocument = Sizzle.setDocument = function( node ) { // since its presence should be enough // http://bugs.jquery.com/ticket/12359 docElem.appendChild( div ).innerHTML = "" + - "" + ""; // Support: IE8, Opera 11-12.16 @@ -1199,7 +1195,7 @@ setDocument = Sizzle.setDocument = function( node ) { rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); } - // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ + // Support: Chrome<29, Android<4.2+, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.7+ if ( !div.querySelectorAll( "[id~=" + expando + "-]" ).length ) { rbuggyQSA.push("~="); } @@ -1222,7 +1218,7 @@ setDocument = Sizzle.setDocument = function( node ) { assert(function( div ) { // Support: Windows 8 Native Apps // The type and name attributes are restricted during .innerHTML assignment - var input = document.createElement("input"); + var input = doc.createElement("input"); input.setAttribute( "type", "hidden" ); div.appendChild( input ).setAttribute( "name", "D" ); @@ -1270,7 +1266,7 @@ setDocument = Sizzle.setDocument = function( node ) { hasCompare = rnative.test( docElem.compareDocumentPosition ); // Element contains another - // Purposefully self-exclusive + // Purposefully does not implement inclusive descendent // As in, an element does not contain itself contains = hasCompare || rnative.test( docElem.contains ) ? function( a, b ) { @@ -1324,10 +1320,10 @@ setDocument = Sizzle.setDocument = function( node ) { (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) { // Choose the first element that is related to our preferred document - if ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) { + if ( a === doc || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) { return -1; } - if ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) { + if ( b === doc || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) { return 1; } @@ -1355,8 +1351,8 @@ setDocument = Sizzle.setDocument = function( node ) { // Parentless nodes are either documents or disconnected if ( !aup || !bup ) { - return a === document ? -1 : - b === document ? 1 : + return a === doc ? -1 : + b === doc ? 1 : aup ? -1 : bup ? 1 : sortInput ? @@ -1393,7 +1389,7 @@ setDocument = Sizzle.setDocument = function( node ) { 0; }; - return document; + return doc; }; Sizzle.matches = function( expr, elements ) { @@ -1410,7 +1406,6 @@ Sizzle.matchesSelector = function( elem, expr ) { expr = expr.replace( rattributeQuotes, "='$1']" ); if ( support.matchesSelector && documentIsHTML && - !compilerCache[ expr + " " ] && ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { @@ -1684,12 +1679,11 @@ Expr = Sizzle.selectors = { } : function( elem, context, xml ) { - var cache, uniqueCache, outerCache, node, nodeIndex, start, + var cache, outerCache, node, diff, nodeIndex, start, dir = simple !== forward ? "nextSibling" : "previousSibling", parent = elem.parentNode, name = ofType && elem.nodeName.toLowerCase(), - useCache = !xml && !ofType, - diff = false; + useCache = !xml && !ofType; if ( parent ) { @@ -1698,10 +1692,7 @@ Expr = Sizzle.selectors = { while ( dir ) { node = elem; while ( (node = node[ dir ]) ) { - if ( ofType ? - node.nodeName.toLowerCase() === name : - node.nodeType === 1 ) { - + if ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) { return false; } } @@ -1715,21 +1706,11 @@ Expr = Sizzle.selectors = { // non-xml :nth-child(...) stores cache data on `parent` if ( forward && useCache ) { - // Seek `elem` from a previously-cached index - - // ...in a gzip-friendly way - node = parent; - outerCache = node[ expando ] || (node[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - (outerCache[ node.uniqueID ] = {}); - - cache = uniqueCache[ type ] || []; - nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; - diff = nodeIndex && cache[ 2 ]; + outerCache = parent[ expando ] || (parent[ expando ] = {}); + cache = outerCache[ type ] || []; + nodeIndex = cache[0] === dirruns && cache[1]; + diff = cache[0] === dirruns && cache[2]; node = nodeIndex && parent.childNodes[ nodeIndex ]; while ( (node = ++nodeIndex && node && node[ dir ] || @@ -1739,55 +1720,29 @@ Expr = Sizzle.selectors = { // When found, cache indexes on `parent` and break if ( node.nodeType === 1 && ++diff && node === elem ) { - uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; + outerCache[ type ] = [ dirruns, nodeIndex, diff ]; break; } } - } else { - // Use previously-cached element index if available - if ( useCache ) { - // ...in a gzip-friendly way - node = elem; - outerCache = node[ expando ] || (node[ expando ] = {}); + // Use previously-cached element index if available + } else if ( useCache && (cache = (elem[ expando ] || (elem[ expando ] = {}))[ type ]) && cache[0] === dirruns ) { + diff = cache[1]; - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - (outerCache[ node.uniqueID ] = {}); + // xml :nth-child(...) or :nth-last-child(...) or :nth(-last)?-of-type(...) + } else { + // Use the same loop as above to seek `elem` from the start + while ( (node = ++nodeIndex && node && node[ dir ] || + (diff = nodeIndex = 0) || start.pop()) ) { - cache = uniqueCache[ type ] || []; - nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; - diff = nodeIndex; - } + if ( ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) && ++diff ) { + // Cache the index of each encountered element + if ( useCache ) { + (node[ expando ] || (node[ expando ] = {}))[ type ] = [ dirruns, diff ]; + } - // xml :nth-child(...) - // or :nth-last-child(...) or :nth(-last)?-of-type(...) - if ( diff === false ) { - // Use the same loop as above to seek `elem` from the start - while ( (node = ++nodeIndex && node && node[ dir ] || - (diff = nodeIndex = 0) || start.pop()) ) { - - if ( ( ofType ? - node.nodeName.toLowerCase() === name : - node.nodeType === 1 ) && - ++diff ) { - - // Cache the index of each encountered element - if ( useCache ) { - outerCache = node[ expando ] || (node[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - (outerCache[ node.uniqueID ] = {}); - - uniqueCache[ type ] = [ dirruns, diff ]; - } - - if ( node === elem ) { - break; - } + if ( node === elem ) { + break; } } } @@ -2149,10 +2104,10 @@ function addCombinator( matcher, combinator, base ) { // Check against all ancestor/preceding elements function( elem, context, xml ) { - var oldCache, uniqueCache, outerCache, + var oldCache, outerCache, newCache = [ dirruns, doneName ]; - // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching + // We can't set arbitrary data on XML nodes, so they don't benefit from dir caching if ( xml ) { while ( (elem = elem[ dir ]) ) { if ( elem.nodeType === 1 || checkNonElements ) { @@ -2165,19 +2120,14 @@ function addCombinator( matcher, combinator, base ) { while ( (elem = elem[ dir ]) ) { if ( elem.nodeType === 1 || checkNonElements ) { outerCache = elem[ expando ] || (elem[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {}); - - if ( (oldCache = uniqueCache[ dir ]) && + if ( (oldCache = outerCache[ dir ]) && oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { // Assign to newCache so results back-propagate to previous elements return (newCache[ 2 ] = oldCache[ 2 ]); } else { // Reuse newcache so results back-propagate to previous elements - uniqueCache[ dir ] = newCache; + outerCache[ dir ] = newCache; // A match means we're done; a fail means we have to keep checking if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) { @@ -2402,21 +2352,18 @@ function matcherFromGroupMatchers( elementMatchers, setMatchers ) { len = elems.length; if ( outermost ) { - outermostContext = context === document || context || outermost; + outermostContext = context !== document && context; } // Add elements passing elementMatchers directly to results + // Keep `i` a string if there are no elements so `matchedCount` will be "00" below // Support: IE<9, Safari // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id for ( ; i !== len && (elem = elems[i]) != null; i++ ) { if ( byElement && elem ) { j = 0; - if ( !context && elem.ownerDocument !== document ) { - setDocument( elem ); - xml = !documentIsHTML; - } while ( (matcher = elementMatchers[j++]) ) { - if ( matcher( elem, context || document, xml) ) { + if ( matcher( elem, context, xml ) ) { results.push( elem ); break; } @@ -2440,17 +2387,8 @@ function matcherFromGroupMatchers( elementMatchers, setMatchers ) { } } - // `i` is now the count of elements visited above, and adding it to `matchedCount` - // makes the latter nonnegative. - matchedCount += i; - // Apply set filters to unmatched elements - // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` - // equals `i`), unless we didn't visit _any_ elements in the above loop because we have - // no element matchers and no seed. - // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that - // case, which will result in a "00" `matchedCount` that differs from `i` but is also - // numerically zero. + matchedCount += i; if ( bySet && i !== matchedCount ) { j = 0; while ( (matcher = setMatchers[j++]) ) { @@ -2542,11 +2480,10 @@ select = Sizzle.select = function( selector, context, results, seed ) { results = results || []; - // Try to minimize operations if there is only one selector in the list and no seed - // (the latter of which guarantees us context) + // Try to minimize operations if there is no seed and only one group if ( match.length === 1 ) { - // Reduce context if the leading compound selector is an ID + // Take a shortcut and set the context if the root selector is an ID tokens = match[0] = match[0].slice( 0 ); if ( tokens.length > 2 && (token = tokens[0]).type === "ID" && support.getById && context.nodeType === 9 && documentIsHTML && @@ -2601,7 +2538,7 @@ select = Sizzle.select = function( selector, context, results, seed ) { context, !documentIsHTML, results, - !context || rsibling.test( selector ) && testContext( context.parentNode ) || context + rsibling.test( selector ) && testContext( context.parentNode ) || context ); return results; }; @@ -2677,46 +2614,17 @@ return Sizzle; jQuery.find = Sizzle; jQuery.expr = Sizzle.selectors; -jQuery.expr[ ":" ] = jQuery.expr.pseudos; -jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; +jQuery.expr[":"] = jQuery.expr.pseudos; +jQuery.unique = Sizzle.uniqueSort; jQuery.text = Sizzle.getText; jQuery.isXMLDoc = Sizzle.isXML; jQuery.contains = Sizzle.contains; -var dir = function( elem, dir, until ) { - var matched = [], - truncate = until !== undefined; - - while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { - if ( elem.nodeType === 1 ) { - if ( truncate && jQuery( elem ).is( until ) ) { - break; - } - matched.push( elem ); - } - } - return matched; -}; - - -var siblings = function( n, elem ) { - var matched = []; - - for ( ; n; n = n.nextSibling ) { - if ( n.nodeType === 1 && n !== elem ) { - matched.push( n ); - } - } - - return matched; -}; - - var rneedsContext = jQuery.expr.match.needsContext; -var rsingleTag = ( /^<([\w-]+)\s*\/?>(?:<\/\1>|)$/ ); +var rsingleTag = (/^<(\w+)\s*\/?>(?:<\/\1>|)$/); @@ -2728,14 +2636,14 @@ function winnow( elements, qualifier, not ) { return jQuery.grep( elements, function( elem, i ) { /* jshint -W018 */ return !!qualifier.call( elem, i, elem ) !== not; - } ); + }); } if ( qualifier.nodeType ) { return jQuery.grep( elements, function( elem ) { return ( elem === qualifier ) !== not; - } ); + }); } @@ -2748,8 +2656,8 @@ function winnow( elements, qualifier, not ) { } return jQuery.grep( elements, function( elem ) { - return ( indexOf.call( qualifier, elem ) > -1 ) !== not; - } ); + return ( indexOf.call( qualifier, elem ) >= 0 ) !== not; + }); } jQuery.filter = function( expr, elems, not ) { @@ -2763,10 +2671,10 @@ jQuery.filter = function( expr, elems, not ) { jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] : jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { return elem.nodeType === 1; - } ) ); + })); }; -jQuery.fn.extend( { +jQuery.fn.extend({ find: function( selector ) { var i, len = this.length, @@ -2774,13 +2682,13 @@ jQuery.fn.extend( { self = this; if ( typeof selector !== "string" ) { - return this.pushStack( jQuery( selector ).filter( function() { + return this.pushStack( jQuery( selector ).filter(function() { for ( i = 0; i < len; i++ ) { if ( jQuery.contains( self[ i ], this ) ) { return true; } } - } ) ); + }) ); } for ( i = 0; i < len; i++ ) { @@ -2793,10 +2701,10 @@ jQuery.fn.extend( { return ret; }, filter: function( selector ) { - return this.pushStack( winnow( this, selector || [], false ) ); + return this.pushStack( winnow(this, selector || [], false) ); }, not: function( selector ) { - return this.pushStack( winnow( this, selector || [], true ) ); + return this.pushStack( winnow(this, selector || [], true) ); }, is: function( selector ) { return !!winnow( @@ -2810,7 +2718,7 @@ jQuery.fn.extend( { false ).length; } -} ); +}); // Initialize a jQuery object @@ -2824,7 +2732,7 @@ var rootjQuery, // Strict HTML recognition (#11290: must start with <) rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, - init = jQuery.fn.init = function( selector, context, root ) { + init = jQuery.fn.init = function( selector, context ) { var match, elem; // HANDLE: $(""), $(null), $(undefined), $(false) @@ -2832,16 +2740,9 @@ var rootjQuery, return this; } - // Method init() accepts an alternate rootjQuery - // so migrate can support jQuery.sub (gh-2101) - root = root || rootjQuery; - // Handle HTML strings if ( typeof selector === "string" ) { - if ( selector[ 0 ] === "<" && - selector[ selector.length - 1 ] === ">" && - selector.length >= 3 ) { - + if ( selector[0] === "<" && selector[ selector.length - 1 ] === ">" && selector.length >= 3 ) { // Assume that strings that start and end with <> are HTML and skip the regex check match = [ null, selector, null ]; @@ -2850,24 +2751,23 @@ var rootjQuery, } // Match html or make sure no context is specified for #id - if ( match && ( match[ 1 ] || !context ) ) { + if ( match && (match[1] || !context) ) { // HANDLE: $(html) -> $(array) - if ( match[ 1 ] ) { - context = context instanceof jQuery ? context[ 0 ] : context; + if ( match[1] ) { + context = context instanceof jQuery ? context[0] : context; // Option to run scripts is true for back-compat // Intentionally let the error be thrown if parseHTML is not present jQuery.merge( this, jQuery.parseHTML( - match[ 1 ], + match[1], context && context.nodeType ? context.ownerDocument || context : document, true ) ); // HANDLE: $(html, props) - if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { + if ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) ) { for ( match in context ) { - // Properties of context are called as methods if possible if ( jQuery.isFunction( this[ match ] ) ) { this[ match ]( context[ match ] ); @@ -2883,15 +2783,14 @@ var rootjQuery, // HANDLE: $(#id) } else { - elem = document.getElementById( match[ 2 ] ); + elem = document.getElementById( match[2] ); // Support: Blackberry 4.6 // gEBID returns nodes no longer in the document (#6963) if ( elem && elem.parentNode ) { - // Inject the element directly into the jQuery object this.length = 1; - this[ 0 ] = elem; + this[0] = elem; } this.context = document; @@ -2901,7 +2800,7 @@ var rootjQuery, // HANDLE: $(expr, $(...)) } else if ( !context || context.jquery ) { - return ( context || root ).find( selector ); + return ( context || rootjQuery ).find( selector ); // HANDLE: $(expr, context) // (which is just equivalent to: $(context).find(expr) @@ -2911,16 +2810,15 @@ var rootjQuery, // HANDLE: $(DOMElement) } else if ( selector.nodeType ) { - this.context = this[ 0 ] = selector; + this.context = this[0] = selector; this.length = 1; return this; // HANDLE: $(function) // Shortcut for document ready } else if ( jQuery.isFunction( selector ) ) { - return root.ready !== undefined ? - root.ready( selector ) : - + return typeof rootjQuery.ready !== "undefined" ? + rootjQuery.ready( selector ) : // Execute immediately if ready is not present selector( jQuery ); } @@ -2941,7 +2839,6 @@ rootjQuery = jQuery( document ); var rparentsprev = /^(?:parents|prev(?:Until|All))/, - // Methods guaranteed to produce a unique set when starting from a unique set guaranteedUnique = { children: true, @@ -2950,19 +2847,48 @@ var rparentsprev = /^(?:parents|prev(?:Until|All))/, prev: true }; -jQuery.fn.extend( { +jQuery.extend({ + dir: function( elem, dir, until ) { + var matched = [], + truncate = until !== undefined; + + while ( (elem = elem[ dir ]) && elem.nodeType !== 9 ) { + if ( elem.nodeType === 1 ) { + if ( truncate && jQuery( elem ).is( until ) ) { + break; + } + matched.push( elem ); + } + } + return matched; + }, + + sibling: function( n, elem ) { + var matched = []; + + for ( ; n; n = n.nextSibling ) { + if ( n.nodeType === 1 && n !== elem ) { + matched.push( n ); + } + } + + return matched; + } +}); + +jQuery.fn.extend({ has: function( target ) { var targets = jQuery( target, this ), l = targets.length; - return this.filter( function() { + return this.filter(function() { var i = 0; for ( ; i < l; i++ ) { - if ( jQuery.contains( this, targets[ i ] ) ) { + if ( jQuery.contains( this, targets[i] ) ) { return true; } } - } ); + }); }, closest: function( selectors, context ) { @@ -2975,15 +2901,14 @@ jQuery.fn.extend( { 0; for ( ; i < l; i++ ) { - for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { - + for ( cur = this[i]; cur && cur !== context; cur = cur.parentNode ) { // Always skip document fragments - if ( cur.nodeType < 11 && ( pos ? - pos.index( cur ) > -1 : + if ( cur.nodeType < 11 && (pos ? + pos.index(cur) > -1 : // Don't pass non-elements to Sizzle cur.nodeType === 1 && - jQuery.find.matchesSelector( cur, selectors ) ) ) { + jQuery.find.matchesSelector(cur, selectors)) ) { matched.push( cur ); break; @@ -2991,7 +2916,7 @@ jQuery.fn.extend( { } } - return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); + return this.pushStack( matched.length > 1 ? jQuery.unique( matched ) : matched ); }, // Determine the position of an element within the set @@ -3017,7 +2942,7 @@ jQuery.fn.extend( { add: function( selector, context ) { return this.pushStack( - jQuery.uniqueSort( + jQuery.unique( jQuery.merge( this.get(), jQuery( selector, context ) ) ) ); @@ -3025,26 +2950,26 @@ jQuery.fn.extend( { addBack: function( selector ) { return this.add( selector == null ? - this.prevObject : this.prevObject.filter( selector ) + this.prevObject : this.prevObject.filter(selector) ); } -} ); +}); function sibling( cur, dir ) { - while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {} + while ( (cur = cur[dir]) && cur.nodeType !== 1 ) {} return cur; } -jQuery.each( { +jQuery.each({ parent: function( elem ) { var parent = elem.parentNode; return parent && parent.nodeType !== 11 ? parent : null; }, parents: function( elem ) { - return dir( elem, "parentNode" ); + return jQuery.dir( elem, "parentNode" ); }, parentsUntil: function( elem, i, until ) { - return dir( elem, "parentNode", until ); + return jQuery.dir( elem, "parentNode", until ); }, next: function( elem ) { return sibling( elem, "nextSibling" ); @@ -3053,22 +2978,22 @@ jQuery.each( { return sibling( elem, "previousSibling" ); }, nextAll: function( elem ) { - return dir( elem, "nextSibling" ); + return jQuery.dir( elem, "nextSibling" ); }, prevAll: function( elem ) { - return dir( elem, "previousSibling" ); + return jQuery.dir( elem, "previousSibling" ); }, nextUntil: function( elem, i, until ) { - return dir( elem, "nextSibling", until ); + return jQuery.dir( elem, "nextSibling", until ); }, prevUntil: function( elem, i, until ) { - return dir( elem, "previousSibling", until ); + return jQuery.dir( elem, "previousSibling", until ); }, siblings: function( elem ) { - return siblings( ( elem.parentNode || {} ).firstChild, elem ); + return jQuery.sibling( ( elem.parentNode || {} ).firstChild, elem ); }, children: function( elem ) { - return siblings( elem.firstChild ); + return jQuery.sibling( elem.firstChild ); }, contents: function( elem ) { return elem.contentDocument || jQuery.merge( [], elem.childNodes ); @@ -3086,10 +3011,9 @@ jQuery.each( { } if ( this.length > 1 ) { - // Remove duplicates if ( !guaranteedUnique[ name ] ) { - jQuery.uniqueSort( matched ); + jQuery.unique( matched ); } // Reverse order for parents* and prev-derivatives @@ -3100,17 +3024,20 @@ jQuery.each( { return this.pushStack( matched ); }; -} ); -var rnotwhite = ( /\S+/g ); +}); +var rnotwhite = (/\S+/g); + +// String to Object options format cache +var optionsCache = {}; -// Convert String-formatted options into Object-formatted ones +// Convert String-formatted options into Object-formatted ones and store in cache function createOptions( options ) { - var object = {}; + var object = optionsCache[ options ] = {}; jQuery.each( options.match( rnotwhite ) || [], function( _, flag ) { object[ flag ] = true; - } ); + }); return object; } @@ -3141,186 +3068,156 @@ jQuery.Callbacks = function( options ) { // Convert options from String-formatted to Object-formatted if needed // (we check in cache first) options = typeof options === "string" ? - createOptions( options ) : + ( optionsCache[ options ] || createOptions( options ) ) : jQuery.extend( {}, options ); - var // Flag to know if list is currently firing - firing, - - // Last fire value for non-forgettable lists + var // Last fire value (for non-forgettable lists) memory, - // Flag to know if list was already fired fired, - - // Flag to prevent firing - locked, - + // Flag to know if list is currently firing + firing, + // First callback to fire (used internally by add and fireWith) + firingStart, + // End of the loop when firing + firingLength, + // Index of currently firing callback (modified by remove if needed) + firingIndex, // Actual callback list list = [], - - // Queue of execution data for repeatable lists - queue = [], - - // Index of currently firing callback (modified by add/remove as needed) - firingIndex = -1, - + // Stack of fire calls for repeatable lists + stack = !options.once && [], // Fire callbacks - fire = function() { - - // Enforce single-firing - locked = options.once; - - // Execute callbacks for all pending executions, - // respecting firingIndex overrides and runtime changes - fired = firing = true; - for ( ; queue.length; firingIndex = -1 ) { - memory = queue.shift(); - while ( ++firingIndex < list.length ) { - - // Run callback and check for early termination - if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && - options.stopOnFalse ) { - - // Jump to end and forget the data so .add doesn't re-fire - firingIndex = list.length; - memory = false; - } + fire = function( data ) { + memory = options.memory && data; + fired = true; + firingIndex = firingStart || 0; + firingStart = 0; + firingLength = list.length; + firing = true; + for ( ; list && firingIndex < firingLength; firingIndex++ ) { + if ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) === false && options.stopOnFalse ) { + memory = false; // To prevent further calls using add + break; } } - - // Forget the data if we're done with it - if ( !options.memory ) { - memory = false; - } - firing = false; - - // Clean up if we're done firing for good - if ( locked ) { - - // Keep an empty list if we have data for future add calls - if ( memory ) { + if ( list ) { + if ( stack ) { + if ( stack.length ) { + fire( stack.shift() ); + } + } else if ( memory ) { list = []; - - // Otherwise, this object is spent } else { - list = ""; + self.disable(); } } }, - // Actual Callbacks object self = { - // Add a callback or a collection of callbacks to the list add: function() { if ( list ) { - - // If we have memory from a past run, we should fire after adding - if ( memory && !firing ) { - firingIndex = list.length - 1; - queue.push( memory ); - } - - ( function add( args ) { + // First, we save the current length + var start = list.length; + (function add( args ) { jQuery.each( args, function( _, arg ) { - if ( jQuery.isFunction( arg ) ) { + var type = jQuery.type( arg ); + if ( type === "function" ) { if ( !options.unique || !self.has( arg ) ) { list.push( arg ); } - } else if ( arg && arg.length && jQuery.type( arg ) !== "string" ) { - + } else if ( arg && arg.length && type !== "string" ) { // Inspect recursively add( arg ); } - } ); - } )( arguments ); - - if ( memory && !firing ) { - fire(); + }); + })( arguments ); + // Do we need to add the callbacks to the + // current firing batch? + if ( firing ) { + firingLength = list.length; + // With memory, if we're not firing then + // we should call right away + } else if ( memory ) { + firingStart = start; + fire( memory ); } } return this; }, - // Remove a callback from the list remove: function() { - jQuery.each( arguments, function( _, arg ) { - var index; - while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { - list.splice( index, 1 ); - - // Handle firing indexes - if ( index <= firingIndex ) { - firingIndex--; + if ( list ) { + jQuery.each( arguments, function( _, arg ) { + var index; + while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { + list.splice( index, 1 ); + // Handle firing indexes + if ( firing ) { + if ( index <= firingLength ) { + firingLength--; + } + if ( index <= firingIndex ) { + firingIndex--; + } + } } - } - } ); + }); + } return this; }, - // Check if a given callback is in the list. // If no argument is given, return whether or not list has callbacks attached. has: function( fn ) { - return fn ? - jQuery.inArray( fn, list ) > -1 : - list.length > 0; + return fn ? jQuery.inArray( fn, list ) > -1 : !!( list && list.length ); }, - // Remove all callbacks from the list empty: function() { - if ( list ) { - list = []; - } + list = []; + firingLength = 0; return this; }, - - // Disable .fire and .add - // Abort any current/pending executions - // Clear all callbacks and values + // Have the list do nothing anymore disable: function() { - locked = queue = []; - list = memory = ""; + list = stack = memory = undefined; return this; }, + // Is it disabled? disabled: function() { return !list; }, - - // Disable .fire - // Also disable .add unless we have memory (since it would have no effect) - // Abort any pending executions + // Lock the list in its current state lock: function() { - locked = queue = []; + stack = undefined; if ( !memory ) { - list = memory = ""; + self.disable(); } return this; }, + // Is it locked? locked: function() { - return !!locked; + return !stack; }, - // Call all callbacks with the given context and arguments fireWith: function( context, args ) { - if ( !locked ) { + if ( list && ( !fired || stack ) ) { args = args || []; args = [ context, args.slice ? args.slice() : args ]; - queue.push( args ); - if ( !firing ) { - fire(); + if ( firing ) { + stack.push( args ); + } else { + fire( args ); } } return this; }, - // Call all the callbacks with the given arguments fire: function() { self.fireWith( this, arguments ); return this; }, - // To know if the callbacks have already been called at least once fired: function() { return !!fired; @@ -3331,15 +3228,14 @@ jQuery.Callbacks = function( options ) { }; -jQuery.extend( { +jQuery.extend({ Deferred: function( func ) { var tuples = [ - // action, add listener, listener list, final state - [ "resolve", "done", jQuery.Callbacks( "once memory" ), "resolved" ], - [ "reject", "fail", jQuery.Callbacks( "once memory" ), "rejected" ], - [ "notify", "progress", jQuery.Callbacks( "memory" ) ] + [ "resolve", "done", jQuery.Callbacks("once memory"), "resolved" ], + [ "reject", "fail", jQuery.Callbacks("once memory"), "rejected" ], + [ "notify", "progress", jQuery.Callbacks("memory") ] ], state = "pending", promise = { @@ -3352,30 +3248,25 @@ jQuery.extend( { }, then: function( /* fnDone, fnFail, fnProgress */ ) { var fns = arguments; - return jQuery.Deferred( function( newDefer ) { + return jQuery.Deferred(function( newDefer ) { jQuery.each( tuples, function( i, tuple ) { var fn = jQuery.isFunction( fns[ i ] ) && fns[ i ]; - // deferred[ done | fail | progress ] for forwarding actions to newDefer - deferred[ tuple[ 1 ] ]( function() { + deferred[ tuple[1] ](function() { var returned = fn && fn.apply( this, arguments ); if ( returned && jQuery.isFunction( returned.promise ) ) { returned.promise() - .progress( newDefer.notify ) .done( newDefer.resolve ) - .fail( newDefer.reject ); + .fail( newDefer.reject ) + .progress( newDefer.notify ); } else { - newDefer[ tuple[ 0 ] + "With" ]( - this === promise ? newDefer.promise() : this, - fn ? [ returned ] : arguments - ); + newDefer[ tuple[ 0 ] + "With" ]( this === promise ? newDefer.promise() : this, fn ? [ returned ] : arguments ); } - } ); - } ); + }); + }); fns = null; - } ).promise(); + }).promise(); }, - // Get a promise for this deferred // If obj is provided, the promise aspect is added to the object promise: function( obj ) { @@ -3393,12 +3284,11 @@ jQuery.extend( { stateString = tuple[ 3 ]; // promise[ done | fail | progress ] = list.add - promise[ tuple[ 1 ] ] = list.add; + promise[ tuple[1] ] = list.add; // Handle state if ( stateString ) { - list.add( function() { - + list.add(function() { // state = [ resolved | rejected ] state = stateString; @@ -3407,12 +3297,12 @@ jQuery.extend( { } // deferred[ resolve | reject | notify ] - deferred[ tuple[ 0 ] ] = function() { - deferred[ tuple[ 0 ] + "With" ]( this === deferred ? promise : this, arguments ); + deferred[ tuple[0] ] = function() { + deferred[ tuple[0] + "With" ]( this === deferred ? promise : this, arguments ); return this; }; - deferred[ tuple[ 0 ] + "With" ] = list.fireWith; - } ); + deferred[ tuple[0] + "With" ] = list.fireWith; + }); // Make the deferred a promise promise.promise( deferred ); @@ -3433,11 +3323,9 @@ jQuery.extend( { length = resolveValues.length, // the count of uncompleted subordinates - remaining = length !== 1 || - ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0, + remaining = length !== 1 || ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0, - // the master Deferred. - // If resolveValues consist of only a single Deferred, just use that. + // the master Deferred. If resolveValues consist of only a single Deferred, just use that. deferred = remaining === 1 ? subordinate : jQuery.Deferred(), // Update function for both resolve and progress values @@ -3463,9 +3351,9 @@ jQuery.extend( { for ( ; i < length; i++ ) { if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) { resolveValues[ i ].promise() - .progress( updateFunc( i, progressContexts, progressValues ) ) .done( updateFunc( i, resolveContexts, resolveValues ) ) - .fail( deferred.reject ); + .fail( deferred.reject ) + .progress( updateFunc( i, progressContexts, progressValues ) ); } else { --remaining; } @@ -3479,22 +3367,20 @@ jQuery.extend( { return deferred.promise(); } -} ); +}); // The deferred used on DOM ready var readyList; jQuery.fn.ready = function( fn ) { - // Add the callback jQuery.ready.promise().done( fn ); return this; }; -jQuery.extend( { - +jQuery.extend({ // Is the DOM ready to be used? Set to true once it occurs. isReady: false, @@ -3536,14 +3422,14 @@ jQuery.extend( { jQuery( document ).off( "ready" ); } } -} ); +}); /** * The ready event handler and self cleanup method */ function completed() { - document.removeEventListener( "DOMContentLoaded", completed ); - window.removeEventListener( "load", completed ); + document.removeEventListener( "DOMContentLoaded", completed, false ); + window.removeEventListener( "load", completed, false ); jQuery.ready(); } @@ -3552,23 +3438,20 @@ jQuery.ready.promise = function( obj ) { readyList = jQuery.Deferred(); - // Catch cases where $(document).ready() is called - // after the browser event has already occurred. - // Support: IE9-10 only - // Older IE sometimes signals "interactive" too soon - if ( document.readyState === "complete" || - ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { - + // Catch cases where $(document).ready() is called after the browser event has already occurred. + // We once tried to use readyState "interactive" here, but it caused issues like the one + // discovered by ChrisS here: http://bugs.jquery.com/ticket/12282#comment:15 + if ( document.readyState === "complete" ) { // Handle it asynchronously to allow scripts the opportunity to delay ready - window.setTimeout( jQuery.ready ); + setTimeout( jQuery.ready ); } else { // Use the handy event callback - document.addEventListener( "DOMContentLoaded", completed ); + document.addEventListener( "DOMContentLoaded", completed, false ); // A fallback to window.onload, that will always work - window.addEventListener( "load", completed ); + window.addEventListener( "load", completed, false ); } } return readyList.promise( obj ); @@ -3582,7 +3465,7 @@ jQuery.ready.promise(); // Multifunctional method to get and set values of a collection // The value/s can optionally be executed if it's a function -var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { +var access = jQuery.access = function( elems, fn, key, value, chainable, emptyGet, raw ) { var i = 0, len = elems.length, bulk = key == null; @@ -3591,7 +3474,7 @@ var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { if ( jQuery.type( key ) === "object" ) { chainable = true; for ( i in key ) { - access( elems, fn, i, key[ i ], true, emptyGet, raw ); + jQuery.access( elems, fn, i, key[i], true, emptyGet, raw ); } // Sets one value @@ -3603,7 +3486,6 @@ var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { } if ( bulk ) { - // Bulk operations run against the entire set if ( raw ) { fn.call( elems, value ); @@ -3620,11 +3502,7 @@ var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { if ( fn ) { for ( ; i < len; i++ ) { - fn( - elems[ i ], key, raw ? - value : - value.call( elems[ i ], i, fn( elems[ i ], key ) ) - ); + fn( elems[i], key, raw ? value : value.call( elems[i], i, fn( elems[i], key ) ) ); } } } @@ -3635,10 +3513,14 @@ var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { // Gets bulk ? fn.call( elems ) : - len ? fn( elems[ 0 ], key ) : emptyGet; + len ? fn( elems[0], key ) : emptyGet; }; -var acceptData = function( owner ) { + +/** + * Determines whether an object can have data + */ +jQuery.acceptData = function( owner ) { // Accepts only: // - Node // - Node.ELEMENT_NODE @@ -3650,79 +3532,66 @@ var acceptData = function( owner ) { }; - - function Data() { + // Support: Android<4, + // Old WebKit does not have Object.preventExtensions/freeze method, + // return new empty object instead with no [[set]] accessor + Object.defineProperty( this.cache = {}, 0, { + get: function() { + return {}; + } + }); + this.expando = jQuery.expando + Data.uid++; } Data.uid = 1; +Data.accepts = jQuery.acceptData; Data.prototype = { - - register: function( owner, initial ) { - var value = initial || {}; - - // If it is a node unlikely to be stringify-ed or looped over - // use plain assignment - if ( owner.nodeType ) { - owner[ this.expando ] = value; - - // Otherwise secure it in a non-enumerable, non-writable property - // configurability must be true to allow the property to be - // deleted with the delete operator - } else { - Object.defineProperty( owner, this.expando, { - value: value, - writable: true, - configurable: true - } ); - } - return owner[ this.expando ]; - }, - cache: function( owner ) { - + key: function( owner ) { // We can accept data for non-element nodes in modern browsers, // but we should not, see #8335. - // Always return an empty object. - if ( !acceptData( owner ) ) { - return {}; + // Always return the key for a frozen object. + if ( !Data.accepts( owner ) ) { + return 0; } - // Check if the owner object already has a cache - var value = owner[ this.expando ]; + var descriptor = {}, + // Check if the owner object already has a cache key + unlock = owner[ this.expando ]; // If not, create one - if ( !value ) { - value = {}; - - // We can accept data for non-element nodes in modern browsers, - // but we should not, see #8335. - // Always return an empty object. - if ( acceptData( owner ) ) { - - // If it is a node unlikely to be stringify-ed or looped over - // use plain assignment - if ( owner.nodeType ) { - owner[ this.expando ] = value; - - // Otherwise secure it in a non-enumerable property - // configurable must be true to allow the property to be - // deleted when data is removed - } else { - Object.defineProperty( owner, this.expando, { - value: value, - configurable: true - } ); - } + if ( !unlock ) { + unlock = Data.uid++; + + // Secure it in a non-enumerable, non-writable property + try { + descriptor[ this.expando ] = { value: unlock }; + Object.defineProperties( owner, descriptor ); + + // Support: Android<4 + // Fallback to a less secure definition + } catch ( e ) { + descriptor[ this.expando ] = unlock; + jQuery.extend( owner, descriptor ); } } - return value; + // Ensure the cache object + if ( !this.cache[ unlock ] ) { + this.cache[ unlock ] = {}; + } + + return unlock; }, set: function( owner, data, value ) { var prop, - cache = this.cache( owner ); + // There may be an unlock assigned to this node, + // if there is no entry for this "owner", create one inline + // and set the unlock as though an owner entry had always existed + unlock = this.key( owner ), + cache = this.cache[ unlock ]; // Handle: [ owner, key, value ] args if ( typeof data === "string" ) { @@ -3730,22 +3599,30 @@ Data.prototype = { // Handle: [ owner, { properties } ] args } else { - - // Copy the properties one-by-one to the cache object - for ( prop in data ) { - cache[ prop ] = data[ prop ]; + // Fresh assignments by object are shallow copied + if ( jQuery.isEmptyObject( cache ) ) { + jQuery.extend( this.cache[ unlock ], data ); + // Otherwise, copy the properties one-by-one to the cache object + } else { + for ( prop in data ) { + cache[ prop ] = data[ prop ]; + } } } return cache; }, get: function( owner, key ) { + // Either a valid cache is found, or will be created. + // New caches will be created and the unlock returned, + // allowing direct access to the newly created + // empty data object. A valid owner object must be provided. + var cache = this.cache[ this.key( owner ) ]; + return key === undefined ? - this.cache( owner ) : - owner[ this.expando ] && owner[ this.expando ][ key ]; + cache : cache[ key ]; }, access: function( owner, key, value ) { var stored; - // In cases where either: // // 1. No key was specified @@ -3758,15 +3635,15 @@ Data.prototype = { // 2. The data stored at the key // if ( key === undefined || - ( ( key && typeof key === "string" ) && value === undefined ) ) { + ((key && typeof key === "string") && value === undefined) ) { stored = this.get( owner, key ); return stored !== undefined ? - stored : this.get( owner, jQuery.camelCase( key ) ); + stored : this.get( owner, jQuery.camelCase(key) ); } - // When the key is not a string, or both a key and value + // [*]When the key is not a string, or both a key and value // are specified, set or extend (existing objects) with either: // // 1. An object of properties @@ -3780,20 +3657,15 @@ Data.prototype = { }, remove: function( owner, key ) { var i, name, camel, - cache = owner[ this.expando ]; - - if ( cache === undefined ) { - return; - } + unlock = this.key( owner ), + cache = this.cache[ unlock ]; if ( key === undefined ) { - this.register( owner ); + this.cache[ unlock ] = {}; } else { - // Support array or space separated string of keys if ( jQuery.isArray( key ) ) { - // If "name" is an array of keys... // When data is initially created, via ("key", "val") signature, // keys will be converted to camelCase. @@ -3803,12 +3675,10 @@ Data.prototype = { name = key.concat( key.map( jQuery.camelCase ) ); } else { camel = jQuery.camelCase( key ); - // Try the string as a key before any manipulation if ( key in cache ) { name = [ key, camel ]; } else { - // If a key with the spaces exists, use it. // Otherwise, create an array by matching non-whitespace name = camel; @@ -3818,34 +3688,25 @@ Data.prototype = { } i = name.length; - while ( i-- ) { delete cache[ name[ i ] ]; } } - - // Remove the expando if there's no more data - if ( key === undefined || jQuery.isEmptyObject( cache ) ) { - - // Support: Chrome <= 35-45+ - // Webkit & Blink performance suffers when deleting properties - // from DOM nodes, so set to undefined instead - // https://code.google.com/p/chromium/issues/detail?id=378607 - if ( owner.nodeType ) { - owner[ this.expando ] = undefined; - } else { - delete owner[ this.expando ]; - } - } }, hasData: function( owner ) { - var cache = owner[ this.expando ]; - return cache !== undefined && !jQuery.isEmptyObject( cache ); + return !jQuery.isEmptyObject( + this.cache[ owner[ this.expando ] ] || {} + ); + }, + discard: function( owner ) { + if ( owner[ this.expando ] ) { + delete this.cache[ owner[ this.expando ] ]; + } } }; -var dataPriv = new Data(); +var data_priv = new Data(); -var dataUser = new Data(); +var data_user = new Data(); @@ -3860,7 +3721,7 @@ var dataUser = new Data(); // 6. Provide a clear path for implementation upgrade to WeakMap in 2014 var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, - rmultiDash = /[A-Z]/g; + rmultiDash = /([A-Z])/g; function dataAttr( elem, key, data ) { var name; @@ -3868,7 +3729,7 @@ function dataAttr( elem, key, data ) { // If nothing was found internally, try to fetch any // data from the HTML5 data-* attribute if ( data === undefined && elem.nodeType === 1 ) { - name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase(); + name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase(); data = elem.getAttribute( name ); if ( typeof data === "string" ) { @@ -3876,15 +3737,14 @@ function dataAttr( elem, key, data ) { data = data === "true" ? true : data === "false" ? false : data === "null" ? null : - // Only convert to a number if it doesn't change the string +data + "" === data ? +data : rbrace.test( data ) ? jQuery.parseJSON( data ) : data; - } catch ( e ) {} + } catch( e ) {} // Make sure we set the data so it isn't changed later - dataUser.set( elem, key, data ); + data_user.set( elem, key, data ); } else { data = undefined; } @@ -3892,31 +3752,31 @@ function dataAttr( elem, key, data ) { return data; } -jQuery.extend( { +jQuery.extend({ hasData: function( elem ) { - return dataUser.hasData( elem ) || dataPriv.hasData( elem ); + return data_user.hasData( elem ) || data_priv.hasData( elem ); }, data: function( elem, name, data ) { - return dataUser.access( elem, name, data ); + return data_user.access( elem, name, data ); }, removeData: function( elem, name ) { - dataUser.remove( elem, name ); + data_user.remove( elem, name ); }, // TODO: Now that all calls to _data and _removeData have been replaced - // with direct calls to dataPriv methods, these can be deprecated. + // with direct calls to data_priv methods, these can be deprecated. _data: function( elem, name, data ) { - return dataPriv.access( elem, name, data ); + return data_priv.access( elem, name, data ); }, _removeData: function( elem, name ) { - dataPriv.remove( elem, name ); + data_priv.remove( elem, name ); } -} ); +}); -jQuery.fn.extend( { +jQuery.fn.extend({ data: function( key, value ) { var i, name, data, elem = this[ 0 ], @@ -3925,9 +3785,9 @@ jQuery.fn.extend( { // Gets all values if ( key === undefined ) { if ( this.length ) { - data = dataUser.get( elem ); + data = data_user.get( elem ); - if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) { + if ( elem.nodeType === 1 && !data_priv.get( elem, "hasDataAttrs" ) ) { i = attrs.length; while ( i-- ) { @@ -3936,12 +3796,12 @@ jQuery.fn.extend( { if ( attrs[ i ] ) { name = attrs[ i ].name; if ( name.indexOf( "data-" ) === 0 ) { - name = jQuery.camelCase( name.slice( 5 ) ); + name = jQuery.camelCase( name.slice(5) ); dataAttr( elem, name, data[ name ] ); } } } - dataPriv.set( elem, "hasDataAttrs", true ); + data_priv.set( elem, "hasDataAttrs", true ); } } @@ -3950,13 +3810,14 @@ jQuery.fn.extend( { // Sets multiple values if ( typeof key === "object" ) { - return this.each( function() { - dataUser.set( this, key ); - } ); + return this.each(function() { + data_user.set( this, key ); + }); } return access( this, function( value ) { - var data, camelKey; + var data, + camelKey = jQuery.camelCase( key ); // The calling jQuery object (element matches) is not empty // (and therefore has an element appears at this[ 0 ]) and the @@ -3964,24 +3825,16 @@ jQuery.fn.extend( { // will result in `undefined` for elem = this[ 0 ] which will // throw an exception if an attempt to read a data cache is made. if ( elem && value === undefined ) { - // Attempt to get data from the cache // with the key as-is - data = dataUser.get( elem, key ) || - - // Try to find dashed key if it exists (gh-2779) - // This is for 2.2.x only - dataUser.get( elem, key.replace( rmultiDash, "-$&" ).toLowerCase() ); - + data = data_user.get( elem, key ); if ( data !== undefined ) { return data; } - camelKey = jQuery.camelCase( key ); - // Attempt to get data from the cache // with the key camelized - data = dataUser.get( elem, camelKey ); + data = data_user.get( elem, camelKey ); if ( data !== undefined ) { return data; } @@ -3998,48 +3851,46 @@ jQuery.fn.extend( { } // Set the data... - camelKey = jQuery.camelCase( key ); - this.each( function() { - + this.each(function() { // First, attempt to store a copy or reference of any // data that might've been store with a camelCased key. - var data = dataUser.get( this, camelKey ); + var data = data_user.get( this, camelKey ); // For HTML5 data-* attribute interop, we have to // store property names with dashes in a camelCase form. // This might not apply to all properties...* - dataUser.set( this, camelKey, value ); + data_user.set( this, camelKey, value ); // *... In the case of properties that might _actually_ // have dashes, we need to also store a copy of that // unchanged property. - if ( key.indexOf( "-" ) > -1 && data !== undefined ) { - dataUser.set( this, key, value ); + if ( key.indexOf("-") !== -1 && data !== undefined ) { + data_user.set( this, key, value ); } - } ); + }); }, null, value, arguments.length > 1, null, true ); }, removeData: function( key ) { - return this.each( function() { - dataUser.remove( this, key ); - } ); + return this.each(function() { + data_user.remove( this, key ); + }); } -} ); +}); -jQuery.extend( { +jQuery.extend({ queue: function( elem, type, data ) { var queue; if ( elem ) { type = ( type || "fx" ) + "queue"; - queue = dataPriv.get( elem, type ); + queue = data_priv.get( elem, type ); // Speed up dequeue by getting out quickly if this is just a lookup if ( data ) { if ( !queue || jQuery.isArray( data ) ) { - queue = dataPriv.access( elem, type, jQuery.makeArray( data ) ); + queue = data_priv.access( elem, type, jQuery.makeArray(data) ); } else { queue.push( data ); } @@ -4086,15 +3937,15 @@ jQuery.extend( { // Not public - generate a queueHooks object, or return the current one _queueHooks: function( elem, type ) { var key = type + "queueHooks"; - return dataPriv.get( elem, key ) || dataPriv.access( elem, key, { - empty: jQuery.Callbacks( "once memory" ).add( function() { - dataPriv.remove( elem, [ type + "queue", key ] ); - } ) - } ); + return data_priv.get( elem, key ) || data_priv.access( elem, key, { + empty: jQuery.Callbacks("once memory").add(function() { + data_priv.remove( elem, [ type + "queue", key ] ); + }) + }); } -} ); +}); -jQuery.fn.extend( { +jQuery.fn.extend({ queue: function( type, data ) { var setter = 2; @@ -4105,31 +3956,30 @@ jQuery.fn.extend( { } if ( arguments.length < setter ) { - return jQuery.queue( this[ 0 ], type ); + return jQuery.queue( this[0], type ); } return data === undefined ? this : - this.each( function() { + this.each(function() { var queue = jQuery.queue( this, type, data ); // Ensure a hooks for this queue jQuery._queueHooks( this, type ); - if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { + if ( type === "fx" && queue[0] !== "inprogress" ) { jQuery.dequeue( this, type ); } - } ); + }); }, dequeue: function( type ) { - return this.each( function() { + return this.each(function() { jQuery.dequeue( this, type ); - } ); + }); }, clearQueue: function( type ) { return this.queue( type || "fx", [] ); }, - // Get a promise resolved when queues of a certain type // are emptied (fx is the type by default) promise: function( type, obj ) { @@ -4151,7 +4001,7 @@ jQuery.fn.extend( { type = type || "fx"; while ( i-- ) { - tmp = dataPriv.get( elements[ i ], type + "queueHooks" ); + tmp = data_priv.get( elements[ i ], type + "queueHooks" ); if ( tmp && tmp.empty ) { count++; tmp.empty.add( resolve ); @@ -4160,243 +4010,28 @@ jQuery.fn.extend( { resolve(); return defer.promise( obj ); } -} ); -var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; - -var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); - +}); +var pnum = (/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/).source; var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; var isHidden = function( elem, el ) { - // isHidden might be called from jQuery#filter function; // in that case, element will be second argument elem = el || elem; - return jQuery.css( elem, "display" ) === "none" || - !jQuery.contains( elem.ownerDocument, elem ); + return jQuery.css( elem, "display" ) === "none" || !jQuery.contains( elem.ownerDocument, elem ); }; +var rcheckableType = (/^(?:checkbox|radio)$/i); -function adjustCSS( elem, prop, valueParts, tween ) { - var adjusted, - scale = 1, - maxIterations = 20, - currentValue = tween ? - function() { return tween.cur(); } : - function() { return jQuery.css( elem, prop, "" ); }, - initial = currentValue(), - unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), - - // Starting value computation is required for potential unit mismatches - initialInUnit = ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && - rcssNum.exec( jQuery.css( elem, prop ) ); - - if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { - - // Trust units reported by jQuery.css - unit = unit || initialInUnit[ 3 ]; - - // Make sure we update the tween properties later on - valueParts = valueParts || []; - - // Iteratively approximate from a nonzero starting point - initialInUnit = +initial || 1; - - do { - - // If previous iteration zeroed out, double until we get *something*. - // Use string for doubling so we don't accidentally see scale as unchanged below - scale = scale || ".5"; - - // Adjust and apply - initialInUnit = initialInUnit / scale; - jQuery.style( elem, prop, initialInUnit + unit ); - - // Update scale, tolerating zero or NaN from tween.cur() - // Break the loop if scale is unchanged or perfect, or if we've just had enough. - } while ( - scale !== ( scale = currentValue() / initial ) && scale !== 1 && --maxIterations - ); - } - - if ( valueParts ) { - initialInUnit = +initialInUnit || +initial || 0; - - // Apply relative offset (+=/-=) if specified - adjusted = valueParts[ 1 ] ? - initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : - +valueParts[ 2 ]; - if ( tween ) { - tween.unit = unit; - tween.start = initialInUnit; - tween.end = adjusted; - } - } - return adjusted; -} -var rcheckableType = ( /^(?:checkbox|radio)$/i ); - -var rtagName = ( /<([\w:-]+)/ ); - -var rscriptType = ( /^$|\/(?:java|ecma)script/i ); - - - -// We have to close these tags to support XHTML (#13200) -var wrapMap = { - - // Support: IE9 - option: [ 1, "" ], - - // XHTML parsers do not magically insert elements in the - // same way that tag soup parsers do. So we cannot shorten - // this by omitting or other required elements. - thead: [ 1, "", "
" ], - col: [ 2, "", "
" ], - tr: [ 2, "", "
" ], - td: [ 3, "", "
" ], - - _default: [ 0, "", "" ] -}; - -// Support: IE9 -wrapMap.optgroup = wrapMap.option; - -wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; -wrapMap.th = wrapMap.td; - - -function getAll( context, tag ) { - - // Support: IE9-11+ - // Use typeof to avoid zero-argument method invocation on host objects (#15151) - var ret = typeof context.getElementsByTagName !== "undefined" ? - context.getElementsByTagName( tag || "*" ) : - typeof context.querySelectorAll !== "undefined" ? - context.querySelectorAll( tag || "*" ) : - []; - - return tag === undefined || tag && jQuery.nodeName( context, tag ) ? - jQuery.merge( [ context ], ret ) : - ret; -} - - -// Mark scripts as having already been evaluated -function setGlobalEval( elems, refElements ) { - var i = 0, - l = elems.length; - - for ( ; i < l; i++ ) { - dataPriv.set( - elems[ i ], - "globalEval", - !refElements || dataPriv.get( refElements[ i ], "globalEval" ) - ); - } -} - - -var rhtml = /<|&#?\w+;/; - -function buildFragment( elems, context, scripts, selection, ignored ) { - var elem, tmp, tag, wrap, contains, j, - fragment = context.createDocumentFragment(), - nodes = [], - i = 0, - l = elems.length; - - for ( ; i < l; i++ ) { - elem = elems[ i ]; - - if ( elem || elem === 0 ) { - - // Add nodes directly - if ( jQuery.type( elem ) === "object" ) { - - // Support: Android<4.1, PhantomJS<2 - // push.apply(_, arraylike) throws on ancient WebKit - jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); - - // Convert non-html into a text node - } else if ( !rhtml.test( elem ) ) { - nodes.push( context.createTextNode( elem ) ); - - // Convert html into DOM nodes - } else { - tmp = tmp || fragment.appendChild( context.createElement( "div" ) ); - - // Deserialize a standard representation - tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); - wrap = wrapMap[ tag ] || wrapMap._default; - tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ]; - - // Descend through wrappers to the right content - j = wrap[ 0 ]; - while ( j-- ) { - tmp = tmp.lastChild; - } - - // Support: Android<4.1, PhantomJS<2 - // push.apply(_, arraylike) throws on ancient WebKit - jQuery.merge( nodes, tmp.childNodes ); - - // Remember the top-level container - tmp = fragment.firstChild; - - // Ensure the created nodes are orphaned (#12392) - tmp.textContent = ""; - } - } - } - - // Remove wrapper from fragment - fragment.textContent = ""; - - i = 0; - while ( ( elem = nodes[ i++ ] ) ) { - - // Skip elements already in the context collection (trac-4087) - if ( selection && jQuery.inArray( elem, selection ) > -1 ) { - if ( ignored ) { - ignored.push( elem ); - } - continue; - } - - contains = jQuery.contains( elem.ownerDocument, elem ); - - // Append to fragment - tmp = getAll( fragment.appendChild( elem ), "script" ); - - // Preserve script evaluation history - if ( contains ) { - setGlobalEval( tmp ); - } - - // Capture executables - if ( scripts ) { - j = 0; - while ( ( elem = tmp[ j++ ] ) ) { - if ( rscriptType.test( elem.type || "" ) ) { - scripts.push( elem ); - } - } - } - } - - return fragment; -} - -( function() { +(function() { var fragment = document.createDocumentFragment(), div = fragment.appendChild( document.createElement( "div" ) ), input = document.createElement( "input" ); - // Support: Android 4.0-4.3, Safari<=5.1 + // Support: Safari<=5.1 // Check state lost if the name is set (#11217) // Support: Windows Web Apps (WWA) // `name` and `type` must use .setAttribute for WWA (#14901) @@ -4414,13 +4049,19 @@ function buildFragment( elems, context, scripts, selection, ignored ) { // Make sure textarea (and checkbox) defaultValue is properly cloned div.innerHTML = ""; support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; -} )(); +})(); +var strundefined = typeof undefined; + + + +support.focusinBubbles = "onfocusin" in window; var rkeyEvent = /^key/, - rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, - rtypenamespace = /^([^.]*)(?:\.(.+)|)/; + rmouseEvent = /^(?:mouse|pointer|contextmenu)|click/, + rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, + rtypenamespace = /^([^.]*)(?:\.(.+)|)$/; function returnTrue() { return true; @@ -4430,75 +4071,12 @@ function returnFalse() { return false; } -// Support: IE9 -// See #13393 for more info function safeActiveElement() { try { return document.activeElement; } catch ( err ) { } } -function on( elem, types, selector, data, fn, one ) { - var origFn, type; - - // Types can be a map of types/handlers - if ( typeof types === "object" ) { - - // ( types-Object, selector, data ) - if ( typeof selector !== "string" ) { - - // ( types-Object, data ) - data = data || selector; - selector = undefined; - } - for ( type in types ) { - on( elem, type, selector, data, types[ type ], one ); - } - return elem; - } - - if ( data == null && fn == null ) { - - // ( types, fn ) - fn = selector; - data = selector = undefined; - } else if ( fn == null ) { - if ( typeof selector === "string" ) { - - // ( types, selector, fn ) - fn = data; - data = undefined; - } else { - - // ( types, data, fn ) - fn = data; - data = selector; - selector = undefined; - } - } - if ( fn === false ) { - fn = returnFalse; - } else if ( !fn ) { - return this; - } - - if ( one === 1 ) { - origFn = fn; - fn = function( event ) { - - // Can use an empty set, since event contains the info - jQuery().off( event ); - return origFn.apply( this, arguments ); - }; - - // Use same guid so caller can remove using origFn - fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); - } - return elem.each( function() { - jQuery.event.add( this, types, fn, data, selector ); - } ); -} - /* * Helper functions for managing events -- not part of the public interface. * Props to Dean Edwards' addEvent library for many of the ideas. @@ -4512,7 +4090,7 @@ jQuery.event = { var handleObjIn, eventHandle, tmp, events, t, handleObj, special, handlers, type, namespaces, origType, - elemData = dataPriv.get( elem ); + elemData = data_priv.get( elem ); // Don't attach events to noData or text/comment nodes (but allow plain objects) if ( !elemData ) { @@ -4532,15 +4110,14 @@ jQuery.event = { } // Init the element's event structure and main handler, if this is the first - if ( !( events = elemData.events ) ) { + if ( !(events = elemData.events) ) { events = elemData.events = {}; } - if ( !( eventHandle = elemData.handle ) ) { + if ( !(eventHandle = elemData.handle) ) { eventHandle = elemData.handle = function( e ) { - // Discard the second event of a jQuery.event.trigger() and // when an event is called after a page has unloaded - return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ? + return typeof jQuery !== strundefined && jQuery.event.triggered !== e.type ? jQuery.event.dispatch.apply( elem, arguments ) : undefined; }; } @@ -4549,9 +4126,9 @@ jQuery.event = { types = ( types || "" ).match( rnotwhite ) || [ "" ]; t = types.length; while ( t-- ) { - tmp = rtypenamespace.exec( types[ t ] ) || []; - type = origType = tmp[ 1 ]; - namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + tmp = rtypenamespace.exec( types[t] ) || []; + type = origType = tmp[1]; + namespaces = ( tmp[2] || "" ).split( "." ).sort(); // There *must* be a type, no attaching namespace-only handlers if ( !type ) { @@ -4568,7 +4145,7 @@ jQuery.event = { special = jQuery.event.special[ type ] || {}; // handleObj is passed to all event handlers - handleObj = jQuery.extend( { + handleObj = jQuery.extend({ type: type, origType: origType, data: data, @@ -4576,20 +4153,18 @@ jQuery.event = { guid: handler.guid, selector: selector, needsContext: selector && jQuery.expr.match.needsContext.test( selector ), - namespace: namespaces.join( "." ) + namespace: namespaces.join(".") }, handleObjIn ); // Init the event handler queue if we're the first - if ( !( handlers = events[ type ] ) ) { + if ( !(handlers = events[ type ]) ) { handlers = events[ type ] = []; handlers.delegateCount = 0; // Only use addEventListener if the special events handler returns false - if ( !special.setup || - special.setup.call( elem, data, namespaces, eventHandle ) === false ) { - + if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) { if ( elem.addEventListener ) { - elem.addEventListener( type, eventHandle ); + elem.addEventListener( type, eventHandle, false ); } } } @@ -4621,9 +4196,9 @@ jQuery.event = { var j, origCount, tmp, events, t, handleObj, special, handlers, type, namespaces, origType, - elemData = dataPriv.hasData( elem ) && dataPriv.get( elem ); + elemData = data_priv.hasData( elem ) && data_priv.get( elem ); - if ( !elemData || !( events = elemData.events ) ) { + if ( !elemData || !(events = elemData.events) ) { return; } @@ -4631,9 +4206,9 @@ jQuery.event = { types = ( types || "" ).match( rnotwhite ) || [ "" ]; t = types.length; while ( t-- ) { - tmp = rtypenamespace.exec( types[ t ] ) || []; - type = origType = tmp[ 1 ]; - namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + tmp = rtypenamespace.exec( types[t] ) || []; + type = origType = tmp[1]; + namespaces = ( tmp[2] || "" ).split( "." ).sort(); // Unbind all events (on this namespace, if provided) for the element if ( !type ) { @@ -4646,8 +4221,7 @@ jQuery.event = { special = jQuery.event.special[ type ] || {}; type = ( selector ? special.delegateType : special.bindType ) || type; handlers = events[ type ] || []; - tmp = tmp[ 2 ] && - new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); + tmp = tmp[2] && new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" ); // Remove matching events origCount = j = handlers.length; @@ -4657,8 +4231,7 @@ jQuery.event = { if ( ( mappedTypes || origType === handleObj.origType ) && ( !handler || handler.guid === handleObj.guid ) && ( !tmp || tmp.test( handleObj.namespace ) ) && - ( !selector || selector === handleObj.selector || - selector === "**" && handleObj.selector ) ) { + ( !selector || selector === handleObj.selector || selector === "**" && handleObj.selector ) ) { handlers.splice( j, 1 ); if ( handleObj.selector ) { @@ -4673,9 +4246,7 @@ jQuery.event = { // Remove generic event handler if we removed something and no more handlers exist // (avoids potential for endless recursion during removal of special event handlers) if ( origCount && !handlers.length ) { - if ( !special.teardown || - special.teardown.call( elem, namespaces, elemData.handle ) === false ) { - + if ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) { jQuery.removeEvent( elem, type, elemData.handle ); } @@ -4683,92 +4254,219 @@ jQuery.event = { } } - // Remove data and the expando if it's no longer used + // Remove the expando if it's no longer used if ( jQuery.isEmptyObject( events ) ) { - dataPriv.remove( elem, "handle events" ); + delete elemData.handle; + data_priv.remove( elem, "events" ); } }, - dispatch: function( event ) { + trigger: function( event, data, elem, onlyHandlers ) { - // Make a writable jQuery.Event from the native event object - event = jQuery.event.fix( event ); + var i, cur, tmp, bubbleType, ontype, handle, special, + eventPath = [ elem || document ], + type = hasOwn.call( event, "type" ) ? event.type : event, + namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split(".") : []; - var i, j, ret, matched, handleObj, - handlerQueue = [], - args = slice.call( arguments ), - handlers = ( dataPriv.get( this, "events" ) || {} )[ event.type ] || [], - special = jQuery.event.special[ event.type ] || {}; + cur = tmp = elem = elem || document; - // Use the fix-ed jQuery.Event rather than the (read-only) native event - args[ 0 ] = event; - event.delegateTarget = this; + // Don't do events on text and comment nodes + if ( elem.nodeType === 3 || elem.nodeType === 8 ) { + return; + } - // Call the preDispatch hook for the mapped type, and let it bail if desired - if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { + // focus/blur morphs to focusin/out; ensure we're not firing them right now + if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { return; } - // Determine handlers - handlerQueue = jQuery.event.handlers.call( this, event, handlers ); + if ( type.indexOf(".") >= 0 ) { + // Namespaced trigger; create a regexp to match event type in handle() + namespaces = type.split("."); + type = namespaces.shift(); + namespaces.sort(); + } + ontype = type.indexOf(":") < 0 && "on" + type; - // Run delegates first; they may want to stop propagation beneath us - i = 0; - while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { - event.currentTarget = matched.elem; + // Caller can pass in a jQuery.Event object, Object, or just an event type string + event = event[ jQuery.expando ] ? + event : + new jQuery.Event( type, typeof event === "object" && event ); - j = 0; - while ( ( handleObj = matched.handlers[ j++ ] ) && - !event.isImmediatePropagationStopped() ) { + // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) + event.isTrigger = onlyHandlers ? 2 : 3; + event.namespace = namespaces.join("."); + event.namespace_re = event.namespace ? + new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" ) : + null; - // Triggered event must either 1) have no namespace, or 2) have namespace(s) - // a subset or equal to those in the bound event (both can have no namespace). - if ( !event.rnamespace || event.rnamespace.test( handleObj.namespace ) ) { + // Clean up the event in case it is being reused + event.result = undefined; + if ( !event.target ) { + event.target = elem; + } - event.handleObj = handleObj; - event.data = handleObj.data; + // Clone any incoming data and prepend the event, creating the handler arg list + data = data == null ? + [ event ] : + jQuery.makeArray( data, [ event ] ); - ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || - handleObj.handler ).apply( matched.elem, args ); + // Allow special events to draw outside the lines + special = jQuery.event.special[ type ] || {}; + if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { + return; + } - if ( ret !== undefined ) { - if ( ( event.result = ret ) === false ) { - event.preventDefault(); - event.stopPropagation(); - } - } - } + // Determine event propagation path in advance, per W3C events spec (#9951) + // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) + if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) { + + bubbleType = special.delegateType || type; + if ( !rfocusMorph.test( bubbleType + type ) ) { + cur = cur.parentNode; + } + for ( ; cur; cur = cur.parentNode ) { + eventPath.push( cur ); + tmp = cur; } - } - // Call the postDispatch hook for the mapped type - if ( special.postDispatch ) { - special.postDispatch.call( this, event ); + // Only add window if we got to document (e.g., not plain obj or detached DOM) + if ( tmp === (elem.ownerDocument || document) ) { + eventPath.push( tmp.defaultView || tmp.parentWindow || window ); + } } - return event.result; - }, + // Fire handlers on the event path + i = 0; + while ( (cur = eventPath[i++]) && !event.isPropagationStopped() ) { - handlers: function( event, handlers ) { - var i, matches, sel, handleObj, - handlerQueue = [], - delegateCount = handlers.delegateCount, - cur = event.target; + event.type = i > 1 ? + bubbleType : + special.bindType || type; + + // jQuery handler + handle = ( data_priv.get( cur, "events" ) || {} )[ event.type ] && data_priv.get( cur, "handle" ); + if ( handle ) { + handle.apply( cur, data ); + } + + // Native handler + handle = ontype && cur[ ontype ]; + if ( handle && handle.apply && jQuery.acceptData( cur ) ) { + event.result = handle.apply( cur, data ); + if ( event.result === false ) { + event.preventDefault(); + } + } + } + event.type = type; + + // If nobody prevented the default action, do it now + if ( !onlyHandlers && !event.isDefaultPrevented() ) { + + if ( (!special._default || special._default.apply( eventPath.pop(), data ) === false) && + jQuery.acceptData( elem ) ) { + + // Call a native DOM method on the target with the same name name as the event. + // Don't do default actions on window, that's where global variables be (#6170) + if ( ontype && jQuery.isFunction( elem[ type ] ) && !jQuery.isWindow( elem ) ) { + + // Don't re-trigger an onFOO event when we call its FOO() method + tmp = elem[ ontype ]; + + if ( tmp ) { + elem[ ontype ] = null; + } + + // Prevent re-triggering of the same event, since we already bubbled it above + jQuery.event.triggered = type; + elem[ type ](); + jQuery.event.triggered = undefined; + + if ( tmp ) { + elem[ ontype ] = tmp; + } + } + } + } + + return event.result; + }, + + dispatch: function( event ) { + + // Make a writable jQuery.Event from the native event object + event = jQuery.event.fix( event ); + + var i, j, ret, matched, handleObj, + handlerQueue = [], + args = slice.call( arguments ), + handlers = ( data_priv.get( this, "events" ) || {} )[ event.type ] || [], + special = jQuery.event.special[ event.type ] || {}; + + // Use the fix-ed jQuery.Event rather than the (read-only) native event + args[0] = event; + event.delegateTarget = this; + + // Call the preDispatch hook for the mapped type, and let it bail if desired + if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { + return; + } + + // Determine handlers + handlerQueue = jQuery.event.handlers.call( this, event, handlers ); + + // Run delegates first; they may want to stop propagation beneath us + i = 0; + while ( (matched = handlerQueue[ i++ ]) && !event.isPropagationStopped() ) { + event.currentTarget = matched.elem; + + j = 0; + while ( (handleObj = matched.handlers[ j++ ]) && !event.isImmediatePropagationStopped() ) { + + // Triggered event must either 1) have no namespace, or 2) have namespace(s) + // a subset or equal to those in the bound event (both can have no namespace). + if ( !event.namespace_re || event.namespace_re.test( handleObj.namespace ) ) { + + event.handleObj = handleObj; + event.data = handleObj.data; + + ret = ( (jQuery.event.special[ handleObj.origType ] || {}).handle || handleObj.handler ) + .apply( matched.elem, args ); + + if ( ret !== undefined ) { + if ( (event.result = ret) === false ) { + event.preventDefault(); + event.stopPropagation(); + } + } + } + } + } + + // Call the postDispatch hook for the mapped type + if ( special.postDispatch ) { + special.postDispatch.call( this, event ); + } + + return event.result; + }, + + handlers: function( event, handlers ) { + var i, matches, sel, handleObj, + handlerQueue = [], + delegateCount = handlers.delegateCount, + cur = event.target; - // Support (at least): Chrome, IE9 // Find delegate handlers // Black-hole SVG instance trees (#13180) - // - // Support: Firefox<=42+ - // Avoid non-left-click in FF but don't block IE radio events (#3861, gh-2343) - if ( delegateCount && cur.nodeType && - ( event.type !== "click" || isNaN( event.button ) || event.button < 1 ) ) { + // Avoid non-left-click bubbling in Firefox (#3861) + if ( delegateCount && cur.nodeType && (!event.button || event.type !== "click") ) { for ( ; cur !== this; cur = cur.parentNode || this ) { - // Don't check non-elements (#13208) // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) - if ( cur.nodeType === 1 && ( cur.disabled !== true || event.type !== "click" ) ) { + if ( cur.disabled !== true || event.type !== "click" ) { matches = []; for ( i = 0; i < delegateCount; i++ ) { handleObj = handlers[ i ]; @@ -4778,7 +4476,7 @@ jQuery.event = { if ( matches[ sel ] === undefined ) { matches[ sel ] = handleObj.needsContext ? - jQuery( sel, this ).index( cur ) > -1 : + jQuery( sel, this ).index( cur ) >= 0 : jQuery.find( sel, this, null, [ cur ] ).length; } if ( matches[ sel ] ) { @@ -4786,7 +4484,7 @@ jQuery.event = { } } if ( matches.length ) { - handlerQueue.push( { elem: cur, handlers: matches } ); + handlerQueue.push({ elem: cur, handlers: matches }); } } } @@ -4794,20 +4492,19 @@ jQuery.event = { // Add the remaining (directly-bound) handlers if ( delegateCount < handlers.length ) { - handlerQueue.push( { elem: this, handlers: handlers.slice( delegateCount ) } ); + handlerQueue.push({ elem: this, handlers: handlers.slice( delegateCount ) }); } return handlerQueue; }, // Includes some event props shared by KeyEvent and MouseEvent - props: ( "altKey bubbles cancelable ctrlKey currentTarget detail eventPhase " + - "metaKey relatedTarget shiftKey target timeStamp view which" ).split( " " ), + props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "), fixHooks: {}, keyHooks: { - props: "char charCode key keyCode".split( " " ), + props: "char charCode key keyCode".split(" "), filter: function( event, original ) { // Add which for key events @@ -4820,8 +4517,7 @@ jQuery.event = { }, mouseHooks: { - props: ( "button buttons clientX clientY offsetX offsetY pageX pageY " + - "screenX screenY toElement" ).split( " " ), + props: "button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "), filter: function( event, original ) { var eventDoc, doc, body, button = original.button; @@ -4832,12 +4528,8 @@ jQuery.event = { doc = eventDoc.documentElement; body = eventDoc.body; - event.pageX = original.clientX + - ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - - ( doc && doc.clientLeft || body && body.clientLeft || 0 ); - event.pageY = original.clientY + - ( doc && doc.scrollTop || body && body.scrollTop || 0 ) - - ( doc && doc.clientTop || body && body.clientTop || 0 ); + event.pageX = original.clientX + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - ( doc && doc.clientLeft || body && body.clientLeft || 0 ); + event.pageY = original.clientY + ( doc && doc.scrollTop || body && body.scrollTop || 0 ) - ( doc && doc.clientTop || body && body.clientTop || 0 ); } // Add which for click: 1 === left; 2 === middle; 3 === right @@ -4894,12 +4586,10 @@ jQuery.event = { special: { load: { - // Prevent triggered image.load events from bubbling to window.load noBubble: true }, focus: { - // Fire native event if possible so blur/focus sequence is correct trigger: function() { if ( this !== safeActiveElement() && this.focus ) { @@ -4919,7 +4609,6 @@ jQuery.event = { delegateType: "focusout" }, click: { - // For checkbox, fire native event so checked state will be right trigger: function() { if ( this.type === "checkbox" && this.click && jQuery.nodeName( this, "input" ) ) { @@ -4944,21 +4633,41 @@ jQuery.event = { } } } + }, + + simulate: function( type, elem, event, bubble ) { + // Piggyback on a donor event to simulate a different one. + // Fake originalEvent to avoid donor's stopPropagation, but if the + // simulated event prevents default then we do the same on the donor. + var e = jQuery.extend( + new jQuery.Event(), + event, + { + type: type, + isSimulated: true, + originalEvent: {} + } + ); + if ( bubble ) { + jQuery.event.trigger( e, null, elem ); + } else { + jQuery.event.dispatch.call( elem, e ); + } + if ( e.isDefaultPrevented() ) { + event.preventDefault(); + } } }; jQuery.removeEvent = function( elem, type, handle ) { - - // This "if" is needed for plain objects if ( elem.removeEventListener ) { - elem.removeEventListener( type, handle ); + elem.removeEventListener( type, handle, false ); } }; jQuery.Event = function( src, props ) { - // Allow instantiation without the 'new' keyword - if ( !( this instanceof jQuery.Event ) ) { + if ( !(this instanceof jQuery.Event) ) { return new jQuery.Event( src, props ); } @@ -4971,7 +4680,6 @@ jQuery.Event = function( src, props ) { // by a handler lower down the tree; reflect the correct value. this.isDefaultPrevented = src.defaultPrevented || src.defaultPrevented === undefined && - // Support: Android<4.0 src.returnValue === false ? returnTrue : @@ -4997,7 +4705,6 @@ jQuery.Event = function( src, props ) { // jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding // http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html jQuery.Event.prototype = { - constructor: jQuery.Event, isDefaultPrevented: returnFalse, isPropagationStopped: returnFalse, isImmediatePropagationStopped: returnFalse, @@ -5007,7 +4714,7 @@ jQuery.Event.prototype = { this.isDefaultPrevented = returnTrue; - if ( e ) { + if ( e && e.preventDefault ) { e.preventDefault(); } }, @@ -5016,7 +4723,7 @@ jQuery.Event.prototype = { this.isPropagationStopped = returnTrue; - if ( e ) { + if ( e && e.stopPropagation ) { e.stopPropagation(); } }, @@ -5025,7 +4732,7 @@ jQuery.Event.prototype = { this.isImmediatePropagationStopped = returnTrue; - if ( e ) { + if ( e && e.stopImmediatePropagation ) { e.stopImmediatePropagation(); } @@ -5034,14 +4741,8 @@ jQuery.Event.prototype = { }; // Create mouseenter/leave events using mouseover/out and event-time checks -// so that event delegation works in jQuery. -// Do the same for pointerenter/pointerleave and pointerover/pointerout -// -// Support: Safari 7 only -// Safari sends mouseenter too often; see: -// https://code.google.com/p/chromium/issues/detail?id=470258 -// for the description of the bug (it existed in older Chrome versions as well). -jQuery.each( { +// Support: Chrome 15+ +jQuery.each({ mouseenter: "mouseover", mouseleave: "mouseout", pointerenter: "pointerover", @@ -5057,9 +4758,9 @@ jQuery.each( { related = event.relatedTarget, handleObj = event.handleObj; - // For mouseenter/leave call the handler if related is outside the target. + // For mousenter/leave call the handler if related is outside the target. // NB: No relatedTarget if the mouse left/entered the browser window - if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { + if ( !related || (related !== target && !jQuery.contains( target, related )) ) { event.type = handleObj.origType; ret = handleObj.handler.apply( this, arguments ); event.type = fix; @@ -5067,32 +4768,115 @@ jQuery.each( { return ret; } }; -} ); +}); -jQuery.fn.extend( { - on: function( types, selector, data, fn ) { - return on( this, types, selector, data, fn ); +// Support: Firefox, Chrome, Safari +// Create "bubbling" focus and blur events +if ( !support.focusinBubbles ) { + jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) { + + // Attach a single capturing handler on the document while someone wants focusin/focusout + var handler = function( event ) { + jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), true ); + }; + + jQuery.event.special[ fix ] = { + setup: function() { + var doc = this.ownerDocument || this, + attaches = data_priv.access( doc, fix ); + + if ( !attaches ) { + doc.addEventListener( orig, handler, true ); + } + data_priv.access( doc, fix, ( attaches || 0 ) + 1 ); + }, + teardown: function() { + var doc = this.ownerDocument || this, + attaches = data_priv.access( doc, fix ) - 1; + + if ( !attaches ) { + doc.removeEventListener( orig, handler, true ); + data_priv.remove( doc, fix ); + + } else { + data_priv.access( doc, fix, attaches ); + } + } + }; + }); +} + +jQuery.fn.extend({ + + on: function( types, selector, data, fn, /*INTERNAL*/ one ) { + var origFn, type; + + // Types can be a map of types/handlers + if ( typeof types === "object" ) { + // ( types-Object, selector, data ) + if ( typeof selector !== "string" ) { + // ( types-Object, data ) + data = data || selector; + selector = undefined; + } + for ( type in types ) { + this.on( type, selector, data, types[ type ], one ); + } + return this; + } + + if ( data == null && fn == null ) { + // ( types, fn ) + fn = selector; + data = selector = undefined; + } else if ( fn == null ) { + if ( typeof selector === "string" ) { + // ( types, selector, fn ) + fn = data; + data = undefined; + } else { + // ( types, data, fn ) + fn = data; + data = selector; + selector = undefined; + } + } + if ( fn === false ) { + fn = returnFalse; + } else if ( !fn ) { + return this; + } + + if ( one === 1 ) { + origFn = fn; + fn = function( event ) { + // Can use an empty set, since event contains the info + jQuery().off( event ); + return origFn.apply( this, arguments ); + }; + // Use same guid so caller can remove using origFn + fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); + } + return this.each( function() { + jQuery.event.add( this, types, fn, data, selector ); + }); }, one: function( types, selector, data, fn ) { - return on( this, types, selector, data, fn, 1 ); + return this.on( types, selector, data, fn, 1 ); }, off: function( types, selector, fn ) { var handleObj, type; if ( types && types.preventDefault && types.handleObj ) { - // ( event ) dispatched jQuery.Event handleObj = types.handleObj; jQuery( types.delegateTarget ).off( - handleObj.namespace ? - handleObj.origType + "." + handleObj.namespace : - handleObj.origType, + handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType, handleObj.selector, handleObj.handler ); return this; } if ( typeof types === "object" ) { - // ( types-object [, selector] ) for ( type in types ) { this.off( type, selector, types[ type ] ); @@ -5100,7 +4884,6 @@ jQuery.fn.extend( { return this; } if ( selector === false || typeof selector === "function" ) { - // ( types [, fn] ) fn = selector; selector = undefined; @@ -5108,39 +4891,70 @@ jQuery.fn.extend( { if ( fn === false ) { fn = returnFalse; } - return this.each( function() { + return this.each(function() { jQuery.event.remove( this, types, fn, selector ); - } ); + }); + }, + + trigger: function( type, data ) { + return this.each(function() { + jQuery.event.trigger( type, data, this ); + }); + }, + triggerHandler: function( type, data ) { + var elem = this[0]; + if ( elem ) { + return jQuery.event.trigger( type, data, elem, true ); + } } -} ); +}); var - rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi, - - // Support: IE 10-11, Edge 10240+ - // In IE/Edge using regex groups here causes severe slowdowns. - // See https://connect.microsoft.com/IE/feedback/details/1736512/ - rnoInnerhtml = /]*)\/>/gi, + rtagName = /<([\w:]+)/, + rhtml = /<|&#?\w+;/, + rnoInnerhtml = /<(?:script|style|link)/i, // checked="checked" or checked rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i, + rscriptType = /^$|\/(?:java|ecma)script/i, rscriptTypeMasked = /^true\/(.*)/, - rcleanScript = /^\s*\s*$/g; + rcleanScript = /^\s*\s*$/g, -function manipulationTarget( elem, content ) { - if ( jQuery.nodeName( elem, "table" ) && - jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) { + // We have to close these tags to support XHTML (#13200) + wrapMap = { - return elem.getElementsByTagName( "tbody" )[ 0 ] || elem; - } + // Support: IE9 + option: [ 1, "" ], - return elem; + thead: [ 1, "", "
" ], + col: [ 2, "", "
" ], + tr: [ 2, "", "
" ], + td: [ 3, "", "
" ], + + _default: [ 0, "", "" ] + }; + +// Support: IE9 +wrapMap.optgroup = wrapMap.option; + +wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; +wrapMap.th = wrapMap.td; + +// Support: 1.x compatibility +// Manipulating tables requires a tbody +function manipulationTarget( elem, content ) { + return jQuery.nodeName( elem, "table" ) && + jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ? + + elem.getElementsByTagName("tbody")[0] || + elem.appendChild( elem.ownerDocument.createElement("tbody") ) : + elem; } // Replace/restore the type attribute of script elements for safe DOM manipulation function disableScript( elem ) { - elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type; + elem.type = (elem.getAttribute("type") !== null) + "/" + elem.type; return elem; } function restoreScript( elem ) { @@ -5149,12 +4963,24 @@ function restoreScript( elem ) { if ( match ) { elem.type = match[ 1 ]; } else { - elem.removeAttribute( "type" ); + elem.removeAttribute("type"); } return elem; } +// Mark scripts as having already been evaluated +function setGlobalEval( elems, refElements ) { + var i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + data_priv.set( + elems[ i ], "globalEval", !refElements || data_priv.get( refElements[ i ], "globalEval" ) + ); + } +} + function cloneCopyEvent( src, dest ) { var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events; @@ -5163,9 +4989,9 @@ function cloneCopyEvent( src, dest ) { } // 1. Copy private data: events, handlers, etc. - if ( dataPriv.hasData( src ) ) { - pdataOld = dataPriv.access( src ); - pdataCur = dataPriv.set( dest, pdataOld ); + if ( data_priv.hasData( src ) ) { + pdataOld = data_priv.access( src ); + pdataCur = data_priv.set( dest, pdataOld ); events = pdataOld.events; if ( events ) { @@ -5181,14 +5007,24 @@ function cloneCopyEvent( src, dest ) { } // 2. Copy user data - if ( dataUser.hasData( src ) ) { - udataOld = dataUser.access( src ); + if ( data_user.hasData( src ) ) { + udataOld = data_user.access( src ); udataCur = jQuery.extend( {}, udataOld ); - dataUser.set( dest, udataCur ); + data_user.set( dest, udataCur ); } } +function getAll( context, tag ) { + var ret = context.getElementsByTagName ? context.getElementsByTagName( tag || "*" ) : + context.querySelectorAll ? context.querySelectorAll( tag || "*" ) : + []; + + return tag === undefined || tag && jQuery.nodeName( context, tag ) ? + jQuery.merge( [ context ], ret ) : + ret; +} + // Fix IE bugs, see support tests function fixInput( src, dest ) { var nodeName = dest.nodeName.toLowerCase(); @@ -5203,172 +5039,145 @@ function fixInput( src, dest ) { } } -function domManip( collection, args, callback, ignored ) { +jQuery.extend({ + clone: function( elem, dataAndEvents, deepDataAndEvents ) { + var i, l, srcElements, destElements, + clone = elem.cloneNode( true ), + inPage = jQuery.contains( elem.ownerDocument, elem ); - // Flatten any nested arrays - args = concat.apply( [], args ); + // Fix IE cloning issues + if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && + !jQuery.isXMLDoc( elem ) ) { - var fragment, first, scripts, hasScripts, node, doc, - i = 0, - l = collection.length, - iNoClone = l - 1, - value = args[ 0 ], - isFunction = jQuery.isFunction( value ); + // We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2 + destElements = getAll( clone ); + srcElements = getAll( elem ); - // We can't cloneNode fragments that contain checked, in WebKit - if ( isFunction || - ( l > 1 && typeof value === "string" && - !support.checkClone && rchecked.test( value ) ) ) { - return collection.each( function( index ) { - var self = collection.eq( index ); - if ( isFunction ) { - args[ 0 ] = value.call( this, index, self.html() ); + for ( i = 0, l = srcElements.length; i < l; i++ ) { + fixInput( srcElements[ i ], destElements[ i ] ); } - domManip( self, args, callback, ignored ); - } ); - } + } - if ( l ) { - fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); - first = fragment.firstChild; + // Copy the events from the original to the clone + if ( dataAndEvents ) { + if ( deepDataAndEvents ) { + srcElements = srcElements || getAll( elem ); + destElements = destElements || getAll( clone ); - if ( fragment.childNodes.length === 1 ) { - fragment = first; + for ( i = 0, l = srcElements.length; i < l; i++ ) { + cloneCopyEvent( srcElements[ i ], destElements[ i ] ); + } + } else { + cloneCopyEvent( elem, clone ); + } } - // Require either new content or an interest in ignored elements to invoke the callback - if ( first || ignored ) { - scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); - hasScripts = scripts.length; - - // Use the original fragment for the last item - // instead of the first because it can end up - // being emptied incorrectly in certain situations (#8070). - for ( ; i < l; i++ ) { - node = fragment; + // Preserve script evaluation history + destElements = getAll( clone, "script" ); + if ( destElements.length > 0 ) { + setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); + } - if ( i !== iNoClone ) { - node = jQuery.clone( node, true, true ); + // Return the cloned set + return clone; + }, - // Keep references to cloned scripts for later restoration - if ( hasScripts ) { + buildFragment: function( elems, context, scripts, selection ) { + var elem, tmp, tag, wrap, contains, j, + fragment = context.createDocumentFragment(), + nodes = [], + i = 0, + l = elems.length; - // Support: Android<4.1, PhantomJS<2 - // push.apply(_, arraylike) throws on ancient WebKit - jQuery.merge( scripts, getAll( node, "script" ) ); - } - } + for ( ; i < l; i++ ) { + elem = elems[ i ]; - callback.call( collection[ i ], node, i ); - } + if ( elem || elem === 0 ) { - if ( hasScripts ) { - doc = scripts[ scripts.length - 1 ].ownerDocument; + // Add nodes directly + if ( jQuery.type( elem ) === "object" ) { + // Support: QtWebKit, PhantomJS + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); - // Reenable scripts - jQuery.map( scripts, restoreScript ); + // Convert non-html into a text node + } else if ( !rhtml.test( elem ) ) { + nodes.push( context.createTextNode( elem ) ); - // Evaluate executable scripts on first document insertion - for ( i = 0; i < hasScripts; i++ ) { - node = scripts[ i ]; - if ( rscriptType.test( node.type || "" ) && - !dataPriv.access( node, "globalEval" ) && - jQuery.contains( doc, node ) ) { + // Convert html into DOM nodes + } else { + tmp = tmp || fragment.appendChild( context.createElement("div") ); - if ( node.src ) { + // Deserialize a standard representation + tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); + wrap = wrapMap[ tag ] || wrapMap._default; + tmp.innerHTML = wrap[ 1 ] + elem.replace( rxhtmlTag, "<$1>" ) + wrap[ 2 ]; - // Optional AJAX dependency, but won't run scripts if not present - if ( jQuery._evalUrl ) { - jQuery._evalUrl( node.src ); - } - } else { - jQuery.globalEval( node.textContent.replace( rcleanScript, "" ) ); - } + // Descend through wrappers to the right content + j = wrap[ 0 ]; + while ( j-- ) { + tmp = tmp.lastChild; } - } - } - } - } - - return collection; -} -function remove( elem, selector, keepData ) { - var node, - nodes = selector ? jQuery.filter( selector, elem ) : elem, - i = 0; + // Support: QtWebKit, PhantomJS + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, tmp.childNodes ); - for ( ; ( node = nodes[ i ] ) != null; i++ ) { - if ( !keepData && node.nodeType === 1 ) { - jQuery.cleanData( getAll( node ) ); - } + // Remember the top-level container + tmp = fragment.firstChild; - if ( node.parentNode ) { - if ( keepData && jQuery.contains( node.ownerDocument, node ) ) { - setGlobalEval( getAll( node, "script" ) ); + // Ensure the created nodes are orphaned (#12392) + tmp.textContent = ""; + } } - node.parentNode.removeChild( node ); } - } - return elem; -} + // Remove wrapper from fragment + fragment.textContent = ""; -jQuery.extend( { - htmlPrefilter: function( html ) { - return html.replace( rxhtmlTag, "<$1>" ); - }, + i = 0; + while ( (elem = nodes[ i++ ]) ) { - clone: function( elem, dataAndEvents, deepDataAndEvents ) { - var i, l, srcElements, destElements, - clone = elem.cloneNode( true ), - inPage = jQuery.contains( elem.ownerDocument, elem ); + // #4087 - If origin and destination elements are the same, and this is + // that element, do not do anything + if ( selection && jQuery.inArray( elem, selection ) !== -1 ) { + continue; + } - // Fix IE cloning issues - if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && - !jQuery.isXMLDoc( elem ) ) { + contains = jQuery.contains( elem.ownerDocument, elem ); - // We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2 - destElements = getAll( clone ); - srcElements = getAll( elem ); + // Append to fragment + tmp = getAll( fragment.appendChild( elem ), "script" ); - for ( i = 0, l = srcElements.length; i < l; i++ ) { - fixInput( srcElements[ i ], destElements[ i ] ); + // Preserve script evaluation history + if ( contains ) { + setGlobalEval( tmp ); } - } - // Copy the events from the original to the clone - if ( dataAndEvents ) { - if ( deepDataAndEvents ) { - srcElements = srcElements || getAll( elem ); - destElements = destElements || getAll( clone ); - - for ( i = 0, l = srcElements.length; i < l; i++ ) { - cloneCopyEvent( srcElements[ i ], destElements[ i ] ); + // Capture executables + if ( scripts ) { + j = 0; + while ( (elem = tmp[ j++ ]) ) { + if ( rscriptType.test( elem.type || "" ) ) { + scripts.push( elem ); + } } - } else { - cloneCopyEvent( elem, clone ); } } - // Preserve script evaluation history - destElements = getAll( clone, "script" ); - if ( destElements.length > 0 ) { - setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); - } - - // Return the cloned set - return clone; + return fragment; }, cleanData: function( elems ) { - var data, elem, type, + var data, elem, type, key, special = jQuery.event.special, i = 0; - for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) { - if ( acceptData( elem ) ) { - if ( ( data = elem[ dataPriv.expando ] ) ) { + for ( ; (elem = elems[ i ]) !== undefined; i++ ) { + if ( jQuery.acceptData( elem ) ) { + key = elem[ data_priv.expando ]; + + if ( key && (data = data_priv.cache[ key ]) ) { if ( data.events ) { for ( type in data.events ) { if ( special[ type ] ) { @@ -5380,86 +5189,91 @@ jQuery.extend( { } } } - - // Support: Chrome <= 35-45+ - // Assign undefined instead of using delete, see Data#remove - elem[ dataPriv.expando ] = undefined; - } - if ( elem[ dataUser.expando ] ) { - - // Support: Chrome <= 35-45+ - // Assign undefined instead of using delete, see Data#remove - elem[ dataUser.expando ] = undefined; + if ( data_priv.cache[ key ] ) { + // Discard any remaining `private` data + delete data_priv.cache[ key ]; + } } } + // Discard any remaining `user` data + delete data_user.cache[ elem[ data_user.expando ] ]; } } -} ); - -jQuery.fn.extend( { - - // Keep domManip exposed until 3.0 (gh-2225) - domManip: domManip, - - detach: function( selector ) { - return remove( this, selector, true ); - }, - - remove: function( selector ) { - return remove( this, selector ); - }, +}); +jQuery.fn.extend({ text: function( value ) { return access( this, function( value ) { return value === undefined ? jQuery.text( this ) : - this.empty().each( function() { + this.empty().each(function() { if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { this.textContent = value; } - } ); + }); }, null, value, arguments.length ); }, append: function() { - return domManip( this, arguments, function( elem ) { + return this.domManip( arguments, function( elem ) { if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { var target = manipulationTarget( this, elem ); target.appendChild( elem ); } - } ); + }); }, prepend: function() { - return domManip( this, arguments, function( elem ) { + return this.domManip( arguments, function( elem ) { if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { var target = manipulationTarget( this, elem ); target.insertBefore( elem, target.firstChild ); } - } ); + }); }, before: function() { - return domManip( this, arguments, function( elem ) { + return this.domManip( arguments, function( elem ) { if ( this.parentNode ) { this.parentNode.insertBefore( elem, this ); } - } ); + }); }, after: function() { - return domManip( this, arguments, function( elem ) { + return this.domManip( arguments, function( elem ) { if ( this.parentNode ) { this.parentNode.insertBefore( elem, this.nextSibling ); } - } ); + }); + }, + + remove: function( selector, keepData /* Internal Use Only */ ) { + var elem, + elems = selector ? jQuery.filter( selector, this ) : this, + i = 0; + + for ( ; (elem = elems[i]) != null; i++ ) { + if ( !keepData && elem.nodeType === 1 ) { + jQuery.cleanData( getAll( elem ) ); + } + + if ( elem.parentNode ) { + if ( keepData && jQuery.contains( elem.ownerDocument, elem ) ) { + setGlobalEval( getAll( elem, "script" ) ); + } + elem.parentNode.removeChild( elem ); + } + } + + return this; }, empty: function() { var elem, i = 0; - for ( ; ( elem = this[ i ] ) != null; i++ ) { + for ( ; (elem = this[i]) != null; i++ ) { if ( elem.nodeType === 1 ) { // Prevent memory leaks @@ -5477,9 +5291,9 @@ jQuery.fn.extend( { dataAndEvents = dataAndEvents == null ? false : dataAndEvents; deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; - return this.map( function() { + return this.map(function() { return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); - } ); + }); }, html: function( value ) { @@ -5496,7 +5310,7 @@ jQuery.fn.extend( { if ( typeof value === "string" && !rnoInnerhtml.test( value ) && !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { - value = jQuery.htmlPrefilter( value ); + value = value.replace( rxhtmlTag, "<$1>" ); try { for ( ; i < l; i++ ) { @@ -5512,7 +5326,7 @@ jQuery.fn.extend( { elem = 0; // If using innerHTML throws an exception, use the fallback method - } catch ( e ) {} + } catch( e ) {} } if ( elem ) { @@ -5522,25 +5336,115 @@ jQuery.fn.extend( { }, replaceWith: function() { - var ignored = []; + var arg = arguments[ 0 ]; + + // Make the changes, replacing each context element with the new content + this.domManip( arguments, function( elem ) { + arg = this.parentNode; + + jQuery.cleanData( getAll( this ) ); + + if ( arg ) { + arg.replaceChild( elem, this ); + } + }); + + // Force removal if there was no new content (e.g., from empty arguments) + return arg && (arg.length || arg.nodeType) ? this : this.remove(); + }, + + detach: function( selector ) { + return this.remove( selector, true ); + }, + + domManip: function( args, callback ) { + + // Flatten any nested arrays + args = concat.apply( [], args ); + + var fragment, first, scripts, hasScripts, node, doc, + i = 0, + l = this.length, + set = this, + iNoClone = l - 1, + value = args[ 0 ], + isFunction = jQuery.isFunction( value ); + + // We can't cloneNode fragments that contain checked, in WebKit + if ( isFunction || + ( l > 1 && typeof value === "string" && + !support.checkClone && rchecked.test( value ) ) ) { + return this.each(function( index ) { + var self = set.eq( index ); + if ( isFunction ) { + args[ 0 ] = value.call( this, index, self.html() ); + } + self.domManip( args, callback ); + }); + } + + if ( l ) { + fragment = jQuery.buildFragment( args, this[ 0 ].ownerDocument, false, this ); + first = fragment.firstChild; + + if ( fragment.childNodes.length === 1 ) { + fragment = first; + } + + if ( first ) { + scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); + hasScripts = scripts.length; + + // Use the original fragment for the last item instead of the first because it can end up + // being emptied incorrectly in certain situations (#8070). + for ( ; i < l; i++ ) { + node = fragment; + + if ( i !== iNoClone ) { + node = jQuery.clone( node, true, true ); + + // Keep references to cloned scripts for later restoration + if ( hasScripts ) { + // Support: QtWebKit + // jQuery.merge because push.apply(_, arraylike) throws + jQuery.merge( scripts, getAll( node, "script" ) ); + } + } - // Make the changes, replacing each non-ignored context element with the new content - return domManip( this, arguments, function( elem ) { - var parent = this.parentNode; + callback.call( this[ i ], node, i ); + } + + if ( hasScripts ) { + doc = scripts[ scripts.length - 1 ].ownerDocument; + + // Reenable scripts + jQuery.map( scripts, restoreScript ); + + // Evaluate executable scripts on first document insertion + for ( i = 0; i < hasScripts; i++ ) { + node = scripts[ i ]; + if ( rscriptType.test( node.type || "" ) && + !data_priv.access( node, "globalEval" ) && jQuery.contains( doc, node ) ) { - if ( jQuery.inArray( this, ignored ) < 0 ) { - jQuery.cleanData( getAll( this ) ); - if ( parent ) { - parent.replaceChild( elem, this ); + if ( node.src ) { + // Optional AJAX dependency, but won't run scripts if not present + if ( jQuery._evalUrl ) { + jQuery._evalUrl( node.src ); + } + } else { + jQuery.globalEval( node.textContent.replace( rcleanScript, "" ) ); + } + } + } } } + } - // Force callback invocation - }, ignored ); + return this; } -} ); +}); -jQuery.each( { +jQuery.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", @@ -5565,29 +5469,28 @@ jQuery.each( { return this.pushStack( ret ); }; -} ); +}); var iframe, - elemdisplay = { - - // Support: Firefox - // We have to pre-define these values for FF (#10227) - HTML: "block", - BODY: "block" - }; + elemdisplay = {}; /** * Retrieve the actual display of a element * @param {String} name nodeName of the element * @param {Object} doc Document object */ - // Called only from within defaultDisplay function actualDisplay( name, doc ) { - var elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ), + var style, + elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ), - display = jQuery.css( elem[ 0 ], "display" ); + // getDefaultComputedStyle might be reliably used only on attached element + display = window.getDefaultComputedStyle && ( style = window.getDefaultComputedStyle( elem[ 0 ] ) ) ? + + // Use of this method is a temporary fix (more like optimization) until something better comes along, + // since it was removed from specification and supported only in FF + style.display : jQuery.css( elem[ 0 ], "display" ); // We don't have any data stored on the element, // so use "detach" method as fast way to get rid of the element @@ -5611,8 +5514,7 @@ function defaultDisplay( nodeName ) { if ( display === "none" || !display ) { // Use the already-created iframe if possible - iframe = ( iframe || jQuery( "