From 84c85a90e8da7781d70ed4aa6d0d1ce204331c32 Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Fri, 4 Sep 2020 13:56:08 -0400 Subject: [PATCH] Merge SSO and Portal projects --- bitwarden-server.sln | 18 +- .../OrganizationPickerViewComponent.cs | 33 + .../src/Portal/Controllers/AuthController.cs | 63 + .../src/Portal/Controllers/HomeController.cs | 70 + .../Portal/Controllers/PoliciesController.cs | 123 + .../src/Portal/Controllers/SsoController.cs | 90 + bitwarden_license/src/Portal/Dockerfile | 20 + .../Portal/EnterprisePortalCurrentContext.cs | 111 + .../src/Portal/Models/ErrorViewModel.cs | 11 + .../Portal/Models/MasterPasswordDataModel.cs | 21 + .../Models/OrganizationPickerViewModel.cs | 11 + .../Models/PasswordGeneratorDataModel.cs | 37 + .../src/Portal/Models/PoliciesModel.cs | 30 + .../src/Portal/Models/PolicyEditModel.cs | 110 + .../src/Portal/Models/PolicyModel.cs | 49 + .../Portal/Models/SsoConfigDataViewModel.cs | 175 + .../Portal/Models/SsoConfigEditViewModel.cs | 108 + bitwarden_license/src/Portal/Portal.csproj | 14 + .../src/Portal/PortalSettings.cs | 8 + bitwarden_license/src/Portal/Program.cs | 35 + .../src/Portal/Properties/AssemblyInfo.cs | 5 + .../src/Portal/Properties/launchSettings.json | 27 + bitwarden_license/src/Portal/Sass/site.scss | 226 + bitwarden_license/src/Portal/Startup.cs | 110 + ...nterprisePortalCurrentContextMiddleware.cs | 23 + ...rprisePortalServiceCollectionExtensions.cs | 41 + .../EnterprisePortalTokenSignInManager.cs | 74 + .../src/Portal/Views/Auth/AccessDenied.cshtml | 8 + .../src/Portal/Views/Auth/LoggedOut.cshtml | 8 + .../src/Portal/Views/Home/Index.cshtml | 8 + .../src/Portal/Views/Policies/Edit.cshtml | 141 + .../src/Portal/Views/Policies/Index.cshtml | 29 + .../OrganizationPicker/Default.cshtml | 9 + .../src/Portal/Views/Shared/Error.cshtml | 25 + .../src/Portal/Views/Shared/_Layout.cshtml | 121 + .../src/Portal/Views/Sso/Index.cshtml | 226 + .../src/Portal/Views/_ViewImports.cshtml | 4 + .../src/Portal/Views/_ViewStart.cshtml | 3 + .../src/Portal/appsettings.Production.json | 23 + bitwarden_license/src/Portal/appsettings.json | 64 + bitwarden_license/src/Portal/build.ps1 | 18 + bitwarden_license/src/Portal/build.sh | 25 + bitwarden_license/src/Portal/entrypoint.sh | 41 + bitwarden_license/src/Portal/gulpfile.js | 82 + .../src/Portal/package-lock.json | 4992 ++++++++++ bitwarden_license/src/Portal/package.json | 18 + bitwarden_license/src/Portal/webfonts.list | 1 + .../src/Portal/wwwroot/css/site.css | 6 + .../src/Portal/wwwroot/css/webfonts.css | 80 + .../css/webfonts/Open_Sans-italic-300.woff | Bin 0 -> 53016 bytes .../css/webfonts/Open_Sans-italic-400.woff | Bin 0 -> 53024 bytes .../css/webfonts/Open_Sans-italic-600.woff | Bin 0 -> 54016 bytes .../css/webfonts/Open_Sans-italic-700.woff | Bin 0 -> 52908 bytes .../css/webfonts/Open_Sans-italic-800.woff | Bin 0 -> 53336 bytes .../css/webfonts/Open_Sans-normal-300.woff | Bin 0 -> 56908 bytes .../css/webfonts/Open_Sans-normal-400.woff | Bin 0 -> 55268 bytes .../css/webfonts/Open_Sans-normal-600.woff | Bin 0 -> 57632 bytes .../css/webfonts/Open_Sans-normal-700.woff | Bin 0 -> 57908 bytes .../css/webfonts/Open_Sans-normal-800.woff | Bin 0 -> 57568 bytes .../src/Portal/wwwroot/favicon.ico | Bin 0 -> 34494 bytes .../src/Portal/wwwroot/js/site.js | 4 + .../lib/bootstrap/js/bootstrap.bundle.js | 7033 +++++++++++++ .../lib/bootstrap/js/bootstrap.bundle.js.map | 1 + .../lib/bootstrap/js/bootstrap.bundle.min.js | 7 + .../bootstrap/js/bootstrap.bundle.min.js.map | 1 + .../wwwroot/lib/bootstrap/js/bootstrap.js | 4420 +++++++++ .../wwwroot/lib/bootstrap/js/bootstrap.js.map | 1 + .../wwwroot/lib/bootstrap/js/bootstrap.min.js | 7 + .../lib/bootstrap/js/bootstrap.min.js.map | 1 + .../lib/font-awesome/css/font-awesome.css | 2337 +++++ .../lib/font-awesome/css/font-awesome.css.map | 7 + .../lib/font-awesome/css/font-awesome.min.css | 4 + .../lib/font-awesome/fonts/FontAwesome.otf | Bin 0 -> 134808 bytes .../fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes .../fonts/fontawesome-webfont.svg | 2671 +++++ .../fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes .../fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes .../fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes .../Portal/wwwroot/lib/jquery/jquery.slim.js | 8777 +++++++++++++++++ .../wwwroot/lib/jquery/jquery.slim.min.js | 2 + .../wwwroot/lib/jquery/jquery.slim.min.map | 1 + .../Portal/wwwroot/lib/popper/popper-utils.js | 1151 +++ .../wwwroot/lib/popper/popper-utils.js.map | 1 + .../wwwroot/lib/popper/popper-utils.min.js | 5 + .../lib/popper/popper-utils.min.js.map | 1 + .../src/Portal/wwwroot/lib/popper/popper.js | 2624 +++++ .../Portal/wwwroot/lib/popper/popper.js.flow | 156 + .../Portal/wwwroot/lib/popper/popper.js.map | 1 + .../Portal/wwwroot/lib/popper/popper.min.js | 5 + .../wwwroot/lib/popper/popper.min.js.map | 1 + .../src/Sso/Controllers/AccountController.cs | 603 ++ .../src/Sso/Controllers/HomeController.cs | 43 + bitwarden_license/src/Sso/Dockerfile | 20 + .../src/Sso/Models/ErrorViewModel.cs | 15 + .../src/Sso/Models/RedirectViewModel.cs | 7 + .../src/Sso/Models/SamlEnvironment.cs | 9 + bitwarden_license/src/Sso/Program.cs | 35 + .../src/Sso/Properties/launchSettings.json | 27 + bitwarden_license/src/Sso/Sass/site.scss | 33 + bitwarden_license/src/Sso/Sso.csproj | 16 + bitwarden_license/src/Sso/Startup.cs | 134 + .../src/Sso/Utilities/ClaimsExtensions.cs | 49 + .../Utilities/DiscoveryResponseGenerator.cs | 39 + .../Utilities/DynamicAuthenticationScheme.cs | 93 + .../DynamicAuthenticationSchemeProvider.cs | 433 + .../Utilities/ExtendedOptionsMonitorCache.cs | 38 + .../Utilities/IDynamicAuthenticationScheme.cs | 14 + .../Utilities/IExtendedOptionsMonitorCache.cs | 9 + .../OpenIdConnectOptionsExtensions.cs | 78 + .../Sso/Utilities/Saml2OptionsExtensions.cs | 108 + .../src/Sso/Utilities/SamlClaimTypes.cs | 12 + .../src/Sso/Utilities/SamlNameIdFormats.cs | 18 + .../src/Sso/Utilities/SamlPropertyKeys.cs | 7 + .../Utilities/ServiceCollectionExtensions.cs | 84 + .../Utilities/SsoAuthenticationMiddleware.cs | 83 + .../src/Sso/Views/Shared/Error.cshtml | 19 + .../src/Sso/Views/Shared/Redirect.cshtml | 12 + .../src/Sso/Views/Shared/_Layout.cshtml | 60 + .../src/Sso/Views/_ViewImports.cshtml | 5 + .../src/Sso/Views/_ViewStart.cshtml | 3 + .../src/Sso/appsettings.Production.json | 32 + bitwarden_license/src/Sso/appsettings.json | 65 + bitwarden_license/src/Sso/build.ps1 | 18 + bitwarden_license/src/Sso/build.sh | 25 + bitwarden_license/src/Sso/entrypoint.sh | 44 + bitwarden_license/src/Sso/gulpfile.js | 82 + bitwarden_license/src/Sso/package-lock.json | 5011 ++++++++++ bitwarden_license/src/Sso/package.json | 18 + bitwarden_license/src/Sso/webfonts.list | 1 + .../src/Sso/wwwroot/css/site.css | 6 + .../src/Sso/wwwroot/css/webfonts.css | 80 + .../css/webfonts/Open_Sans-italic-300.woff | Bin 0 -> 53016 bytes .../css/webfonts/Open_Sans-italic-400.woff | Bin 0 -> 53024 bytes .../css/webfonts/Open_Sans-italic-600.woff | Bin 0 -> 54016 bytes .../css/webfonts/Open_Sans-italic-700.woff | Bin 0 -> 52908 bytes .../css/webfonts/Open_Sans-italic-800.woff | Bin 0 -> 53336 bytes .../css/webfonts/Open_Sans-normal-300.woff | Bin 0 -> 56908 bytes .../css/webfonts/Open_Sans-normal-400.woff | Bin 0 -> 55268 bytes .../css/webfonts/Open_Sans-normal-600.woff | Bin 0 -> 57632 bytes .../css/webfonts/Open_Sans-normal-700.woff | Bin 0 -> 57908 bytes .../css/webfonts/Open_Sans-normal-800.woff | Bin 0 -> 57568 bytes bitwarden_license/src/Sso/wwwroot/favicon.ico | Bin 0 -> 34494 bytes bitwarden_license/src/Sso/wwwroot/js/site.js | 4 + .../lib/bootstrap/js/bootstrap.bundle.js | 7033 +++++++++++++ .../lib/bootstrap/js/bootstrap.bundle.js.map | 1 + .../lib/bootstrap/js/bootstrap.bundle.min.js | 7 + .../bootstrap/js/bootstrap.bundle.min.js.map | 1 + .../Sso/wwwroot/lib/bootstrap/js/bootstrap.js | 4420 +++++++++ .../wwwroot/lib/bootstrap/js/bootstrap.js.map | 1 + .../wwwroot/lib/bootstrap/js/bootstrap.min.js | 7 + .../lib/bootstrap/js/bootstrap.min.js.map | 1 + .../lib/font-awesome/css/font-awesome.css | 2337 +++++ .../lib/font-awesome/css/font-awesome.css.map | 7 + .../lib/font-awesome/css/font-awesome.min.css | 4 + .../lib/font-awesome/fonts/FontAwesome.otf | Bin 0 -> 134808 bytes .../fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes .../fonts/fontawesome-webfont.svg | 2671 +++++ .../fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes .../fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes .../fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes .../src/Sso/wwwroot/lib/jquery/jquery.slim.js | 8777 +++++++++++++++++ .../Sso/wwwroot/lib/jquery/jquery.slim.min.js | 2 + .../wwwroot/lib/jquery/jquery.slim.min.map | 1 + .../Sso/wwwroot/lib/popper/popper-utils.js | 1151 +++ .../wwwroot/lib/popper/popper-utils.js.map | 1 + .../wwwroot/lib/popper/popper-utils.min.js | 5 + .../lib/popper/popper-utils.min.js.map | 1 + .../src/Sso/wwwroot/lib/popper/popper.js | 2624 +++++ .../src/Sso/wwwroot/lib/popper/popper.js.flow | 156 + .../src/Sso/wwwroot/lib/popper/popper.js.map | 1 + .../src/Sso/wwwroot/lib/popper/popper.min.js | 5 + .../Sso/wwwroot/lib/popper/popper.min.js.map | 1 + build.sh | 10 + 173 files changed, 73510 insertions(+), 1 deletion(-) create mode 100644 bitwarden_license/src/Portal/Components/OrganizationPickerViewComponent.cs create mode 100644 bitwarden_license/src/Portal/Controllers/AuthController.cs create mode 100644 bitwarden_license/src/Portal/Controllers/HomeController.cs create mode 100644 bitwarden_license/src/Portal/Controllers/PoliciesController.cs create mode 100644 bitwarden_license/src/Portal/Controllers/SsoController.cs create mode 100644 bitwarden_license/src/Portal/Dockerfile create mode 100644 bitwarden_license/src/Portal/EnterprisePortalCurrentContext.cs create mode 100644 bitwarden_license/src/Portal/Models/ErrorViewModel.cs create mode 100644 bitwarden_license/src/Portal/Models/MasterPasswordDataModel.cs create mode 100644 bitwarden_license/src/Portal/Models/OrganizationPickerViewModel.cs create mode 100644 bitwarden_license/src/Portal/Models/PasswordGeneratorDataModel.cs create mode 100644 bitwarden_license/src/Portal/Models/PoliciesModel.cs create mode 100644 bitwarden_license/src/Portal/Models/PolicyEditModel.cs create mode 100644 bitwarden_license/src/Portal/Models/PolicyModel.cs create mode 100644 bitwarden_license/src/Portal/Models/SsoConfigDataViewModel.cs create mode 100644 bitwarden_license/src/Portal/Models/SsoConfigEditViewModel.cs create mode 100644 bitwarden_license/src/Portal/Portal.csproj create mode 100644 bitwarden_license/src/Portal/PortalSettings.cs create mode 100644 bitwarden_license/src/Portal/Program.cs create mode 100644 bitwarden_license/src/Portal/Properties/AssemblyInfo.cs create mode 100644 bitwarden_license/src/Portal/Properties/launchSettings.json create mode 100644 bitwarden_license/src/Portal/Sass/site.scss create mode 100644 bitwarden_license/src/Portal/Startup.cs create mode 100644 bitwarden_license/src/Portal/Utilities/EnterprisePortalCurrentContextMiddleware.cs create mode 100644 bitwarden_license/src/Portal/Utilities/EnterprisePortalServiceCollectionExtensions.cs create mode 100644 bitwarden_license/src/Portal/Utilities/EnterprisePortalTokenSignInManager.cs create mode 100644 bitwarden_license/src/Portal/Views/Auth/AccessDenied.cshtml create mode 100644 bitwarden_license/src/Portal/Views/Auth/LoggedOut.cshtml create mode 100644 bitwarden_license/src/Portal/Views/Home/Index.cshtml create mode 100644 bitwarden_license/src/Portal/Views/Policies/Edit.cshtml create mode 100644 bitwarden_license/src/Portal/Views/Policies/Index.cshtml create mode 100644 bitwarden_license/src/Portal/Views/Shared/Components/OrganizationPicker/Default.cshtml create mode 100644 bitwarden_license/src/Portal/Views/Shared/Error.cshtml create mode 100644 bitwarden_license/src/Portal/Views/Shared/_Layout.cshtml create mode 100644 bitwarden_license/src/Portal/Views/Sso/Index.cshtml create mode 100644 bitwarden_license/src/Portal/Views/_ViewImports.cshtml create mode 100644 bitwarden_license/src/Portal/Views/_ViewStart.cshtml create mode 100644 bitwarden_license/src/Portal/appsettings.Production.json create mode 100644 bitwarden_license/src/Portal/appsettings.json create mode 100644 bitwarden_license/src/Portal/build.ps1 create mode 100644 bitwarden_license/src/Portal/build.sh create mode 100644 bitwarden_license/src/Portal/entrypoint.sh create mode 100644 bitwarden_license/src/Portal/gulpfile.js create mode 100644 bitwarden_license/src/Portal/package-lock.json create mode 100644 bitwarden_license/src/Portal/package.json create mode 100644 bitwarden_license/src/Portal/webfonts.list create mode 100644 bitwarden_license/src/Portal/wwwroot/css/site.css create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts.css create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-300.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-400.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-600.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-700.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-800.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-300.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-400.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-600.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-700.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-800.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/favicon.ico create mode 100644 bitwarden_license/src/Portal/wwwroot/js/site.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.bundle.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.bundle.js.map create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.bundle.min.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.bundle.min.js.map create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.js.map create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.min.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.min.js.map create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/font-awesome/css/font-awesome.css create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/font-awesome/css/font-awesome.css.map create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/font-awesome/css/font-awesome.min.css create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/font-awesome/fonts/FontAwesome.otf create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.eot create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.svg create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.ttf create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff2 create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/jquery/jquery.slim.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/jquery/jquery.slim.min.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/jquery/jquery.slim.min.map create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/popper/popper-utils.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/popper/popper-utils.js.map create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/popper/popper-utils.min.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/popper/popper-utils.min.js.map create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/popper/popper.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/popper/popper.js.flow create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/popper/popper.js.map create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/popper/popper.min.js create mode 100644 bitwarden_license/src/Portal/wwwroot/lib/popper/popper.min.js.map create mode 100644 bitwarden_license/src/Sso/Controllers/AccountController.cs create mode 100644 bitwarden_license/src/Sso/Controllers/HomeController.cs create mode 100644 bitwarden_license/src/Sso/Dockerfile create mode 100644 bitwarden_license/src/Sso/Models/ErrorViewModel.cs create mode 100644 bitwarden_license/src/Sso/Models/RedirectViewModel.cs create mode 100644 bitwarden_license/src/Sso/Models/SamlEnvironment.cs create mode 100644 bitwarden_license/src/Sso/Program.cs create mode 100644 bitwarden_license/src/Sso/Properties/launchSettings.json create mode 100644 bitwarden_license/src/Sso/Sass/site.scss create mode 100644 bitwarden_license/src/Sso/Sso.csproj create mode 100644 bitwarden_license/src/Sso/Startup.cs create mode 100644 bitwarden_license/src/Sso/Utilities/ClaimsExtensions.cs create mode 100644 bitwarden_license/src/Sso/Utilities/DiscoveryResponseGenerator.cs create mode 100644 bitwarden_license/src/Sso/Utilities/DynamicAuthenticationScheme.cs create mode 100644 bitwarden_license/src/Sso/Utilities/DynamicAuthenticationSchemeProvider.cs create mode 100644 bitwarden_license/src/Sso/Utilities/ExtendedOptionsMonitorCache.cs create mode 100644 bitwarden_license/src/Sso/Utilities/IDynamicAuthenticationScheme.cs create mode 100644 bitwarden_license/src/Sso/Utilities/IExtendedOptionsMonitorCache.cs create mode 100644 bitwarden_license/src/Sso/Utilities/OpenIdConnectOptionsExtensions.cs create mode 100644 bitwarden_license/src/Sso/Utilities/Saml2OptionsExtensions.cs create mode 100644 bitwarden_license/src/Sso/Utilities/SamlClaimTypes.cs create mode 100644 bitwarden_license/src/Sso/Utilities/SamlNameIdFormats.cs create mode 100644 bitwarden_license/src/Sso/Utilities/SamlPropertyKeys.cs create mode 100644 bitwarden_license/src/Sso/Utilities/ServiceCollectionExtensions.cs create mode 100644 bitwarden_license/src/Sso/Utilities/SsoAuthenticationMiddleware.cs create mode 100644 bitwarden_license/src/Sso/Views/Shared/Error.cshtml create mode 100644 bitwarden_license/src/Sso/Views/Shared/Redirect.cshtml create mode 100644 bitwarden_license/src/Sso/Views/Shared/_Layout.cshtml create mode 100644 bitwarden_license/src/Sso/Views/_ViewImports.cshtml create mode 100644 bitwarden_license/src/Sso/Views/_ViewStart.cshtml create mode 100644 bitwarden_license/src/Sso/appsettings.Production.json create mode 100644 bitwarden_license/src/Sso/appsettings.json create mode 100644 bitwarden_license/src/Sso/build.ps1 create mode 100644 bitwarden_license/src/Sso/build.sh create mode 100644 bitwarden_license/src/Sso/entrypoint.sh create mode 100644 bitwarden_license/src/Sso/gulpfile.js create mode 100644 bitwarden_license/src/Sso/package-lock.json create mode 100644 bitwarden_license/src/Sso/package.json create mode 100644 bitwarden_license/src/Sso/webfonts.list create mode 100644 bitwarden_license/src/Sso/wwwroot/css/site.css create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts.css create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts/Open_Sans-italic-300.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts/Open_Sans-italic-400.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts/Open_Sans-italic-600.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts/Open_Sans-italic-700.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts/Open_Sans-italic-800.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts/Open_Sans-normal-300.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts/Open_Sans-normal-400.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts/Open_Sans-normal-600.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts/Open_Sans-normal-700.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/css/webfonts/Open_Sans-normal-800.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/favicon.ico create mode 100644 bitwarden_license/src/Sso/wwwroot/js/site.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/bootstrap/js/bootstrap.bundle.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/bootstrap/js/bootstrap.bundle.js.map create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/bootstrap/js/bootstrap.bundle.min.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/bootstrap/js/bootstrap.bundle.min.js.map create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/bootstrap/js/bootstrap.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/bootstrap/js/bootstrap.js.map create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/bootstrap/js/bootstrap.min.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/bootstrap/js/bootstrap.min.js.map create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/font-awesome/css/font-awesome.css create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/font-awesome/css/font-awesome.css.map create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/font-awesome/css/font-awesome.min.css create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/font-awesome/fonts/FontAwesome.otf create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.eot create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.svg create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.ttf create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff2 create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/jquery/jquery.slim.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/jquery/jquery.slim.min.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/jquery/jquery.slim.min.map create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/popper/popper-utils.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/popper/popper-utils.js.map create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/popper/popper-utils.min.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/popper/popper-utils.min.js.map create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/popper/popper.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/popper/popper.js.flow create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/popper/popper.js.map create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/popper/popper.min.js create mode 100644 bitwarden_license/src/Sso/wwwroot/lib/popper/popper.min.js.map diff --git a/bitwarden-server.sln b/bitwarden-server.sln index a726b85bd..f790e5d73 100644 --- a/bitwarden-server.sln +++ b/bitwarden-server.sln @@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 16 VisualStudioVersion = 16.0.29102.190 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{DD5BD056-4AAE-43EF-BBD2-0B569B8DA84D}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src - AGPL", "src - AGPL", "{DD5BD056-4AAE-43EF-BBD2-0B569B8DA84D}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "util", "util", "{DD5BD056-4AAE-43EF-BBD2-0B569B8DA84E}" EndProject @@ -53,6 +53,12 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Migrator", "util\Migrator\M EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Api.Test", "test\Api.Test\Api.Test.csproj", "{860DE301-0B3E-4717-9C21-A9B4C3C2B121}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src - Bitwarden License", "src - Bitwarden License", "{4FDB6543-F68B-4202-9EA6-7FEA984D2D0A}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Portal", "bitwarden_license\src\Portal\Portal.csproj", "{BA852F18-852F-4154-973B-77D577B8CA04}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Sso", "bitwarden_license\src\Sso\Sso.csproj", "{4866AF64-6640-4C65-A662-A31E02FF9064}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -121,6 +127,14 @@ Global {860DE301-0B3E-4717-9C21-A9B4C3C2B121}.Debug|Any CPU.Build.0 = Debug|Any CPU {860DE301-0B3E-4717-9C21-A9B4C3C2B121}.Release|Any CPU.ActiveCfg = Release|Any CPU {860DE301-0B3E-4717-9C21-A9B4C3C2B121}.Release|Any CPU.Build.0 = Release|Any CPU + {BA852F18-852F-4154-973B-77D577B8CA04}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BA852F18-852F-4154-973B-77D577B8CA04}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BA852F18-852F-4154-973B-77D577B8CA04}.Release|Any CPU.ActiveCfg = Release|Any CPU + {BA852F18-852F-4154-973B-77D577B8CA04}.Release|Any CPU.Build.0 = Release|Any CPU + {4866AF64-6640-4C65-A662-A31E02FF9064}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4866AF64-6640-4C65-A662-A31E02FF9064}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4866AF64-6640-4C65-A662-A31E02FF9064}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4866AF64-6640-4C65-A662-A31E02FF9064}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -141,6 +155,8 @@ Global {79BB453F-D0D8-4DDF-9809-A405C56692BD} = {DD5BD056-4AAE-43EF-BBD2-0B569B8DA84D} {54DED792-A022-417E-9804-21FCC9C7C610} = {DD5BD056-4AAE-43EF-BBD2-0B569B8DA84E} {860DE301-0B3E-4717-9C21-A9B4C3C2B121} = {DD5BD056-4AAE-43EF-BBD2-0B569B8DA84F} + {BA852F18-852F-4154-973B-77D577B8CA04} = {4FDB6543-F68B-4202-9EA6-7FEA984D2D0A} + {4866AF64-6640-4C65-A662-A31E02FF9064} = {4FDB6543-F68B-4202-9EA6-7FEA984D2D0A} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {E01CBF68-2E20-425F-9EDB-E0A6510CA92F} diff --git a/bitwarden_license/src/Portal/Components/OrganizationPickerViewComponent.cs b/bitwarden_license/src/Portal/Components/OrganizationPickerViewComponent.cs new file mode 100644 index 000000000..454d4b2ab --- /dev/null +++ b/bitwarden_license/src/Portal/Components/OrganizationPickerViewComponent.cs @@ -0,0 +1,33 @@ +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Bit.Portal.Models; +using Microsoft.AspNetCore.Mvc; +using Microsoft.AspNetCore.Mvc.Rendering; + +namespace Bit.Portal.Components +{ + public class OrganizationPickerViewComponent : ViewComponent + { + private readonly EnterprisePortalCurrentContext _enterprisePortalCurrentContext; + + public OrganizationPickerViewComponent(EnterprisePortalCurrentContext enterprisePortalCurrentContext) + { + _enterprisePortalCurrentContext = enterprisePortalCurrentContext; + } + + public Task InvokeAsync() + { + return Task.FromResult(View(new OrganizationPickerViewModel + { + SelectedOrganization = _enterprisePortalCurrentContext?.SelectedOrganizationId?.ToString(), + Organizations = _enterprisePortalCurrentContext?.OrganizationsDetails?.Where(x => x.UseBusinessPortal) + .Select(o => new SelectListItem + { + Value = o.OrganizationId.ToString(), + Text = o.Name + }).ToList() ?? new List() + }) as IViewComponentResult); + } + } +} diff --git a/bitwarden_license/src/Portal/Controllers/AuthController.cs b/bitwarden_license/src/Portal/Controllers/AuthController.cs new file mode 100644 index 000000000..c8583c862 --- /dev/null +++ b/bitwarden_license/src/Portal/Controllers/AuthController.cs @@ -0,0 +1,63 @@ +using System.Threading.Tasks; +using Bit.Portal.Utilities; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; + +namespace Bit.Portal.Controllers +{ + public class AuthController : Controller + { + private readonly EnterprisePortalTokenSignInManager _signInManager; + + public AuthController( + EnterprisePortalTokenSignInManager signInManager) + { + _signInManager = signInManager; + } + + [HttpGet("~/login")] + public async Task Index(string userId, string token, string organizationId, string returnUrl) + { + var result = await _signInManager.TokenSignInAsync(userId, token, false); + if (!result.Succeeded) + { + return RedirectToAction("Index", "Home", new + { + error = 2 + }); + } + + if (!string.IsNullOrWhiteSpace(organizationId)) + { + Response.Cookies.Append("SelectedOrganization", organizationId, new CookieOptions { HttpOnly = true }); + } + + if (!string.IsNullOrWhiteSpace(returnUrl) && Url.IsLocalUrl(returnUrl)) + { + return Redirect(returnUrl); + } + + return RedirectToAction("Index", "Home"); + } + + [HttpPost("~/logout")] + [ValidateAntiForgeryToken] + public async Task Logout() + { + await _signInManager.SignOutAsync(); + return RedirectToAction("LoggedOut"); + } + + [HttpGet("~/logged-out")] + public IActionResult LoggedOut() + { + return View(); + } + + [HttpGet("~/access-denied")] + public IActionResult AccessDenied() + { + return View(); + } + } +} diff --git a/bitwarden_license/src/Portal/Controllers/HomeController.cs b/bitwarden_license/src/Portal/Controllers/HomeController.cs new file mode 100644 index 000000000..5120fb941 --- /dev/null +++ b/bitwarden_license/src/Portal/Controllers/HomeController.cs @@ -0,0 +1,70 @@ +using System; +using System.Diagnostics; +using System.Linq; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; +using Bit.Portal.Models; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Identity; +using Bit.Core.Models.Table; + +namespace Bit.Portal.Controllers +{ + public class HomeController : Controller + { + private readonly SignInManager _signInManager; + private readonly ILogger _logger; + private readonly EnterprisePortalCurrentContext _enterprisePortalCurrentContext; + + public HomeController( + SignInManager signInManager, + ILogger logger, + EnterprisePortalCurrentContext enterprisePortalCurrentContext) + { + _signInManager = signInManager; + _logger = logger; + _enterprisePortalCurrentContext = enterprisePortalCurrentContext; + } + + public IActionResult Index() + { + if(_signInManager.IsSignedIn(User)) + { + return View(); + } + else + { + return NotFound(); + } + } + + [HttpGet("~/alive")] + [HttpGet("~/now")] + [AllowAnonymous] + public DateTime GetAlive() + { + return DateTime.UtcNow; + } + + [Authorize] + public IActionResult SetSelectedOrganization(Guid id, string returnUrl) + { + if (_enterprisePortalCurrentContext.Organizations.Any(o => o.Id == id)) + { + Response.Cookies.Append("SelectedOrganization", id.ToString(), new CookieOptions { HttpOnly = true }); + } + if (!string.IsNullOrWhiteSpace(returnUrl) && Url.IsLocalUrl(returnUrl)) + { + return Redirect(returnUrl); + } + return RedirectToAction("Index"); + } + + [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)] + public IActionResult Error() + { + return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier }); + } + } +} diff --git a/bitwarden_license/src/Portal/Controllers/PoliciesController.cs b/bitwarden_license/src/Portal/Controllers/PoliciesController.cs new file mode 100644 index 000000000..85be34494 --- /dev/null +++ b/bitwarden_license/src/Portal/Controllers/PoliciesController.cs @@ -0,0 +1,123 @@ +using System.Threading.Tasks; +using Bit.Core.Enums; +using Bit.Core.Models.Table; +using Bit.Core.Repositories; +using Bit.Core.Services; +using Bit.Portal.Models; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; + +namespace Bit.Portal.Controllers +{ + [Authorize] + public class PoliciesController : Controller + { + private readonly IUserService _userService; + private readonly IOrganizationService _organizationService; + private readonly IPolicyService _policyService; + private readonly IPolicyRepository _policyRepository; + private readonly EnterprisePortalCurrentContext _enterprisePortalCurrentContext; + private readonly II18nService _i18nService; + + public PoliciesController( + IUserService userService, + IOrganizationService organizationService, + IPolicyService policyService, + IPolicyRepository policyRepository, + EnterprisePortalCurrentContext enterprisePortalCurrentContext, + II18nService i18nService) + { + _userService = userService; + _organizationService = organizationService; + _policyService = policyService; + _policyRepository = policyRepository; + _enterprisePortalCurrentContext = enterprisePortalCurrentContext; + _i18nService = i18nService; + } + + public async Task Index() + { + var orgId = _enterprisePortalCurrentContext.SelectedOrganizationId; + if (orgId == null) + { + return Redirect("~/"); + } + + if (!_enterprisePortalCurrentContext.SelectedOrganizationDetails.UsePolicies || + !_enterprisePortalCurrentContext.AdminForSelectedOrganization) + { + return Redirect("~/"); + } + + var policies = await _policyRepository.GetManyByOrganizationIdAsync(orgId.Value); + return View(new PoliciesModel(policies)); + } + + [HttpGet("/edit/{type}")] + public async Task Edit(PolicyType type) + { + var orgId = _enterprisePortalCurrentContext.SelectedOrganizationId; + if (orgId == null) + { + return Redirect("~"); + } + + if (!_enterprisePortalCurrentContext.SelectedOrganizationDetails.UsePolicies || + !_enterprisePortalCurrentContext.AdminForSelectedOrganization) + { + return Redirect("~/"); + } + + var policy = await _policyRepository.GetByOrganizationIdTypeAsync(orgId.Value, type); + return BuildPolicyView(policy, type); + } + + [HttpPost("/edit/{type}")] + [ValidateAntiForgeryToken] + public async Task Edit(PolicyType type, PolicyEditModel model) + { + var orgId = _enterprisePortalCurrentContext.SelectedOrganizationId; + if (orgId == null) + { + return Redirect("~"); + } + + if (!_enterprisePortalCurrentContext.SelectedOrganizationDetails.UsePolicies || + !_enterprisePortalCurrentContext.AdminForSelectedOrganization) + { + return Redirect("~/"); + } + + var policy = await _policyRepository.GetByOrganizationIdTypeAsync(orgId.Value, type); + if (!ModelState.IsValid) + { + return BuildPolicyView(policy, type); + } + + if (policy == null) + { + policy = model.ToPolicy(type, orgId.Value); + } + else + { + policy = model.ToPolicy(policy); + } + + var userId = _userService.GetProperUserId(User); + await _policyService.SaveAsync(policy, _userService, _organizationService, userId); + return RedirectToAction("Edit", new { type }); + } + + private IActionResult BuildPolicyView(Policy policy, PolicyType type) + { + if (policy == null) + { + return View(new PolicyEditModel(type, _i18nService)); + } + else + { + return View(new PolicyEditModel(policy, _i18nService)); + } + } + } +} diff --git a/bitwarden_license/src/Portal/Controllers/SsoController.cs b/bitwarden_license/src/Portal/Controllers/SsoController.cs new file mode 100644 index 000000000..a0f3eb550 --- /dev/null +++ b/bitwarden_license/src/Portal/Controllers/SsoController.cs @@ -0,0 +1,90 @@ +using System.Threading.Tasks; +using Bit.Core; +using Bit.Core.Repositories; +using Bit.Core.Services; +using Bit.Portal.Models; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; + +namespace Bit.Portal.Controllers +{ + [Authorize] + public class SsoController : Controller + { + private readonly ISsoConfigRepository _ssoConfigRepository; + private readonly EnterprisePortalCurrentContext _enterprisePortalCurrentContext; + private readonly II18nService _i18nService; + private readonly GlobalSettings _globalSettings; + + public SsoController( + ISsoConfigRepository ssoConfigRepository, + EnterprisePortalCurrentContext enterprisePortalCurrentContext, + II18nService i18nService, + GlobalSettings globalSettings) + { + _ssoConfigRepository = ssoConfigRepository; + _enterprisePortalCurrentContext = enterprisePortalCurrentContext; + _i18nService = i18nService; + _globalSettings = globalSettings; + } + + [HttpGet] + public async Task Index() + { + var orgId = _enterprisePortalCurrentContext.SelectedOrganizationId; + if (orgId == null) + { + return Redirect("~/"); + } + + if (!_enterprisePortalCurrentContext.SelectedOrganizationDetails.UseSso || + !_enterprisePortalCurrentContext.AdminForSelectedOrganization) + { + return Redirect("~/"); + } + + var ssoConfig = await _ssoConfigRepository.GetByOrganizationIdAsync(orgId.Value); + var model = new SsoConfigEditViewModel(ssoConfig, _i18nService, _globalSettings); + + return View(model); + } + + [HttpPost] + [ValidateAntiForgeryToken] + public async Task Index(SsoConfigEditViewModel model) + { + var orgId = _enterprisePortalCurrentContext.SelectedOrganizationId; + if (orgId == null) + { + return Redirect("~/"); + } + + if (!_enterprisePortalCurrentContext.SelectedOrganizationDetails.UseSso || + !_enterprisePortalCurrentContext.AdminForSelectedOrganization) + { + return Redirect("~/"); + } + + model.BuildLists(_i18nService); + if (!ModelState.IsValid) + { + return View(model); + } + + var ssoConfig = await _ssoConfigRepository.GetByOrganizationIdAsync(orgId.Value); + if (ssoConfig == null) + { + ssoConfig = model.ToSsoConfig(); + ssoConfig.OrganizationId = orgId.GetValueOrDefault(); + await _ssoConfigRepository.CreateAsync(ssoConfig); + } + else + { + ssoConfig = model.ToSsoConfig(ssoConfig); + await _ssoConfigRepository.ReplaceAsync(ssoConfig); + } + + return View(model); + } + } +} diff --git a/bitwarden_license/src/Portal/Dockerfile b/bitwarden_license/src/Portal/Dockerfile new file mode 100644 index 000000000..e78ea9511 --- /dev/null +++ b/bitwarden_license/src/Portal/Dockerfile @@ -0,0 +1,20 @@ +FROM mcr.microsoft.com/dotnet/core/aspnet:3.1 + +LABEL com.bitwarden.product="bitwarden" + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + gosu \ + curl \ + && rm -rf /var/lib/apt/lists/* + +ENV ASPNETCORE_URLS http://+:5000 +WORKDIR /app +EXPOSE 5000 +COPY obj/Docker/publish . +COPY entrypoint.sh / +RUN chmod +x /entrypoint.sh + +HEALTHCHECK CMD curl -f http://localhost:5000/alive || exit 1 + +ENTRYPOINT ["/entrypoint.sh"] diff --git a/bitwarden_license/src/Portal/EnterprisePortalCurrentContext.cs b/bitwarden_license/src/Portal/EnterprisePortalCurrentContext.cs new file mode 100644 index 000000000..3e03535df --- /dev/null +++ b/bitwarden_license/src/Portal/EnterprisePortalCurrentContext.cs @@ -0,0 +1,111 @@ +using System; +using Bit.Core; +using System.Security.Claims; +using System.Threading.Tasks; +using Microsoft.Extensions.DependencyInjection; +using Bit.Core.Repositories; +using System.Linq; +using System.Collections.Generic; +using Bit.Core.Models.Data; + +namespace Bit.Portal +{ + public class EnterprisePortalCurrentContext : CurrentContext + { + private readonly IServiceProvider _serviceProvider; + + public EnterprisePortalCurrentContext(IServiceProvider serviceProvider) + : base() + { + _serviceProvider = serviceProvider; + } + + public Guid? SelectedOrganizationId { get; set; } + public OrganizationUserOrganizationDetails SelectedOrganizationDetails { get; set; } + + public List OrganizationsDetails { get; set; } + + public bool ManagerForSelectedOrganization => + SelectedOrganizationDetails?.Type == Core.Enums.OrganizationUserType.Manager || + SelectedOrganizationDetails?.Type == Core.Enums.OrganizationUserType.Admin || + SelectedOrganizationDetails?.Type == Core.Enums.OrganizationUserType.Owner; + + public bool AdminForSelectedOrganization => + SelectedOrganizationDetails?.Type == Core.Enums.OrganizationUserType.Admin || + SelectedOrganizationDetails?.Type == Core.Enums.OrganizationUserType.Owner; + + public bool OwnerForSelectedOrganization => + SelectedOrganizationDetails?.Type == Core.Enums.OrganizationUserType.Owner; + + public async override Task SetContextAsync(ClaimsPrincipal user) + { + var nameId = user.FindFirstValue(ClaimTypes.NameIdentifier); + if (Guid.TryParse(nameId, out var nameIdGuid)) + { + UserId = nameIdGuid; + } + + if (!UserId.HasValue) + { + return; + } + + // TODO: maybe make loading orgs Lazy somehow? + var orgUserRepo = _serviceProvider.GetRequiredService(); + var userOrgs = await orgUserRepo.GetManyDetailsByUserAsync(UserId.Value); + OrganizationsDetails = userOrgs.ToList(); + Organizations = userOrgs.Select(ou => new CurrentContentOrganization + { + Id = ou.OrganizationId, + Type = ou.Type + }).ToList(); + + if (SelectedOrganizationId == null && HttpContext.Request.Cookies.ContainsKey("SelectedOrganization") && + Guid.TryParse(HttpContext.Request.Cookies["SelectedOrganization"], out var selectedOrgId)) + { + SelectedOrganizationId = Organizations.FirstOrDefault(o => o.Id == selectedOrgId)?.Id; + SelectedOrganizationDetails = OrganizationsDetails.FirstOrDefault( + o => o.OrganizationId == SelectedOrganizationId); + } + + if (DeviceIdentifier == null && HttpContext.Request.Cookies.ContainsKey("DeviceIdentifier")) + { + DeviceIdentifier = HttpContext.Request.Cookies["DeviceIdentifier"]; + } + + DeviceType = Core.Enums.DeviceType.UnknownBrowser; + if (HttpContext.Request.Headers.ContainsKey("User-Agent")) + { + var userAgent = HttpContext.Request.Headers["User-Agent"].ToString(); + if (userAgent.Contains(" Firefox/") || userAgent.Contains(" Gecko/")) + { + DeviceType = Core.Enums.DeviceType.FirefoxBrowser; + } + else if (userAgent.IndexOf(" OPR/") >= 0) + { + DeviceType = Core.Enums.DeviceType.OperaBrowser; + } + else if (userAgent.Contains(" Edge/")) + { + DeviceType = Core.Enums.DeviceType.EdgeBrowser; + } + else if (userAgent.Contains(" Vivaldi/")) + { + DeviceType = Core.Enums.DeviceType.VivaldiBrowser; + } + else if (userAgent.Contains(" Safari/") && !userAgent.Contains("Chrome")) + { + DeviceType = Core.Enums.DeviceType.SafariBrowser; + } + else if (userAgent.Contains(" Chrome/")) + { + DeviceType = Core.Enums.DeviceType.ChromeBrowser; + } + else if (userAgent.Contains(" Trident/")) + { + DeviceType = Core.Enums.DeviceType.IEBrowser; + } + } + } + } +} diff --git a/bitwarden_license/src/Portal/Models/ErrorViewModel.cs b/bitwarden_license/src/Portal/Models/ErrorViewModel.cs new file mode 100644 index 000000000..4e6c29427 --- /dev/null +++ b/bitwarden_license/src/Portal/Models/ErrorViewModel.cs @@ -0,0 +1,11 @@ +using System; + +namespace Bit.Portal.Models +{ + public class ErrorViewModel + { + public string RequestId { get; set; } + + public bool ShowRequestId => !string.IsNullOrEmpty(RequestId); + } +} diff --git a/bitwarden_license/src/Portal/Models/MasterPasswordDataModel.cs b/bitwarden_license/src/Portal/Models/MasterPasswordDataModel.cs new file mode 100644 index 000000000..cea45af42 --- /dev/null +++ b/bitwarden_license/src/Portal/Models/MasterPasswordDataModel.cs @@ -0,0 +1,21 @@ +using System.ComponentModel.DataAnnotations; + +namespace Bit.Portal.Models +{ + public class MasterPasswordDataModel + { + [Display(Name = "MinimumLength")] + [Range(8, int.MaxValue, ErrorMessage = "MasterPasswordMinLengthError")] + public int? MinLength { get; set; } + [Display(Name = "MinimumComplexityScore")] + public int? MinComplexity { get; set; } + [Display(Name = "UppercaseAZ")] + public bool RequireUpper { get; set; } + [Display(Name = "LowercaseAZ")] + public bool RequireLower { get; set; } + [Display(Name = "Numbers09")] + public bool RequireNumbers { get; set; } + [Display(Name = "SpecialCharacters")] + public bool RequireSpecial { get; set; } + } +} diff --git a/bitwarden_license/src/Portal/Models/OrganizationPickerViewModel.cs b/bitwarden_license/src/Portal/Models/OrganizationPickerViewModel.cs new file mode 100644 index 000000000..5ea038e45 --- /dev/null +++ b/bitwarden_license/src/Portal/Models/OrganizationPickerViewModel.cs @@ -0,0 +1,11 @@ +using System.Collections.Generic; +using Microsoft.AspNetCore.Mvc.Rendering; + +namespace Bit.Portal.Models +{ + public class OrganizationPickerViewModel + { + public string SelectedOrganization { get; set; } + public List Organizations { get; set; } + } +} diff --git a/bitwarden_license/src/Portal/Models/PasswordGeneratorDataModel.cs b/bitwarden_license/src/Portal/Models/PasswordGeneratorDataModel.cs new file mode 100644 index 000000000..d007a7b08 --- /dev/null +++ b/bitwarden_license/src/Portal/Models/PasswordGeneratorDataModel.cs @@ -0,0 +1,37 @@ +using System.ComponentModel.DataAnnotations; + +namespace Bit.Portal.Models +{ + public class PasswordGeneratorDataModel + { + // Shared + [Display(Name = "MinimumLength")] + [Range(5, 128)] + public int? MinLength { get; set; } + [Display(Name = "DefaultType")] + public string DefaultType { get; set; } + // PG - Password + [Display(Name = "UppercaseAZ")] + public bool UseUpper { get; set; } + [Display(Name = "LowercaseAZ")] + public bool UseLower { get; set; } + [Display(Name = "Numbers09")] + public bool UseNumbers { get; set; } + [Display(Name = "SpecialCharacters")] + public bool UseSpecial { get; set; } + [Display(Name = "MinimumNumbers")] + [Range(0, 9)] + public int? MinNumbers { get; set; } + [Display(Name = "MinimumSpecial")] + [Range(0, 9)] + public int? MinSpecial { get; set; } + // PG - Passphrase + [Display(Name = "MinimumNumberOfWords")] + [Range(3, 20)] + public int? MinNumberWords { get; set; } + [Display(Name = "Capitalize")] + public bool Capitalize { get; set; } + [Display(Name = "IncludeNumber")] + public bool IncludeNumber { get; set; } + } +} diff --git a/bitwarden_license/src/Portal/Models/PoliciesModel.cs b/bitwarden_license/src/Portal/Models/PoliciesModel.cs new file mode 100644 index 000000000..9987dcd99 --- /dev/null +++ b/bitwarden_license/src/Portal/Models/PoliciesModel.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using Bit.Core.Enums; +using Bit.Core.Models.Table; + +namespace Bit.Portal.Models +{ + public class PoliciesModel + { + public PoliciesModel(ICollection policies) + { + if (policies == null) + { + return; + } + + var policyDict = policies?.ToDictionary(p => p.Type); + Policies = new List(); + + foreach (var type in Enum.GetValues(typeof(PolicyType)).Cast()) + { + var enabled = policyDict?.ContainsKey(type) ?? false && policyDict[type].Enabled; + Policies.Add(new PolicyModel(type, enabled)); + } + } + + public List Policies { get; set; } + } +} diff --git a/bitwarden_license/src/Portal/Models/PolicyEditModel.cs b/bitwarden_license/src/Portal/Models/PolicyEditModel.cs new file mode 100644 index 000000000..f99f8dc9d --- /dev/null +++ b/bitwarden_license/src/Portal/Models/PolicyEditModel.cs @@ -0,0 +1,110 @@ +using System; +using System.Collections.Generic; +using System.Text.Json; +using Bit.Core.Enums; +using Bit.Core.Models.Table; +using Bit.Core.Services; +using Microsoft.AspNetCore.Mvc.Rendering; + +namespace Bit.Portal.Models +{ + public class PolicyEditModel : PolicyModel + { + public PolicyEditModel() { } + + public PolicyEditModel(PolicyType type, II18nService i18nService) + : base(type, false) + { + // Inject service and create static lists + BuildLists(i18nService); + } + + public PolicyEditModel(Policy model, II18nService i18nService) + : base(model) + { + if (model == null) + { + return; + } + + // Inject service and create static lists + BuildLists(i18nService); + + if (model.Data != null) + { + var options = new JsonSerializerOptions + { + PropertyNameCaseInsensitive = true, + }; + + switch (model.Type) + { + case PolicyType.MasterPassword: + MasterPasswordDataModel = JsonSerializer.Deserialize(model.Data, options); + break; + case PolicyType.PasswordGenerator: + PasswordGeneratorDataModel = JsonSerializer.Deserialize(model.Data, options); + break; + default: + throw new ArgumentOutOfRangeException(); + } + } + } + + public MasterPasswordDataModel MasterPasswordDataModel { get; set; } + public PasswordGeneratorDataModel PasswordGeneratorDataModel { get; set; } + public List Complexities { get; set; } + public List DefaultTypes { get; set; } + + public Policy ToPolicy(PolicyType type, Guid organizationId) + { + return ToPolicy(new Policy + { + Type = type, + OrganizationId = organizationId + }); + } + + public Policy ToPolicy(Policy existingPolicy) + { + existingPolicy.Enabled = Enabled; + + var options = new JsonSerializerOptions + { + PropertyNamingPolicy = JsonNamingPolicy.CamelCase, + }; + switch (existingPolicy.Type) + { + case PolicyType.MasterPassword: + existingPolicy.Data = JsonSerializer.Serialize(MasterPasswordDataModel, options); + break; + case PolicyType.PasswordGenerator: + existingPolicy.Data = JsonSerializer.Serialize(PasswordGeneratorDataModel, options); + break; + default: + throw new ArgumentOutOfRangeException(); + } + + return existingPolicy; + } + + public void BuildLists(II18nService i18nService) + { + Complexities = new List + { + new SelectListItem { Value = null, Text = "--" + i18nService.T("Select") + "--"}, + new SelectListItem { Value = "0", Text = i18nService.T("Weak") + " (0)" }, + new SelectListItem { Value = "1", Text = i18nService.T("Weak") + " (1)" }, + new SelectListItem { Value = "2", Text = i18nService.T("Weak") + " (2)" }, + new SelectListItem { Value = "3", Text = i18nService.T("Good") + " (3)" }, + new SelectListItem { Value = "4", Text = i18nService.T("Strong") + " (4)" }, + }; + DefaultTypes = new List + { + new SelectListItem { Value = null, Text = i18nService.T("UserPreference") }, + new SelectListItem { Value = "password", Text = i18nService.T("Password") }, + new SelectListItem { Value = "passphrase", Text = i18nService.T("Passphrase") }, + }; + } + } +} diff --git a/bitwarden_license/src/Portal/Models/PolicyModel.cs b/bitwarden_license/src/Portal/Models/PolicyModel.cs new file mode 100644 index 000000000..16c1ed9ba --- /dev/null +++ b/bitwarden_license/src/Portal/Models/PolicyModel.cs @@ -0,0 +1,49 @@ +using System; +using System.ComponentModel.DataAnnotations; +using Bit.Core.Enums; +using Bit.Core.Models.Table; + +namespace Bit.Portal.Models +{ + public class PolicyModel + { + public PolicyModel() { } + + public PolicyModel(Policy policy) + : this(policy.Type, policy.Enabled) + { } + + public PolicyModel(PolicyType policyType, bool enabled) + { + switch (policyType) + { + case PolicyType.TwoFactorAuthentication: + NameKey = "TwoStepLogin"; + DescriptionKey = "TwoStepLoginDescription"; + break; + + case PolicyType.MasterPassword: + NameKey = "MasterPassword"; + DescriptionKey = "MasterPasswordDescription"; + break; + + case PolicyType.PasswordGenerator: + NameKey = "PasswordGenerator"; + DescriptionKey = "PasswordGeneratorDescription"; + break; + + default: + throw new ArgumentOutOfRangeException(); + } + + PolicyType = policyType; + Enabled = enabled; + } + + public string NameKey { get; set; } + public string DescriptionKey { get; set; } + public PolicyType PolicyType { get; set; } + [Display(Name = "Enabled")] + public bool Enabled { get; set; } + } +} diff --git a/bitwarden_license/src/Portal/Models/SsoConfigDataViewModel.cs b/bitwarden_license/src/Portal/Models/SsoConfigDataViewModel.cs new file mode 100644 index 000000000..0b5c93f7a --- /dev/null +++ b/bitwarden_license/src/Portal/Models/SsoConfigDataViewModel.cs @@ -0,0 +1,175 @@ +using System; +using System.ComponentModel.DataAnnotations; +using System.Collections.Generic; +using Bit.Core.Services; +using Bit.Core; +using Bit.Core.Models.Data; +using Bit.Core.Enums; +using Bit.Core.Sso; + +namespace Bit.Portal.Models +{ + public class SsoConfigDataViewModel : IValidatableObject + { + public SsoConfigDataViewModel() { } + + public SsoConfigDataViewModel(SsoConfigurationData configurationData, GlobalSettings globalSettings) + { + ConfigType = configurationData.ConfigType; + Authority = configurationData.Authority; + ClientId = configurationData.ClientId; + ClientSecret = configurationData.ClientSecret; + CallbackPath = configurationData.BuildCallbackPath(globalSettings.BaseServiceUri.Sso); + SignedOutCallbackPath = configurationData.BuildSignedOutCallbackPath(globalSettings.BaseServiceUri.Sso); + MetadataAddress = configurationData.MetadataAddress; + GetClaimsFromUserInfoEndpoint = configurationData.GetClaimsFromUserInfoEndpoint; + SpEntityId = configurationData.BuildSaml2ModulePath(globalSettings.BaseServiceUri.Sso); + IdpEntityId = configurationData.IdpEntityId; + IdpBindingType = configurationData.IdpBindingType; + IdpSingleSignOnServiceUrl = configurationData.IdpSingleSignOnServiceUrl; + IdpSingleLogoutServiceUrl = configurationData.IdpSingleLogoutServiceUrl; + IdpArtifactResolutionServiceUrl = configurationData.IdpArtifactResolutionServiceUrl; + IdpX509PublicCert = configurationData.IdpX509PublicCert; + IdpOutboundSigningAlgorithm = configurationData.IdpOutboundSigningAlgorithm; + IdpAllowUnsolicitedAuthnResponse = configurationData.IdpAllowUnsolicitedAuthnResponse; + IdpDisableOutboundLogoutRequests = configurationData.IdpDisableOutboundLogoutRequests; + IdpWantAuthnRequestsSigned = configurationData.IdpWantAuthnRequestsSigned; + SpNameIdFormat = configurationData.SpNameIdFormat; + SpOutboundSigningAlgorithm = configurationData.SpOutboundSigningAlgorithm ?? SamlSigningAlgorithms.Sha256; + SpSigningBehavior = configurationData.SpSigningBehavior; + SpWantAssertionsSigned = configurationData.SpWantAssertionsSigned; + SpValidateCertificates = configurationData.SpValidateCertificates; + } + + [Required] + [Display(Name = "ConfigType")] + public SsoType ConfigType { get; set; } + + // OIDC + [Display(Name = "Authority")] + public string Authority { get; set; } + [Display(Name = "ClientId")] + public string ClientId { get; set; } + [Display(Name = "ClientSecret")] + public string ClientSecret { get; set; } + [Display(Name = "CallbackPath")] + public string CallbackPath { get; set; } + [Display(Name = "SignedOutCallbackPath")] + public string SignedOutCallbackPath { get; set; } + [Display(Name = "MetadataAddress")] + public string MetadataAddress { get; set; } + [Display(Name = "GetClaimsFromUserInfoEndpoint")] + public bool GetClaimsFromUserInfoEndpoint { get; set; } + + // SAML2 SP + [Display(Name = "SpEntityId")] + public string SpEntityId { get; set; } + [Display(Name = "NameIdFormat")] + public Saml2NameIdFormat SpNameIdFormat { get; set; } + [Display(Name = "OutboundSigningAlgorithm")] + public string SpOutboundSigningAlgorithm { get; set; } + [Display(Name = "SigningBehavior")] + public Saml2SigningBehavior SpSigningBehavior { get; set; } + [Display(Name = "SpWantAssertionsSigned")] + public bool SpWantAssertionsSigned { get; set; } + [Display(Name = "SpValidateCertificates")] + public bool SpValidateCertificates { get; set; } + + // SAML2 IDP + [Display(Name = "EntityId")] + public string IdpEntityId { get; set; } + [Display(Name = "BindingType")] + public Saml2BindingType IdpBindingType { get; set; } + [Display(Name = "SingleSignOnServiceUrl")] + public string IdpSingleSignOnServiceUrl { get; set; } + [Display(Name = "SingleLogoutServiceUrl")] + public string IdpSingleLogoutServiceUrl { get; set; } + [Display(Name = "ArtifactResolutionServiceUrl")] + public string IdpArtifactResolutionServiceUrl { get; set; } + [Display(Name = "X509PublicCert")] + public string IdpX509PublicCert { get; set; } + [Display(Name = "OutboundSigningAlgorithm")] + public string IdpOutboundSigningAlgorithm { get; set; } + [Display(Name = "AllowUnsolicitedAuthnResponse")] + public bool IdpAllowUnsolicitedAuthnResponse { get; set; } + [Display(Name = "DisableOutboundLogoutRequests")] + public bool IdpDisableOutboundLogoutRequests { get; set; } + [Display(Name = "WantAuthnRequestsSigned")] + public bool IdpWantAuthnRequestsSigned { get; set; } + + public IEnumerable Validate(ValidationContext context) + { + var i18nService = context.GetService(typeof(II18nService)) as I18nService; + var model = context.ObjectInstance as SsoConfigDataViewModel; + + if (model.ConfigType == SsoType.OpenIdConnect) + { + if (string.IsNullOrWhiteSpace(model.Authority)) + { + yield return new ValidationResult(i18nService.GetLocalizedHtmlString("AuthorityValidationError"), + new[] { nameof(model.Authority) }); + } + + if (string.IsNullOrWhiteSpace(model.ClientId)) + { + yield return new ValidationResult(i18nService.GetLocalizedHtmlString("ClientIdValidationError"), + new[] { nameof(model.ClientId) }); + } + + if (string.IsNullOrWhiteSpace(model.ClientSecret)) + { + yield return new ValidationResult(i18nService.GetLocalizedHtmlString("ClientSecretValidationError"), + new[] { nameof(model.ClientSecret) }); + } + } + else if (model.ConfigType == SsoType.Saml2) + { + if (string.IsNullOrWhiteSpace(model.IdpEntityId)) + { + yield return new ValidationResult(i18nService.GetLocalizedHtmlString("IdpEntityIdValidationError"), + new[] { nameof(model.IdpEntityId) }); + } + + if (model.IdpBindingType == Saml2BindingType.Artifact && string.IsNullOrWhiteSpace(model.IdpArtifactResolutionServiceUrl)) + { + yield return new ValidationResult(i18nService.GetLocalizedHtmlString("Saml2BindingTypeValidationError"), + new[] { nameof(model.IdpArtifactResolutionServiceUrl) }); + } + + if (!Uri.IsWellFormedUriString(model.IdpEntityId, UriKind.Absolute) && string.IsNullOrWhiteSpace(model.IdpSingleSignOnServiceUrl)) + { + yield return new ValidationResult(i18nService.GetLocalizedHtmlString("IdpSingleSignOnServiceUrlValidationError"), + new[] { nameof(model.IdpSingleSignOnServiceUrl) }); + } + } + } + + public SsoConfigurationData ToConfigurationData() + { + return new SsoConfigurationData + { + ConfigType = ConfigType, + Authority = Authority, + ClientId = ClientId, + ClientSecret = ClientSecret, + MetadataAddress = MetadataAddress, + GetClaimsFromUserInfoEndpoint = GetClaimsFromUserInfoEndpoint, + IdpEntityId = IdpEntityId, + IdpBindingType = IdpBindingType, + IdpSingleSignOnServiceUrl = IdpSingleSignOnServiceUrl, + IdpSingleLogoutServiceUrl = IdpSingleLogoutServiceUrl, + IdpArtifactResolutionServiceUrl = IdpArtifactResolutionServiceUrl, + IdpX509PublicCert = IdpX509PublicCert, + IdpOutboundSigningAlgorithm = IdpOutboundSigningAlgorithm, + IdpAllowUnsolicitedAuthnResponse = IdpAllowUnsolicitedAuthnResponse, + IdpDisableOutboundLogoutRequests = IdpDisableOutboundLogoutRequests, + IdpWantAuthnRequestsSigned = IdpWantAuthnRequestsSigned, + SpNameIdFormat = SpNameIdFormat, + SpOutboundSigningAlgorithm = SpOutboundSigningAlgorithm ?? SamlSigningAlgorithms.Sha256, + SpSigningBehavior = SpSigningBehavior, + SpWantAssertionsSigned = SpWantAssertionsSigned, + SpValidateCertificates = SpValidateCertificates, + }; + } + } +} diff --git a/bitwarden_license/src/Portal/Models/SsoConfigEditViewModel.cs b/bitwarden_license/src/Portal/Models/SsoConfigEditViewModel.cs new file mode 100644 index 000000000..7ef1c6159 --- /dev/null +++ b/bitwarden_license/src/Portal/Models/SsoConfigEditViewModel.cs @@ -0,0 +1,108 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text.Json; +using Bit.Core; +using Bit.Core.Enums; +using Bit.Core.Models.Data; +using Bit.Core.Models.Table; +using Bit.Core.Services; +using Bit.Core.Sso; +using Microsoft.AspNetCore.Mvc.Rendering; + +namespace Bit.Portal.Models +{ + public class SsoConfigEditViewModel + { + public SsoConfigEditViewModel() { } + + public SsoConfigEditViewModel(SsoConfig ssoConfig, II18nService i18nService, + GlobalSettings globalSettings) + { + if (ssoConfig != null) + { + Id = ssoConfig.Id; + Enabled = ssoConfig.Enabled; + } + + SsoConfigurationData configurationData; + if (!string.IsNullOrWhiteSpace(ssoConfig?.Data)) + { + var options = new JsonSerializerOptions + { + PropertyNamingPolicy = JsonNamingPolicy.CamelCase, + }; + configurationData = JsonSerializer.Deserialize(ssoConfig.Data, options); + } + else + { + configurationData = new SsoConfigurationData(); + } + + Data = new SsoConfigDataViewModel(configurationData, globalSettings); + BuildLists(i18nService); + } + + public long Id { get; set; } + [Display(Name = "Enabled")] + public bool Enabled { get; set; } + public SsoConfigDataViewModel Data { get; set; } + + public List ConfigTypes { get; set; } + public List SpNameIdFormats { get; set; } + public List BindingTypes { get; set; } + public List SigningBehaviors { get; set; } + public List SigningAlgorithms { get; set; } + + public SsoConfig ToSsoConfig() + { + return ToSsoConfig(new SsoConfig()); + } + + public SsoConfig ToSsoConfig(SsoConfig existingConfig) + { + existingConfig.Enabled = Enabled; + var configurationData = Data.ToConfigurationData(); + existingConfig.Data = JsonSerializer.Serialize(configurationData, new JsonSerializerOptions + { + PropertyNamingPolicy = JsonNamingPolicy.CamelCase, + }); + return existingConfig; + } + + public void BuildLists(II18nService i18nService) + { + ConfigTypes = Enum.GetNames(typeof(SsoType)) + .Select(configType => new SelectListItem + { + Value = configType, + Text = i18nService.T(configType), + }).ToList(); + + SpNameIdFormats = Enum.GetNames(typeof(Saml2NameIdFormat)) + .Select(nameIdFormat => new SelectListItem + { + Value = nameIdFormat, + Text = i18nService.T(nameIdFormat), + }).ToList(); + + BindingTypes = Enum.GetNames(typeof(Saml2BindingType)) + .Select(bindingType => new SelectListItem + { + Value = bindingType, + Text = i18nService.T(bindingType), + }).ToList(); + + SigningBehaviors = Enum.GetNames(typeof(Saml2SigningBehavior)) + .Select(behavior => new SelectListItem + { + Value = behavior, + Text = i18nService.T(behavior), + }).ToList(); + + SigningAlgorithms = SamlSigningAlgorithms.GetEnumerable().Select(a => + new SelectListItem(a, a)).ToList(); + } + } +} diff --git a/bitwarden_license/src/Portal/Portal.csproj b/bitwarden_license/src/Portal/Portal.csproj new file mode 100644 index 000000000..535ec0f7f --- /dev/null +++ b/bitwarden_license/src/Portal/Portal.csproj @@ -0,0 +1,14 @@ + + + + 1.33.1 + netcoreapp3.1 + Bit.Portal + bitwarden-Portal + + + + + + + diff --git a/bitwarden_license/src/Portal/PortalSettings.cs b/bitwarden_license/src/Portal/PortalSettings.cs new file mode 100644 index 000000000..8187435fb --- /dev/null +++ b/bitwarden_license/src/Portal/PortalSettings.cs @@ -0,0 +1,8 @@ +using System; + +namespace Bit.Portal +{ + public class PortalSettings + { + } +} diff --git a/bitwarden_license/src/Portal/Program.cs b/bitwarden_license/src/Portal/Program.cs new file mode 100644 index 000000000..2c7813fb1 --- /dev/null +++ b/bitwarden_license/src/Portal/Program.cs @@ -0,0 +1,35 @@ +using System; +using Microsoft.AspNetCore.Hosting; +using Microsoft.Extensions.Hosting; +using Bit.Core.Utilities; +using Serilog.Events; + +namespace Bit.Portal +{ + public class Program + { + public static void Main(string[] args) + { + Host + .CreateDefaultBuilder(args) + .ConfigureWebHostDefaults(webBuilder => + { + webBuilder.UseStartup(); + webBuilder.ConfigureLogging((hostingContext, logging) => + logging.AddSerilog(hostingContext, e => + { + var context = e.Properties["SourceContext"].ToString(); + if (e.Properties.ContainsKey("RequestPath") && + !string.IsNullOrWhiteSpace(e.Properties["RequestPath"]?.ToString()) && + (context.Contains(".Server.Kestrel") || context.Contains(".Core.IISHttpServer"))) + { + return false; + } + return e.Level >= LogEventLevel.Error; + })); + }) + .Build() + .Run(); + } + } +} diff --git a/bitwarden_license/src/Portal/Properties/AssemblyInfo.cs b/bitwarden_license/src/Portal/Properties/AssemblyInfo.cs new file mode 100644 index 000000000..884022547 --- /dev/null +++ b/bitwarden_license/src/Portal/Properties/AssemblyInfo.cs @@ -0,0 +1,5 @@ +using System.Reflection; +using Microsoft.Extensions.Localization; + +[assembly: ResourceLocation("Resources")] +[assembly: RootNamespace("Bit.Portal")] diff --git a/bitwarden_license/src/Portal/Properties/launchSettings.json b/bitwarden_license/src/Portal/Properties/launchSettings.json new file mode 100644 index 000000000..8cd7d1011 --- /dev/null +++ b/bitwarden_license/src/Portal/Properties/launchSettings.json @@ -0,0 +1,27 @@ +{ + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "http://localhost:52313", + "sslPort": 0 + } + }, + "profiles": { + "IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + "Portal": { + "commandName": "Project", + "launchBrowser": true, + "applicationUrl": "http://localhost:52313", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + } + } +} diff --git a/bitwarden_license/src/Portal/Sass/site.scss b/bitwarden_license/src/Portal/Sass/site.scss new file mode 100644 index 000000000..a6f821056 --- /dev/null +++ b/bitwarden_license/src/Portal/Sass/site.scss @@ -0,0 +1,226 @@ +$primary: #175DDC; +$primary-accent: #1252A3; +$success: #00a65a; +$info: #555555; +$warning: #bf7e16; +$danger: #dd4b39; + +$theme-colors: ( "primary-accent": $primary-accent ); + +$body-bg: #ffffff; +$body-color: #333333; + +$font-family-sans-serif: 'Open Sans','Helvetica Neue',Helvetica, Arial,sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol'; + +$h1-font-size: 2rem; +$h2-font-size: 1.3rem; +$h3-font-size: 1rem; +$h4-font-size: 1rem; +$h5-font-size: 1rem; +$h6-font-size: 1rem; + +$small-font-size: 90%; +$font-size-lg: 1.15rem; +$code-font-size: 100%; + +$navbar-padding-y: .75rem; +$grid-gutter-width: 20px; +$card-spacer-y: .6rem; + +$list-group-item-padding-y: .6rem; +$list-group-active-color: $body-color; +$list-group-active-bg: #ffffff; +$list-group-active-border-color: rgba(#000000, .125); + +$dropdown-link-color: $body-color; +$dropdown-link-hover-bg: rgba(#000000, .06); +$dropdown-link-active-color: $dropdown-link-color; +$dropdown-link-active-bg: rgba(#000000, .1); +$dropdown-item-padding-x: 1rem; + +$navbar-brand-font-size: 35px; +$navbar-brand-height: 35px; +$navbar-brand-padding-y: 0; +$navbar-dark-color: rgba(#ffffff, .7); +$navbar-dark-hover-color: rgba(#ffffff, .9); +$navbar-nav-link-padding-x: 0.8rem; + +$input-bg: #fbfbfb; +$input-focus-bg: #ffffff; +$input-disabled-bg: #e0e0e0; +$input-placeholder-color: #b4b4b4; + +$table-accent-bg: rgba(#000000, .02); +$table-hover-bg: rgba(#000000, .03); + +$modal-backdrop-opacity: 0.3; +$btn-font-weight: 600; +$lead-font-weight: normal; + +$grid-breakpoints: ( + xs: 0, + sm: 1px, + md: 2px, + lg: 3px, + xl: 4px +); + +@import "../node_modules/bootstrap/scss/bootstrap.scss"; + + +html { + font-size: 14px; +} + +body { + min-width: 1010px; +} + +.page-header, .secondary-header { + border-bottom: 1px solid $border-color; + padding-bottom: 0.6rem; + margin-bottom: 0.5rem; + + h1, h2, h3, h4 { + margin: 0; + } +} + +h1, h2, h3, h4, h5 { + small { + font-size: 80%; + } +} + +input, select, textarea { + &:required { + box-shadow: none; + } +} + +.navbar { + padding-left: 0; + padding-right: 0; + padding-top: 0.4rem; + padding-bottom: 0.4rem; + + .dropdown-menu { + min-width: 200px; + max-width: 300px; + + .dropdown-item-text { + line-height: 1.3; + + span, small { + display: block; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } + } + } + + .nav-link { + font-weight: 600; + } +} + +.dropdown-menu { + button { + cursor: pointer; + } +} + +.container { + width: 980px; + max-width: none !important; + margin: 0 auto; + padding: 0; +} + +.page-content { + margin-top: 20px; +} + +.footer { + margin-top: 40px; + padding: 40px 0 40px 0; + border-top: 1px solid $border-color; +} + +.callout { + padding: $alert-padding-y $alert-padding-x; + margin-bottom: $alert-margin-bottom; + border: 1px solid $card-border-color; + border-left-width: 5px; + border-radius: $card-inner-border-radius; + background-color: #fafafa; + + .callout-heading { + margin-top: 0; + } + + h3.callout-heading { + font-weight: bold; + text-transform: uppercase; + } + + &.callout-primary { + border-left-color: $primary; + + .callout-heading { + color: $primary; + } + } + + &.callout-info { + border-left-color: $gray-800; + + .callout-heading { + color: $gray-800; + } + } + + &.callout-danger { + border-left-color: $danger; + + .callout-heading { + color: $danger; + } + } + + &.callout-success { + border-left-color: $success; + + .callout-heading { + color: $success; + } + } + + &.callout-warning { + border-left-color: $warning; + + .callout-heading { + color: $warning; + } + } +} + +.config-section { + padding-top: 20px; + padding-bottom: 20px; + + h2 { + border-bottom: 1px solid #ccc; + } +} + +////////////////////////// + +.validation-summary-valid { + display: none; +} + +.alert.validation-summary-errors > ul { + margin-bottom: 0; +} diff --git a/bitwarden_license/src/Portal/Startup.cs b/bitwarden_license/src/Portal/Startup.cs new file mode 100644 index 000000000..ccea8e8c2 --- /dev/null +++ b/bitwarden_license/src/Portal/Startup.cs @@ -0,0 +1,110 @@ +using Bit.Core; +using Bit.Core.Utilities; +using Bit.Portal.Utilities; +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Hosting; +using Microsoft.AspNetCore.Routing; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Hosting; +using Microsoft.Extensions.Logging; + +namespace Bit.Portal +{ + public class Startup + { + public Startup(IWebHostEnvironment env, IConfiguration configuration) + { + Configuration = configuration; + Environment = env; + } + + public IConfiguration Configuration { get; } + public IWebHostEnvironment Environment { get; set; } + + // This method gets called by the runtime. Use this method to add services to the container. + public void ConfigureServices(IServiceCollection services) + { + // Options + services.AddOptions(); + + // Settings + var globalSettings = services.AddGlobalSettingsServices(Configuration); + services.Configure(Configuration.GetSection("PortalSettings")); + + // Data Protection + services.AddCustomDataProtectionServices(Environment, globalSettings); + + // Repositories + services.AddSqlServerRepositories(globalSettings); + + // Context + services.AddScoped(); + services.AddScoped((serviceProvider) => + serviceProvider.GetService()); + + // Identity + services.AddEnterprisePortalTokenIdentityServices(); + if (globalSettings.SelfHosted) + { + services.ConfigureApplicationCookie(options => + { + options.Cookie.Path = "/portal"; + }); + } + + // Services + services.AddBaseServices(); + services.AddDefaultServices(globalSettings); + services.AddCoreLocalizationServices(); + + // Mvc + services.AddControllersWithViews() + .AddViewAndDataAnnotationLocalization(); + services.Configure(options => options.LowercaseUrls = true); + } + + // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. + public void Configure( + IApplicationBuilder app, + IWebHostEnvironment env, + IHostApplicationLifetime appLifetime, + GlobalSettings globalSettings, + ILogger logger) + { + app.UseSerilog(env, appLifetime, globalSettings); + + if (globalSettings.SelfHosted) + { + app.UsePathBase("/portal"); + app.UseForwardedHeaders(globalSettings); + } + + if (env.IsDevelopment()) + { + app.UseDeveloperExceptionPage(); + } + + app.UseCoreLocalization(); + + // Add static files to the request pipeline. + app.UseStaticFiles(); + + // Add routing + app.UseRouting(); + + // Add authentication and authorization to the request pipeline. + app.UseAuthentication(); + app.UseAuthorization(); + + // Add current context + app.UseMiddleware(); + + // Add endpoints to the request pipeline. + app.UseEndpoints(endpoints => endpoints.MapDefaultControllerRoute()); + + // Log startup + logger.LogInformation(Constants.BypassFiltersEventId, globalSettings.ProjectName + " started."); + } + } +} diff --git a/bitwarden_license/src/Portal/Utilities/EnterprisePortalCurrentContextMiddleware.cs b/bitwarden_license/src/Portal/Utilities/EnterprisePortalCurrentContextMiddleware.cs new file mode 100644 index 000000000..51d3b74ba --- /dev/null +++ b/bitwarden_license/src/Portal/Utilities/EnterprisePortalCurrentContextMiddleware.cs @@ -0,0 +1,23 @@ +using Bit.Core; +using Microsoft.AspNetCore.Http; +using System.Threading.Tasks; + +namespace Bit.Portal.Utilities +{ + public class EnterprisePortalCurrentContextMiddleware + { + private readonly RequestDelegate _next; + + public EnterprisePortalCurrentContextMiddleware(RequestDelegate next) + { + _next = next; + } + + public async Task Invoke(HttpContext httpContext, EnterprisePortalCurrentContext currentContext, + GlobalSettings globalSettings) + { + await currentContext.BuildAsync(httpContext, globalSettings); + await _next.Invoke(httpContext); + } + } +} diff --git a/bitwarden_license/src/Portal/Utilities/EnterprisePortalServiceCollectionExtensions.cs b/bitwarden_license/src/Portal/Utilities/EnterprisePortalServiceCollectionExtensions.cs new file mode 100644 index 000000000..6bcd70840 --- /dev/null +++ b/bitwarden_license/src/Portal/Utilities/EnterprisePortalServiceCollectionExtensions.cs @@ -0,0 +1,41 @@ +using System; +using Bit.Core.Identity; +using Bit.Core.Models.Table; +using Microsoft.AspNetCore.Identity; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.DependencyInjection.Extensions; + +namespace Bit.Portal.Utilities +{ + public static class EnterprisePortalServiceCollectionExtensions + { + public static (IdentityBuilder, IdentityBuilder) AddEnterprisePortalTokenIdentityServices( + this IServiceCollection services) + { + services.TryAddTransient(); + var passwordlessIdentityBuilder = services.AddIdentity() + .AddUserStore() + .AddRoleStore() + .AddDefaultTokenProviders(); + + var regularIdentityBuilder = services.AddIdentityCore() + .AddUserStore(); + + services.TryAddScoped(); + + services.ConfigureApplicationCookie(options => + { + options.LoginPath = "/login"; + options.LogoutPath = "/logout"; + options.AccessDeniedPath = "/access-denied"; + options.Cookie.Name = $"Bitwarden_BusinessPortal"; + options.Cookie.HttpOnly = true; + options.ExpireTimeSpan = TimeSpan.FromDays(2); + options.ReturnUrlParameter = "returnUrl"; + options.SlidingExpiration = true; + }); + + return (passwordlessIdentityBuilder, regularIdentityBuilder); + } + } +} diff --git a/bitwarden_license/src/Portal/Utilities/EnterprisePortalTokenSignInManager.cs b/bitwarden_license/src/Portal/Utilities/EnterprisePortalTokenSignInManager.cs new file mode 100644 index 000000000..3c4eb23aa --- /dev/null +++ b/bitwarden_license/src/Portal/Utilities/EnterprisePortalTokenSignInManager.cs @@ -0,0 +1,74 @@ +using System; +using System.Threading.Tasks; +using Bit.Core.Models.Table; +using Microsoft.AspNetCore.Authentication; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Identity; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Options; + +namespace Bit.Portal.Utilities +{ + public class EnterprisePortalTokenSignInManager : SignInManager + { + public const string TokenSignInPurpose = "EnterprisePortalTokenSignIn"; + + public EnterprisePortalTokenSignInManager( + UserManager userManager, + IHttpContextAccessor contextAccessor, + IUserClaimsPrincipalFactory claimsFactory, + IOptions optionsAccessor, + ILogger> logger, + IAuthenticationSchemeProvider schemes, + IUserConfirmation confirmation) + : base(userManager, contextAccessor, claimsFactory, optionsAccessor, logger, schemes, confirmation) + { } + + public async Task TokenSignInAsync(User user, string token, bool isPersistent) + { + if (user == null) + { + throw new ArgumentNullException(nameof(user)); + } + + var attempt = await CheckTokenSignInAsync(user, token); + return attempt.Succeeded ? + await SignInOrTwoFactorAsync(user, isPersistent, bypassTwoFactor: true) : attempt; + } + + public async Task TokenSignInAsync(string userId, string token, bool isPersistent) + { + var user = await UserManager.FindByIdAsync(userId); + if (user == null) + { + return SignInResult.Failed; + } + + return await TokenSignInAsync(user, token, isPersistent); + } + + public virtual async Task CheckTokenSignInAsync(User user, string token) + { + if (user == null) + { + throw new ArgumentNullException(nameof(user)); + } + + var error = await PreSignInCheck(user); + if (error != null) + { + return error; + } + + if (await UserManager.VerifyUserTokenAsync(user, Options.Tokens.PasswordResetTokenProvider, + TokenSignInPurpose, token)) + { + return SignInResult.Success; + } + + Logger.LogWarning(2, "User {userId} failed to provide the correct enterprise portal token.", + await UserManager.GetUserIdAsync(user)); + return SignInResult.Failed; + } + } +} diff --git a/bitwarden_license/src/Portal/Views/Auth/AccessDenied.cshtml b/bitwarden_license/src/Portal/Views/Auth/AccessDenied.cshtml new file mode 100644 index 000000000..e2258baa7 --- /dev/null +++ b/bitwarden_license/src/Portal/Views/Auth/AccessDenied.cshtml @@ -0,0 +1,8 @@ +@inject Bit.Core.Services.II18nService i18nService +@{ + ViewData["Title"] = i18nService.T("AccessDenied"); +} + +

+ @i18nService.T("AccessDeniedError") +

diff --git a/bitwarden_license/src/Portal/Views/Auth/LoggedOut.cshtml b/bitwarden_license/src/Portal/Views/Auth/LoggedOut.cshtml new file mode 100644 index 000000000..50b493272 --- /dev/null +++ b/bitwarden_license/src/Portal/Views/Auth/LoggedOut.cshtml @@ -0,0 +1,8 @@ +@inject Bit.Core.Services.II18nService i18nService +@{ + ViewData["Title"] = i18nService.T("LoggedOut"); +} + +

+ @i18nService.T("LoggedOutMessage") +

diff --git a/bitwarden_license/src/Portal/Views/Home/Index.cshtml b/bitwarden_license/src/Portal/Views/Home/Index.cshtml new file mode 100644 index 000000000..e8c3d24bf --- /dev/null +++ b/bitwarden_license/src/Portal/Views/Home/Index.cshtml @@ -0,0 +1,8 @@ +@{ + ViewData["Title"] = "Home Page"; +} + + +

Hello world...

diff --git a/bitwarden_license/src/Portal/Views/Policies/Edit.cshtml b/bitwarden_license/src/Portal/Views/Policies/Edit.cshtml new file mode 100644 index 000000000..810c3e613 --- /dev/null +++ b/bitwarden_license/src/Portal/Views/Policies/Edit.cshtml @@ -0,0 +1,141 @@ +@using Bit.Core.Enums +@model PolicyEditModel +@inject Bit.Core.Services.II18nService i18nService +@{ + ViewData["Title"] = i18nService.T("EditPolicy", i18nService.T(Model.NameKey)); +} + + +

@i18nService.T(Model.DescriptionKey)

+ +
+ @if (Model.PolicyType == PolicyType.TwoFactorAuthentication) + { + + } + +
+
+ + +
+
+ + @if (Model.PolicyType == PolicyType.MasterPassword) + { +
+
+ + +
+
+ + + +
+
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ } + + @if (Model.PolicyType == PolicyType.PasswordGenerator) + { +
+
+ + +
+
+
+

@i18nService.T("Password")

+
+
+ + + +
+
+
+
+ + + +
+
+ + + +
+
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+
+

@i18nService.T("Passphrase")

+
+
+ + + +
+
+
+
+ + +
+
+ + +
+
+
+ } + +
+ + @i18nService.T("Cancel") +
+
diff --git a/bitwarden_license/src/Portal/Views/Policies/Index.cshtml b/bitwarden_license/src/Portal/Views/Policies/Index.cshtml new file mode 100644 index 000000000..90249d791 --- /dev/null +++ b/bitwarden_license/src/Portal/Views/Policies/Index.cshtml @@ -0,0 +1,29 @@ +@model PoliciesModel +@inject Bit.Core.Services.II18nService i18nService +@{ + ViewData["Title"] = i18nService.T("Policies"); +} + + + +
+ + + @foreach (var policyModel in Model.Policies) + { + + + + } + +
+ @i18nService.T(policyModel.NameKey) + @if (policyModel.Enabled) + { + @i18nService.T("Enabled") + } + @i18nService.T(policyModel.DescriptionKey) +
+
diff --git a/bitwarden_license/src/Portal/Views/Shared/Components/OrganizationPicker/Default.cshtml b/bitwarden_license/src/Portal/Views/Shared/Components/OrganizationPicker/Default.cshtml new file mode 100644 index 000000000..f23af8942 --- /dev/null +++ b/bitwarden_license/src/Portal/Views/Shared/Components/OrganizationPicker/Default.cshtml @@ -0,0 +1,9 @@ +@model OrganizationPickerViewModel + +
+ + + +
diff --git a/bitwarden_license/src/Portal/Views/Shared/Error.cshtml b/bitwarden_license/src/Portal/Views/Shared/Error.cshtml new file mode 100644 index 000000000..a1e04783c --- /dev/null +++ b/bitwarden_license/src/Portal/Views/Shared/Error.cshtml @@ -0,0 +1,25 @@ +@model ErrorViewModel +@{ + ViewData["Title"] = "Error"; +} + +

Error.

+

An error occurred while processing your request.

+ +@if (Model.ShowRequestId) +{ +

+ Request ID: @Model.RequestId +

+} + +

Development Mode

+

+ Swapping to Development environment will display more detailed information about the error that occurred. +

+

+ The Development environment shouldn't be enabled for deployed applications. + It can result in displaying sensitive information from exceptions to end users. + For local debugging, enable the Development environment by setting the ASPNETCORE_ENVIRONMENT environment variable to Development + and restarting the app. +

diff --git a/bitwarden_license/src/Portal/Views/Shared/_Layout.cshtml b/bitwarden_license/src/Portal/Views/Shared/_Layout.cshtml new file mode 100644 index 000000000..c7151ea30 --- /dev/null +++ b/bitwarden_license/src/Portal/Views/Shared/_Layout.cshtml @@ -0,0 +1,121 @@ +@using static Bit.Core.Utilities.CoreHelpers; + +@inject SignInManager SignInManager +@inject Bit.Core.Services.II18nService i18nService +@inject Bit.Portal.EnterprisePortalCurrentContext EnterprisePortalCurrentContext + + + + + + + @ViewData["Title"] - Business Portal + + + + + + + + + + + + + + +
+ @RenderBody() +
+ + + + + + + + + + + + + + + + @RenderSection("Scripts", required: false) + + diff --git a/bitwarden_license/src/Portal/Views/Sso/Index.cshtml b/bitwarden_license/src/Portal/Views/Sso/Index.cshtml new file mode 100644 index 000000000..d1c4a92aa --- /dev/null +++ b/bitwarden_license/src/Portal/Views/Sso/Index.cshtml @@ -0,0 +1,226 @@ +@inject Bit.Core.Services.II18nService i18nService +@model SsoConfigEditViewModel +@{ + ViewData["Title"] = i18nService.T("EditSsoConfig"); +} + +@section Scripts { + +} + + + +
+
+
+ + +
+
+ +
+
+ + +
+
+ + +
+
+

@i18nService.T("OpenIdConnectConfig")

+
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + + +
+
+
+
+ + + +
+
+
+
+ + + +
+
+
+
+ + +
+
+
+
+
+ + +
+
+
+
+
+ +
+ +
+

@i18nService.T("SamlSpConfig")

+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+ + +
+

@i18nService.T("SamlIdpConfig")

+ +
+
+ + + +
+
+
+
+ + +
+
+
+
+ + + +
+
+
+
+ + +
+
+
+
+ + + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+
+ +
+ + @i18nService.T("Cancel") +
diff --git a/bitwarden_license/src/Portal/Views/_ViewImports.cshtml b/bitwarden_license/src/Portal/Views/_ViewImports.cshtml new file mode 100644 index 000000000..52dfaeda3 --- /dev/null +++ b/bitwarden_license/src/Portal/Views/_ViewImports.cshtml @@ -0,0 +1,4 @@ +@using Microsoft.AspNetCore.Identity +@using Bit.Portal +@using Bit.Portal.Models +@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers diff --git a/bitwarden_license/src/Portal/Views/_ViewStart.cshtml b/bitwarden_license/src/Portal/Views/_ViewStart.cshtml new file mode 100644 index 000000000..a5f10045d --- /dev/null +++ b/bitwarden_license/src/Portal/Views/_ViewStart.cshtml @@ -0,0 +1,3 @@ +@{ + Layout = "_Layout"; +} diff --git a/bitwarden_license/src/Portal/appsettings.Production.json b/bitwarden_license/src/Portal/appsettings.Production.json new file mode 100644 index 000000000..8d57578e4 --- /dev/null +++ b/bitwarden_license/src/Portal/appsettings.Production.json @@ -0,0 +1,23 @@ +{ + "globalSettings": { + "baseServiceUri": { + "vault": "https://vault.bitwarden.com", + "api": "https://api.bitwarden.com", + "identity": "https://identity.bitwarden.com", + "admin": "https://admin.bitwarden.com", + "notifications": "https://notifications.bitwarden.com", + "sso": "https://sso.bitwarden.com", + "portal": "http://portal.bitwarden.com", + "internalNotifications": "https://notifications.bitwarden.com", + "internalAdmin": "https://admin.bitwarden.com", + "internalIdentity": "https://identity.bitwarden.com", + "internalApi": "https://api.bitwarden.com", + "internalVault": "https://vault.bitwarden.com", + "internalSso": "https://sso.bitwarden.com", + "internalPortal": "https://portal.bitwarden.com" + }, + "braintree": { + "production": true + } + } +} diff --git a/bitwarden_license/src/Portal/appsettings.json b/bitwarden_license/src/Portal/appsettings.json new file mode 100644 index 000000000..4733d1e65 --- /dev/null +++ b/bitwarden_license/src/Portal/appsettings.json @@ -0,0 +1,64 @@ +{ + "globalSettings": { + "selfHosted": false, + "siteName": "Bitwarden", + "projectName": "Business Portal", + "stripeApiKey": "SECRET", + "baseServiceUri": { + "vault": "https://localhost:8080", + "api": "http://localhost:4000", + "identity": "http://localhost:33656", + "admin": "http://localhost:62911", + "notifications": "http://localhost:61840", + "sso": "http://localhost:51822", + "portal": "http://localhost:52313", + "internalNotifications": "http://localhost:61840", + "internalAdmin": "http://localhost:62911", + "internalIdentity": "http://localhost:33656", + "internalApi": "http://localhost:4000", + "internalVault": "http://localhost:4001", + "internalSso": "http://localhost:51822", + "internalPortal": "http://localhost:52313" + }, + "sqlServer": { + "connectionString": "SECRET" + }, + "mail": { + "sendGridApiKey": "SECRET", + "amazonConfigSetName": "Email", + "replyToEmail": "no-reply@bitwarden.com" + }, + "identityServer": { + "certificateThumbprint": "SECRET" + }, + "dataProtection": { + "certificateThumbprint": "SECRET" + }, + "storage": { + "connectionString": "SECRET" + }, + "events": { + "connectionString": "SECRET" + }, + "serviceBus": { + "connectionString": "SECRET", + "applicationCacheTopicName": "SECRET" + }, + "documentDb": { + "uri": "SECRET", + "key": "SECRET" + }, + "notificationHub": { + "connectionString": "SECRET", + "hubName": "SECRET" + }, + "amazon": { + "accessKeyId": "SECRET", + "accessKeySecret": "SECRET", + "region": "SECRET" + } + }, + "portalSettings": { + + } +} diff --git a/bitwarden_license/src/Portal/build.ps1 b/bitwarden_license/src/Portal/build.ps1 new file mode 100644 index 000000000..8dd6ae330 --- /dev/null +++ b/bitwarden_license/src/Portal/build.ps1 @@ -0,0 +1,18 @@ +$curDir = pwd +$dir = Split-Path -Parent $MyInvocation.MyCommand.Path + +echo "`n## Building Portal" + +echo "`nBuilding app" +echo ".NET Core version $(dotnet --version)" +echo "Restore" +dotnet restore $dir\Portal.csproj +echo "Clean" +dotnet clean $dir\Portal.csproj -c "Release" -o $dir\obj\Azure\publish +echo "Node Build" +cd $dir +npm install +cd $curDir +gulp --gulpfile $dir\gulpfile.js build +echo "Publish" +dotnet publish $dir\Portal.csproj -c "Release" -o $dir\obj\Azure\publish diff --git a/bitwarden_license/src/Portal/build.sh b/bitwarden_license/src/Portal/build.sh new file mode 100644 index 000000000..fb0309c2d --- /dev/null +++ b/bitwarden_license/src/Portal/build.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env bash +set -e + +CUR_DIR="$(pwd)" +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +echo -e "\n## Building Portal" + +echo -e "\nBuilding app" +echo ".NET Core version $(dotnet --version)" +echo "Restore" +dotnet restore "$DIR/Portal.csproj" +echo "Clean" +dotnet clean "$DIR/Portal.csproj" -c "Release" -o "$DIR/obj/Docker/publish" +echo "Node Build" +cd "$DIR" +npm install +cd "$CUR_DIR" +gulp --gulpfile "$DIR/gulpfile.js" build +echo "Publish" +dotnet publish "$DIR/Portal.csproj" -c "Release" -o "$DIR/obj/Docker/publish" + +echo -e "\nBuilding docker image" +docker --version +docker build -t bitwarden/portal "$DIR/." diff --git a/bitwarden_license/src/Portal/entrypoint.sh b/bitwarden_license/src/Portal/entrypoint.sh new file mode 100644 index 000000000..4674dbc9f --- /dev/null +++ b/bitwarden_license/src/Portal/entrypoint.sh @@ -0,0 +1,41 @@ +#!/bin/bash + +# Setup + +GROUPNAME="bitwarden" +USERNAME="bitwarden" + +LUID=${LOCAL_UID:-0} +LGID=${LOCAL_GID:-0} + +# Step down from host root to well-known nobody/nogroup user + +if [ $LUID -eq 0 ] +then + LUID=65534 +fi +if [ $LGID -eq 0 ] +then + LGID=65534 +fi + +# Create user and group + +groupadd -o -g $LGID $GROUPNAME >/dev/null 2>&1 || +groupmod -o -g $LGID $GROUPNAME >/dev/null 2>&1 +useradd -o -u $LUID -g $GROUPNAME -s /bin/false $USERNAME >/dev/null 2>&1 || +usermod -o -u $LUID -g $GROUPNAME -s /bin/false $USERNAME >/dev/null 2>&1 +mkhomedir_helper $USERNAME + +# The rest... + +chown -R $USERNAME:$GROUPNAME /app +mkdir -p /etc/bitwarden/core +mkdir -p /etc/bitwarden/logs +mkdir -p /etc/bitwarden/ca-certificates +chown -R $USERNAME:$GROUPNAME /etc/bitwarden + +cp /etc/bitwarden/ca-certificates/*.crt /usr/local/share/ca-certificates/ >/dev/null 2>&1 \ + && update-ca-certificates + +exec gosu $USERNAME:$GROUPNAME dotnet /app/Portal.dll diff --git a/bitwarden_license/src/Portal/gulpfile.js b/bitwarden_license/src/Portal/gulpfile.js new file mode 100644 index 000000000..98bac3ed0 --- /dev/null +++ b/bitwarden_license/src/Portal/gulpfile.js @@ -0,0 +1,82 @@ +/// + +const gulp = require('gulp'); +const merge = require('merge-stream'); +const googleWebFonts = require('gulp-google-webfonts'); +const sass = require('gulp-sass'); +const del = require('del'); + +const paths = {}; +paths.webroot = './wwwroot/'; +paths.npmDir = './node_modules/'; +paths.sassDir = './Sass/'; +paths.libDir = paths.webroot + 'lib/'; +paths.cssDir = paths.webroot + 'css/'; +paths.jsDir = paths.webroot + 'js/'; + +paths.sass = paths.sassDir + '**/*.scss'; +paths.minCss = paths.cssDir + '**/*.min.css'; +paths.js = paths.jsDir + '**/*.js'; +paths.minJs = paths.jsDir + '**/*.min.js'; +paths.libJs = paths.libDir + '**/*.js'; +paths.libMinJs = paths.libDir + '**/*.min.js'; + +function clean() { + return del([paths.minJs, paths.cssDir, paths.libDir]); +} + +function lib() { + const libs = [ + { + src: paths.npmDir + 'bootstrap/dist/js/*', + dest: paths.libDir + 'bootstrap/js' + }, + { + src: paths.npmDir + 'popper.js/dist/umd/*', + dest: paths.libDir + 'popper' + }, + { + src: paths.npmDir + 'font-awesome/css/*', + dest: paths.libDir + 'font-awesome/css' + }, + { + src: paths.npmDir + 'font-awesome/fonts/*', + dest: paths.libDir + 'font-awesome/fonts' + }, + { + src: paths.npmDir + 'jquery/dist/jquery.slim*', + dest: paths.libDir + 'jquery' + }, + ]; + + const tasks = libs.map((lib) => { + return gulp.src(lib.src).pipe(gulp.dest(lib.dest)); + }); + return merge(tasks); +} + +function runSass() { + return gulp.src(paths.sass) + .pipe(sass({ outputStyle: 'compressed' }).on('error', sass.logError)) + .pipe(gulp.dest(paths.cssDir)); +} + +function sassWatch() { + gulp.watch(paths.sass, runSass); +} + +function webfonts() { + return gulp.src('./webfonts.list') + .pipe(googleWebFonts({ + fontsDir: 'webfonts', + cssFilename: 'webfonts.css' + })) + .pipe(gulp.dest(paths.cssDir)); +} + +exports.build = gulp.series(clean, gulp.parallel([lib, runSass, webfonts])); +exports['sass:watch'] = sassWatch; +exports.sass = runSass; +exports.lib = lib; +exports.webfonts = webfonts; +exports.clean = clean; diff --git a/bitwarden_license/src/Portal/package-lock.json b/bitwarden_license/src/Portal/package-lock.json new file mode 100644 index 000000000..4724ede50 --- /dev/null +++ b/bitwarden_license/src/Portal/package-lock.json @@ -0,0 +1,4992 @@ +{ + "name": "bitwarden-enterprise-portal", + "version": "0.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@nodelib/fs.scandir": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", + "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.3", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", + "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", + "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.3", + "fastq": "^1.6.0" + } + }, + "@types/glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-VgNIkxK+j7Nz5P7jvUZlRvhuPSmsEfS03b0alKcq5V/STUKAa3Plemsn5mrQUO7am6OErJ4rhGEGJbACclrtRA==", + "dev": true, + "requires": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", + "dev": true + }, + "@types/node": { + "version": "14.0.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.13.tgz", + "integrity": "sha512-rouEWBImiRaSJsVA+ITTFM6ZxibuAlTuNOCyxVbwreu6k6+ujs7DfnU9o+PShFhET78pMBl3eH+AGSI5eOTkPA==", + "dev": true + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "aggregate-error": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", + "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "ansi-colors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, + "requires": { + "ansi-wrap": "^0.1.0" + } + }, + "ansi-gray": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", + "dev": true, + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", + "dev": true + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "append-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz", + "integrity": "sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE=", + "dev": true, + "requires": { + "buffer-equal": "^1.0.0" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "dev": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-filter": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz", + "integrity": "sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4=", + "dev": true, + "requires": { + "make-iterator": "^1.0.0" + } + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz", + "integrity": "sha1-Onc0X/wc814qkYJWAfnljy4kysQ=", + "dev": true, + "requires": { + "make-iterator": "^1.0.0" + } + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", + "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-initial": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz", + "integrity": "sha1-L6dLJnOTccOUe9enrcc74zSz15U=", + "dev": true, + "requires": { + "array-slice": "^1.0.0", + "is-number": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "array-last": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz", + "integrity": "sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==", + "dev": true, + "requires": { + "is-number": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "array-slice": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", + "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", + "dev": true + }, + "array-sort": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz", + "integrity": "sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg==", + "dev": true, + "requires": { + "default-compare": "^1.0.0", + "get-value": "^2.0.6", + "kind-of": "^5.0.2" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", + "dev": true + }, + "async-done": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.2.tgz", + "integrity": "sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.2", + "process-nextick-args": "^2.0.0", + "stream-exhaust": "^1.0.1" + } + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true + }, + "async-foreach": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", + "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", + "dev": true + }, + "async-settle": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz", + "integrity": "sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs=", + "dev": true, + "requires": { + "async-done": "^1.2.2" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", + "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", + "dev": true + }, + "bach": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", + "integrity": "sha1-Szzpa/JxNPeaG0FKUcFONMO9mIA=", + "dev": true, + "requires": { + "arr-filter": "^1.1.1", + "arr-flatten": "^1.0.1", + "arr-map": "^2.0.0", + "array-each": "^1.0.0", + "array-initial": "^1.0.0", + "array-last": "^1.1.1", + "async-done": "^1.2.2", + "async-settle": "^1.0.0", + "now-and-later": "^2.0.0" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dev": true, + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "block-stream": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", + "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "dev": true, + "requires": { + "inherits": "~2.0.0" + } + }, + "bootstrap": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.5.0.tgz", + "integrity": "sha512-Z93QoXvodoVslA+PWNdk23Hze4RBYIkpb5h8I2HY2Tu2h7A0LpAgLcyrhrSUyo2/Oxm2l1fRZPs1e5hnxnliXA==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "buffer-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", + "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=", + "dev": true + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + }, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + } + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true + }, + "clone-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", + "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", + "dev": true + }, + "clone-stats": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", + "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", + "dev": true + }, + "cloneable-readable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", + "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "process-nextick-args": "^2.0.0", + "readable-stream": "^2.3.5" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "collection-map": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz", + "integrity": "sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw=", + "dev": true, + "requires": { + "arr-map": "^2.0.2", + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + } + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "copy-props": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.4.tgz", + "integrity": "sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A==", + "dev": true, + "requires": { + "each-props": "^1.3.0", + "is-plain-object": "^2.0.1" + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cross-spawn": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", + "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dev": true, + "requires": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "default-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz", + "integrity": "sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==", + "dev": true, + "requires": { + "kind-of": "^5.0.2" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "default-resolution": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-resolution/-/default-resolution-2.0.0.tgz", + "integrity": "sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ=", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "del": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/del/-/del-5.1.0.tgz", + "integrity": "sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==", + "dev": true, + "requires": { + "globby": "^10.0.1", + "graceful-fs": "^4.2.2", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.1", + "p-map": "^3.0.0", + "rimraf": "^3.0.0", + "slash": "^3.0.0" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "dev": true + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + } + }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "each-props": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz", + "integrity": "sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.1", + "object.defaults": "^1.1.0" + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dev": true, + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dev": true, + "requires": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "es6-weak-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, + "ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dev": true, + "requires": { + "type": "^2.0.0" + }, + "dependencies": { + "type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "requires": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + } + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-glob": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.2.tgz", + "integrity": "sha512-UDV82o4uQyljznxwMxyVRJgZZt3O5wENYojjzbaGEGZgeOxkLFf+V4cnUD+krzb2F72E18RhamkMZ7AdeggF7A==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.0", + "merge2": "^1.3.0", + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fastq": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz", + "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true, + "optional": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "findup-sync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", + "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "fined": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", + "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "is-plain-object": "^2.0.3", + "object.defaults": "^1.1.0", + "object.pick": "^1.2.0", + "parse-filepath": "^1.0.1" + } + }, + "flagged-respawn": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", + "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", + "dev": true + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "font-awesome": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", + "integrity": "sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM=", + "dev": true + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs-mkdirp-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", + "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "through2": "^2.0.3" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "dev": true, + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + } + }, + "fstream": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", + "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "dev": true, + "requires": { + "globule": "^1.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "glob-stream": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz", + "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=", + "dev": true, + "requires": { + "extend": "^3.0.0", + "glob": "^7.1.1", + "glob-parent": "^3.1.0", + "is-negated-glob": "^1.0.0", + "ordered-read-streams": "^1.0.0", + "pumpify": "^1.3.5", + "readable-stream": "^2.1.5", + "remove-trailing-separator": "^1.0.1", + "to-absolute-glob": "^2.0.0", + "unique-stream": "^2.0.2" + }, + "dependencies": { + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "glob-watcher": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.3.tgz", + "integrity": "sha512-8tWsULNEPHKQ2MR4zXuzSmqbdyV5PtwwCaWSGQ1WwHsJ07ilNeN1JB8ntxhckbnpSHaf9dXFUHzIWvm1I13dsg==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-done": "^1.2.0", + "chokidar": "^2.0.0", + "is-negated-glob": "^1.0.0", + "just-debounce": "^1.0.0", + "object.defaults": "^1.1.0" + } + }, + "global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "requires": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + } + }, + "global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + } + }, + "globby": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" + } + }, + "globule": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", + "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", + "dev": true, + "requires": { + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" + } + }, + "glogg": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", + "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", + "dev": true, + "requires": { + "sparkles": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "dev": true + }, + "gulp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz", + "integrity": "sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA==", + "dev": true, + "requires": { + "glob-watcher": "^5.0.3", + "gulp-cli": "^2.2.0", + "undertaker": "^1.2.1", + "vinyl-fs": "^3.0.0" + }, + "dependencies": { + "gulp-cli": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz", + "integrity": "sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A==", + "dev": true, + "requires": { + "ansi-colors": "^1.0.1", + "archy": "^1.0.0", + "array-sort": "^1.0.0", + "color-support": "^1.1.3", + "concat-stream": "^1.6.0", + "copy-props": "^2.0.1", + "fancy-log": "^1.3.2", + "gulplog": "^1.0.0", + "interpret": "^1.4.0", + "isobject": "^3.0.1", + "liftoff": "^3.1.0", + "matchdep": "^2.0.0", + "mute-stdout": "^1.0.0", + "pretty-hrtime": "^1.0.0", + "replace-homedir": "^1.0.0", + "semver-greatest-satisfied-range": "^1.1.0", + "v8flags": "^3.2.0", + "yargs": "^7.1.0" + } + } + } + }, + "gulp-google-webfonts": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/gulp-google-webfonts/-/gulp-google-webfonts-2.0.0.tgz", + "integrity": "sha512-AbbGqrS+xIjuhbKvyF8fgZ1us2sliEGtBUlrb1Ik82VYbq+Mxp+KgsU1Xc1lhMOhBWRhSmCHQPTiWm6+lzo08A==", + "dev": true, + "requires": { + "async": "^0.9.0", + "commander": "^2.9.0", + "lodash.defaults": "^3.1.2", + "mkdirp": "^0.5.1", + "through2": "^0.6.5", + "vinyl": "^2.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, + "requires": { + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" + } + } + } + }, + "gulp-sass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/gulp-sass/-/gulp-sass-4.0.1.tgz", + "integrity": "sha512-OMQEgWNggpog8Tc5v1MuI6eo+5iiPkVeLL76iBhDoEEScLUPfZlpvzmgTnLkpcqdrNodZxpz5qcv6mS2rulk3g==", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "lodash.clonedeep": "^4.3.2", + "node-sass": "^4.8.3", + "plugin-error": "^1.0.1", + "replace-ext": "^1.0.0", + "strip-ansi": "^4.0.0", + "through2": "^2.0.0", + "vinyl-sourcemaps-apply": "^0.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "gulplog": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", + "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", + "dev": true, + "requires": { + "glogg": "^1.0.0" + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "dev": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "dev": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dev": true, + "requires": { + "parse-passwd": "^1.0.0" + } + }, + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true + }, + "in-publish": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz", + "integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "is-absolute": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "dev": true, + "requires": { + "is-relative": "^1.0.0", + "is-windows": "^1.0.1" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-negated-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", + "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "dev": true + }, + "is-path-inside": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", + "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dev": true, + "requires": { + "is-unc-path": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dev": true, + "requires": { + "unc-path-regex": "^0.1.2" + } + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-valid-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", + "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "jquery": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", + "integrity": "sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg==", + "dev": true + }, + "js-base64": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.2.tgz", + "integrity": "sha512-Vg8czh0Q7sFBSUMWWArX/miJeBWYBPpdU/3M/DKSaekLMqrqVPaedp+5mZhie/r0lgrcaYBfwXatEew6gwgiQQ==", + "dev": true + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "just-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.0.0.tgz", + "integrity": "sha1-h/zPrv/AtozRnVX2cilD+SnqNeo=", + "dev": true + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + }, + "last-run": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz", + "integrity": "sha1-RblpQsF7HHnHchmCWbqUO+v4yls=", + "dev": true, + "requires": { + "default-resolution": "^2.0.0", + "es6-weak-map": "^2.0.1" + } + }, + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "dev": true, + "requires": { + "readable-stream": "^2.0.5" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "lead": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz", + "integrity": "sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI=", + "dev": true, + "requires": { + "flush-write-stream": "^1.0.2" + } + }, + "liftoff": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz", + "integrity": "sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog==", + "dev": true, + "requires": { + "extend": "^3.0.0", + "findup-sync": "^3.0.0", + "fined": "^1.0.1", + "flagged-respawn": "^1.0.0", + "is-plain-object": "^2.0.4", + "object.map": "^1.0.0", + "rechoir": "^0.6.2", + "resolve": "^1.1.7" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "dependencies": { + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + } + } + }, + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "dev": true + }, + "lodash._baseassign": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", + "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=", + "dev": true, + "requires": { + "lodash._basecopy": "^3.0.0", + "lodash.keys": "^3.0.0" + } + }, + "lodash._basecopy": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", + "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=", + "dev": true + }, + "lodash._bindcallback": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz", + "integrity": "sha1-5THCdkTPi1epnhftlbNcdIeJOS4=", + "dev": true + }, + "lodash._createassigner": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz", + "integrity": "sha1-g4pbri/aymOsIt7o4Z+k5taXCxE=", + "dev": true, + "requires": { + "lodash._bindcallback": "^3.0.0", + "lodash._isiterateecall": "^3.0.0", + "lodash.restparam": "^3.0.0" + } + }, + "lodash._getnative": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", + "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=", + "dev": true + }, + "lodash._isiterateecall": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", + "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=", + "dev": true + }, + "lodash.assign": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-3.2.0.tgz", + "integrity": "sha1-POnwI0tLIiPilrj6CsH+6OvKZPo=", + "dev": true, + "requires": { + "lodash._baseassign": "^3.0.0", + "lodash._createassigner": "^3.0.0", + "lodash.keys": "^3.0.0" + } + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.defaults": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-3.1.2.tgz", + "integrity": "sha1-xzCLGNv4vJNy1wGnNJPGEZK9Liw=", + "dev": true, + "requires": { + "lodash.assign": "^3.0.0", + "lodash.restparam": "^3.0.0" + } + }, + "lodash.isarguments": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", + "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=", + "dev": true + }, + "lodash.isarray": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", + "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=", + "dev": true + }, + "lodash.keys": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", + "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", + "dev": true, + "requires": { + "lodash._getnative": "^3.0.0", + "lodash.isarguments": "^3.0.0", + "lodash.isarray": "^3.0.0" + } + }, + "lodash.restparam": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", + "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=", + "dev": true + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-iterator": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", + "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "matchdep": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz", + "integrity": "sha1-xvNINKDY28OzfCfui7yyfHd1WC4=", + "dev": true, + "requires": { + "findup-sync": "^2.0.0", + "micromatch": "^3.0.4", + "resolve": "^1.4.0", + "stack-trace": "0.0.10" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + } + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + } + }, + "merge-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", + "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "dev": true, + "requires": { + "readable-stream": "^2.0.1" + } + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "mime-db": { + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", + "dev": true + }, + "mime-types": { + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "dev": true, + "requires": { + "mime-db": "1.44.0" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "mute-stdout": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.1.tgz", + "integrity": "sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg==", + "dev": true + }, + "nan": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", + "dev": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true + }, + "node-gyp": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", + "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", + "dev": true, + "requires": { + "fstream": "^1.0.0", + "glob": "^7.0.3", + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "nopt": "2 || 3", + "npmlog": "0 || 1 || 2 || 3 || 4", + "osenv": "0", + "request": "^2.87.0", + "rimraf": "2", + "semver": "~5.3.0", + "tar": "^2.0.0", + "which": "1" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", + "dev": true + } + } + }, + "node-sass": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.14.1.tgz", + "integrity": "sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g==", + "dev": true, + "requires": { + "async-foreach": "^0.1.3", + "chalk": "^1.1.1", + "cross-spawn": "^3.0.0", + "gaze": "^1.0.0", + "get-stdin": "^4.0.1", + "glob": "^7.0.3", + "in-publish": "^2.0.0", + "lodash": "^4.17.15", + "meow": "^3.7.0", + "mkdirp": "^0.5.1", + "nan": "^2.13.2", + "node-gyp": "^3.8.0", + "npmlog": "^4.0.0", + "request": "^2.88.0", + "sass-graph": "2.2.5", + "stdout-stream": "^1.4.0", + "true-case-path": "^1.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "now-and-later": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz", + "integrity": "sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==", + "dev": true, + "requires": { + "once": "^1.3.2" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + } + }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, + "object.defaults": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", + "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "dev": true, + "requires": { + "array-each": "^1.0.1", + "array-slice": "^1.0.0", + "for-own": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "object.map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", + "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", + "dev": true, + "requires": { + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "object.reduce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.reduce/-/object.reduce-1.0.1.tgz", + "integrity": "sha1-b+NI8qx/oPlcpiEiZZkJaCW7A60=", + "dev": true, + "requires": { + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "ordered-read-streams": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz", + "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=", + "dev": true, + "requires": { + "readable-stream": "^2.0.1" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "^1.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "parse-filepath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", + "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "dev": true, + "requires": { + "is-absolute": "^1.0.0", + "map-cache": "^0.2.0", + "path-root": "^0.1.1" + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true + }, + "parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-root": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", + "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "dev": true, + "requires": { + "path-root-regex": "^0.1.0" + } + }, + "path-root-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", + "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", + "dev": true + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "plugin-error": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", + "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", + "dev": true, + "requires": { + "ansi-colors": "^1.0.1", + "arr-diff": "^4.0.0", + "arr-union": "^3.1.0", + "extend-shallow": "^3.0.2" + } + }, + "popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", + "dev": true + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + }, + "dependencies": { + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + } + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, + "requires": { + "resolve": "^1.1.6" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + }, + "dependencies": { + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + } + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "remove-bom-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz", + "integrity": "sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5", + "is-utf8": "^0.2.1" + } + }, + "remove-bom-stream": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz", + "integrity": "sha1-BfGlk/FuQuH7kOv1nejlaVJflSM=", + "dev": true, + "requires": { + "remove-bom-buffer": "^3.0.0", + "safe-buffer": "^5.1.0", + "through2": "^2.0.3" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "replace-ext": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", + "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", + "dev": true + }, + "replace-homedir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-homedir/-/replace-homedir-1.0.0.tgz", + "integrity": "sha1-6H9tUTuSjd6AgmDBK+f+xv9ueYw=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1", + "is-absolute": "^1.0.0", + "remove-trailing-separator": "^1.1.0" + } + }, + "request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "resolve": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + } + }, + "resolve-options": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz", + "integrity": "sha1-MrueOcBtZzONyTeMDW1gdFZq0TE=", + "dev": true, + "requires": { + "value-or-function": "^3.0.0" + } + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "run-parallel": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", + "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", + "dev": true + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sass-graph": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz", + "integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==", + "dev": true, + "requires": { + "glob": "^7.0.0", + "lodash": "^4.0.0", + "scss-tokenizer": "^0.2.3", + "yargs": "^13.3.2" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "scss-tokenizer": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", + "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", + "dev": true, + "requires": { + "js-base64": "^2.1.8", + "source-map": "^0.4.2" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "semver-greatest-satisfied-range": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz", + "integrity": "sha1-E+jCZYq5aRywzXEJMkAoDTb3els=", + "dev": true, + "requires": { + "sver-compat": "^1.5.0" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "dev": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "sparkles": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", + "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", + "dev": true + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "dev": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "stdout-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", + "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", + "dev": true, + "requires": { + "readable-stream": "^2.0.1" + } + }, + "stream-exhaust": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", + "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==", + "dev": true + }, + "stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "sver-compat": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/sver-compat/-/sver-compat-1.5.0.tgz", + "integrity": "sha1-PPh9/rTQe0o/FIJ7wYaz/QxkXNg=", + "dev": true, + "requires": { + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "tar": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", + "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", + "dev": true, + "requires": { + "block-stream": "*", + "fstream": "^1.0.12", + "inherits": "2" + } + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "through2-filter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz", + "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", + "dev": true, + "requires": { + "through2": "~2.0.0", + "xtend": "~4.0.0" + } + }, + "time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", + "dev": true + }, + "to-absolute-glob": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz", + "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=", + "dev": true, + "requires": { + "is-absolute": "^1.0.0", + "is-negated-glob": "^1.0.0" + } + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "to-through": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz", + "integrity": "sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY=", + "dev": true, + "requires": { + "through2": "^2.0.3" + } + }, + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "true-case-path": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", + "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", + "dev": true, + "requires": { + "glob": "^7.1.2" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "dev": true + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "dev": true + }, + "undertaker": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.2.1.tgz", + "integrity": "sha512-71WxIzDkgYk9ZS+spIB8iZXchFhAdEo2YU8xYqBYJ39DIUIqziK78ftm26eecoIY49X0J2MLhG4hr18Yp6/CMA==", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1", + "arr-map": "^2.0.0", + "bach": "^1.0.0", + "collection-map": "^1.0.0", + "es6-weak-map": "^2.0.1", + "last-run": "^1.1.0", + "object.defaults": "^1.0.0", + "object.reduce": "^1.0.0", + "undertaker-registry": "^1.0.0" + } + }, + "undertaker-registry": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-1.0.1.tgz", + "integrity": "sha1-XkvaMI5KiirlhPm5pDWaSZglzFA=", + "dev": true + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "unique-stream": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", + "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==", + "dev": true, + "requires": { + "json-stable-stringify-without-jsonify": "^1.0.1", + "through2-filter": "^3.0.0" + } + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + } + } + }, + "upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true + }, + "v8flags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", + "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "value-or-function": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz", + "integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vinyl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", + "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", + "dev": true, + "requires": { + "clone": "^2.1.1", + "clone-buffer": "^1.0.0", + "clone-stats": "^1.0.0", + "cloneable-readable": "^1.0.0", + "remove-trailing-separator": "^1.0.1", + "replace-ext": "^1.0.0" + } + }, + "vinyl-fs": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz", + "integrity": "sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==", + "dev": true, + "requires": { + "fs-mkdirp-stream": "^1.0.0", + "glob-stream": "^6.1.0", + "graceful-fs": "^4.0.0", + "is-valid-glob": "^1.0.0", + "lazystream": "^1.0.0", + "lead": "^1.0.0", + "object.assign": "^4.0.4", + "pumpify": "^1.3.5", + "readable-stream": "^2.3.3", + "remove-bom-buffer": "^3.0.0", + "remove-bom-stream": "^1.2.0", + "resolve-options": "^1.1.0", + "through2": "^2.0.0", + "to-through": "^2.0.0", + "value-or-function": "^3.0.0", + "vinyl": "^2.0.0", + "vinyl-sourcemap": "^1.1.0" + } + }, + "vinyl-sourcemap": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz", + "integrity": "sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY=", + "dev": true, + "requires": { + "append-buffer": "^1.0.2", + "convert-source-map": "^1.5.0", + "graceful-fs": "^4.1.6", + "normalize-path": "^2.1.1", + "now-and-later": "^2.0.0", + "remove-bom-buffer": "^3.0.0", + "vinyl": "^2.0.0" + } + }, + "vinyl-sourcemaps-apply": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", + "integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=", + "dev": true, + "requires": { + "source-map": "^0.5.1" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.1.tgz", + "integrity": "sha512-huO4Fr1f9PmiJJdll5kwoS2e4GqzGSsMT3PPMpOwoVkOK8ckqAewMTZyA6LXVQWflleb/Z8oPBEvNsMft0XE+g==", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "5.0.0-security.0" + } + }, + "yargs-parser": { + "version": "5.0.0-security.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz", + "integrity": "sha512-T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ==", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "object.assign": "^4.1.0" + } + } + } +} diff --git a/bitwarden_license/src/Portal/package.json b/bitwarden_license/src/Portal/package.json new file mode 100644 index 000000000..357f0e194 --- /dev/null +++ b/bitwarden_license/src/Portal/package.json @@ -0,0 +1,18 @@ +{ + "name": "bitwarden-enterprise-portal", + "version": "0.0.0", + "description": "Bitwarden Enterprise Portal", + "repository": "https://github.com/bitwarden/enterprise", + "license": "-", + "devDependencies": { + "bootstrap": "4.5.0", + "del": "5.1.0", + "font-awesome": "4.7.0", + "gulp": "4.0.2", + "gulp-google-webfonts": "2.0.0", + "gulp-sass": "4.0.1", + "jquery": "3.5.1", + "merge-stream": "1.0.1", + "popper.js": "1.16.1" + } +} diff --git a/bitwarden_license/src/Portal/webfonts.list b/bitwarden_license/src/Portal/webfonts.list new file mode 100644 index 000000000..1818dc4a4 --- /dev/null +++ b/bitwarden_license/src/Portal/webfonts.list @@ -0,0 +1 @@ +Open+Sans:300,300i,400,400i,600,600i,700,700i,800,800i&subset=cyrillic,cyrillic-ext,greek,greek-ext,latin-ext \ No newline at end of file diff --git a/bitwarden_license/src/Portal/wwwroot/css/site.css b/bitwarden_license/src/Portal/wwwroot/css/site.css new file mode 100644 index 000000000..02838d556 --- /dev/null +++ b/bitwarden_license/src/Portal/wwwroot/css/site.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v4.5.0 (https://getbootstrap.com/) + * Copyright 2011-2020 The Bootstrap Authors + * Copyright 2011-2020 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */:root{--blue: #007bff;--indigo: #6610f2;--purple: #6f42c1;--pink: #e83e8c;--red: #dc3545;--orange: #fd7e14;--yellow: #ffc107;--green: #28a745;--teal: #20c997;--cyan: #17a2b8;--white: #fff;--gray: #6c757d;--gray-dark: #343a40;--primary: #175DDC;--secondary: #6c757d;--success: #00a65a;--info: #555;--warning: #bf7e16;--danger: #dd4b39;--light: #f8f9fa;--dark: #343a40;--primary-accent: #1252A3;--breakpoint-xs: 0;--breakpoint-sm: 1px;--breakpoint-md: 2px;--breakpoint-lg: 3px;--breakpoint-xl: 4px;--font-family-sans-serif: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}*,*::before,*::after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:1rem;font-weight:400;line-height:1.5;color:#333;text-align:left;background-color:#fff}[tabindex="-1"]:focus:not(:focus-visible){outline:0 !important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-original-title]{text-decoration:underline;text-decoration:underline dotted;cursor:help;border-bottom:0;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#175DDC;text-decoration:none;background-color:transparent}a:hover{color:#104097;text-decoration:underline}a:not([href]){color:inherit;text-decoration:none}a:not([href]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[role="button"]{cursor:pointer}select{word-wrap:normal}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button:not(:disabled),[type="button"]:not(:disabled),[type="reset"]:not(:disabled),[type="submit"]:not(:disabled){cursor:pointer}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{padding:0;border-style:none}input[type="radio"],input[type="checkbox"]{box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px;-webkit-appearance:none}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none !important}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{margin-bottom:.5rem;font-weight:500;line-height:1.2}h1,.h1{font-size:2rem}h2,.h2{font-size:1.3rem}h3,.h3{font-size:1rem}h4,.h4{font-size:1rem}h5,.h5{font-size:1rem}h6,.h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:normal}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,0.1)}small,.small{font-size:90%;font-weight:400}mark,.mark{padding:.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:90%;color:#6c757d}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:100%;color:#e83e8c;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:100%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:100%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:10px;padding-left:10px;margin-right:auto;margin-left:auto}@media (min-width: 1px){.container{max-width:540px}}@media (min-width: 2px){.container{max-width:720px}}@media (min-width: 3px){.container{max-width:960px}}@media (min-width: 4px){.container{max-width:1140px}}.container-fluid,.container-sm,.container-md,.container-lg,.container-xl{width:100%;padding-right:10px;padding-left:10px;margin-right:auto;margin-left:auto}@media (min-width: 1px){.container,.container-sm{max-width:540px}}@media (min-width: 2px){.container,.container-sm,.container-md{max-width:720px}}@media (min-width: 3px){.container,.container-sm,.container-md,.container-lg{max-width:960px}}@media (min-width: 4px){.container,.container-sm,.container-md,.container-lg,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-10px;margin-left:-10px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*="col-"]{padding-right:0;padding-left:0}.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col,.col-auto,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm,.col-sm-auto,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md,.col-md-auto,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg,.col-lg-auto,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl,.col-xl-auto{position:relative;width:100%;padding-right:10px;padding-left:10px}.col{flex-basis:0;flex-grow:1;min-width:0;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.33333%;max-width:8.33333%}.col-2{flex:0 0 16.66667%;max-width:16.66667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.33333%;max-width:33.33333%}.col-5{flex:0 0 41.66667%;max-width:41.66667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.33333%;max-width:58.33333%}.col-8{flex:0 0 66.66667%;max-width:66.66667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.33333%;max-width:83.33333%}.col-11{flex:0 0 91.66667%;max-width:91.66667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.33333%}.offset-2{margin-left:16.66667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333%}.offset-5{margin-left:41.66667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333%}.offset-8{margin-left:66.66667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333%}.offset-11{margin-left:91.66667%}@media (min-width: 1px){.col-sm{flex-basis:0;flex-grow:1;min-width:0;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.33333%;max-width:8.33333%}.col-sm-2{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.33333%;max-width:33.33333%}.col-sm-5{flex:0 0 41.66667%;max-width:41.66667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.33333%;max-width:58.33333%}.col-sm-8{flex:0 0 66.66667%;max-width:66.66667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.33333%;max-width:83.33333%}.col-sm-11{flex:0 0 91.66667%;max-width:91.66667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333%}.offset-sm-2{margin-left:16.66667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333%}.offset-sm-5{margin-left:41.66667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333%}.offset-sm-8{margin-left:66.66667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333%}.offset-sm-11{margin-left:91.66667%}}@media (min-width: 2px){.col-md{flex-basis:0;flex-grow:1;min-width:0;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.33333%;max-width:8.33333%}.col-md-2{flex:0 0 16.66667%;max-width:16.66667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.33333%;max-width:33.33333%}.col-md-5{flex:0 0 41.66667%;max-width:41.66667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.33333%;max-width:58.33333%}.col-md-8{flex:0 0 66.66667%;max-width:66.66667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.33333%;max-width:83.33333%}.col-md-11{flex:0 0 91.66667%;max-width:91.66667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333%}.offset-md-2{margin-left:16.66667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333%}.offset-md-5{margin-left:41.66667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333%}.offset-md-8{margin-left:66.66667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333%}.offset-md-11{margin-left:91.66667%}}@media (min-width: 3px){.col-lg{flex-basis:0;flex-grow:1;min-width:0;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.33333%;max-width:8.33333%}.col-lg-2{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.33333%;max-width:33.33333%}.col-lg-5{flex:0 0 41.66667%;max-width:41.66667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.33333%;max-width:58.33333%}.col-lg-8{flex:0 0 66.66667%;max-width:66.66667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.33333%;max-width:83.33333%}.col-lg-11{flex:0 0 91.66667%;max-width:91.66667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333%}.offset-lg-2{margin-left:16.66667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333%}.offset-lg-5{margin-left:41.66667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333%}.offset-lg-8{margin-left:66.66667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333%}.offset-lg-11{margin-left:91.66667%}}@media (min-width: 4px){.col-xl{flex-basis:0;flex-grow:1;min-width:0;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.33333%;max-width:8.33333%}.col-xl-2{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.33333%;max-width:33.33333%}.col-xl-5{flex:0 0 41.66667%;max-width:41.66667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.33333%;max-width:58.33333%}.col-xl-8{flex:0 0 66.66667%;max-width:66.66667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.33333%;max-width:83.33333%}.col-xl-11{flex:0 0 91.66667%;max-width:91.66667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333%}.offset-xl-2{margin-left:16.66667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333%}.offset-xl-5{margin-left:41.66667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333%}.offset-xl-8{margin-left:66.66667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333%}.offset-xl-11{margin-left:91.66667%}}.table{width:100%;margin-bottom:1rem;color:#333}.table th,.table td{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm th,.table-sm td{padding:.3rem}.table-bordered{border:1px solid #dee2e6}.table-bordered th,.table-bordered td{border:1px solid #dee2e6}.table-bordered thead th,.table-bordered thead td{border-bottom-width:2px}.table-borderless th,.table-borderless td,.table-borderless thead th,.table-borderless tbody+tbody{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,0.02)}.table-hover tbody tr:hover{color:#333;background-color:rgba(0,0,0,0.03)}.table-primary,.table-primary>th,.table-primary>td{background-color:#bed2f5}.table-primary th,.table-primary td,.table-primary thead th,.table-primary tbody+tbody{border-color:#86abed}.table-hover .table-primary:hover{background-color:#a8c3f2}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#a8c3f2}.table-secondary,.table-secondary>th,.table-secondary>td{background-color:#d6d8db}.table-secondary th,.table-secondary td,.table-secondary thead th,.table-secondary tbody+tbody{border-color:#b3b7bb}.table-hover .table-secondary:hover{background-color:#c8cbcf}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>th,.table-success>td{background-color:#b8e6d1}.table-success th,.table-success td,.table-success thead th,.table-success tbody+tbody{border-color:#7ad1a9}.table-hover .table-success:hover{background-color:#a5dfc5}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#a5dfc5}.table-info,.table-info>th,.table-info>td{background-color:#cfcfcf}.table-info th,.table-info td,.table-info thead th,.table-info tbody+tbody{border-color:#a7a7a7}.table-hover .table-info:hover{background-color:#c2c2c2}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#c2c2c2}.table-warning,.table-warning>th,.table-warning>td{background-color:#eddbbe}.table-warning th,.table-warning td,.table-warning thead th,.table-warning tbody+tbody{border-color:#debc86}.table-hover .table-warning:hover{background-color:#e7d0aa}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#e7d0aa}.table-danger,.table-danger>th,.table-danger>td{background-color:#f5cdc8}.table-danger th,.table-danger td,.table-danger thead th,.table-danger tbody+tbody{border-color:#eda198}.table-hover .table-danger:hover{background-color:#f1b9b2}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b9b2}.table-light,.table-light>th,.table-light>td{background-color:#fdfdfe}.table-light th,.table-light td,.table-light thead th,.table-light tbody+tbody{border-color:#fbfcfc}.table-hover .table-light:hover{background-color:#ececf6}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>th,.table-dark>td{background-color:#c6c8ca}.table-dark th,.table-dark td,.table-dark thead th,.table-dark tbody+tbody{border-color:#95999c}.table-hover .table-dark:hover{background-color:#b9bbbe}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-primary-accent,.table-primary-accent>th,.table-primary-accent>td{background-color:#bdcfe5}.table-primary-accent th,.table-primary-accent td,.table-primary-accent thead th,.table-primary-accent tbody+tbody{border-color:#84a5cf}.table-hover .table-primary-accent:hover{background-color:#abc2de}.table-hover .table-primary-accent:hover>td,.table-hover .table-primary-accent:hover>th{background-color:#abc2de}.table-active,.table-active>th,.table-active>td{background-color:rgba(0,0,0,0.03)}.table-hover .table-active:hover{background-color:rgba(0,0,0,0.03)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,0.03)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark th,.table-dark td,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,0.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:rgba(255,255,255,0.075)}@media (max-width: 0.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width: 1.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width: 2.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width: 3.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fbfbfb;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#81a9f2;outline:0;box-shadow:0 0 0 .2rem rgba(23,93,220,0.25)}.form-control::placeholder{color:#b4b4b4;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e0e0e0;opacity:1}input[type="date"].form-control,input[type="time"].form-control,input[type="datetime-local"].form-control,input[type="month"].form-control{appearance:none}select.form-control:focus::-ms-value{color:#495057;background-color:#fbfbfb}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.15rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#333;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.15rem;line-height:1.5;border-radius:.3rem}select.form-control[size],select.form-control[multiple]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*="col-"]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input[disabled] ~ .form-check-label,.form-check-input:disabled ~ .form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:90%;color:#00a65a}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(0,166,90,0.9);border-radius:.25rem}.was-validated :valid ~ .valid-feedback,.was-validated :valid ~ .valid-tooltip,.is-valid ~ .valid-feedback,.is-valid ~ .valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:#00a65a;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2300a65a' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:#00a65a;box-shadow:0 0 0 .2rem rgba(0,166,90,0.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.was-validated .custom-select:valid,.custom-select.is-valid{border-color:#00a65a;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2300a65a' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fbfbfb no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .custom-select:valid:focus,.custom-select.is-valid:focus{border-color:#00a65a;box-shadow:0 0 0 .2rem rgba(0,166,90,0.25)}.was-validated .form-check-input:valid ~ .form-check-label,.form-check-input.is-valid ~ .form-check-label{color:#00a65a}.was-validated .form-check-input:valid ~ .valid-feedback,.was-validated .form-check-input:valid ~ .valid-tooltip,.form-check-input.is-valid ~ .valid-feedback,.form-check-input.is-valid ~ .valid-tooltip{display:block}.was-validated .custom-control-input:valid ~ .custom-control-label,.custom-control-input.is-valid ~ .custom-control-label{color:#00a65a}.was-validated .custom-control-input:valid ~ .custom-control-label::before,.custom-control-input.is-valid ~ .custom-control-label::before{border-color:#00a65a}.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before,.custom-control-input.is-valid:checked ~ .custom-control-label::before{border-color:#00d976;background-color:#00d976}.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before,.custom-control-input.is-valid:focus ~ .custom-control-label::before{box-shadow:0 0 0 .2rem rgba(0,166,90,0.25)}.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before,.custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before{border-color:#00a65a}.was-validated .custom-file-input:valid ~ .custom-file-label,.custom-file-input.is-valid ~ .custom-file-label{border-color:#00a65a}.was-validated .custom-file-input:valid:focus ~ .custom-file-label,.custom-file-input.is-valid:focus ~ .custom-file-label{border-color:#00a65a;box-shadow:0 0 0 .2rem rgba(0,166,90,0.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:90%;color:#dd4b39}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(221,75,57,0.9);border-radius:.25rem}.was-validated :invalid ~ .invalid-feedback,.was-validated :invalid ~ .invalid-tooltip,.is-invalid ~ .invalid-feedback,.is-invalid ~ .invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:#dd4b39;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dd4b39' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dd4b39' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:#dd4b39;box-shadow:0 0 0 .2rem rgba(221,75,57,0.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.was-validated .custom-select:invalid,.custom-select.is-invalid{border-color:#dd4b39;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dd4b39' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dd4b39' stroke='none'/%3e%3c/svg%3e") #fbfbfb no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.was-validated .custom-select:invalid:focus,.custom-select.is-invalid:focus{border-color:#dd4b39;box-shadow:0 0 0 .2rem rgba(221,75,57,0.25)}.was-validated .form-check-input:invalid ~ .form-check-label,.form-check-input.is-invalid ~ .form-check-label{color:#dd4b39}.was-validated .form-check-input:invalid ~ .invalid-feedback,.was-validated .form-check-input:invalid ~ .invalid-tooltip,.form-check-input.is-invalid ~ .invalid-feedback,.form-check-input.is-invalid ~ .invalid-tooltip{display:block}.was-validated .custom-control-input:invalid ~ .custom-control-label,.custom-control-input.is-invalid ~ .custom-control-label{color:#dd4b39}.was-validated .custom-control-input:invalid ~ .custom-control-label::before,.custom-control-input.is-invalid ~ .custom-control-label::before{border-color:#dd4b39}.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before,.custom-control-input.is-invalid:checked ~ .custom-control-label::before{border-color:#e47365;background-color:#e47365}.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before,.custom-control-input.is-invalid:focus ~ .custom-control-label::before{box-shadow:0 0 0 .2rem rgba(221,75,57,0.25)}.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before,.custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before{border-color:#dd4b39}.was-validated .custom-file-input:invalid ~ .custom-file-label,.custom-file-input.is-invalid ~ .custom-file-label{border-color:#dd4b39}.was-validated .custom-file-input:invalid:focus ~ .custom-file-label,.custom-file-input.is-invalid:focus ~ .custom-file-label{border-color:#dd4b39;box-shadow:0 0 0 .2rem rgba(221,75,57,0.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width: 1px){.form-inline label{display:flex;align-items:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:flex;flex:0 0 auto;flex-flow:row wrap;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .input-group,.form-inline .custom-select{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:600;color:#333;text-align:center;vertical-align:middle;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:#333;text-decoration:none}.btn:focus,.btn.focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,93,220,0.25)}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#175DDC;border-color:#175DDC}.btn-primary:hover{color:#fff;background-color:#134eb9;border-color:#1249ae}.btn-primary:focus,.btn-primary.focus{color:#fff;background-color:#134eb9;border-color:#1249ae;box-shadow:0 0 0 .2rem rgba(58,117,225,0.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#175DDC;border-color:#175DDC}.btn-primary:not(:disabled):not(.disabled):active,.btn-primary:not(:disabled):not(.disabled).active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#1249ae;border-color:#1145a2}.btn-primary:not(:disabled):not(.disabled):active:focus,.btn-primary:not(:disabled):not(.disabled).active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,117,225,0.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary:focus,.btn-secondary.focus{color:#fff;background-color:#5a6268;border-color:#545b62;box-shadow:0 0 0 .2rem rgba(130,138,145,0.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled):active,.btn-secondary:not(:disabled):not(.disabled).active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled):active:focus,.btn-secondary:not(:disabled):not(.disabled).active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,0.5)}.btn-success{color:#fff;background-color:#00a65a;border-color:#00a65a}.btn-success:hover{color:#fff;background-color:#008045;border-color:#00733e}.btn-success:focus,.btn-success.focus{color:#fff;background-color:#008045;border-color:#00733e;box-shadow:0 0 0 .2rem rgba(38,179,115,0.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#00a65a;border-color:#00a65a}.btn-success:not(:disabled):not(.disabled):active,.btn-success:not(:disabled):not(.disabled).active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#00733e;border-color:#006637}.btn-success:not(:disabled):not(.disabled):active:focus,.btn-success:not(:disabled):not(.disabled).active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,179,115,0.5)}.btn-info{color:#fff;background-color:#555;border-color:#555}.btn-info:hover{color:#fff;background-color:#424242;border-color:#3c3c3c}.btn-info:focus,.btn-info.focus{color:#fff;background-color:#424242;border-color:#3c3c3c;box-shadow:0 0 0 .2rem rgba(111,111,111,0.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#555;border-color:#555}.btn-info:not(:disabled):not(.disabled):active,.btn-info:not(:disabled):not(.disabled).active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#3c3c3c;border-color:#353535}.btn-info:not(:disabled):not(.disabled):active:focus,.btn-info:not(:disabled):not(.disabled).active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(111,111,111,0.5)}.btn-warning{color:#fff;background-color:#bf7e16;border-color:#bf7e16}.btn-warning:hover{color:#fff;background-color:#9d6712;border-color:#916011}.btn-warning:focus,.btn-warning.focus{color:#fff;background-color:#9d6712;border-color:#916011;box-shadow:0 0 0 .2rem rgba(201,145,57,0.5)}.btn-warning.disabled,.btn-warning:disabled{color:#fff;background-color:#bf7e16;border-color:#bf7e16}.btn-warning:not(:disabled):not(.disabled):active,.btn-warning:not(:disabled):not(.disabled).active,.show>.btn-warning.dropdown-toggle{color:#fff;background-color:#916011;border-color:#86580f}.btn-warning:not(:disabled):not(.disabled):active:focus,.btn-warning:not(:disabled):not(.disabled).active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(201,145,57,0.5)}.btn-danger{color:#fff;background-color:#dd4b39;border-color:#dd4b39}.btn-danger:hover{color:#fff;background-color:#cd3623;border-color:#c23321}.btn-danger:focus,.btn-danger.focus{color:#fff;background-color:#cd3623;border-color:#c23321;box-shadow:0 0 0 .2rem rgba(226,102,87,0.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dd4b39;border-color:#dd4b39}.btn-danger:not(:disabled):not(.disabled):active,.btn-danger:not(:disabled):not(.disabled).active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#c23321;border-color:#b7301f}.btn-danger:not(:disabled):not(.disabled):active:focus,.btn-danger:not(:disabled):not(.disabled).active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(226,102,87,0.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light:focus,.btn-light.focus{color:#212529;background-color:#e2e6ea;border-color:#dae0e5;box-shadow:0 0 0 .2rem rgba(216,217,219,0.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled):active,.btn-light:not(:disabled):not(.disabled).active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled):active:focus,.btn-light:not(:disabled):not(.disabled).active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,0.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark:focus,.btn-dark.focus{color:#fff;background-color:#23272b;border-color:#1d2124;box-shadow:0 0 0 .2rem rgba(82,88,93,0.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled):active,.btn-dark:not(:disabled):not(.disabled).active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled):active:focus,.btn-dark:not(:disabled):not(.disabled).active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,0.5)}.btn-primary-accent{color:#fff;background-color:#1252A3;border-color:#1252A3}.btn-primary-accent:hover{color:#fff;background-color:#0e4181;border-color:#0d3b75}.btn-primary-accent:focus,.btn-primary-accent.focus{color:#fff;background-color:#0e4181;border-color:#0d3b75;box-shadow:0 0 0 .2rem rgba(54,108,177,0.5)}.btn-primary-accent.disabled,.btn-primary-accent:disabled{color:#fff;background-color:#1252A3;border-color:#1252A3}.btn-primary-accent:not(:disabled):not(.disabled):active,.btn-primary-accent:not(:disabled):not(.disabled).active,.show>.btn-primary-accent.dropdown-toggle{color:#fff;background-color:#0d3b75;border-color:#0c356a}.btn-primary-accent:not(:disabled):not(.disabled):active:focus,.btn-primary-accent:not(:disabled):not(.disabled).active:focus,.show>.btn-primary-accent.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(54,108,177,0.5)}.btn-outline-primary{color:#175DDC;border-color:#175DDC}.btn-outline-primary:hover{color:#fff;background-color:#175DDC;border-color:#175DDC}.btn-outline-primary:focus,.btn-outline-primary.focus{box-shadow:0 0 0 .2rem rgba(23,93,220,0.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#175DDC;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled):active,.btn-outline-primary:not(:disabled):not(.disabled).active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#175DDC;border-color:#175DDC}.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,93,220,0.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:focus,.btn-outline-secondary.focus{box-shadow:0 0 0 .2rem rgba(108,117,125,0.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled):active,.btn-outline-secondary:not(:disabled):not(.disabled).active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,0.5)}.btn-outline-success{color:#00a65a;border-color:#00a65a}.btn-outline-success:hover{color:#fff;background-color:#00a65a;border-color:#00a65a}.btn-outline-success:focus,.btn-outline-success.focus{box-shadow:0 0 0 .2rem rgba(0,166,90,0.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#00a65a;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled):active,.btn-outline-success:not(:disabled):not(.disabled).active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#00a65a;border-color:#00a65a}.btn-outline-success:not(:disabled):not(.disabled):active:focus,.btn-outline-success:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,166,90,0.5)}.btn-outline-info{color:#555;border-color:#555}.btn-outline-info:hover{color:#fff;background-color:#555;border-color:#555}.btn-outline-info:focus,.btn-outline-info.focus{box-shadow:0 0 0 .2rem rgba(85,85,85,0.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#555;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled):active,.btn-outline-info:not(:disabled):not(.disabled).active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#555;border-color:#555}.btn-outline-info:not(:disabled):not(.disabled):active:focus,.btn-outline-info:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(85,85,85,0.5)}.btn-outline-warning{color:#bf7e16;border-color:#bf7e16}.btn-outline-warning:hover{color:#fff;background-color:#bf7e16;border-color:#bf7e16}.btn-outline-warning:focus,.btn-outline-warning.focus{box-shadow:0 0 0 .2rem rgba(191,126,22,0.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#bf7e16;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled):active,.btn-outline-warning:not(:disabled):not(.disabled).active,.show>.btn-outline-warning.dropdown-toggle{color:#fff;background-color:#bf7e16;border-color:#bf7e16}.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(191,126,22,0.5)}.btn-outline-danger{color:#dd4b39;border-color:#dd4b39}.btn-outline-danger:hover{color:#fff;background-color:#dd4b39;border-color:#dd4b39}.btn-outline-danger:focus,.btn-outline-danger.focus{box-shadow:0 0 0 .2rem rgba(221,75,57,0.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dd4b39;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled):active,.btn-outline-danger:not(:disabled):not(.disabled).active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dd4b39;border-color:#dd4b39}.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(221,75,57,0.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:focus,.btn-outline-light.focus{box-shadow:0 0 0 .2rem rgba(248,249,250,0.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled):active,.btn-outline-light:not(:disabled):not(.disabled).active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled):active:focus,.btn-outline-light:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,0.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:focus,.btn-outline-dark.focus{box-shadow:0 0 0 .2rem rgba(52,58,64,0.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled):active,.btn-outline-dark:not(:disabled):not(.disabled).active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,0.5)}.btn-outline-primary-accent{color:#1252A3;border-color:#1252A3}.btn-outline-primary-accent:hover{color:#fff;background-color:#1252A3;border-color:#1252A3}.btn-outline-primary-accent:focus,.btn-outline-primary-accent.focus{box-shadow:0 0 0 .2rem rgba(18,82,163,0.5)}.btn-outline-primary-accent.disabled,.btn-outline-primary-accent:disabled{color:#1252A3;background-color:transparent}.btn-outline-primary-accent:not(:disabled):not(.disabled):active,.btn-outline-primary-accent:not(:disabled):not(.disabled).active,.show>.btn-outline-primary-accent.dropdown-toggle{color:#fff;background-color:#1252A3;border-color:#1252A3}.btn-outline-primary-accent:not(:disabled):not(.disabled):active:focus,.btn-outline-primary-accent:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-primary-accent.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(18,82,163,0.5)}.btn-link{font-weight:400;color:#175DDC;text-decoration:none}.btn-link:hover{color:#104097;text-decoration:underline}.btn-link:focus,.btn-link.focus{text-decoration:underline}.btn-link:disabled,.btn-link.disabled{color:#6c757d;pointer-events:none}.btn-lg,.btn-group-lg>.btn{padding:.5rem 1rem;font-size:1.15rem;line-height:1.5;border-radius:.3rem}.btn-sm,.btn-group-sm>.btn{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{transition:opacity 0.15s linear}@media (prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height 0.35s ease}@media (prefers-reduced-motion: reduce){.collapsing{transition:none}}.dropup,.dropright,.dropdown,.dropleft{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#333;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,0.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width: 1px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width: 2px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width: 3px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width: 4px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^="top"],.dropdown-menu[x-placement^="right"],.dropdown-menu[x-placement^="bottom"],.dropdown-menu[x-placement^="left"]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1rem;clear:both;font-weight:400;color:#333;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:hover,.dropdown-item:focus{color:#16181b;text-decoration:none;background-color:rgba(0,0,0,0.06)}.dropdown-item.active,.dropdown-item:active{color:#333;text-decoration:none;background-color:rgba(0,0,0,0.1)}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1rem;color:#333}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;flex:1 1 auto}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover{z-index:1}.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:not(:first-child),.btn-group>.btn-group:not(:first-child){margin-left:-1px}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:not(:first-child),.btn-group>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),.btn-group-vertical>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type="radio"],.btn-group-toggle>.btn input[type="checkbox"],.btn-group-toggle>.btn-group>.btn input[type="radio"],.btn-group-toggle>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-control-plaintext,.input-group>.custom-select,.input-group>.custom-file{position:relative;flex:1 1 auto;width:1%;min-width:0;margin-bottom:0}.input-group>.form-control+.form-control,.input-group>.form-control+.custom-select,.input-group>.form-control+.custom-file,.input-group>.form-control-plaintext+.form-control,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.custom-file,.input-group>.custom-select+.form-control,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.custom-file,.input-group>.custom-file+.form-control,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.custom-file{margin-left:-1px}.input-group>.form-control:focus,.input-group>.custom-select:focus,.input-group>.custom-file .custom-file-input:focus ~ .custom-file-label{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.form-control:not(:last-child),.input-group>.custom-select:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.form-control:not(:first-child),.input-group>.custom-select:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:flex;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-prepend,.input-group-append{display:flex}.input-group-prepend .btn,.input-group-append .btn{position:relative;z-index:2}.input-group-prepend .btn:focus,.input-group-append .btn:focus{z-index:3}.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.input-group-text,.input-group-append .input-group-text+.btn{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type="radio"],.input-group-text input[type="checkbox"]{margin-top:0}.input-group-lg>.form-control:not(textarea),.input-group-lg>.custom-select{height:calc(1.5em + 1rem + 2px)}.input-group-lg>.form-control,.input-group-lg>.custom-select,.input-group-lg>.input-group-prepend>.input-group-text,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-append>.btn{padding:.5rem 1rem;font-size:1.15rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.form-control:not(textarea),.input-group-sm>.custom-select{height:calc(1.5em + .5rem + 2px)}.input-group-sm>.form-control,.input-group-sm>.custom-select,.input-group-sm>.input-group-prepend>.input-group-text,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-append>.btn{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text,.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked ~ .custom-control-label::before{color:#fff;border-color:#175DDC;background-color:#175DDC}.custom-control-input:focus ~ .custom-control-label::before{box-shadow:0 0 0 .2rem rgba(23,93,220,0.25)}.custom-control-input:focus:not(:checked) ~ .custom-control-label::before{border-color:#81a9f2}.custom-control-input:not(:disabled):active ~ .custom-control-label::before{color:#fff;background-color:#afc8f7;border-color:#afc8f7}.custom-control-input[disabled] ~ .custom-control-label,.custom-control-input:disabled ~ .custom-control-label{color:#6c757d}.custom-control-input[disabled] ~ .custom-control-label::before,.custom-control-input:disabled ~ .custom-control-label::before{background-color:#e0e0e0}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label::before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fbfbfb;border:#adb5bd solid 1px}.custom-control-label::after{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:no-repeat 50% / 50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before{border-color:#175DDC;background-color:#175DDC}.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before{background-color:rgba(23,93,220,0.5)}.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before{background-color:rgba(23,93,220,0.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked ~ .custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before{background-color:rgba(23,93,220,0.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label::before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label::after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:transform 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.custom-switch .custom-control-label::after{transition:none}}.custom-switch .custom-control-input:checked ~ .custom-control-label::after{background-color:#fbfbfb;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before{background-color:rgba(23,93,220,0.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fbfbfb url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;appearance:none}.custom-select:focus{border-color:#81a9f2;outline:0;box-shadow:0 0 0 .2rem rgba(23,93,220,0.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fbfbfb}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.15rem}.custom-file{position:relative;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(1.5em + .75rem + 2px);margin:0;opacity:0}.custom-file-input:focus ~ .custom-file-label{border-color:#81a9f2;box-shadow:0 0 0 .2rem rgba(23,93,220,0.25)}.custom-file-input[disabled] ~ .custom-file-label,.custom-file-input:disabled ~ .custom-file-label{background-color:#e0e0e0}.custom-file-input:lang(en) ~ .custom-file-label::after{content:"Browse"}.custom-file-input ~ .custom-file-label[data-browse]::after{content:attr(data-browse)}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fbfbfb;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);padding:.375rem .75rem;line-height:1.5;color:#495057;content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:transparent;appearance:none}.custom-range:focus{outline:none}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(23,93,220,0.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(23,93,220,0.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(23,93,220,0.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#175DDC;border:0;border-radius:1rem;transition:background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;appearance:none}@media (prefers-reduced-motion: reduce){.custom-range::-webkit-slider-thumb{transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#afc8f7}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#175DDC;border:0;border-radius:1rem;transition:background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;appearance:none}@media (prefers-reduced-motion: reduce){.custom-range::-moz-range-thumb{transition:none}}.custom-range::-moz-range-thumb:active{background-color:#afc8f7}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#175DDC;border:0;border-radius:1rem;transition:background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;appearance:none}@media (prefers-reduced-motion: reduce){.custom-range::-ms-thumb{transition:none}}.custom-range::-ms-thumb:active{background-color:#afc8f7}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label::before,.custom-file-label,.custom-select{transition:background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.custom-control-label::before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:hover,.nav-link:focus{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#175DDC}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:.75rem 1rem}.navbar .container,.navbar .container-fluid,.navbar .container-sm,.navbar .container-md,.navbar .container-lg,.navbar .container-xl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:0;padding-bottom:0;margin-right:1rem;font-size:2.1875rem;line-height:inherit;white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.15rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:hover,.navbar-toggler:focus{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width: 0.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width: 1px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.8rem;padding-left:.8rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width: 1.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-md,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width: 2px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.8rem;padding-left:.8rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-md,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width: 2.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width: 3px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.8rem;padding-left:.8rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width: 3.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width: 4px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.8rem;padding-left:.8rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-sm,.navbar-expand>.container-md,.navbar-expand>.container-lg,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.8rem;padding-left:.8rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-sm,.navbar-expand>.container-md,.navbar-expand>.container-lg,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,0.9)}.navbar-light .navbar-brand:hover,.navbar-light .navbar-brand:focus{color:rgba(0,0,0,0.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,0.5)}.navbar-light .navbar-nav .nav-link:hover,.navbar-light .navbar-nav .nav-link:focus{color:rgba(0,0,0,0.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,0.3)}.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .nav-link.active{color:rgba(0,0,0,0.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,0.5);border-color:rgba(0,0,0,0.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280,0,0,0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,0.5)}.navbar-light .navbar-text a{color:rgba(0,0,0,0.9)}.navbar-light .navbar-text a:hover,.navbar-light .navbar-text a:focus{color:rgba(0,0,0,0.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:hover,.navbar-dark .navbar-brand:focus{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,0.7)}.navbar-dark .navbar-nav .nav-link:hover,.navbar-dark .navbar-nav .nav-link:focus{color:rgba(255,255,255,0.9)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,0.25)}.navbar-dark .navbar-nav .show>.nav-link,.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .nav-link.active{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,0.7);border-color:rgba(255,255,255,0.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.7%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,0.7)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:hover,.navbar-dark .navbar-text a:focus{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,0.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.6rem}.card-subtitle{margin-top:-.3rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.6rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,0.03);border-bottom:1px solid rgba(0,0,0,0.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.6rem 1.25rem;background-color:rgba(0,0,0,0.03);border-top:1px solid rgba(0,0,0,0.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.625rem;margin-bottom:-.6rem;margin-left:-.625rem;border-bottom:0}.card-header-pills{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img,.card-img-top,.card-img-bottom{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:10px}@media (min-width: 1px){.card-deck{display:flex;flex-flow:row wrap;margin-right:-10px;margin-left:-10px}.card-deck .card{flex:1 0 0%;margin-right:10px;margin-bottom:0;margin-left:10px}}.card-group>.card{margin-bottom:10px}@media (min-width: 1px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-img-top,.card-group>.card:not(:last-child) .card-header{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-img-bottom,.card-group>.card:not(:last-child) .card-footer{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-img-top,.card-group>.card:not(:first-child) .card-header{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-img-bottom,.card-group>.card:not(:first-child) .card-footer{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.6rem}@media (min-width: 1px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item{display:flex}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#175DDC;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#104097;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(23,93,220,0.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#175DDC;border-color:#175DDC}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.15rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem;transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.badge{transition:none}}a.badge:hover,a.badge:focus{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#175DDC}a.badge-primary:hover,a.badge-primary:focus{color:#fff;background-color:#1249ae}a.badge-primary:focus,a.badge-primary.focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,93,220,0.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:hover,a.badge-secondary:focus{color:#fff;background-color:#545b62}a.badge-secondary:focus,a.badge-secondary.focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,0.5)}.badge-success{color:#fff;background-color:#00a65a}a.badge-success:hover,a.badge-success:focus{color:#fff;background-color:#00733e}a.badge-success:focus,a.badge-success.focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,166,90,0.5)}.badge-info{color:#fff;background-color:#555}a.badge-info:hover,a.badge-info:focus{color:#fff;background-color:#3c3c3c}a.badge-info:focus,a.badge-info.focus{outline:0;box-shadow:0 0 0 .2rem rgba(85,85,85,0.5)}.badge-warning{color:#fff;background-color:#bf7e16}a.badge-warning:hover,a.badge-warning:focus{color:#fff;background-color:#916011}a.badge-warning:focus,a.badge-warning.focus{outline:0;box-shadow:0 0 0 .2rem rgba(191,126,22,0.5)}.badge-danger{color:#fff;background-color:#dd4b39}a.badge-danger:hover,a.badge-danger:focus{color:#fff;background-color:#c23321}a.badge-danger:focus,a.badge-danger.focus{outline:0;box-shadow:0 0 0 .2rem rgba(221,75,57,0.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:hover,a.badge-light:focus{color:#212529;background-color:#dae0e5}a.badge-light:focus,a.badge-light.focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,0.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:hover,a.badge-dark:focus{color:#fff;background-color:#1d2124}a.badge-dark:focus,a.badge-dark.focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,0.5)}.badge-primary-accent{color:#fff;background-color:#1252A3}a.badge-primary-accent:hover,a.badge-primary-accent:focus{color:#fff;background-color:#0d3b75}a.badge-primary-accent:focus,a.badge-primary-accent.focus{outline:0;box-shadow:0 0 0 .2rem rgba(18,82,163,0.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width: 1px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#0c3072;background-color:#d1dff8;border-color:#bed2f5}.alert-primary hr{border-top-color:#a8c3f2}.alert-primary .alert-link{color:#071d44}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#00562f;background-color:#ccedde;border-color:#b8e6d1}.alert-success hr{border-top-color:#a5dfc5}.alert-success .alert-link{color:#002313}.alert-info{color:#2c2c2c;background-color:#ddd;border-color:#cfcfcf}.alert-info hr{border-top-color:#c2c2c2}.alert-info .alert-link{color:#131313}.alert-warning{color:#63420b;background-color:#f2e5d0;border-color:#eddbbe}.alert-warning hr{border-top-color:#e7d0aa}.alert-warning .alert-link{color:#352306}.alert-danger{color:#73271e;background-color:#f8dbd7;border-color:#f5cdc8}.alert-danger hr{border-top-color:#f1b9b2}.alert-danger .alert-link{color:#4b1913}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}.alert-primary-accent{color:#092b55;background-color:#d0dced;border-color:#bdcfe5}.alert-primary-accent hr{border-top-color:#abc2de}.alert-primary-accent .alert-link{color:#041427}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:flex;height:1rem;overflow:hidden;line-height:0;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#175DDC;transition:width 0.6s ease}@media (prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#333;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.6rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,0.125)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#333;background-color:#fff;border-color:rgba(0,0,0,0.125)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width: 1px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width: 2px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width: 3px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width: 4px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#0c3072;background-color:#bed2f5}.list-group-item-primary.list-group-item-action:hover,.list-group-item-primary.list-group-item-action:focus{color:#0c3072;background-color:#a8c3f2}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#0c3072;border-color:#0c3072}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:hover,.list-group-item-secondary.list-group-item-action:focus{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#00562f;background-color:#b8e6d1}.list-group-item-success.list-group-item-action:hover,.list-group-item-success.list-group-item-action:focus{color:#00562f;background-color:#a5dfc5}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#00562f;border-color:#00562f}.list-group-item-info{color:#2c2c2c;background-color:#cfcfcf}.list-group-item-info.list-group-item-action:hover,.list-group-item-info.list-group-item-action:focus{color:#2c2c2c;background-color:#c2c2c2}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#2c2c2c;border-color:#2c2c2c}.list-group-item-warning{color:#63420b;background-color:#eddbbe}.list-group-item-warning.list-group-item-action:hover,.list-group-item-warning.list-group-item-action:focus{color:#63420b;background-color:#e7d0aa}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#63420b;border-color:#63420b}.list-group-item-danger{color:#73271e;background-color:#f5cdc8}.list-group-item-danger.list-group-item-action:hover,.list-group-item-danger.list-group-item-action:focus{color:#73271e;background-color:#f1b9b2}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#73271e;border-color:#73271e}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:hover,.list-group-item-light.list-group-item-action:focus{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:hover,.list-group-item-dark.list-group-item-action:focus{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.list-group-item-primary-accent{color:#092b55;background-color:#bdcfe5}.list-group-item-primary-accent.list-group-item-action:hover,.list-group-item-primary-accent.list-group-item-action:focus{color:#092b55;background-color:#abc2de}.list-group-item-primary-accent.list-group-item-action.active{color:#fff;background-color:#092b55;border-color:#092b55}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):hover,.close:not(:disabled):not(.disabled):focus{opacity:.75}button.close{padding:0;background-color:transparent;border:0}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:.875rem;background-color:rgba(255,255,255,0.85);background-clip:padding-box;border:1px solid rgba(0,0,0,0.1);box-shadow:0 0.25rem 0.75rem rgba(0,0,0,0.1);backdrop-filter:blur(10px);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:flex;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:rgba(255,255,255,0.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,0.05)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform 0.3s ease-out;transform:translate(0, -50px)}@media (prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-header,.modal-dialog-scrollable .modal-footer{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);height:min-content;content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,0.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.3}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem 1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width: 1px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem);height:min-content}.modal-sm{max-width:300px}}@media (min-width: 3px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width: 4px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-top,.bs-tooltip-auto[x-placement^="top"]{padding:.4rem 0}.bs-tooltip-top .arrow,.bs-tooltip-auto[x-placement^="top"] .arrow{bottom:0}.bs-tooltip-top .arrow::before,.bs-tooltip-auto[x-placement^="top"] .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-right,.bs-tooltip-auto[x-placement^="right"]{padding:0 .4rem}.bs-tooltip-right .arrow,.bs-tooltip-auto[x-placement^="right"] .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-right .arrow::before,.bs-tooltip-auto[x-placement^="right"] .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-bottom,.bs-tooltip-auto[x-placement^="bottom"]{padding:.4rem 0}.bs-tooltip-bottom .arrow,.bs-tooltip-auto[x-placement^="bottom"] .arrow{top:0}.bs-tooltip-bottom .arrow::before,.bs-tooltip-auto[x-placement^="bottom"] .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-left,.bs-tooltip-auto[x-placement^="left"]{padding:0 .4rem}.bs-tooltip-left .arrow,.bs-tooltip-auto[x-placement^="left"] .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-left .arrow::before,.bs-tooltip-auto[x-placement^="left"] .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,0.2);border-radius:.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::before,.popover .arrow::after{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-top,.bs-popover-auto[x-placement^="top"]{margin-bottom:.5rem}.bs-popover-top>.arrow,.bs-popover-auto[x-placement^="top"]>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-top>.arrow::before,.bs-popover-auto[x-placement^="top"]>.arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,0.25)}.bs-popover-top>.arrow::after,.bs-popover-auto[x-placement^="top"]>.arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-right,.bs-popover-auto[x-placement^="right"]{margin-left:.5rem}.bs-popover-right>.arrow,.bs-popover-auto[x-placement^="right"]>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-right>.arrow::before,.bs-popover-auto[x-placement^="right"]>.arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,0.25)}.bs-popover-right>.arrow::after,.bs-popover-auto[x-placement^="right"]>.arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-bottom,.bs-popover-auto[x-placement^="bottom"]{margin-top:.5rem}.bs-popover-bottom>.arrow,.bs-popover-auto[x-placement^="bottom"]>.arrow{top:calc(-.5rem - 1px)}.bs-popover-bottom>.arrow::before,.bs-popover-auto[x-placement^="bottom"]>.arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,0.25)}.bs-popover-bottom>.arrow::after,.bs-popover-auto[x-placement^="bottom"]>.arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-bottom .popover-header::before,.bs-popover-auto[x-placement^="bottom"] .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-left,.bs-popover-auto[x-placement^="left"]{margin-right:.5rem}.bs-popover-left>.arrow,.bs-popover-auto[x-placement^="left"]>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-left>.arrow::before,.bs-popover-auto[x-placement^="left"]>.arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,0.25)}.bs-popover-left>.arrow::after,.bs-popover-auto[x-placement^="left"]>.arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#333}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-left),.active.carousel-item-right{transform:translateX(100%)}.carousel-item-prev:not(.carousel-item-right),.active.carousel-item-left{transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity 0.15s ease}@media (prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50% / 100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity 0.6s ease}@media (prefers-reduced-motion: reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.bg-primary{background-color:#175DDC !important}a.bg-primary:hover,a.bg-primary:focus,button.bg-primary:hover,button.bg-primary:focus{background-color:#1249ae !important}.bg-secondary{background-color:#6c757d !important}a.bg-secondary:hover,a.bg-secondary:focus,button.bg-secondary:hover,button.bg-secondary:focus{background-color:#545b62 !important}.bg-success{background-color:#00a65a !important}a.bg-success:hover,a.bg-success:focus,button.bg-success:hover,button.bg-success:focus{background-color:#00733e !important}.bg-info{background-color:#555 !important}a.bg-info:hover,a.bg-info:focus,button.bg-info:hover,button.bg-info:focus{background-color:#3c3c3c !important}.bg-warning{background-color:#bf7e16 !important}a.bg-warning:hover,a.bg-warning:focus,button.bg-warning:hover,button.bg-warning:focus{background-color:#916011 !important}.bg-danger{background-color:#dd4b39 !important}a.bg-danger:hover,a.bg-danger:focus,button.bg-danger:hover,button.bg-danger:focus{background-color:#c23321 !important}.bg-light{background-color:#f8f9fa !important}a.bg-light:hover,a.bg-light:focus,button.bg-light:hover,button.bg-light:focus{background-color:#dae0e5 !important}.bg-dark{background-color:#343a40 !important}a.bg-dark:hover,a.bg-dark:focus,button.bg-dark:hover,button.bg-dark:focus{background-color:#1d2124 !important}.bg-primary-accent{background-color:#1252A3 !important}a.bg-primary-accent:hover,a.bg-primary-accent:focus,button.bg-primary-accent:hover,button.bg-primary-accent:focus{background-color:#0d3b75 !important}.bg-white{background-color:#fff !important}.bg-transparent{background-color:transparent !important}.border{border:1px solid #dee2e6 !important}.border-top{border-top:1px solid #dee2e6 !important}.border-right{border-right:1px solid #dee2e6 !important}.border-bottom{border-bottom:1px solid #dee2e6 !important}.border-left{border-left:1px solid #dee2e6 !important}.border-0{border:0 !important}.border-top-0{border-top:0 !important}.border-right-0{border-right:0 !important}.border-bottom-0{border-bottom:0 !important}.border-left-0{border-left:0 !important}.border-primary{border-color:#175DDC !important}.border-secondary{border-color:#6c757d !important}.border-success{border-color:#00a65a !important}.border-info{border-color:#555 !important}.border-warning{border-color:#bf7e16 !important}.border-danger{border-color:#dd4b39 !important}.border-light{border-color:#f8f9fa !important}.border-dark{border-color:#343a40 !important}.border-primary-accent{border-color:#1252A3 !important}.border-white{border-color:#fff !important}.rounded-sm{border-radius:.2rem !important}.rounded{border-radius:.25rem !important}.rounded-top{border-top-left-radius:.25rem !important;border-top-right-radius:.25rem !important}.rounded-right{border-top-right-radius:.25rem !important;border-bottom-right-radius:.25rem !important}.rounded-bottom{border-bottom-right-radius:.25rem !important;border-bottom-left-radius:.25rem !important}.rounded-left{border-top-left-radius:.25rem !important;border-bottom-left-radius:.25rem !important}.rounded-lg{border-radius:.3rem !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:50rem !important}.rounded-0{border-radius:0 !important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}@media (min-width: 1px){.d-sm-none{display:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:flex !important}.d-sm-inline-flex{display:inline-flex !important}}@media (min-width: 2px){.d-md-none{display:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:flex !important}.d-md-inline-flex{display:inline-flex !important}}@media (min-width: 3px){.d-lg-none{display:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:flex !important}.d-lg-inline-flex{display:inline-flex !important}}@media (min-width: 4px){.d-xl-none{display:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:flex !important}.d-xl-inline-flex{display:inline-flex !important}}@media print{.d-print-none{display:none !important}.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:flex !important}.d-print-inline-flex{display:inline-flex !important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.85714%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.flex-fill{flex:1 1 auto !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}@media (min-width: 1px){.flex-sm-row{flex-direction:row !important}.flex-sm-column{flex-direction:column !important}.flex-sm-row-reverse{flex-direction:row-reverse !important}.flex-sm-column-reverse{flex-direction:column-reverse !important}.flex-sm-wrap{flex-wrap:wrap !important}.flex-sm-nowrap{flex-wrap:nowrap !important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}.flex-sm-fill{flex:1 1 auto !important}.flex-sm-grow-0{flex-grow:0 !important}.flex-sm-grow-1{flex-grow:1 !important}.flex-sm-shrink-0{flex-shrink:0 !important}.flex-sm-shrink-1{flex-shrink:1 !important}.justify-content-sm-start{justify-content:flex-start !important}.justify-content-sm-end{justify-content:flex-end !important}.justify-content-sm-center{justify-content:center !important}.justify-content-sm-between{justify-content:space-between !important}.justify-content-sm-around{justify-content:space-around !important}.align-items-sm-start{align-items:flex-start !important}.align-items-sm-end{align-items:flex-end !important}.align-items-sm-center{align-items:center !important}.align-items-sm-baseline{align-items:baseline !important}.align-items-sm-stretch{align-items:stretch !important}.align-content-sm-start{align-content:flex-start !important}.align-content-sm-end{align-content:flex-end !important}.align-content-sm-center{align-content:center !important}.align-content-sm-between{align-content:space-between !important}.align-content-sm-around{align-content:space-around !important}.align-content-sm-stretch{align-content:stretch !important}.align-self-sm-auto{align-self:auto !important}.align-self-sm-start{align-self:flex-start !important}.align-self-sm-end{align-self:flex-end !important}.align-self-sm-center{align-self:center !important}.align-self-sm-baseline{align-self:baseline !important}.align-self-sm-stretch{align-self:stretch !important}}@media (min-width: 2px){.flex-md-row{flex-direction:row !important}.flex-md-column{flex-direction:column !important}.flex-md-row-reverse{flex-direction:row-reverse !important}.flex-md-column-reverse{flex-direction:column-reverse !important}.flex-md-wrap{flex-wrap:wrap !important}.flex-md-nowrap{flex-wrap:nowrap !important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}.flex-md-fill{flex:1 1 auto !important}.flex-md-grow-0{flex-grow:0 !important}.flex-md-grow-1{flex-grow:1 !important}.flex-md-shrink-0{flex-shrink:0 !important}.flex-md-shrink-1{flex-shrink:1 !important}.justify-content-md-start{justify-content:flex-start !important}.justify-content-md-end{justify-content:flex-end !important}.justify-content-md-center{justify-content:center !important}.justify-content-md-between{justify-content:space-between !important}.justify-content-md-around{justify-content:space-around !important}.align-items-md-start{align-items:flex-start !important}.align-items-md-end{align-items:flex-end !important}.align-items-md-center{align-items:center !important}.align-items-md-baseline{align-items:baseline !important}.align-items-md-stretch{align-items:stretch !important}.align-content-md-start{align-content:flex-start !important}.align-content-md-end{align-content:flex-end !important}.align-content-md-center{align-content:center !important}.align-content-md-between{align-content:space-between !important}.align-content-md-around{align-content:space-around !important}.align-content-md-stretch{align-content:stretch !important}.align-self-md-auto{align-self:auto !important}.align-self-md-start{align-self:flex-start !important}.align-self-md-end{align-self:flex-end !important}.align-self-md-center{align-self:center !important}.align-self-md-baseline{align-self:baseline !important}.align-self-md-stretch{align-self:stretch !important}}@media (min-width: 3px){.flex-lg-row{flex-direction:row !important}.flex-lg-column{flex-direction:column !important}.flex-lg-row-reverse{flex-direction:row-reverse !important}.flex-lg-column-reverse{flex-direction:column-reverse !important}.flex-lg-wrap{flex-wrap:wrap !important}.flex-lg-nowrap{flex-wrap:nowrap !important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}.flex-lg-fill{flex:1 1 auto !important}.flex-lg-grow-0{flex-grow:0 !important}.flex-lg-grow-1{flex-grow:1 !important}.flex-lg-shrink-0{flex-shrink:0 !important}.flex-lg-shrink-1{flex-shrink:1 !important}.justify-content-lg-start{justify-content:flex-start !important}.justify-content-lg-end{justify-content:flex-end !important}.justify-content-lg-center{justify-content:center !important}.justify-content-lg-between{justify-content:space-between !important}.justify-content-lg-around{justify-content:space-around !important}.align-items-lg-start{align-items:flex-start !important}.align-items-lg-end{align-items:flex-end !important}.align-items-lg-center{align-items:center !important}.align-items-lg-baseline{align-items:baseline !important}.align-items-lg-stretch{align-items:stretch !important}.align-content-lg-start{align-content:flex-start !important}.align-content-lg-end{align-content:flex-end !important}.align-content-lg-center{align-content:center !important}.align-content-lg-between{align-content:space-between !important}.align-content-lg-around{align-content:space-around !important}.align-content-lg-stretch{align-content:stretch !important}.align-self-lg-auto{align-self:auto !important}.align-self-lg-start{align-self:flex-start !important}.align-self-lg-end{align-self:flex-end !important}.align-self-lg-center{align-self:center !important}.align-self-lg-baseline{align-self:baseline !important}.align-self-lg-stretch{align-self:stretch !important}}@media (min-width: 4px){.flex-xl-row{flex-direction:row !important}.flex-xl-column{flex-direction:column !important}.flex-xl-row-reverse{flex-direction:row-reverse !important}.flex-xl-column-reverse{flex-direction:column-reverse !important}.flex-xl-wrap{flex-wrap:wrap !important}.flex-xl-nowrap{flex-wrap:nowrap !important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}.flex-xl-fill{flex:1 1 auto !important}.flex-xl-grow-0{flex-grow:0 !important}.flex-xl-grow-1{flex-grow:1 !important}.flex-xl-shrink-0{flex-shrink:0 !important}.flex-xl-shrink-1{flex-shrink:1 !important}.justify-content-xl-start{justify-content:flex-start !important}.justify-content-xl-end{justify-content:flex-end !important}.justify-content-xl-center{justify-content:center !important}.justify-content-xl-between{justify-content:space-between !important}.justify-content-xl-around{justify-content:space-around !important}.align-items-xl-start{align-items:flex-start !important}.align-items-xl-end{align-items:flex-end !important}.align-items-xl-center{align-items:center !important}.align-items-xl-baseline{align-items:baseline !important}.align-items-xl-stretch{align-items:stretch !important}.align-content-xl-start{align-content:flex-start !important}.align-content-xl-end{align-content:flex-end !important}.align-content-xl-center{align-content:center !important}.align-content-xl-between{align-content:space-between !important}.align-content-xl-around{align-content:space-around !important}.align-content-xl-stretch{align-content:stretch !important}.align-self-xl-auto{align-self:auto !important}.align-self-xl-start{align-self:flex-start !important}.align-self-xl-end{align-self:flex-end !important}.align-self-xl-center{align-self:center !important}.align-self-xl-baseline{align-self:baseline !important}.align-self-xl-stretch{align-self:stretch !important}}.float-left{float:left !important}.float-right{float:right !important}.float-none{float:none !important}@media (min-width: 1px){.float-sm-left{float:left !important}.float-sm-right{float:right !important}.float-sm-none{float:none !important}}@media (min-width: 2px){.float-md-left{float:left !important}.float-md-right{float:right !important}.float-md-none{float:none !important}}@media (min-width: 3px){.float-lg-left{float:left !important}.float-lg-right{float:right !important}.float-lg-none{float:none !important}}@media (min-width: 4px){.float-xl-left{float:left !important}.float-xl-right{float:right !important}.float-xl-none{float:none !important}}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports (position: sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075) !important}.shadow{box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15) !important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,0.175) !important}.shadow-none{box-shadow:none !important}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mw-100{max-width:100% !important}.mh-100{max-height:100% !important}.min-vw-100{min-width:100vw !important}.min-vh-100{min-height:100vh !important}.vw-100{width:100vw !important}.vh-100{height:100vh !important}.m-0{margin:0 !important}.mt-0,.my-0{margin-top:0 !important}.mr-0,.mx-0{margin-right:0 !important}.mb-0,.my-0{margin-bottom:0 !important}.ml-0,.mx-0{margin-left:0 !important}.m-1{margin:.25rem !important}.mt-1,.my-1{margin-top:.25rem !important}.mr-1,.mx-1{margin-right:.25rem !important}.mb-1,.my-1{margin-bottom:.25rem !important}.ml-1,.mx-1{margin-left:.25rem !important}.m-2{margin:.5rem !important}.mt-2,.my-2{margin-top:.5rem !important}.mr-2,.mx-2{margin-right:.5rem !important}.mb-2,.my-2{margin-bottom:.5rem !important}.ml-2,.mx-2{margin-left:.5rem !important}.m-3{margin:1rem !important}.mt-3,.my-3{margin-top:1rem !important}.mr-3,.mx-3{margin-right:1rem !important}.mb-3,.my-3{margin-bottom:1rem !important}.ml-3,.mx-3{margin-left:1rem !important}.m-4{margin:1.5rem !important}.mt-4,.my-4{margin-top:1.5rem !important}.mr-4,.mx-4{margin-right:1.5rem !important}.mb-4,.my-4{margin-bottom:1.5rem !important}.ml-4,.mx-4{margin-left:1.5rem !important}.m-5{margin:3rem !important}.mt-5,.my-5{margin-top:3rem !important}.mr-5,.mx-5{margin-right:3rem !important}.mb-5,.my-5{margin-bottom:3rem !important}.ml-5,.mx-5{margin-left:3rem !important}.p-0{padding:0 !important}.pt-0,.py-0{padding-top:0 !important}.pr-0,.px-0{padding-right:0 !important}.pb-0,.py-0{padding-bottom:0 !important}.pl-0,.px-0{padding-left:0 !important}.p-1{padding:.25rem !important}.pt-1,.py-1{padding-top:.25rem !important}.pr-1,.px-1{padding-right:.25rem !important}.pb-1,.py-1{padding-bottom:.25rem !important}.pl-1,.px-1{padding-left:.25rem !important}.p-2{padding:.5rem !important}.pt-2,.py-2{padding-top:.5rem !important}.pr-2,.px-2{padding-right:.5rem !important}.pb-2,.py-2{padding-bottom:.5rem !important}.pl-2,.px-2{padding-left:.5rem !important}.p-3{padding:1rem !important}.pt-3,.py-3{padding-top:1rem !important}.pr-3,.px-3{padding-right:1rem !important}.pb-3,.py-3{padding-bottom:1rem !important}.pl-3,.px-3{padding-left:1rem !important}.p-4{padding:1.5rem !important}.pt-4,.py-4{padding-top:1.5rem !important}.pr-4,.px-4{padding-right:1.5rem !important}.pb-4,.py-4{padding-bottom:1.5rem !important}.pl-4,.px-4{padding-left:1.5rem !important}.p-5{padding:3rem !important}.pt-5,.py-5{padding-top:3rem !important}.pr-5,.px-5{padding-right:3rem !important}.pb-5,.py-5{padding-bottom:3rem !important}.pl-5,.px-5{padding-left:3rem !important}.m-n1{margin:-.25rem !important}.mt-n1,.my-n1{margin-top:-.25rem !important}.mr-n1,.mx-n1{margin-right:-.25rem !important}.mb-n1,.my-n1{margin-bottom:-.25rem !important}.ml-n1,.mx-n1{margin-left:-.25rem !important}.m-n2{margin:-.5rem !important}.mt-n2,.my-n2{margin-top:-.5rem !important}.mr-n2,.mx-n2{margin-right:-.5rem !important}.mb-n2,.my-n2{margin-bottom:-.5rem !important}.ml-n2,.mx-n2{margin-left:-.5rem !important}.m-n3{margin:-1rem !important}.mt-n3,.my-n3{margin-top:-1rem !important}.mr-n3,.mx-n3{margin-right:-1rem !important}.mb-n3,.my-n3{margin-bottom:-1rem !important}.ml-n3,.mx-n3{margin-left:-1rem !important}.m-n4{margin:-1.5rem !important}.mt-n4,.my-n4{margin-top:-1.5rem !important}.mr-n4,.mx-n4{margin-right:-1.5rem !important}.mb-n4,.my-n4{margin-bottom:-1.5rem !important}.ml-n4,.mx-n4{margin-left:-1.5rem !important}.m-n5{margin:-3rem !important}.mt-n5,.my-n5{margin-top:-3rem !important}.mr-n5,.mx-n5{margin-right:-3rem !important}.mb-n5,.my-n5{margin-bottom:-3rem !important}.ml-n5,.mx-n5{margin-left:-3rem !important}.m-auto{margin:auto !important}.mt-auto,.my-auto{margin-top:auto !important}.mr-auto,.mx-auto{margin-right:auto !important}.mb-auto,.my-auto{margin-bottom:auto !important}.ml-auto,.mx-auto{margin-left:auto !important}@media (min-width: 1px){.m-sm-0{margin:0 !important}.mt-sm-0,.my-sm-0{margin-top:0 !important}.mr-sm-0,.mx-sm-0{margin-right:0 !important}.mb-sm-0,.my-sm-0{margin-bottom:0 !important}.ml-sm-0,.mx-sm-0{margin-left:0 !important}.m-sm-1{margin:.25rem !important}.mt-sm-1,.my-sm-1{margin-top:.25rem !important}.mr-sm-1,.mx-sm-1{margin-right:.25rem !important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem !important}.ml-sm-1,.mx-sm-1{margin-left:.25rem !important}.m-sm-2{margin:.5rem !important}.mt-sm-2,.my-sm-2{margin-top:.5rem !important}.mr-sm-2,.mx-sm-2{margin-right:.5rem !important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem !important}.ml-sm-2,.mx-sm-2{margin-left:.5rem !important}.m-sm-3{margin:1rem !important}.mt-sm-3,.my-sm-3{margin-top:1rem !important}.mr-sm-3,.mx-sm-3{margin-right:1rem !important}.mb-sm-3,.my-sm-3{margin-bottom:1rem !important}.ml-sm-3,.mx-sm-3{margin-left:1rem !important}.m-sm-4{margin:1.5rem !important}.mt-sm-4,.my-sm-4{margin-top:1.5rem !important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem !important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem !important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem !important}.m-sm-5{margin:3rem !important}.mt-sm-5,.my-sm-5{margin-top:3rem !important}.mr-sm-5,.mx-sm-5{margin-right:3rem !important}.mb-sm-5,.my-sm-5{margin-bottom:3rem !important}.ml-sm-5,.mx-sm-5{margin-left:3rem !important}.p-sm-0{padding:0 !important}.pt-sm-0,.py-sm-0{padding-top:0 !important}.pr-sm-0,.px-sm-0{padding-right:0 !important}.pb-sm-0,.py-sm-0{padding-bottom:0 !important}.pl-sm-0,.px-sm-0{padding-left:0 !important}.p-sm-1{padding:.25rem !important}.pt-sm-1,.py-sm-1{padding-top:.25rem !important}.pr-sm-1,.px-sm-1{padding-right:.25rem !important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem !important}.pl-sm-1,.px-sm-1{padding-left:.25rem !important}.p-sm-2{padding:.5rem !important}.pt-sm-2,.py-sm-2{padding-top:.5rem !important}.pr-sm-2,.px-sm-2{padding-right:.5rem !important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem !important}.pl-sm-2,.px-sm-2{padding-left:.5rem !important}.p-sm-3{padding:1rem !important}.pt-sm-3,.py-sm-3{padding-top:1rem !important}.pr-sm-3,.px-sm-3{padding-right:1rem !important}.pb-sm-3,.py-sm-3{padding-bottom:1rem !important}.pl-sm-3,.px-sm-3{padding-left:1rem !important}.p-sm-4{padding:1.5rem !important}.pt-sm-4,.py-sm-4{padding-top:1.5rem !important}.pr-sm-4,.px-sm-4{padding-right:1.5rem !important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem !important}.pl-sm-4,.px-sm-4{padding-left:1.5rem !important}.p-sm-5{padding:3rem !important}.pt-sm-5,.py-sm-5{padding-top:3rem !important}.pr-sm-5,.px-sm-5{padding-right:3rem !important}.pb-sm-5,.py-sm-5{padding-bottom:3rem !important}.pl-sm-5,.px-sm-5{padding-left:3rem !important}.m-sm-n1{margin:-.25rem !important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem !important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem !important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem !important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem !important}.m-sm-n2{margin:-.5rem !important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem !important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem !important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem !important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem !important}.m-sm-n3{margin:-1rem !important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem !important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem !important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem !important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem !important}.m-sm-n4{margin:-1.5rem !important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem !important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem !important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem !important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem !important}.m-sm-n5{margin:-3rem !important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem !important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem !important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem !important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem !important}.m-sm-auto{margin:auto !important}.mt-sm-auto,.my-sm-auto{margin-top:auto !important}.mr-sm-auto,.mx-sm-auto{margin-right:auto !important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto !important}.ml-sm-auto,.mx-sm-auto{margin-left:auto !important}}@media (min-width: 2px){.m-md-0{margin:0 !important}.mt-md-0,.my-md-0{margin-top:0 !important}.mr-md-0,.mx-md-0{margin-right:0 !important}.mb-md-0,.my-md-0{margin-bottom:0 !important}.ml-md-0,.mx-md-0{margin-left:0 !important}.m-md-1{margin:.25rem !important}.mt-md-1,.my-md-1{margin-top:.25rem !important}.mr-md-1,.mx-md-1{margin-right:.25rem !important}.mb-md-1,.my-md-1{margin-bottom:.25rem !important}.ml-md-1,.mx-md-1{margin-left:.25rem !important}.m-md-2{margin:.5rem !important}.mt-md-2,.my-md-2{margin-top:.5rem !important}.mr-md-2,.mx-md-2{margin-right:.5rem !important}.mb-md-2,.my-md-2{margin-bottom:.5rem !important}.ml-md-2,.mx-md-2{margin-left:.5rem !important}.m-md-3{margin:1rem !important}.mt-md-3,.my-md-3{margin-top:1rem !important}.mr-md-3,.mx-md-3{margin-right:1rem !important}.mb-md-3,.my-md-3{margin-bottom:1rem !important}.ml-md-3,.mx-md-3{margin-left:1rem !important}.m-md-4{margin:1.5rem !important}.mt-md-4,.my-md-4{margin-top:1.5rem !important}.mr-md-4,.mx-md-4{margin-right:1.5rem !important}.mb-md-4,.my-md-4{margin-bottom:1.5rem !important}.ml-md-4,.mx-md-4{margin-left:1.5rem !important}.m-md-5{margin:3rem !important}.mt-md-5,.my-md-5{margin-top:3rem !important}.mr-md-5,.mx-md-5{margin-right:3rem !important}.mb-md-5,.my-md-5{margin-bottom:3rem !important}.ml-md-5,.mx-md-5{margin-left:3rem !important}.p-md-0{padding:0 !important}.pt-md-0,.py-md-0{padding-top:0 !important}.pr-md-0,.px-md-0{padding-right:0 !important}.pb-md-0,.py-md-0{padding-bottom:0 !important}.pl-md-0,.px-md-0{padding-left:0 !important}.p-md-1{padding:.25rem !important}.pt-md-1,.py-md-1{padding-top:.25rem !important}.pr-md-1,.px-md-1{padding-right:.25rem !important}.pb-md-1,.py-md-1{padding-bottom:.25rem !important}.pl-md-1,.px-md-1{padding-left:.25rem !important}.p-md-2{padding:.5rem !important}.pt-md-2,.py-md-2{padding-top:.5rem !important}.pr-md-2,.px-md-2{padding-right:.5rem !important}.pb-md-2,.py-md-2{padding-bottom:.5rem !important}.pl-md-2,.px-md-2{padding-left:.5rem !important}.p-md-3{padding:1rem !important}.pt-md-3,.py-md-3{padding-top:1rem !important}.pr-md-3,.px-md-3{padding-right:1rem !important}.pb-md-3,.py-md-3{padding-bottom:1rem !important}.pl-md-3,.px-md-3{padding-left:1rem !important}.p-md-4{padding:1.5rem !important}.pt-md-4,.py-md-4{padding-top:1.5rem !important}.pr-md-4,.px-md-4{padding-right:1.5rem !important}.pb-md-4,.py-md-4{padding-bottom:1.5rem !important}.pl-md-4,.px-md-4{padding-left:1.5rem !important}.p-md-5{padding:3rem !important}.pt-md-5,.py-md-5{padding-top:3rem !important}.pr-md-5,.px-md-5{padding-right:3rem !important}.pb-md-5,.py-md-5{padding-bottom:3rem !important}.pl-md-5,.px-md-5{padding-left:3rem !important}.m-md-n1{margin:-.25rem !important}.mt-md-n1,.my-md-n1{margin-top:-.25rem !important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem !important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem !important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem !important}.m-md-n2{margin:-.5rem !important}.mt-md-n2,.my-md-n2{margin-top:-.5rem !important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem !important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem !important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem !important}.m-md-n3{margin:-1rem !important}.mt-md-n3,.my-md-n3{margin-top:-1rem !important}.mr-md-n3,.mx-md-n3{margin-right:-1rem !important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem !important}.ml-md-n3,.mx-md-n3{margin-left:-1rem !important}.m-md-n4{margin:-1.5rem !important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem !important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem !important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem !important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem !important}.m-md-n5{margin:-3rem !important}.mt-md-n5,.my-md-n5{margin-top:-3rem !important}.mr-md-n5,.mx-md-n5{margin-right:-3rem !important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem !important}.ml-md-n5,.mx-md-n5{margin-left:-3rem !important}.m-md-auto{margin:auto !important}.mt-md-auto,.my-md-auto{margin-top:auto !important}.mr-md-auto,.mx-md-auto{margin-right:auto !important}.mb-md-auto,.my-md-auto{margin-bottom:auto !important}.ml-md-auto,.mx-md-auto{margin-left:auto !important}}@media (min-width: 3px){.m-lg-0{margin:0 !important}.mt-lg-0,.my-lg-0{margin-top:0 !important}.mr-lg-0,.mx-lg-0{margin-right:0 !important}.mb-lg-0,.my-lg-0{margin-bottom:0 !important}.ml-lg-0,.mx-lg-0{margin-left:0 !important}.m-lg-1{margin:.25rem !important}.mt-lg-1,.my-lg-1{margin-top:.25rem !important}.mr-lg-1,.mx-lg-1{margin-right:.25rem !important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem !important}.ml-lg-1,.mx-lg-1{margin-left:.25rem !important}.m-lg-2{margin:.5rem !important}.mt-lg-2,.my-lg-2{margin-top:.5rem !important}.mr-lg-2,.mx-lg-2{margin-right:.5rem !important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem !important}.ml-lg-2,.mx-lg-2{margin-left:.5rem !important}.m-lg-3{margin:1rem !important}.mt-lg-3,.my-lg-3{margin-top:1rem !important}.mr-lg-3,.mx-lg-3{margin-right:1rem !important}.mb-lg-3,.my-lg-3{margin-bottom:1rem !important}.ml-lg-3,.mx-lg-3{margin-left:1rem !important}.m-lg-4{margin:1.5rem !important}.mt-lg-4,.my-lg-4{margin-top:1.5rem !important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem !important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem !important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem !important}.m-lg-5{margin:3rem !important}.mt-lg-5,.my-lg-5{margin-top:3rem !important}.mr-lg-5,.mx-lg-5{margin-right:3rem !important}.mb-lg-5,.my-lg-5{margin-bottom:3rem !important}.ml-lg-5,.mx-lg-5{margin-left:3rem !important}.p-lg-0{padding:0 !important}.pt-lg-0,.py-lg-0{padding-top:0 !important}.pr-lg-0,.px-lg-0{padding-right:0 !important}.pb-lg-0,.py-lg-0{padding-bottom:0 !important}.pl-lg-0,.px-lg-0{padding-left:0 !important}.p-lg-1{padding:.25rem !important}.pt-lg-1,.py-lg-1{padding-top:.25rem !important}.pr-lg-1,.px-lg-1{padding-right:.25rem !important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem !important}.pl-lg-1,.px-lg-1{padding-left:.25rem !important}.p-lg-2{padding:.5rem !important}.pt-lg-2,.py-lg-2{padding-top:.5rem !important}.pr-lg-2,.px-lg-2{padding-right:.5rem !important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem !important}.pl-lg-2,.px-lg-2{padding-left:.5rem !important}.p-lg-3{padding:1rem !important}.pt-lg-3,.py-lg-3{padding-top:1rem !important}.pr-lg-3,.px-lg-3{padding-right:1rem !important}.pb-lg-3,.py-lg-3{padding-bottom:1rem !important}.pl-lg-3,.px-lg-3{padding-left:1rem !important}.p-lg-4{padding:1.5rem !important}.pt-lg-4,.py-lg-4{padding-top:1.5rem !important}.pr-lg-4,.px-lg-4{padding-right:1.5rem !important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem !important}.pl-lg-4,.px-lg-4{padding-left:1.5rem !important}.p-lg-5{padding:3rem !important}.pt-lg-5,.py-lg-5{padding-top:3rem !important}.pr-lg-5,.px-lg-5{padding-right:3rem !important}.pb-lg-5,.py-lg-5{padding-bottom:3rem !important}.pl-lg-5,.px-lg-5{padding-left:3rem !important}.m-lg-n1{margin:-.25rem !important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem !important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem !important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem !important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem !important}.m-lg-n2{margin:-.5rem !important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem !important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem !important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem !important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem !important}.m-lg-n3{margin:-1rem !important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem !important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem !important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem !important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem !important}.m-lg-n4{margin:-1.5rem !important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem !important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem !important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem !important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem !important}.m-lg-n5{margin:-3rem !important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem !important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem !important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem !important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem !important}.m-lg-auto{margin:auto !important}.mt-lg-auto,.my-lg-auto{margin-top:auto !important}.mr-lg-auto,.mx-lg-auto{margin-right:auto !important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto !important}.ml-lg-auto,.mx-lg-auto{margin-left:auto !important}}@media (min-width: 4px){.m-xl-0{margin:0 !important}.mt-xl-0,.my-xl-0{margin-top:0 !important}.mr-xl-0,.mx-xl-0{margin-right:0 !important}.mb-xl-0,.my-xl-0{margin-bottom:0 !important}.ml-xl-0,.mx-xl-0{margin-left:0 !important}.m-xl-1{margin:.25rem !important}.mt-xl-1,.my-xl-1{margin-top:.25rem !important}.mr-xl-1,.mx-xl-1{margin-right:.25rem !important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem !important}.ml-xl-1,.mx-xl-1{margin-left:.25rem !important}.m-xl-2{margin:.5rem !important}.mt-xl-2,.my-xl-2{margin-top:.5rem !important}.mr-xl-2,.mx-xl-2{margin-right:.5rem !important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem !important}.ml-xl-2,.mx-xl-2{margin-left:.5rem !important}.m-xl-3{margin:1rem !important}.mt-xl-3,.my-xl-3{margin-top:1rem !important}.mr-xl-3,.mx-xl-3{margin-right:1rem !important}.mb-xl-3,.my-xl-3{margin-bottom:1rem !important}.ml-xl-3,.mx-xl-3{margin-left:1rem !important}.m-xl-4{margin:1.5rem !important}.mt-xl-4,.my-xl-4{margin-top:1.5rem !important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem !important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem !important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem !important}.m-xl-5{margin:3rem !important}.mt-xl-5,.my-xl-5{margin-top:3rem !important}.mr-xl-5,.mx-xl-5{margin-right:3rem !important}.mb-xl-5,.my-xl-5{margin-bottom:3rem !important}.ml-xl-5,.mx-xl-5{margin-left:3rem !important}.p-xl-0{padding:0 !important}.pt-xl-0,.py-xl-0{padding-top:0 !important}.pr-xl-0,.px-xl-0{padding-right:0 !important}.pb-xl-0,.py-xl-0{padding-bottom:0 !important}.pl-xl-0,.px-xl-0{padding-left:0 !important}.p-xl-1{padding:.25rem !important}.pt-xl-1,.py-xl-1{padding-top:.25rem !important}.pr-xl-1,.px-xl-1{padding-right:.25rem !important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem !important}.pl-xl-1,.px-xl-1{padding-left:.25rem !important}.p-xl-2{padding:.5rem !important}.pt-xl-2,.py-xl-2{padding-top:.5rem !important}.pr-xl-2,.px-xl-2{padding-right:.5rem !important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem !important}.pl-xl-2,.px-xl-2{padding-left:.5rem !important}.p-xl-3{padding:1rem !important}.pt-xl-3,.py-xl-3{padding-top:1rem !important}.pr-xl-3,.px-xl-3{padding-right:1rem !important}.pb-xl-3,.py-xl-3{padding-bottom:1rem !important}.pl-xl-3,.px-xl-3{padding-left:1rem !important}.p-xl-4{padding:1.5rem !important}.pt-xl-4,.py-xl-4{padding-top:1.5rem !important}.pr-xl-4,.px-xl-4{padding-right:1.5rem !important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem !important}.pl-xl-4,.px-xl-4{padding-left:1.5rem !important}.p-xl-5{padding:3rem !important}.pt-xl-5,.py-xl-5{padding-top:3rem !important}.pr-xl-5,.px-xl-5{padding-right:3rem !important}.pb-xl-5,.py-xl-5{padding-bottom:3rem !important}.pl-xl-5,.px-xl-5{padding-left:3rem !important}.m-xl-n1{margin:-.25rem !important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem !important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem !important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem !important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem !important}.m-xl-n2{margin:-.5rem !important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem !important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem !important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem !important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem !important}.m-xl-n3{margin:-1rem !important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem !important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem !important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem !important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem !important}.m-xl-n4{margin:-1.5rem !important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem !important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem !important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem !important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem !important}.m-xl-n5{margin:-3rem !important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem !important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem !important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem !important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem !important}.m-xl-auto{margin:auto !important}.mt-xl-auto,.my-xl-auto{margin-top:auto !important}.mr-xl-auto,.mx-xl-auto{margin-right:auto !important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto !important}.ml-xl-auto,.mx-xl-auto{margin-left:auto !important}}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:rgba(0,0,0,0)}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace !important}.text-justify{text-align:justify !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left !important}.text-right{text-align:right !important}.text-center{text-align:center !important}@media (min-width: 1px){.text-sm-left{text-align:left !important}.text-sm-right{text-align:right !important}.text-sm-center{text-align:center !important}}@media (min-width: 2px){.text-md-left{text-align:left !important}.text-md-right{text-align:right !important}.text-md-center{text-align:center !important}}@media (min-width: 3px){.text-lg-left{text-align:left !important}.text-lg-right{text-align:right !important}.text-lg-center{text-align:center !important}}@media (min-width: 4px){.text-xl-left{text-align:left !important}.text-xl-right{text-align:right !important}.text-xl-center{text-align:center !important}}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.font-weight-light{font-weight:300 !important}.font-weight-lighter{font-weight:lighter !important}.font-weight-normal{font-weight:400 !important}.font-weight-bold{font-weight:700 !important}.font-weight-bolder{font-weight:bolder !important}.font-italic{font-style:italic !important}.text-white{color:#fff !important}.text-primary{color:#175DDC !important}a.text-primary:hover,a.text-primary:focus{color:#104097 !important}.text-secondary{color:#6c757d !important}a.text-secondary:hover,a.text-secondary:focus{color:#494f54 !important}.text-success{color:#00a65a !important}a.text-success:hover,a.text-success:focus{color:#005a31 !important}.text-info{color:#555 !important}a.text-info:hover,a.text-info:focus{color:#2f2f2f !important}.text-warning{color:#bf7e16 !important}a.text-warning:hover,a.text-warning:focus{color:#7a510e !important}.text-danger{color:#dd4b39 !important}a.text-danger:hover,a.text-danger:focus{color:#ac2d1e !important}.text-light{color:#f8f9fa !important}a.text-light:hover,a.text-light:focus{color:#cbd3da !important}.text-dark{color:#343a40 !important}a.text-dark:hover,a.text-dark:focus{color:#121416 !important}.text-primary-accent{color:#1252A3 !important}a.text-primary-accent:hover,a.text-primary-accent:focus{color:#0a2f5e !important}.text-body{color:#333 !important}.text-muted{color:#6c757d !important}.text-black-50{color:rgba(0,0,0,0.5) !important}.text-white-50{color:rgba(255,255,255,0.5) !important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.text-decoration-none{text-decoration:none !important}.text-break{word-wrap:break-word !important}.text-reset{color:inherit !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}@media print{*,*::before,*::after{text-shadow:none !important;box-shadow:none !important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap !important}pre,blockquote{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:3px !important}.container{min-width:3px !important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #dee2e6 !important}.table-dark{color:inherit}.table-dark th,.table-dark td,.table-dark thead th,.table-dark tbody+tbody{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}}html{font-size:14px}body{min-width:1010px}.page-header,.secondary-header{border-bottom:1px solid #dee2e6;padding-bottom:0.6rem;margin-bottom:0.5rem}.page-header h1,.page-header h2,.page-header h3,.page-header h4,.secondary-header h1,.secondary-header h2,.secondary-header h3,.secondary-header h4{margin:0}h1 small,h2 small,h3 small,h4 small,h5 small{font-size:80%}input:required,select:required,textarea:required{box-shadow:none}.navbar{padding-left:0;padding-right:0;padding-top:0.4rem;padding-bottom:0.4rem}.navbar .dropdown-menu{min-width:200px;max-width:300px}.navbar .dropdown-menu .dropdown-item-text{line-height:1.3}.navbar .dropdown-menu .dropdown-item-text span,.navbar .dropdown-menu .dropdown-item-text small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.navbar .nav-link{font-weight:600}.dropdown-menu button{cursor:pointer}.container{width:980px;max-width:none !important;margin:0 auto;padding:0}.page-content{margin-top:20px}.footer{margin-top:40px;padding:40px 0 40px 0;border-top:1px solid #dee2e6}.callout{padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid rgba(0,0,0,0.125);border-left-width:5px;border-radius:calc(.25rem - 1px);background-color:#fafafa}.callout .callout-heading{margin-top:0}.callout h3.callout-heading{font-weight:bold;text-transform:uppercase}.callout.callout-primary{border-left-color:#175DDC}.callout.callout-primary .callout-heading{color:#175DDC}.callout.callout-info{border-left-color:#343a40}.callout.callout-info .callout-heading{color:#343a40}.callout.callout-danger{border-left-color:#dd4b39}.callout.callout-danger .callout-heading{color:#dd4b39}.callout.callout-success{border-left-color:#00a65a}.callout.callout-success .callout-heading{color:#00a65a}.callout.callout-warning{border-left-color:#bf7e16}.callout.callout-warning .callout-heading{color:#bf7e16}.config-section{padding-top:20px;padding-bottom:20px}.config-section h2{border-bottom:1px solid #ccc}.validation-summary-valid{display:none}.alert.validation-summary-errors>ul{margin-bottom:0} diff --git a/bitwarden_license/src/Portal/wwwroot/css/webfonts.css b/bitwarden_license/src/Portal/wwwroot/css/webfonts.css new file mode 100644 index 000000000..6dbdf7a30 --- /dev/null +++ b/bitwarden_license/src/Portal/wwwroot/css/webfonts.css @@ -0,0 +1,80 @@ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 300; + src: url(webfonts/Open_Sans-italic-300.woff) format('woff'); + unicode-range: U+0-10FFFF; +} + +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 400; + src: url(webfonts/Open_Sans-italic-400.woff) format('woff'); + unicode-range: U+0-10FFFF; +} + +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 600; + src: url(webfonts/Open_Sans-italic-600.woff) format('woff'); + unicode-range: U+0-10FFFF; +} + +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 700; + src: url(webfonts/Open_Sans-italic-700.woff) format('woff'); + unicode-range: U+0-10FFFF; +} + +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 800; + src: url(webfonts/Open_Sans-italic-800.woff) format('woff'); + unicode-range: U+0-10FFFF; +} + +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 300; + src: url(webfonts/Open_Sans-normal-300.woff) format('woff'); + unicode-range: U+0-10FFFF; +} + +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 400; + src: url(webfonts/Open_Sans-normal-400.woff) format('woff'); + unicode-range: U+0-10FFFF; +} + +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 600; + src: url(webfonts/Open_Sans-normal-600.woff) format('woff'); + unicode-range: U+0-10FFFF; +} + +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 700; + src: url(webfonts/Open_Sans-normal-700.woff) format('woff'); + unicode-range: U+0-10FFFF; +} + +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 800; + src: url(webfonts/Open_Sans-normal-800.woff) format('woff'); + unicode-range: U+0-10FFFF; +} + diff --git a/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-300.woff b/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-300.woff new file mode 100644 index 0000000000000000000000000000000000000000..c543ae05accce78f8d2c146bcc62830caa32bfda GIT binary patch literal 53016 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%0A6h7Vov&kG1 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%0A&b}?vJ3|kFKVVGEVIqD*1O^#H0bjuo z>Bsm10wJj-x%Ir40hQ4nOtVXQOJ;YtE>FUsq!!_ibBr|L44H^~ zvClOB==!}XUsquLC%WS5$EC8&h_qm1q1uo1(spbSL|FBLNltYzBbfEtAU41c4xJi5 zE2CtcI6;Ys<)RqqC8{=ajIz-f1e3|k9s6l03PnEEPvOh|s4lO5?ak0})s-PR+f7Jn+oWJ|^)<=#S{St>=O|3RKmt}RNQ!U84kV&H$h<4$P_@VQ(9 z8Yp=IL*&mTJ<-osN_H@2jpA+oU-LQV(LSfB>t>P z!a!J#GuZ8L*S7NpFq;_K+rlCl4#X56M*hH^{1qR}V)vR{rN$fQWd?{((1d>i1H^Qp z4*vz;D<4t&^{<2jA{6-{7QK0|e`%%?8$j(tDGa=Jvjo8FjttoY54L&yH3aB33|qk@-AX&zWbvY4$53f|KF zNTu82Dw8P{_O7Z~{q38dxR$K^<JNBaGdzgJGs$6*D5P1UT*c#6WZF=6=A@fcEIv>w)K9Rm)tW{Cd57i%y z5k?X4Lqjdljw*bEy^A8M@i|U1fql-0 z7X&rI8s~MitGvg*GM>B#5O)jz(2So#sqB8M>ty4%bjU#GkRkKcze%q8C1s4XwS&9o zDS3@X(9vFockt(_J<|->4JKBMq_hm2pHZ@ED#lFrNg!H|lXj*upa+g+z%0ubR@M$} z?mldM?U19WU^^RxuOHcn-`dKaK)Q0=8&!c)PF;XkpWoll-^YVplaBKD+u76^)UqE& z^k$I82yvVSh7*0XdJzOcoX*$iCZABEZDH(6F}ENMaVw$G+>zWZ!r7W>2{iTw&}@__^f@f%F68RKK(mheav)p$zN-h&)p}&e042R0gCf#GeJ*{ z6#;Gsra92Uj_Nmu7Zv`9k#h7=~$Ujc1UwuF%#24k;Yad>Daj!3GjY?Nk6+?Q*jyoF^P+ zDN^&Y(HZ^5Og-L!Pt~6C%Zr$bKA7q1H0_2ZbZYdvlf22*5RZRIf0w=R;EC7vK+Uq9 zA0(}2+F8@R)-RBRQFB5ht5IoS1(T<*vVsv18M=z`_h1FvUs*Hc0Y<5GF@ptcKbfoK zH!1Tx)NvTfv=Uw_#QAUrvSpj0anwHFJy8KU_OfG8CLkx`EK9GwvvIc#?gs%gYENI? zRfW&7b)!}<&8$Md;*go$%F0XGpYP|&qg=H>X8qCn2#8ZDbU1FvXPFX5{;8HkE=Gt!hLC=lm_Vzu7roFXN*)c{p(;=$EsC$yD8o*%L zOP?-08aU&*tow+64r(2OJ9l*|^#J%9!J&WtVY<2CjEo9!-(LKXP@clR+hB~yY zK3dk~qle+ymgWZ}m1CizA|eP-wqml*bKxe|Qac-kA`a!@PpX&gJahY-y-$A1&T}ne zH^-f5y!I1pF7wzMZ@j#0yX1qS8KfeOWRj4}3q=yi)q$KYbp9$Mk3dY#9)TlH&OjVI}8;Dsi-cT9#qH@JoYeu8IL0SOcn78aqnsD^m<`)+H{mFwT zQ2oqt?#`WCXD)ZF zPkjG4!x5_w2N5MSf`js%s;rTb5DFI=sbiQh3NjubgN(O75qJ>gxuejdkV=NNi=b>1 zbo{e>o_ucO@|uS6?=3y`=|&{r&)D7D*YC!^P2YDf_Ls|7r}0DAG&MdI!W$dQ$~TX= zefb1Rf6cXJ;EONMpY$ec{`bd==N3;Ovm+m*Eu+2*;42N(MXGo^&qrsM@CLgvyTop5 zgX-CvRfrwEBXt$_M-cJbIaMX`E7xv&Z);P}DU8kn%Esi0|mub%z$or4C&M!1 zK>*Sogak1E2oKky%#AD?@SJd}Vu@UIE}IZcZ&u1(<<-@P{=Q(-?k9iWbhWR@Z`hd9 z6dl`jeg9J@TzhsSu4nd#Gtbs@7hcD6@i$L=eE2vjdgo&BAf!QTti2#K4*%^z7Aivt zNb@qjxdUHSkSyrf9YA;Y^AIIB5A@rUNzV)q3hPD&K(}roJ@g?~O=8zXXhK(mG0s77 z9USd}KRoVRPNMp@Ai#tZin_HaGMH7XhCcDx;z7Mk-3H8jd&;cGy7tQHg7W#jHDlP)r@mfbEHiJ#x1N3F zB~7swJ=ZzQg;{pjugeT&rkyC@8TvLZOAbf3p`CZYLh?PdGoJXs%yIGY&?0?&SUl^? z#m5Kv`H28-X`r64NBY3r$c+kp=%e_V(a?>%Yl_pS=f)3zqG<8@rE|(Fs^4B%^kkRS zTh=|lXl?5RE%2Bt2|Qolv{+8<4QNWcB3a3;5pMPZ&ps>GYH~2 z8|}IVfBjBI#rBrF+}nJP#3+KS0X(=f^;#qNo~)iHTHq*@{9K;M=X4yfmn*KsM3v31 z8BjE3X+^YuNN8@w=s|_^_cRV01z5d9-uY|Ghb8J#b>5rT{`hF55$YrnI{a_Y0xO(l zba1QI`ywARp_uWt%6B4~vz18BVwA*-c$6K)p<*S+O^!Qq#@G>a{Wgkrbh7l@@!Ns| z2cn-Ee&F_m=QV%AUJ7|4ycv8f&0p`-rp@Q902+^&T(XNmos@|Ysew!#X*gfKs3BD< zX9{XSknV$MQx!YCX8d>6Q(Wt(R(;QB;0Sc%!AX{PHA69N{T%LWHag#ilGh67gvb;q z$TF+w=UMbMl6A+(sDlhlq@A%t9J4;i<^$Gy z(MK_p%77cx;*5AB*{o$lsVRz_V2SCO5Nk>kGnO-Edq{cGdOT?K1a zomuynxoF1PD+@NR;rqto87J_kyRZfQsQc%s6DaNlgf2fgwD)aaZUeUj-*-J&iu604 zKc*t`Q&fH`f2qW3fH#qGO=D0DL7~1;dTXRn429`u3su&ahjJT80TGh$6ke!3&%s_> zp*^l@{Lp@>tXOzq#xj}kU_zQqc;Mn{`j)8hU^K>Wc)oM`44M1@F@*abgH!?J9BniQ zm_Z)1*-sOoCkAJ)Lj)@ubJGY?Fi7T51R0v;S2FfF+{Ik^Lv?a;C-v@M7Cvt40Yl_e zad7TPr2nDx!O7d-KYx98LvA(F5?^=AFXC#bHG$Nc;2RDE4`OTpfK{6UJXPU*1j|FL zTM3>v<}@>}-4u|QU;FmrsOkzr1GD?FE&^&MzWn9R@m@# zDk~Azsa!Us(28iU&U&=8PVYVzE|MOs8rnaVdz9eStf6iwbYN z|JWPkj>Lr@OOJY*txB8GrBa)b=m4OYw+Cq$LCHM$8f~5 zE<}J#9Oa?`D<`j2QR*8N9B1{&sts0%$h<})EWpk-QaQb4;=5P=Q1RftB-qL44uv&V ztOXzyy5|a5ibC{eZPC@*iV>=1x{Qg-g%EINMl zopr7kyDjXJvbg(^8}Y8+O)M|0T-~K=a!~Q05q#mLGoRx_hy1P8L81Trx;P^G;67W2 zLWfmD&V0GhPsczSE8`${B$M9&AotcoK!}yGQISHt{l`={-n2#Jnq(%|B!!P}ox=xS{@aDro@BGZ5#J)eqV4$0 zeXl;Z4JE&_a}UF|Tx+?6u_|v1J0z<5UVL2s%dNnw$)XE<2)py?e zcv`B0k52@q9RCqcGg~mcHm{qrPeJbplQyW=Kxg9UJ~h)T_Sd4l-&NKeTl^HVo-Ic= zV~d++4C^2k@>va2C;40ESJiGV03yPhtlx@;)95{U-+S5<@$9c&h-dDY8_@!*W53K8 zZGzqhu_&iR)U#o1BFp)3EUV|41gjn{1A2ph$N+`qjr_DjnP^3p5Jk_VYNfp%JX@%2 zgK1+d0huu4HO_Ef@umL&6WUvjCua9a?2$UMB;dI9=#&pvL|0exxZr~i3jVV&_RfMi zB+q)!M##aQJcs09A6Wj=0qlU5k{irgl0$;tk#b00^oU4g5IHe$%iv@hOh&lg1g+6C zDw*-n{-<1j(rKHvsg?Zj+G}Sv-`~Ar5-@IT`)3ksx4M2&Z&;NzCug4JtJ5E#;Rk^N z@$yH7sad;Tq#TIu%v5^j7~wv%P#g=98RUM=KI?@F_cw1;I0=bD{!SjXxNnDr5-(Irs}2bH#Kt<**C%Nspsa$d(w4isRHBv~=WIjGkGE^iDBKx>I~YKM#@-$e228p=ULovcg!b z_7Eu0ZV1tvtz3}ZxApoBEha%%bfO95sLVZ*mFoBK($eCd52L0k!V}SQ{`p7pQxUuM zF7cYoV5|~NDxO#$Wf}*PZ$tD-t~hu5)E2q+;p<>%5{{v0+yr*aWAYuTMp!15Ao84* zhXsY#dz3)kUQmny*IlZ-g|=o@aCe$bdbXQgIC(rgbiOmM` zEXXE5%ZljV^bXV&4`C0soMK{`J`6zvP%(X4erTBir7q%5q8pSI+2<%jvd2lvc5EsQ zzfdjX<2M%#?7JY2J87#zV#7rI^V~My5!CP<((!h9-T~i3*Z72|3UlF0!ZBMdelUF^ zGD5Ra%MN^xxevNmL$;K_&}^wR_m}SSaa)Q8_FoWl$37O{ojCU#g%}8%e1jCVRBm;r@e*cQ^j}L$uJU4z^_#zQ?9eZ5V->Mkg3S zBgsV6=yrv&Nm5ylb@+<@F|aA>j-3=W8TmEQKN^vK8tCgahT+aoberf*BO~y>q6+c6 zMy2A^3}<2_V-royC;tceiAzIB69|M3cM$J9+ko+b0F;;BP><^PFw2AUywfr*812Sm zg30>fkju9+eKNyXm59_nCO@57>&uDIMLvSBQKz%`LIkTx&v?}4RcmYADtGO&2;>cP z7EScW&vtK^iue1YeCJTS-z`r7-j#^X`%m-7^=J+JLRl!9{CWnDBX3><`R=h=b^&*e z(ZC4v;b4S$afjS{tS)cp(kV}|2UcwzGNfrQLy(AC?(i3wBXHI;!bFK>jObg64`Jl4 z)889fzE>ZB%uSB6;3U9$F#vY>giNc`(XoSSNI-x($7IUV_f`jRB1^cQ2u*gfk+zon zDVfa87S;oAB-VXsr8Li;AE~^Kv#9;Il+T2t57tcNryi_2ICa|W2`|;nnfl|9Wy1<` z7C)Qg+UI`ryC3tH4ll?lT$Gn14uv&;ZgTT&&u^^5u9Y+CC(~+)PBFI+ou@uW z4c$ZUar-y}eJxP?MG-R(HB%M{K&86qXoe4kXAWHIj3RbOiQfnx*J#IYmIJu_d@y;p6>uVy8L% zHtPyGCtB9aS@gn6e4AahpnvvuXK&mHHDxdizlugSBxVK(>O3H$GXiCsk5PdCA)Pz@wto%nJ27h9UoinI#P~r z0|*mJD)(TG1B92%M8Am02w;uVM}|daL=K7MeYi+4j~PQkLk5@VLPPB`mmI`DTJlQl z{%x2nnyM~iV z9~nOC)JivZrr_IxsvDGUZgUy@ec>(QrAcqOBR~`!jr{M(WM@Wo=pe>-jJ0&M3@+)| zQ4lp;UWrB{3jU%ouS66h0tb~u1hl)?DOd(3DgVSkQQaw~yA;cTR1VH7vqPaP<@ULD zhAo04)P_&~=2{oj{4;(%p4)H!ZMeN_pUyo4L$bPl5S+h8x4r^6O!KkUwNE$(=l zB9rTv0^Bqqz3)Jix=3xgoWBrF=x4+&WF!uSlQc^sQSvh5McN~rJ~S+p_2EK810sEa z6lidXIv~It8Oh|8M5@d>;QOP^`t$yYO=CPoUUyYVKzQGm`` zao12E^ri(DA3ajPYSEgD-yJs`6haS}5063R|JXMtrCO-__3MJl#)5x;-Mu^w*;|4N z#?LH3MigFJkWZMh?lX*VPSbNWqKy=B;lT=YZZy!;Jg8|D{m_-)95?CP|q z$Ip?bx~pOCV^iLl96U7m?G*=O3!--}oi**v+GUMX-m3Zcu)?A(#fK@6VSURTu1+{d z?wep~GDYdb{lL(vHM3e)Yi7i7Gi7+7qC#7JRpADMDn@S)v$J-)R-@vO z=%=M|LXxF^G{_8cQ{WCVuqm?=LQW1&mz<}bz3?w?KoEX>!pRDhG7s%Xrm{XJwAmOp zcV+3;%2~_bM9vYplNXofOkN;lT)*604~qUpFx<~AD&mf9d~C+au^Sd2zJ>3UOgOlv zYTPSCyNB7^!kaV?*B_#n^#+^9&!Xm#isOtro?|30#s~Ifr!!fiWC93o;+3%zCN#6z z3BSN&hOQS~Wi{8>;_D(`&~*JqQxPxTVsEoc^7CCy?AWuohP~+8!Db}5pMx@OIjA4?g%r1&%BTbkw zvOAvnb=l*;KehGWE1J(F?JHRF#;}~qtDDkx79X1H*o1^87B#M7cwHkU%4W;^{MJ$oN?x|i;+#t)uYzYSz_XX-NoVelXf#~kmYM50K6PiB%iE{Z6EW!Yc)o%DV1gN`$H zn1DGhB0E=j`~LF2+5Dx_51PlbW;U6u#}_aw=-gT33?D48Bv7-pL?cki!4JQ`c}+E# z99UK1y@RUP?&Z;w5N3HY(tSykKJww@{BQ<@VuHQdip?nq!8ngVD8gFAZgtJ(jm-<# znXX3eDrU2}Pq;Bz<;|y?v&u=i``KN5BF9tyJvVN>1XT~P^aO~WoTVT}e80GeQN!34 z5y$gt1YOp4Xsa0s~=iiQ|lTsa^l31x%KJ2X7ZXzb7$ARvV6sny4mw4 zlHV1RCrz5%STT0iEWkRbY?wKYcuBE^y+v;^+E>jwl|;uwclKnvRa%7=GBzWsLeX71 zbnZBI?7EG8)4C3Pliz@rXiK##cRXM}eAirRLgAES5bflhypFLj9RQo#MyZN3eRMgZ zA=3cd#fF&hf|8iyE$?R<;LVtz%pl-6)CYwHu|aTumq_LkC=sFjXB%o`H?uMK2)^Uw zhHjG{>sMbgckGn7H3NGh{jqZ}QsIYXSLe;c zXHoe!?8AnxAJ~L?;9c9%eRLgPjz(eu$}T`jvG{HQ;JQgG?p;2SKf{olLtv(_N72uq2Bz^)rW=Q%m+13;Wjqk;3AsWa4V3AcIKih6YzAr2QPzB&NBO< z#Pl{Lid?wBBXV<4N;K0V5eG#c;3A;BP0e*I6gVA~qjeK-d@ioUzd(UdVk5)A`gWQT z2-5oNK7xuBSkQ>HX-d@SK3pR@m4r^?^dz(%ufhN)z}{fLaRs{~;CG#ClWRM%$%xp( zhl*jaP7Y!z_7Riwv-|x-`hGr}=6;_+Xd-_VVvz4K1_?z-M^S_b;tq0qa-DKmC3nsE z*5)Uc_!X!}jQ=)BxVLKa%&{?1os9hloMjNTGq0f-#l|;$^q#O`o~U6Y_;g=yXJX%i z(Sb-)fq$3bQ71gc|Mb9zAaEhp!k_0XqUDi%kCvz!ONGyx9$olvJD*Lp#D0-V#@IpJ z6CG?>LQ!*kchwfh)bWFKOWdXIP>%*$u90~qeHQX^Jqq9xry*Zb zKc0~&itr_C%wKxaQyS}Jufm?FWdaFGny(+wV}|jT{1QGwK}q|Q>oZNJ)%KYuW z;2tgAnEAtp@#oLTSK`&!wWi*E@nxA5HkaK4yNiY~65L$Ts8b=hwB^Iy&B&=jxp1a6 z+D95L$f0t8Z;iw~I)DRQ6cM{&Nm4-)o?}J#i<*{QNssc?RO6dm;_cgcY#-NKC}v%x z;W13|sY}^3_8i6N1-r6YG%`lu0)@fiZw(cF^Gigzjda8H3O$onHih?-UK&%;)@e;A zw>>tzdg{!_iwg2fBj%vZdi?6pOuk}f!S2Wg??kwB5>Hvz|<)do8^yK8MQQgK29zi4D zwnLBHq4q!#9~{Kya=}CUG+$;orjG5&UKGyI z9j*(Bo$KIl5_v7dMCAiLrZzOcMC;K$duwc;P4T+O4nVWm>ZLGCG}$zg4&AG496Ku` z@A>5umpoSAD|vlrP5p@6(y0a3VWW~WhYv`|70y(b44Iu2S2bYT`stOG3p*u_>Q=oF zCpfBy_sJVGq}O=#?2vw)hjofb?%yRXQyTRt>_^Zq{t`>9sMf2)NWa+h`T*#WP}(~W z?H4nh_zqd})_}@bH&M0B6IP#!$lrKKe|LaV|ry}WM{^g_3I#L!1O6}=vNk>nVpfGeMtr02C6krdA zU4;A~@&32<>G7Nlse=s1VN?2e4HTIpX7B$LHL@fNWV zCB83whPu@K!AyN$(4DSx4MfHVH<1qihIITJb@1=ODP(BwGIc8ZJ~A{SNng2z_k`W5gG-8@(~t#ikoUFym&%A)u(KmVXy@ znR@c%RQ&nLKUkD_s;=%7zDQ~i@zkmJ_ahz4BK`fIb#-VT)SXMJX--6jIY{rSL56`F zcI?=&@#*cG&YbyRY`@`2{nfl*|8B!dP-SFzWXP@U3DLRuzNT7Tgf`+CV@O;_AwH=( zAX?zBP^JUPT8NAbwSbv9G%iwL8Q6K{o=fWD!wI0oRxUexs#77qvvMB1(H!OuHWxM* zasTSrXTrd@o*(k&fP!768NHKo3VQ|($nHBZr(aH%2s@sP`?iJfQ>RtbbM-IcEf3~yST^B_=lTYQ1sn9GL4$kb)lXXAf8_X2(6WELdScTX zf81#*K-0$0Pw$ZV#b=8^E!1CjS~yMfMD&c=z?m$Z$t3u~eTkP^C}-=Znmiy&MV1&- zIVZZa@Lw~ldxga7f`Y?()^7iB^yJ#cpQ_kpKckgvyKA^&P3>DcL*a<+Gfv$a`>-g5>wKTX^OnVGugN+L@gT)QbMxI zty{EW@yeC+@o%~}`S;BK)d$Z!wWw%@xtv`c?iz-hUoDvF=s7mkG%S1cQ>B*I-#COu zZiICDti!X8;kR}|<}v%sd;9PS_}@2>oosF%7c;bS9SU&gD5)CQ7$#Bnb2gzuFV;&M z=SaPaL*yr>OQSAD;cs%?_2h422Ql}gh)LI7g};fukD{rU@CDFWGuX9a**qLf{U1rp zA{vWu&UF{nwJf1nlEJT7IdYZp1r$|I@001{mjg$?1m~v-e*!6q>Sm6usH>|OJF_G! zEj25nS6UW+w`}snve6T#ln|)X9{u_;ELzQ%a<9P{Q8NMHYqP7gEXT+eK=%nT7Unn| z+ID%HWmnbqT+!>9?g4oDOiNm?kkI6q4juVrTc3&;aVV*x=n2PYz0+c`28273ddTN% z&>PG-Zt~Bhjf40G#{GVy$NTyG0)~;0^2G(Bg~l$xxz6Zo)$zW*b_$NKBy=d8{nQEW z3Ct(qiQ3^hqgn1s=eCw|Dt*$ZGYEzm!d1Lgg^8)CbTo=D`y6JA^9MsDjs87nE zxXa&y*%e8ogzE{bXQYrSeK28CZ!cxCBAK=I7;N`MzGqjRs~kDjT;tdEb~KR25#0Ny z6o`AiaFt`(G}ABTBc~CjI0@sv$P?3^VGu#277tS-0`Q#pAU{6X#Q6b1t)Hwm=ZBJ2 zKqbi{syNVHxX}$l5J6^}P~T~MqrFz^c<1SLJ@5}d;+&v2C!DmPqSH4!Ul5K#T=GiO zu2*7QrTDjhp$)@lanqWcO2*)GC%@t@f(#_`TWI8OGZAo#GX?<3j@{rJp{JZWHam$< zRRn1lGpmRtg`ac#9frHb%I4vV!1i z;3<+ll_^3$^NgL)e|cRKW#M z8DMov18cUwA+SRSb08BI7zR0_fqa)3a|{_%=7;b;P{$mJT$Hh!JgiOz6Qg8YNTZ%$ z97^s36P={TdXDbgsc{7wGWm_aKQV2iE&kPsZ+v(F`M$Ees(b0!(XVbAhJxm&fDILR~~aVSk+U4z9$fpQtJuS^J;6h)3TeRZdan6Zl{F&{jNQ^RvI7ElIt& z4aK5qI}W@|#%Mk0Zz7G53d+=qR-FpzeFeeH!0;poPq2EEY2u_!NAHU1uGJHyklvJhp}xu?Jg7ylmn&R8Y<XUd6ytGaxF(oO)P z#Z;jVpU3|$kDL*%Kw4B3OId)Qpw9aUvIT=^G+qHel!+n|2a3M15ZZlx)joPPQ0$Oc zP$o={nrttz;2nYc@DNIF|7&N|_`B&e2G8CVg?{{qXv$nC97Qs4*bhkECa997`0kyk zb=*SMZLR3b8Ms_Pix5Q42MN?~C3$HX*<)pP$oR7kvyKG-Rf11ezGELQssr=*y^5y& zdHTZQax}pa#j%%N3B>2eUS{*7o_%WP#ZODfIp#K(xiJRaai$gwKs*p9s#`h8$hhdcJK>r_!o&OZ>H3AB#@IA;HKIlzO|<1LoATt@1dL+YGxDZ8UeU z{ApaQn`lAyf2jhB)8?XTSpnonLgtfT*OII$ ztVh2p+G;t?FhT`If~8n?wm=~;w?q>z2r7RAWAYIrRgol`QAygCR3;Bw2jn%TA!6(a zW$hp%U@lQHX}B^%5$XTUp8RAD{?WwUx47=sE$X8Qs|{0komg(zSGmhv**H4=Cc6jS zZEj|nb+dYLtbb{d>l@Xe$DhVdbY*s3vdhHY=~TA>Cvg2)e*q021~377Q0{v zWUvsB)@ER=K4O>(qRCbI|4mvcPfN#AQ7b>`K55egj5XW>EiSK|mu*TN=d{n;G;2)b z^!ibq-eSk26|N;{YHf8l6>7@L!b^Pn0G~i$zt3&JCsEoH)vW6>o4~~u55xP}CNy0d zgDRrcXxQ1iXNHD>0Y?}J4hxM&<)`Lsp$w-o>9uiwaj?BAx>b7J-R%*?g6kfQkJd6e z{onW@shD}1jLK!~_xR5LpzjfN4p$Hi)3yHxrL!a#O@O#wasno82?>O@3@9-;Xj}BQ zU}%d~uZ{ML&MEQJ|9M;FvD>Z>9FcNMwC5cCy5M6Cu*8+KneN^gJ2%^sQb~HFvAof5 z`PRN~vQ<)VWE6(EZorW4?e3Dc6=3o`NG0s{Rh1}cw0{S)A_IUowjz!mgnC7unO%% z5fY|Jzpi<`GQ^&%!mK&V%5!4<@>Qh;_Gjl)1e7C7KKs$?o6)ChPfi;>HIda!DjrhR zO=lRsg<_NACN5scVFojmnccDn0RewDQBHPGUCe+Iu~X;HK)$bu*BK*)&Yi>hcI(+Q z1+GUu4Z*enCBeagVPWP0C1H{7agnGTEu5xS?Ikc&twe)1&-_(4=|Nhu&09N?hN-R< zRkznPn^rMl$-I*Bquw~YYvQ_Y`?CgDbtqfa_vzeOGqTn_^WnzDPZU~8pL({Iro_&A zB797Ed3qjbH_{OjVTq~abB&8flPp+ML)nDKi$a3>_AJ-17JCI~sG=~dEIl}~e(Kng zvU!te&g?+H%w?h0td&H&gT<1T7B|W^E20`|A&~Lo;PnbGjCvi7hDe1xXE-5_4yp@c z^+6dytS=W71j*ZQt<&;?9t=9>wi&>qWoL^AU_Hswre_9v2udS2;z@7d2fJMOKX0Jy zzurTlEBgkDcQ%Kq{*D%0$DcU4oBS8tx_9vA|1LuvksUGUm4D$Y5B8xf6yK-Y-4-Dl zK)SxK|NVD{b7zqmahM<@1#2v_5)@3r2EAKdx*Qn#-70QdIolUCe)Ji&CdWPR2=fH$3G4%(r#pf`MZcC!}r%}SY zbUapJi&_u88Ow~~!>CVm7%SOk_6YMRCw3QRP^QC?7$2;$^Lk5|CDAg(!u#+RV_>i` z7|!2(OgtYC=Y!)d|9BlNRw|xe6+IJtq0<$tMnq5~rL6QA3Hx5=A2CHo#)=Z&r1VZI zp@feXg?TUHuio_S?uhB`bK=yCsN-pEnj@yC&&$VgVu5YMWn0{JeWWnZAVBQqqF zi~}&HH&L5rS!TD0j?qDSPGj>AN?>|2gBVT^bCdPq8JjH#jK~H@bd+CLzy5w4<7e=L z_x&`QXaIn;Nh=(gl#tcz@wc(H`J}0I@Y97%MoLWs<4_E3y@A-)Y16yH8|*=cQ$1%v z)8#extVpMN`QoOV8}0oflhxCYRPXc8%r#BlSDBaZ&u@y4i~4x`3HCGdbV~YRc3MEy?TMwW~9? zq$@E%_5fO^u6;9^62eGZVkikO;WT_n&%Ql#OZpPZr@rAOdEs4b0paTC@aTahx^SN9 z6wnEPSOVIc31D0N;saRO=?xOp0sjv)oR?^!=!G&`wg@<6OM-+K^H4j2bPKZCkjl}H zzs5$~J*u=;09x`kU$*w#w$gcxZd=0#`1bjY3oGY$Kl!1CC2@YqsoOQ^78lFG!vSg3IKe&FlH!vae z{;zGU5$8Wmjf_cFgk;bjL(@niKu>R?N)&BOd@HFBNg*~7`yaHpd zA5+9kd414;!tRNMFrP9tu*nvtCU(v#NhJLe2f9y8&rDCvDM=^&kUk(J!D0(hMTSJe zr9H&J#MuBk!ep~OtQS5ceIUofz^eog^;7Lj%9k9IitkuK%`p5=nvdkXxy-#|dtZ-0dR%XwPzJdQ& zrZ2-6$;pA|6NugB|J@44sle>+kblzt?`>jgv0fW;Zm2fwlYDI_@&Cm_hSmk`ZGeA! zgNS~ptxPyVE%IQs3Jwnrj|%rOD2>FXONf;F&!)5@nV!Mt zUcdTIYG_k+^;iGBh-$t9i_b!#?joM{>-D>8*9YiJALMW$4SM?y7p!X#)MR zbMTr?LLssE)@wPhe0}*xRxI+ z)OH*qAoVjh^ROwmFdqEFk_fHrXsUT zpxI!LiwKQQP3-6#Q&Ln`S3PcG|MVVx3I^p2VN{$?v~yxvpCLo~ludL-i#~QA=uahP z!f^h4vf=y(kNg2S<)xUe#GKc7tAeXcKZ75JJ5hK=oNVk5#9$5a|)OKr^o?9(r1y)rw&Sdi6kULGF} ze^;{o-hD7q*Y~|4*B3dYU+iJ}O(?2?6!rJT_m3x^?pn!ao$B?bp(LaKlw$TP_K7#L zKOA=n{;o8{7Q1@Ml~XGy-a(K?DL)6qvKdWeP2{yEO=M)?!f>lzU^udne~}Eqju{fn zF2ytzRWeSc!%T2Z+eJYVpwswN0(5$P@6{Qf?>?T|1;9@ECWwt(wn{6BC@x{lt#oKR!K=_g8+GOBC(312%1Bd z29q_FCX(@U@V&~ynkgI4lAJNr^OL_d-+pgi(U_uf)#dn&OME^)KJ9G$r4Tt!%=$t6 zg~Y>)kqIPJFtO}RJd>Fj4Mdu7AkyYUM@Dhs{u24i6Q1qu-XSuQ zACQ>h@5330+H#%lFhCWN+AI^A$wI@u7yb6nBtClDI5f1NlQ`<){1qGbt({Od}rI*6Yu^7KT&=${z53PY4{Si3~k!te?IvIh&;;|zm9KMV)_KvMZymSZ6th~ostDuACy(6=q$Ny=5yDsv`2ZQ5Rg?wN62 z5i*(ZPZL>oDEes_t{UpXQa*IZVaX{m>KOrsLeRryYL&o2Yo3YANWRH|>Rr6+d8I^tdk1qR_+Jj~I!AZy28IH|DLCpWv4d zQ1ouRgQ9m^VZFC_-00;LRsC-` zjqMR0Ifqc-r~5x)HBM-Q@0d8Qw#vl*DPSWG@`QJ^;WUVFx``_Zia8sDb`$FwHwop? z$frBFk{~<6`zNLMnL7$vv`E*zNSKYjI!@3M!T>H(U|>AEaf4-W#AwQ(eBEc zp<}#2zbP)VH}W@(&rK9{k=Eg(V>vYgxP?|RQqAQ6&XRW>O80w$Fc#0Nt{Rr*0mO)7 zaX(b2fH5LBhbd!%-8%&0q1B1%b!r}oj7sBYQ1NOLw8@v}^qh=cPP1F=-A6-((mF`) z!*1|LbZ`F>(xe>+Q;Q;4%j2#rR6iA8=~u+DD_qN2DX5+U@HD-(Rf>esM%r##Juv~R9OhWs_B56) zNaY_f5D9|Mg6O(0`_rt&mjvQ^)=2x-EW{?>m)5~Wjyp?0R+zogN5Y;jb5b& zhqIO_WvY4ss6|k#1ru>SyLFK$LqN%h?nEQjB8# z3BdMS2@A!3fa7LwkYVkLrGvb=#X=N%X z0Pwr1Z2Csm9<+(Vj9%pK40HX?YTZbq+#OFucRfV?SyU`R*k*hLjyLHd6_Qz~LV@@8 zVDz9BK z#N&89zES1bB6NuWu(vjdkuXaIK-84#P;&!HV9aYoJrb-MKSJNtrj7`y1+)ejYs+Nh z(hAZbbku^6QQ>K0hS45jRO!$H;`a}Lf;Aze5u(Bb%_ zJ-n{nQQ*DaSrQ?!tE}Bwz=yOv8|y?CS{_bhLtz{T@Ms(dsKwTBz!D4B`$F`&Z_qwVqSH7mIe?PkYZ>hn>M)3;Kz7p8-4%2i&dZ5DUcv(UvgV9bWDY@+|kf6yd&qsb?gY|m|#i>Oy=<*Tm_k=Pqx;!Sx493-X3GMthdUkZKso%)CZ%o{_F|}iE@v{@h&p!NQT22qh8ySc? zttcLG^F+nMzh(sAzVbR0vFX83!71&=ni+;P<$*rZph7#Fx&fl+{kj?~0H(gXltshN1{O z)WV%N;~f0k{&6)!2|>^Uk*;s_93s|(&btFXU0{ga9B9$2&DJiFoL?XSK1Ku@k~-#; zBuNVP;7^ms7f~urR8Sxg6#y9UtSVsFUI@GdlP^`cUzGREuU!Zv>-LFnFLqQ_62RG^ z=cZ1a!HI)EpGAOM3+#nq5#y_druSE=N&~p!!6WcbH(mGHJx$TaR{XXP10COArq5Wu zaM7}P^&x3xc+G@vV=1PqswCT*+7WG=-Hs6)G1IYyyG_?X!!bWF@aa`DsjuXCb|Mf` zGL+YZ_eLkGT|25rk3U*fXVO*oo5O`Xcm+qHulT{Ph*?Xav?WsMjDaApGMtW-2YY%h z*m1NzNKd2K=wi}lBd43UgK{yD6c0AM!L>?*BFy;fg4$x>oJATP$?@Qln#(#B;5xLa zpcnTP;o+90HCEQO}?jB zU3!(32Vh;^`pCLCxvuK!s)E9Q;Kn)V%73aZpoZBv^ZHP78b&v81e?Gba5DM~PRI$; zJQ8zgt70=PYR)fGKrC#rEC*YmC||-9_c%qrmSxnX%#ClpDvoYDk}MoGSk>4S-|41n&fc4R^=2Wn9nPk&A!a=Lu%5Eg00TZWcA5 zjU{{ddAx&i+60jCtZ>>eW*^Q!lCgRmtDL4k=eMDXYR_>aDXKlsjjS+&r;RsJJnaxg z0)iVHWbx4lLicK5rEQalxfX5+Pn{)82Xt?O&SA2O}@ z<1{)c&_}e`!U9w(G0flJ5D*{&_I`lDFHCRnf+CkhqfrkEEIE~_6`7nahRgn2WFW{Hf@v3xeQdjMKFvT)L< zvRFBdh2FN>9=5C&X-kn$SqR}Je?7fvx4mY<1poS)cWyj8p1^auo-AFxq<1yep<7ea z%SV^G2;Gl->pVdDfuS~ouf+mtuvmPxddAo4U0Z}ns)JR*^^#EMD?1j)-p%qW9lNhN z(Ny{Ugrwv|b^hlw7d~#tM16{aa*Oc~-<0whUw^lM>Xi92I#lDolGDo)Ig2cY=>j*r zz{p5W6BGlM(GD>&HjayhCi6B}Ic?_lpj0x(mWiQ^lYE533s{Rp#;X)_xs!yAIm4qs za#WXvo5ka3+jpH zAK3B3t!@MUb3d+2MN%~CjEp0?p)o_VovA%Wu_gF4{^sZ#4fCKiRS-v(3+Dng(}}bu zE>3HX>=X%eu~VlIt(GANun;h+hS(n28j|cDZUiYITHdQ!G9$BBqqzP{ZYC$Oe2MG* z6cqgWjFtEVem6pV^6_QspLq7rDUr0NBD99P|LsYn%Pz#l|3vory552nLyKUq1i^k7=bNn-#)4SCW`xjVD*dpP|+vo6+ z7o#f^A;IVHvxhV!n}FC(r1YFKUgCt<_)6z#trnT_za-3gojM@iy3Fd_hM5OXzW8=U zJA0W3eJ_f7HP3M-Z`VU>#Y$u4UN7}Fmyzz?{ZM<^hE{u-FWlTI-L75@XLw!@Y!C`ZAZqqFQ=w_|HBv=30JFhQr*ycQniNI?IfMd?xzXS>m&W()aoZS_0b$KwC1!& z@W8Cjtt?xa6zF^?7YyEjPT!vYZYv*59o|8hJsCT(>@gN(@a3$W&SE0&gn=b$MHi6t zK|`!PA_yEr10qLy+syIo_09M;oyzYGv5L*VJHHYwJw5=8!*%D+^WV$i0?W|!{QGYU z{kP*^nyZCl59}0OYy;(B3Lp~bG$u8}`RaL%)gBoD4z~bn8wt?Ec$lPt*6=VcrmN4v ztls$uLMAB?fRR{*`69B1Fi|p-@jSYRuqKaeTt1B=*Y}f<>-#d~^JoP-fMK}bRAzSx zOf8c@Bf2?Oj_6j(IO#5fsr{9qPjsb)kWyANjCh1v9agxxn#3^JtwrWJM&b3Pa>mJW zZg@!6@J%Y`07*{KgHfGfnQ}O7YT$(9&qNaT2g%sV+iV6n(C~afoBVwLR=!0_W9U>8 zrc>pN1V=beY<`+A@QyD(x`-~I9~Y@FU--*6v#!+tij2)a{u5OWT7oO_`0d>4|KO~j z4?O+j&E&zqHJ=l(I>n(MU>NtnVwE) zDabBI`bSBnDCd)t^n4=KbX$(}&sWN!jLNi}-O@8HU&`flSIW5q&j_@flkzjY<#KvS zq01ICLr}Be6y?yU{6VAEwb0j3F%U|DK`O~hd*Q?(6%aXUM z-aTJqVsl*2+SzYSTs(W?=*lmrI65{=EPsB|hR2K9r1E02pO;|^^{@w02`t$}0)Kxy zuvY3-e$dB3kCZ^#P^IV(S%9F!mzLc<@Z9Xwy@QsYnS>7v(xH2<@6GHw13JuKIK1QT zip&~E;nivxn{ew3v9=UN#;loF^UhvfG3mnDgnBvHyZDV0GbnITKk!CMkl zy&_2tQzMrX=T*)hVuT_~&WmmPkXm}EG_T0gq_-_avb0dWT$HqXN-CwJREl)QqH!=j zB<@%piFmLNag_7gnCM~t@avaEq+j5K=WU5(0g zgtjjb{OBQ~-QNyTO8)-Vz(84WE zh7Igu4v#1_hwk@`XgZ3UM-Dd@>nE&}LYoj{$4981s7y*^6C=ohO|TF#Rug#pOplbw zJJ`vo@{p`uQZdwOeuP@h{fT|qs@K`foYACXAQ8tTz)4&1 z5F|rpyz^E^s}Y^c-H>J;mXl19^G`jm$TrnNDzCwl3DVW=LAl>3hpGz^Wo(1X+2Ps6cF zpoJGmE~2f6ErBY4+(FBbc@k}Scl?_PSuv)q#|-LZV$ZvrwCU#y*e$f}wFOYK%pBQM zs@aEOReE0F!9gMjtVX3bvet*!OseJNY9q{Y!;j+M%t&`jYW;W=YQi^utEA0l3efkY z-Pm4$$*HFd+B=o9ewzr=7pEmgPPM?PVMeIESijBWh+~FoB4dyvoS^+U%TPG7eg~MV zpWrhef5~ay#x4Iq123VPFK@H!?&qFhO)tESf0xgmJ1A3AHbZNLGY8zkWVCbOj}8v@ zG3rA}WTuai3yAWGf}@~MYm$tI5t!Orr4xa2@FG_u_uWV!vdJz8F=THHXACMU9wn zm(?zN`P70neH#bK{Kuj}v=A0Wh|aUCQ~`RUJ(#h_5r-}pZX^M)M&cInGRt)*1g=Oj z!BH_C;hckw2sgU9kja}U+0E6=S`FOxnzEVm!UvQMjDBq^{@p4b#Lf8IbaQWTd3~D98|t zGI`rPiO~ONy{qUI)Rf8vy>t9nTU{?*84yMM=le3@P`Y7d8y)*Uw=8wWVX}Rr=o*IT z7IyGNeyAj6gx1ebORhme5EmH)hvguH07i7d+FnW}rZA1j_-N%?M7D|gu@d#b4Bbwx z?`r5F;Ci2^Nn_e7H11?zCb0;%d@t^VwIc?02{X(>2NxOuD~C3~>;SW%gKG;j1cG@F zOJcNWZzkkK?zg&8%9vcSGw2ka(AHvDaXAnV8{;028)x=?oZH^kcGzrONYD-7WKs`y z!;VBsQ4ETUGeg9xo(&Izq3Ijcjs}oO*;dF$*%C$0^tv+mmanll5vyYLKw?#N1cihV ztK#svd*%)swaSi+G$TI#+E)uA;S7O#>!LXl6n>%-t}0 zYYZdzRzOfNQv`*;b_fayk{z0fXhjuN#k7VlQNWTybiv#OU&ep@j(_^AYvnOh zo-IC(KRNpM54LY(jXu7`VTR2<(imOyo_#kCA7d?9xaI4gufKzm4|V8K=*ZZFf7E}3=S+l}H$l5=gmV&-bBsx^H<9B^7{~d*g@X?RBS)C`Fi{qF z1wU1Cw5#YJiYHZqrcQ}LL+^f2^}_I!r7vwdv47)H>&IW+-uYD7o`#0kicVhn^6jg9 z!ijH_dKXQ7V^h=WisLUY-Wb(&Tw>&@gRg$=$7jJAtS4xuj)RmVVFK}DoD|IKgQ{;ag&$E zg|mvr`>_mtZWW_=GL+|lc8dBKr1|rbdtPx(bY2aR-(T$Elei>3PiM_9l162JZ z=hXoDi6!23%4OKyWuO5}u~df5vy6WTXXG;ADDovOA;HrotD-YAPM&o?%9gl5FMaNz zGjo9a%nDhbiL{tjNiHbmRFT$r+v}+;Tf`=%oGPW9?q20wR7Wf2jDLhYlf_F)IpZH8 z&pYZ`rJQOiPy2ETRd%JE>h|T(UR4lj>CDWQ$H_}lEQHx(oKW^~S{j*|pG)Ipoz!P> zv`CqwdkgK=@1ancm_gEr;d)6nY5WnjSyRh5d0&_>*{(rGV!Ni+ zZaTsadDyTo(dTJR!U1XJrsj6Vf=y)^CXcXvlC)t|7P*Wk>G(*J`d*kL&$kXJv$0k{i@olX37nE|Uga)~suHN=^u}LYXN-4+bU5+|hDQ7$_r@cJ0#Y;*#;~yoD zx>hNt`Vr++sO(BP)$PlX`h<>;Bzb(Cm&S)MThgS17U%9IIzEO;;i5FBA5}tM=7Lm0%%e)^`?KWj^e*8NDZzW>#Ceyn zh?L+xa$>y8uuEmowduB0Mxs|4!Wp*|Xn-hbOeq0>L=e%X5*S&hvL*q8T>2gz@6XWp zk3e5YD{z|pd=!1Z4xR^gbmCL;JlPP;a6wvu)8tmxd3#l4tmsA3H)$(ROLH|umQlhT zr@9{I)muo>HAMxdx-O7E$+KweM+qriMi=+~0 zJI+h(i1seSE|o!h>$+4%tXCPdw+f`*3hsDB4@2lAfn+IN*&9E`5{s)+qUjM8?|#DV1TD%Al>(N@bY6 z%Aot@D5;fOyjt1vJH9UHNGqAoh;&RJ<^cR=A6x>Y^$anB@@(r~(}@c;h)I-jT^uqF zqu~Cd`S;w!$3vTv>d~NqAF24iCnS6-lVK5j4hPtlRgP$d=gP%qyqGlDFs6IdxY7lyqS3YF zy3j>w>r(sjzr}9pp0K{RJ*~E;+l}bPgs|>)p$ywx2l(&?v5E14S|c(|RzEYtXZjg) zc&Hfu<8LO_LZ#;ov}v?Kq+*q~1g`FB^8#mtjfiUSs$bY1IkR(EU7`#q|cTibG5 zyacTc1@wpzqs2ma?cn}x@ej%LwdLqT!a`U!#G~b(jv1YhECGc(+i3uSZIK%EWR&_g zdSGuI6f?vfBSVuqb$Z%M6=>b$i1=b{UN@f}YPVeHRd$do4({dVXlrn!|I2!$C(`LX zr1@*Y=ntLOlRs=P$wLsrlHmzaY}+@u!=QLa@3_wCwmkEs5y^u?dL{>V>S@jo9PcgR zq)59hqHDkLlcUVBmL7ekj3;tN@HblE49@780D|>s4#@N|<^(W43$-$T+uzAJk!=Ji zX-?^u9;*zL>mh6B*3M+Ja*9Sw2)Nl{s$)^-^}YKDXB+Fsmsu_Sv(pDBh0k<`B~OoZ z*XC%g&0-+6K~6EPO&XTxA5xn#TD)p|vv;F^y`?nXvocG}%!IInd5$2ZHWkn4Nj~AL zW}7YWc*`%DRv3_hVVQu(6=o&XTlHRz1@KgGIJFld%_4da4KG=Y6(huc;@(k_$r<5$ zJq7xtTfRP_+;>5nv#L!qBR77!&{pmYn<$O+0c? zcuAw_kQevx5#cG?y!PV(wbbKEW;??$I^eQnGy)Jf5HW!CDb^{ov!&U3&I&I~sH;g1 z*9GB&yQ+rP52~K4&(grR?bsq56~maGfQ%pF6bN}=XC}yDHCVGtLJdrZZW^rya%uv! zdV-EF0oi)t7PM0QQIcwfPMJW5r+K~tn-Nux5_So%mUKx?Nh~f4xqDuB-r;y|81b3^s)5;j(f&?&5`To%1{4}9nBGIvBg|!n7E8z+fTP^|JJafL6e&H zN`KVN+dJ$*>GSL4&mWZT-o&s>JbPV$coQayNdfeCgEO{MbW(=|HD~Rdzy(=(>bW!k zz7%w0G6f#@Vz!eI{%C95>5ieS(2gVcmo;;z4jVmoR9Qydu-wo^V@f93BC6uE2BeLt z$csS7JgI}Z{iCOZ6gc{IOX;2v;mqhUq$VuS*VHq)bE+dIHRtX_8HMLy3%`f%q^WdI znuB8Lj+urn>@k7tq(##E%xy-_&qrA1qemPg@zFbx6G41LB|b;+>ZKbL>qpKd+%)N2 z(xR94O2LDRgX{0{L_^D%_G}&O*R4;W%$6wW3181AZm7&k8MQ6`(mhSS!n*6pR@s$O z2DD^KrRY3M`9@r!Jkhr$ReD0@DJxP1DNpokF?v4%Xd#tEE7B8;h_VwIx#Yg82<3bI znd#E^v`Wc%EB7O4Q~I8Y>4@%0=N|axcG1Sf!uvbucL%z@ZrQ@9jv_S!JjQbAv`&$H z_kY*M{}113U&gPhOHvv1PAbQCsokyYfWSv(Ze%^D=``&(0Q57PJ ziK>cW4Ton;96IWajVy>7iBD=dHtD1_6QWaBm zWl>$#L`77DiK(jSvU~RYj=X7lt?P`n9?yBtIrsc|e!u5;VoJCP0Hy{|g!dF@)hc%U zQ|K~Dj0ZKC@c)laZxUryjijo!{bm4L9GmfO**SFyUEU*fsS!KPzN|@laq>x`iKr#c z6Gh?)A!BLIPk4{)9k$1af{g3ePz;tZWRBYja}^0Qfui3|K81w7hlJn9?{5BXt-NI7 z>?e1??Y%dthwo6K|8yEvgA;HKY$E2aszgE?&LJ2s=2anmI26IEw_P$O6+pEb2; z*Y!4LE_$0L#r=lSp$Exq>#vYdt+v)2u>~`T4)13{c}rh`YX|ocm44IDdkxu#<}<|A zuZZeq)Ttx}IF{1GNcscF=)7IjU)Ym+&~B(@G@GP~s%3khcOTx<-LUthdSR-de`-5=WGd8BZ>~#J! z1g+G3P;`G0qV+*g??kA3B_yB7jiUWQi1sFHA3EmU+@6)pyXwK0v&+X6-2F|~X~FZo znk9E7hhECvaQAUM;_le`{JwTvSYN}tlKYZ>F8`T>4n@%?Wc%F<-!phy=W)_oK$XPH z?NP}JpZooA`?~m1!%7Y|F&``kHpn! z8RvJ0&4qQ#)Z1<6n?ANPM2+1NjpSbb9Hyma`B|*`n>gm~I>5D~XqH%UzfVmX*sHTrO(xY!&v5Boj*iR$K5wb_Mtv*%}}2l`wJ*Vs6&Knn{C_-K<;z%t0P;|wk7B9 z6Fh$d?>T`^p2c}HXtX8$n%&;76SLI7*t}ndMze^RyEA>_Y6ok8)O=S%))AMQ&OK7p zeVYB3g2&W7jV?chalJu|p(+TtMz#H!dpVEE-g+2u$-U6y;%Wb$%?HhhxjD0Yd&qfs zCv_dsF!%Sl(hK*|8d*S_fbZEG-YJYY+_KZ;k{ZN_Kp(PWdK=#p$8{Zc{8hYtXay7Q zedoKc>d;M`&?EStceMPvTEh~3^p?C!eye+X&IU0&GeA0$L8o8Fg5;-pf-!#vZw7t% zAn3#g{ui7(hn)DpU!!Ms(7jiiPxyJ};2va{}2%v@(ZrSg+7~ zi%3iUNv!wlN3;D#7402U?PY_rHVArb;5E2WJBbZo_eb(I@=q?u_i|0* z899fdALV(saaETY*B?0E!MJ~JC-j!R9$e&i3v2Old&@kuUq+52K|N#i$h>Z~Iad$p z%dj?^C~oT%k|F=68}pHC=nu!;ezy+n8@_1|srQt3$=vWJ%?*_!7U-3R$Q&B{Dd(M( zcu4Ztd2fjMKkIU_*5uHwr+D@zTL|K|B>r_CDscX7YSu;WCO47O^v*qc_B6VjSMMU` z@A8fp5R0txZarvsXI*;!&Wgu_9YkGj4`YBlNUh0c@JUmypPEbUOF>4HC|H2#c(Sdip z1AXL{ki&iU^{7FWZnM2y%f&wAm%X!6ucT&3eRKY=WS&oI&3;V)5>jjU9d&W3vaI!X zQRt82W&-AvzhQF`scU)aAb+Q4d7dMT*LmuD43qMn zgnETK{A=uV{pY+_PmhLr{v#fJHCO&!68isD9MnH z#-`1vtqsngfgZ`IB$~V(B>ozliB3g1;Mp#K}QR@`zX`9WK&Q{qr+jhwI z+#a|8Z*OQHWk2OGIZ8T)JFYsuI8|o}=UC@f=T(>4#k^jcCg*d>a0Mf_k7G=mmy>?cgE!Bsrvr#7X~2xujCkIO)3dBB@LIlU(xuWS-;{=!ZP~ z4`zdfU}e|@c7;RXG`JjYhWp_K_z=E<-({c7%4Ow+@+SF^d|7@he?cxpBMs$5rBF50 z2z5q-(G;`oPX$s!s#0pMLMwTda!P%rgEBxFtxQvPD-V=UDy61X>!}0O zP3k?Y!8*jj%rV|A9TS3 z6x&b$0KnO{ZN~a3k|L;;ruJ;xwr$(CZQHi3XYcM4R3Abi0F8sDL3iQCFbBKf1l%4T z08fHHApv9%aubEoUg$O~9|mC*HVT`BZNn?#HSrX_6n{$8CE~CJ00WN?W z-~o66K7b!=W0qufY;$%FdyM_1p)_4ID>QGkChb7&NbLh1tsA1duY0bK=r`+k>rd-H zagDfU+<0y}H=kS1t>?CL`}wkbRlXI!l>cc+8de#;8fjxc<2h4J6JeTRT48!=`e^!T zE@&=k?rA=2zG{AI{wipNn9x@kC(IMp3kQTt!eil!m|LtUq9PDQF)8*Ir-*CB>rxJ> zkrb8INJpisa(lVE++Us}?~sqkH!VdhR?B8<73(1D0~=}^Z#!+fY%gK2Z|Cg+dpr9c z`!h!_2jVa~(vJO(mrjRsjB~5=o-3!TsH>ujb2V}Gcg=8ZcD;7jaHri{+?PF&XW;*P zr+Hs^fBLffdiyphC6t;9q40`b2`OWh{mN z*?|H9AuvAhJje$p2hWCbg*>6zp-*8kye3jKvL+;4nms%N66qvj^&4(2}Qgn5_wm!*k?SWZ}eSj$-l zStnQzSwGsE+Q!;**fsl9`$GE}M;0pK>l}8Ow2Q&!TQ4~!;GtdIG2^~gP(R1_zr^5wsCENse#lx`&&%pce1^g&b zDc}!m5Bv<)3A%$zf@?x)LdMYPaG5X;pNbTY_#%6wsiIw@v!XX+d18i`BesWRCizKe zQirr9{fU)?$#}AmY$iv^b@GNLqd90PT8Fly1E`Hg=mffy?xaWQMf!+-W~o>%R)*DM z9oQh|U@|14Mcgh;#vI zLO_ailuMHmKq&#KSCD3?5+Z^Z3B3mCBq0>3(rc(vLDoy)*B9 zX5Mel^Ko}(|MNRLXV0FqJ3G7DD-Vwf%yOpUF-zp<*RGgK*nX20eID)^Z5IWar3i?$KQiKCy0oMR_fGd~P z9y34+V0&323Ih@V6aX@RVtit^IZ&Nh`?noi9}IV;;-}9?tvfq!O_%{RiB}hmqk4{x z%CPf-p6Xx$u3~o&3b?)PM``6RFI1Wpz3d~XzUUPB%X;NCR*p4cYg#nEczJF35d(V_Z>8t&^hQ|C5TGWrSRYMw#gI>vuM59ezTi? zRfR5=XU4yN^`2Bjf-v*%|~9UZPdd~>h{5mf;f zID>YHE|$7lSy>kZE(u{^{CftEgUhxqbGP8lA^3X%(iXg@-ogl4wVF*PfH0)@CpvX$ z`Du{>)W=9U#D;h?k{>tsM7fZ`uo7lfL%ogIT3!yyrS%L^*L%yD)q>a@D|^sE78Xg* zE#o%WM3Yivh?8+2ZoLwhE@4ySHq^p^Yw#e|xR10`M7`os_1PF~rbAcSzV+E0Zlg-b zzVpZ4#?V`)oc6%)dz&L2)zQV6rtpGPJgPjiH8jsOjNgCyUsbvP-tEi8LLuElaYdLU zuds?<-3g~*7Z?xqk$3Z4KPbMBa|v@X0s>*Q)D{&aw0FgsJYjEP;_}b&pdXxdYrP@D zCV9`IeQr$WIzCwX)P!)hYGumW`P`DS(2dj4XAw3?yD=1vz{)!HrGs^|14n4t#GvKS z81wx8v=Za>skcYLiNT}D(1p%^G5{@rFfx(b;Q7aej0z{sC7g|=wH1j#oK;m)c}WxcChYQPfi`$I zz5g<{_|YBN%`+rd@a|`kM+6MV-ROp-iknqx7K%@~O_rKf3A|CBDAupLRzbvXj+THQ zoesOt{eQC`k!gc>nuW|AILM1mmy@bt0}Z@yn+MG*eN#xEzREldsCJzX(b9c&K@&=~ zEPV-KKhWqp^H+dVsEQeBKiRXa+(u?Rtu zCGM5Vt;;&~Crj#9-Z`aZ6F*DMvy3ry?l&)n7Fx$!KiiOhGFf01XW>bFwl-O4lkoe? zGX@ShCqlG|V~-I=&Y6g^@?DX%yd;e^cc1no;GIdY?EX0BRYEKiV$58J?V1o@iSahi zckcQhF3-k2^uB!JXvoyd006LEK|Z=nGPjSP)O#{*pdNG2^eJ`O?^c%>PD=3Oc;J14 zIpnlrc^DRmSbiq0cu8Icms?4GHYFD<&q@Rf%QaV+1?3uDvjR;uXsRS?$Pm{P9|Wm< z%{8EDSlUvbRiSWujz;fhmSEL-cinG9%=1 z5;cRgW#u))lsMR>dno)mE3zD)aQWY~Ld~-R5E2TcyDDzjM4gnU9d{LczZDphEM$-* zZq!1Lt#ukm0zYUckBDUho0J+h)25X|%S_7dw^7Dt$hnV|8vUo&*lrHLf3?Fe%JjpF zH@`6RLCkC{*RFzC(TSQ;iqdkj3NrGy8>{iP4K?+3 z&z~aTem>89zx{c*f4q0}ofXIw?Et*YtGotUiGTUf4~M-%5%T%Kk4(Rv@00kD=Le6X zjUC?Ki)ItHMp^nS3G1Z_S;azOMgTvZjY_KE@iOd!n1^>d&oMl4B{`CxL>pkIUgT6j9S>le>6QaJu zQt$ihjM}Av z`*v>fA4hRk$(qek9}`9z{N!xKc%6qdbT|pJ;BXT&RyiY*2z^okAzXQ_(CE4oXG+UQ z1ra0C^ktuAlJeSafHpj#H(NMaQMVRdQVWzwU(TMG{|2X%dXA(qhssecX2gN=TMGw# zIC!wY9}UR0w5HF*zNGoXorsi&D19<`_iZ>mb__*L)mOtOdMAn}-(`_srGXgEyDzq4 zF!xoEGh8D5eAHLeZE33r_ zf@4m3#B;jnm7&zWgQdKOt8*Og-YB|`jN>xNYE(~*#8wafGXYEDkYQZ2D(mM@z72Ke z`QQpd2Y75X`yOlN?%jPctrkLAgIuh6`R5jRB#1~{=BigyU9@P4 z=kPFW!QCM5g2lU&Jqu|d68k>oSZpiTSeQy=D)>~E> zK;L{tr~GqJ23{YdhOzA9+-Ql9uNzy(_Vcv1RJ19I1m?mbQQv1y&%SeezSW)?GRG*) z#J#8F?R>$o%+ddqHk6e$Gh-onq9H(fak1QZFLPBmoK6}q%yOUhIwNkkV1?lD?c3(@ z4qwi7j}Ib)=w5^>d8PGc*lfWI(|7t-*6Gb@ELE6Mbt~}lENu;%NE_o(b240V^*+Ns z7d-_mRQEmzLR+SpMBF&#QKfz+IDoI6jxQ)bRq!g`!muLWS6$>|Zz6Sj=97q9#dM0u zfXpyKN_FPgP|1+k#N=@#MPGN@w$c}5Um%re?=CAei zIx?`fX#&)?TKbap!msE`&U$&6xRO{rCp#p+jJeX;EOVz#bGzlXrSq2bg9b>zQ_9ud zn$|i>8?U`@$0Y~SZ$!91>+bL+* zSEDfe_ym84X(xxEvRH4pVc(Tzq4{2vZPM;C5$r2wBBr=JJ<#M-Z0SAfG@!3>tL@GM zxGAHo4jfw46{soVV6J42DHDIf#3GyZa+cO!fRYktAt3zVJAA zt!a-Jj3xt6HfVcmwrq9?#jhw5nZ+Q~t-rZ1oX?UAvficxbE{H`vMVx4@pa_fm6nyM ztFEo_eG2zE_;cR`3DgmBxn`ljc>k8y_21PthCd9x@9!Dz?CT!t8qjS6abPi4ma_z9 zrRJsp|I^|Qihl|oJ#c#L;^6GKy0E;ovRJsofHEAEDEHXn$+Z1+r#0|LQ2V>ye<+?y z{R6=C;`@<1^*;wqCWIu#oX($E*#BScuV23TQvJp1_cv_L-{O7$g5~}<*o%L&{;1kdTbA4TpqCI5S1P!Dwm-Riygkz=cQ=f)J41i&_dp zH=d9f?hXpBH`mx#E`bRf!eI6@TwI(_!-d`y0fbqVA+PBb9`xF$iXxc%S)Di%>3HuQ z9xfe*GpJPuTi(gmI}h}K-pMu`YR*P!%#~g(`5G?>sBiJIzT7_jiEM`QewrrCFS{DG zHo#K|VO>?%KDdeUL zKTZScB`XSHG6|q~p0OsLFB;14?gsND_eNXMGtVvX{mg%L62|D}0sw}w1&VlS8z3UC zvpiL$rbH|>+KJzi5>-t%(<`;F%v~@ax^~`@RRumUr>Rsd^$gx6PRyVQS$d^ukIf@Q s-SnppBRgY`UlS_qn!(f4ufVs&rYOUfSUjoKS0NwB0ISlFIso8*0H%Gcwg3PC literal 0 HcmV?d00001 diff --git a/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-400.woff b/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-400.woff new file mode 100644 index 0000000000000000000000000000000000000000..34f3eae8627b57d4aead03e683bce20cc76d3528 GIT binary patch literal 53024 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 literal 0 HcmV?d00001 diff --git a/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-600.woff b/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-italic-600.woff new file mode 100644 index 0000000000000000000000000000000000000000..2eaa468cce655916726009f516096ead811da168 GIT binary patch literal 54016 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

P77-*Qq53(Q%)b}ihYx+ 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 literal 0 HcmV?d00001 diff --git a/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-300.woff b/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-300.woff new file mode 100644 index 0000000000000000000000000000000000000000..c70aae49b7c7e2b1159f9140754a71fcd725be5d GIT binary patch literal 56908 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

uF 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 literal 0 HcmV?d00001 diff --git a/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-400.woff b/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-400.woff new file mode 100644 index 0000000000000000000000000000000000000000..799305af214a8c7a212521f5c53a25dda73e9a7a GIT binary patch literal 55268 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 BEpY$< literal 0 HcmV?d00001 diff --git a/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-800.woff b/bitwarden_license/src/Portal/wwwroot/css/webfonts/Open_Sans-normal-800.woff new file mode 100644 index 0000000000000000000000000000000000000000..556ca35716accae07b0b57827bc13bc503d15f18 GIT binary patch literal 57568 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 literal 0 HcmV?d00001 diff --git a/bitwarden_license/src/Portal/wwwroot/favicon.ico b/bitwarden_license/src/Portal/wwwroot/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..841840dfe16e76960ab521dc6ace6953f807f84b GIT binary patch literal 34494 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 literal 0 HcmV?d00001 diff --git a/bitwarden_license/src/Portal/wwwroot/js/site.js b/bitwarden_license/src/Portal/wwwroot/js/site.js new file mode 100644 index 000000000..ac49c1864 --- /dev/null +++ b/bitwarden_license/src/Portal/wwwroot/js/site.js @@ -0,0 +1,4 @@ +// Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification +// for details on configuring this project to bundle and minify static web assets. + +// Write your JavaScript code. diff --git a/bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.bundle.js b/bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.bundle.js new file mode 100644 index 000000000..d9236dace --- /dev/null +++ b/bitwarden_license/src/Portal/wwwroot/lib/bootstrap/js/bootstrap.bundle.js @@ -0,0 +1,7033 @@ +/*! + * Bootstrap v4.5.0 (https://getbootstrap.com/) + * Copyright 2011-2020 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('jquery')) : + typeof define === 'function' && define.amd ? define(['exports', 'jquery'], factory) : + (global = global || self, factory(global.bootstrap = {}, global.jQuery)); +}(this, (function (exports, $) { 'use strict'; + + $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $; + + function _defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + function _createClass(Constructor, protoProps, staticProps) { + if (protoProps) _defineProperties(Constructor.prototype, protoProps); + if (staticProps) _defineProperties(Constructor, staticProps); + return Constructor; + } + + function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; + } + + function ownKeys(object, enumerableOnly) { + var keys = Object.keys(object); + + if (Object.getOwnPropertySymbols) { + var symbols = Object.getOwnPropertySymbols(object); + if (enumerableOnly) symbols = symbols.filter(function (sym) { + return Object.getOwnPropertyDescriptor(object, sym).enumerable; + }); + keys.push.apply(keys, symbols); + } + + return keys; + } + + function _objectSpread2(target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i] != null ? arguments[i] : {}; + + if (i % 2) { + ownKeys(Object(source), true).forEach(function (key) { + _defineProperty(target, key, source[key]); + }); + } else if (Object.getOwnPropertyDescriptors) { + Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); + } else { + ownKeys(Object(source)).forEach(function (key) { + Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); + }); + } + } + + return target; + } + + function _inheritsLoose(subClass, superClass) { + subClass.prototype = Object.create(superClass.prototype); + subClass.prototype.constructor = subClass; + subClass.__proto__ = superClass; + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.5.0): util.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Private TransitionEnd Helpers + * ------------------------------------------------------------------------ + */ + + var TRANSITION_END = 'transitionend'; + var MAX_UID = 1000000; + var MILLISECONDS_MULTIPLIER = 1000; // Shoutout AngusCroll (https://goo.gl/pxwQGp) + + function toType(obj) { + if (obj === null || typeof obj === 'undefined') { + return "" + obj; + } + + return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase(); + } + + function getSpecialTransitionEndEvent() { + return { + bindType: TRANSITION_END, + delegateType: TRANSITION_END, + handle: function handle(event) { + if ($(event.target).is(this)) { + return event.handleObj.handler.apply(this, arguments); // eslint-disable-line prefer-rest-params + } + + return undefined; + } + }; + } + + function transitionEndEmulator(duration) { + var _this = this; + + var called = false; + $(this).one(Util.TRANSITION_END, function () { + called = true; + }); + setTimeout(function () { + if (!called) { + Util.triggerTransitionEnd(_this); + } + }, duration); + return this; + } + + function setTransitionEndSupport() { + $.fn.emulateTransitionEnd = transitionEndEmulator; + $.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent(); + } + /** + * -------------------------------------------------------------------------- + * Public Util Api + * -------------------------------------------------------------------------- + */ + + + var Util = { + TRANSITION_END: 'bsTransitionEnd', + getUID: function getUID(prefix) { + do { + // eslint-disable-next-line no-bitwise + prefix += ~~(Math.random() * MAX_UID); // "~~" acts like a faster Math.floor() here + } while (document.getElementById(prefix)); + + return prefix; + }, + getSelectorFromElement: function getSelectorFromElement(element) { + var selector = element.getAttribute('data-target'); + + if (!selector || selector === '#') { + var hrefAttr = element.getAttribute('href'); + selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : ''; + } + + try { + return document.querySelector(selector) ? selector : null; + } catch (err) { + return null; + } + }, + getTransitionDurationFromElement: function getTransitionDurationFromElement(element) { + if (!element) { + return 0; + } // Get transition-duration of the element + + + var transitionDuration = $(element).css('transition-duration'); + var transitionDelay = $(element).css('transition-delay'); + var floatTransitionDuration = parseFloat(transitionDuration); + var floatTransitionDelay = parseFloat(transitionDelay); // Return 0 if element or transition duration is not found + + if (!floatTransitionDuration && !floatTransitionDelay) { + return 0; + } // If multiple durations are defined, take the first + + + transitionDuration = transitionDuration.split(',')[0]; + transitionDelay = transitionDelay.split(',')[0]; + return (parseFloat(transitionDuration) + parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; + }, + reflow: function reflow(element) { + return element.offsetHeight; + }, + triggerTransitionEnd: function triggerTransitionEnd(element) { + $(element).trigger(TRANSITION_END); + }, + // TODO: Remove in v5 + supportsTransitionEnd: function supportsTransitionEnd() { + return Boolean(TRANSITION_END); + }, + isElement: function isElement(obj) { + return (obj[0] || obj).nodeType; + }, + typeCheckConfig: function typeCheckConfig(componentName, config, configTypes) { + for (var property in configTypes) { + if (Object.prototype.hasOwnProperty.call(configTypes, property)) { + var expectedTypes = configTypes[property]; + var value = config[property]; + var valueType = value && Util.isElement(value) ? 'element' : toType(value); + + if (!new RegExp(expectedTypes).test(valueType)) { + throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\".")); + } + } + } + }, + findShadowRoot: function findShadowRoot(element) { + if (!document.documentElement.attachShadow) { + return null; + } // Can find the shadow root otherwise it'll return the document + + + if (typeof element.getRootNode === 'function') { + var root = element.getRootNode(); + return root instanceof ShadowRoot ? root : null; + } + + if (element instanceof ShadowRoot) { + return element; + } // when we don't find a shadow root + + + if (!element.parentNode) { + return null; + } + + return Util.findShadowRoot(element.parentNode); + }, + jQueryDetection: function jQueryDetection() { + if (typeof $ === 'undefined') { + throw new TypeError('Bootstrap\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\'s JavaScript.'); + } + + var version = $.fn.jquery.split(' ')[0].split('.'); + var minMajor = 1; + var ltMajor = 2; + var minMinor = 9; + var minPatch = 1; + var maxMajor = 4; + + if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >= maxMajor) { + throw new Error('Bootstrap\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0'); + } + } + }; + Util.jQueryDetection(); + setTransitionEndSupport(); + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME = 'alert'; + var VERSION = '4.5.0'; + var DATA_KEY = 'bs.alert'; + var EVENT_KEY = "." + DATA_KEY; + var DATA_API_KEY = '.data-api'; + var JQUERY_NO_CONFLICT = $.fn[NAME]; + var SELECTOR_DISMISS = '[data-dismiss="alert"]'; + var EVENT_CLOSE = "close" + EVENT_KEY; + var EVENT_CLOSED = "closed" + EVENT_KEY; + var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY; + var CLASS_NAME_ALERT = 'alert'; + var CLASS_NAME_FADE = 'fade'; + var CLASS_NAME_SHOW = 'show'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + var Alert = /*#__PURE__*/function () { + function Alert(element) { + this._element = element; + } // Getters + + + var _proto = Alert.prototype; + + // Public + _proto.close = function close(element) { + var rootElement = this._element; + + if (element) { + rootElement = this._getRootElement(element); + } + + var customEvent = this._triggerCloseEvent(rootElement); + + if (customEvent.isDefaultPrevented()) { + return; + } + + this._removeElement(rootElement); + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY); + this._element = null; + } // Private + ; + + _proto._getRootElement = function _getRootElement(element) { + var selector = Util.getSelectorFromElement(element); + var parent = false; + + if (selector) { + parent = document.querySelector(selector); + } + + if (!parent) { + parent = $(element).closest("." + CLASS_NAME_ALERT)[0]; + } + + return parent; + }; + + _proto._triggerCloseEvent = function _triggerCloseEvent(element) { + var closeEvent = $.Event(EVENT_CLOSE); + $(element).trigger(closeEvent); + return closeEvent; + }; + + _proto._removeElement = function _removeElement(element) { + var _this = this; + + $(element).removeClass(CLASS_NAME_SHOW); + + if (!$(element).hasClass(CLASS_NAME_FADE)) { + this._destroyElement(element); + + return; + } + + var transitionDuration = Util.getTransitionDurationFromElement(element); + $(element).one(Util.TRANSITION_END, function (event) { + return _this._destroyElement(element, event); + }).emulateTransitionEnd(transitionDuration); + }; + + _proto._destroyElement = function _destroyElement(element) { + $(element).detach().trigger(EVENT_CLOSED).remove(); + } // Static + ; + + Alert._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $element = $(this); + var data = $element.data(DATA_KEY); + + if (!data) { + data = new Alert(this); + $element.data(DATA_KEY, data); + } + + if (config === 'close') { + data[config](this); + } + }); + }; + + Alert._handleDismiss = function _handleDismiss(alertInstance) { + return function (event) { + if (event) { + event.preventDefault(); + } + + alertInstance.close(this); + }; + }; + + _createClass(Alert, null, [{ + key: "VERSION", + get: function get() { + return VERSION; + } + }]); + + return Alert; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert._handleDismiss(new Alert())); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME] = Alert._jQueryInterface; + $.fn[NAME].Constructor = Alert; + + $.fn[NAME].noConflict = function () { + $.fn[NAME] = JQUERY_NO_CONFLICT; + return Alert._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$1 = 'button'; + var VERSION$1 = '4.5.0'; + var DATA_KEY$1 = 'bs.button'; + var EVENT_KEY$1 = "." + DATA_KEY$1; + var DATA_API_KEY$1 = '.data-api'; + var JQUERY_NO_CONFLICT$1 = $.fn[NAME$1]; + var CLASS_NAME_ACTIVE = 'active'; + var CLASS_NAME_BUTTON = 'btn'; + var CLASS_NAME_FOCUS = 'focus'; + var SELECTOR_DATA_TOGGLE_CARROT = '[data-toggle^="button"]'; + var SELECTOR_DATA_TOGGLES = '[data-toggle="buttons"]'; + var SELECTOR_DATA_TOGGLE = '[data-toggle="button"]'; + var SELECTOR_DATA_TOGGLES_BUTTONS = '[data-toggle="buttons"] .btn'; + var SELECTOR_INPUT = 'input:not([type="hidden"])'; + var SELECTOR_ACTIVE = '.active'; + var SELECTOR_BUTTON = '.btn'; + var EVENT_CLICK_DATA_API$1 = "click" + EVENT_KEY$1 + DATA_API_KEY$1; + var EVENT_FOCUS_BLUR_DATA_API = "focus" + EVENT_KEY$1 + DATA_API_KEY$1 + " " + ("blur" + EVENT_KEY$1 + DATA_API_KEY$1); + var EVENT_LOAD_DATA_API = "load" + EVENT_KEY$1 + DATA_API_KEY$1; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + var Button = /*#__PURE__*/function () { + function Button(element) { + this._element = element; + } // Getters + + + var _proto = Button.prototype; + + // Public + _proto.toggle = function toggle() { + var triggerChangeEvent = true; + var addAriaPressed = true; + var rootElement = $(this._element).closest(SELECTOR_DATA_TOGGLES)[0]; + + if (rootElement) { + var input = this._element.querySelector(SELECTOR_INPUT); + + if (input) { + if (input.type === 'radio') { + if (input.checked && this._element.classList.contains(CLASS_NAME_ACTIVE)) { + triggerChangeEvent = false; + } else { + var activeElement = rootElement.querySelector(SELECTOR_ACTIVE); + + if (activeElement) { + $(activeElement).removeClass(CLASS_NAME_ACTIVE); + } + } + } + + if (triggerChangeEvent) { + // if it's not a radio button or checkbox don't add a pointless/invalid checked property to the input + if (input.type === 'checkbox' || input.type === 'radio') { + input.checked = !this._element.classList.contains(CLASS_NAME_ACTIVE); + } + + $(input).trigger('change'); + } + + input.focus(); + addAriaPressed = false; + } + } + + if (!(this._element.hasAttribute('disabled') || this._element.classList.contains('disabled'))) { + if (addAriaPressed) { + this._element.setAttribute('aria-pressed', !this._element.classList.contains(CLASS_NAME_ACTIVE)); + } + + if (triggerChangeEvent) { + $(this._element).toggleClass(CLASS_NAME_ACTIVE); + } + } + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$1); + this._element = null; + } // Static + ; + + Button._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$1); + + if (!data) { + data = new Button(this); + $(this).data(DATA_KEY$1, data); + } + + if (config === 'toggle') { + data[config](); + } + }); + }; + + _createClass(Button, null, [{ + key: "VERSION", + get: function get() { + return VERSION$1; + } + }]); + + return Button; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE_CARROT, function (event) { + var button = event.target; + var initialButton = button; + + if (!$(button).hasClass(CLASS_NAME_BUTTON)) { + button = $(button).closest(SELECTOR_BUTTON)[0]; + } + + if (!button || button.hasAttribute('disabled') || button.classList.contains('disabled')) { + event.preventDefault(); // work around Firefox bug #1540995 + } else { + var inputBtn = button.querySelector(SELECTOR_INPUT); + + if (inputBtn && (inputBtn.hasAttribute('disabled') || inputBtn.classList.contains('disabled'))) { + event.preventDefault(); // work around Firefox bug #1540995 + + return; + } + + if (initialButton.tagName === 'LABEL' && inputBtn && inputBtn.type === 'checkbox') { + event.preventDefault(); // work around event sent to label and input + } + + Button._jQueryInterface.call($(button), 'toggle'); + } + }).on(EVENT_FOCUS_BLUR_DATA_API, SELECTOR_DATA_TOGGLE_CARROT, function (event) { + var button = $(event.target).closest(SELECTOR_BUTTON)[0]; + $(button).toggleClass(CLASS_NAME_FOCUS, /^focus(in)?$/.test(event.type)); + }); + $(window).on(EVENT_LOAD_DATA_API, function () { + // ensure correct active class is set to match the controls' actual values/states + // find all checkboxes/readio buttons inside data-toggle groups + var buttons = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLES_BUTTONS)); + + for (var i = 0, len = buttons.length; i < len; i++) { + var button = buttons[i]; + var input = button.querySelector(SELECTOR_INPUT); + + if (input.checked || input.hasAttribute('checked')) { + button.classList.add(CLASS_NAME_ACTIVE); + } else { + button.classList.remove(CLASS_NAME_ACTIVE); + } + } // find all button toggles + + + buttons = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLE)); + + for (var _i = 0, _len = buttons.length; _i < _len; _i++) { + var _button = buttons[_i]; + + if (_button.getAttribute('aria-pressed') === 'true') { + _button.classList.add(CLASS_NAME_ACTIVE); + } else { + _button.classList.remove(CLASS_NAME_ACTIVE); + } + } + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$1] = Button._jQueryInterface; + $.fn[NAME$1].Constructor = Button; + + $.fn[NAME$1].noConflict = function () { + $.fn[NAME$1] = JQUERY_NO_CONFLICT$1; + return Button._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$2 = 'carousel'; + var VERSION$2 = '4.5.0'; + var DATA_KEY$2 = 'bs.carousel'; + var EVENT_KEY$2 = "." + DATA_KEY$2; + var DATA_API_KEY$2 = '.data-api'; + var JQUERY_NO_CONFLICT$2 = $.fn[NAME$2]; + var ARROW_LEFT_KEYCODE = 37; // KeyboardEvent.which value for left arrow key + + var ARROW_RIGHT_KEYCODE = 39; // KeyboardEvent.which value for right arrow key + + var TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch + + var SWIPE_THRESHOLD = 40; + var Default = { + interval: 5000, + keyboard: true, + slide: false, + pause: 'hover', + wrap: true, + touch: true + }; + var DefaultType = { + interval: '(number|boolean)', + keyboard: 'boolean', + slide: '(boolean|string)', + pause: '(string|boolean)', + wrap: 'boolean', + touch: 'boolean' + }; + var DIRECTION_NEXT = 'next'; + var DIRECTION_PREV = 'prev'; + var DIRECTION_LEFT = 'left'; + var DIRECTION_RIGHT = 'right'; + var EVENT_SLIDE = "slide" + EVENT_KEY$2; + var EVENT_SLID = "slid" + EVENT_KEY$2; + var EVENT_KEYDOWN = "keydown" + EVENT_KEY$2; + var EVENT_MOUSEENTER = "mouseenter" + EVENT_KEY$2; + var EVENT_MOUSELEAVE = "mouseleave" + EVENT_KEY$2; + var EVENT_TOUCHSTART = "touchstart" + EVENT_KEY$2; + var EVENT_TOUCHMOVE = "touchmove" + EVENT_KEY$2; + var EVENT_TOUCHEND = "touchend" + EVENT_KEY$2; + var EVENT_POINTERDOWN = "pointerdown" + EVENT_KEY$2; + var EVENT_POINTERUP = "pointerup" + EVENT_KEY$2; + var EVENT_DRAG_START = "dragstart" + EVENT_KEY$2; + var EVENT_LOAD_DATA_API$1 = "load" + EVENT_KEY$2 + DATA_API_KEY$2; + var EVENT_CLICK_DATA_API$2 = "click" + EVENT_KEY$2 + DATA_API_KEY$2; + var CLASS_NAME_CAROUSEL = 'carousel'; + var CLASS_NAME_ACTIVE$1 = 'active'; + var CLASS_NAME_SLIDE = 'slide'; + var CLASS_NAME_RIGHT = 'carousel-item-right'; + var CLASS_NAME_LEFT = 'carousel-item-left'; + var CLASS_NAME_NEXT = 'carousel-item-next'; + var CLASS_NAME_PREV = 'carousel-item-prev'; + var CLASS_NAME_POINTER_EVENT = 'pointer-event'; + var SELECTOR_ACTIVE$1 = '.active'; + var SELECTOR_ACTIVE_ITEM = '.active.carousel-item'; + var SELECTOR_ITEM = '.carousel-item'; + var SELECTOR_ITEM_IMG = '.carousel-item img'; + var SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'; + var SELECTOR_INDICATORS = '.carousel-indicators'; + var SELECTOR_DATA_SLIDE = '[data-slide], [data-slide-to]'; + var SELECTOR_DATA_RIDE = '[data-ride="carousel"]'; + var PointerType = { + TOUCH: 'touch', + PEN: 'pen' + }; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + var Carousel = /*#__PURE__*/function () { + function Carousel(element, config) { + this._items = null; + this._interval = null; + this._activeElement = null; + this._isPaused = false; + this._isSliding = false; + this.touchTimeout = null; + this.touchStartX = 0; + this.touchDeltaX = 0; + this._config = this._getConfig(config); + this._element = element; + this._indicatorsElement = this._element.querySelector(SELECTOR_INDICATORS); + this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0; + this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent); + + this._addEventListeners(); + } // Getters + + + var _proto = Carousel.prototype; + + // Public + _proto.next = function next() { + if (!this._isSliding) { + this._slide(DIRECTION_NEXT); + } + }; + + _proto.nextWhenVisible = function nextWhenVisible() { + // Don't call next when the page isn't visible + // or the carousel or its parent isn't visible + if (!document.hidden && $(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden') { + this.next(); + } + }; + + _proto.prev = function prev() { + if (!this._isSliding) { + this._slide(DIRECTION_PREV); + } + }; + + _proto.pause = function pause(event) { + if (!event) { + this._isPaused = true; + } + + if (this._element.querySelector(SELECTOR_NEXT_PREV)) { + Util.triggerTransitionEnd(this._element); + this.cycle(true); + } + + clearInterval(this._interval); + this._interval = null; + }; + + _proto.cycle = function cycle(event) { + if (!event) { + this._isPaused = false; + } + + if (this._interval) { + clearInterval(this._interval); + this._interval = null; + } + + if (this._config.interval && !this._isPaused) { + this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval); + } + }; + + _proto.to = function to(index) { + var _this = this; + + this._activeElement = this._element.querySelector(SELECTOR_ACTIVE_ITEM); + + var activeIndex = this._getItemIndex(this._activeElement); + + if (index > this._items.length - 1 || index < 0) { + return; + } + + if (this._isSliding) { + $(this._element).one(EVENT_SLID, function () { + return _this.to(index); + }); + return; + } + + if (activeIndex === index) { + this.pause(); + this.cycle(); + return; + } + + var direction = index > activeIndex ? DIRECTION_NEXT : DIRECTION_PREV; + + this._slide(direction, this._items[index]); + }; + + _proto.dispose = function dispose() { + $(this._element).off(EVENT_KEY$2); + $.removeData(this._element, DATA_KEY$2); + this._items = null; + this._config = null; + this._element = null; + this._interval = null; + this._isPaused = null; + this._isSliding = null; + this._activeElement = null; + this._indicatorsElement = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread2(_objectSpread2({}, Default), config); + Util.typeCheckConfig(NAME$2, config, DefaultType); + return config; + }; + + _proto._handleSwipe = function _handleSwipe() { + var absDeltax = Math.abs(this.touchDeltaX); + + if (absDeltax <= SWIPE_THRESHOLD) { + return; + } + + var direction = absDeltax / this.touchDeltaX; + this.touchDeltaX = 0; // swipe left + + if (direction > 0) { + this.prev(); + } // swipe right + + + if (direction < 0) { + this.next(); + } + }; + + _proto._addEventListeners = function _addEventListeners() { + var _this2 = this; + + if (this._config.keyboard) { + $(this._element).on(EVENT_KEYDOWN, function (event) { + return _this2._keydown(event); + }); + } + + if (this._config.pause === 'hover') { + $(this._element).on(EVENT_MOUSEENTER, function (event) { + return _this2.pause(event); + }).on(EVENT_MOUSELEAVE, function (event) { + return _this2.cycle(event); + }); + } + + if (this._config.touch) { + this._addTouchEventListeners(); + } + }; + + _proto._addTouchEventListeners = function _addTouchEventListeners() { + var _this3 = this; + + if (!this._touchSupported) { + return; + } + + var start = function start(event) { + if (_this3._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) { + _this3.touchStartX = event.originalEvent.clientX; + } else if (!_this3._pointerEvent) { + _this3.touchStartX = event.originalEvent.touches[0].clientX; + } + }; + + var move = function move(event) { + // ensure swiping with one touch and not pinching + if (event.originalEvent.touches && event.originalEvent.touches.length > 1) { + _this3.touchDeltaX = 0; + } else { + _this3.touchDeltaX = event.originalEvent.touches[0].clientX - _this3.touchStartX; + } + }; + + var end = function end(event) { + if (_this3._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) { + _this3.touchDeltaX = event.originalEvent.clientX - _this3.touchStartX; + } + + _this3._handleSwipe(); + + if (_this3._config.pause === 'hover') { + // If it's a touch-enabled device, mouseenter/leave are fired as + // part of the mouse compatibility events on first tap - the carousel + // would stop cycling until user tapped out of it; + // here, we listen for touchend, explicitly pause the carousel + // (as if it's the second time we tap on it, mouseenter compat event + // is NOT fired) and after a timeout (to allow for mouse compatibility + // events to fire) we explicitly restart cycling + _this3.pause(); + + if (_this3.touchTimeout) { + clearTimeout(_this3.touchTimeout); + } + + _this3.touchTimeout = setTimeout(function (event) { + return _this3.cycle(event); + }, TOUCHEVENT_COMPAT_WAIT + _this3._config.interval); + } + }; + + $(this._element.querySelectorAll(SELECTOR_ITEM_IMG)).on(EVENT_DRAG_START, function (e) { + return e.preventDefault(); + }); + + if (this._pointerEvent) { + $(this._element).on(EVENT_POINTERDOWN, function (event) { + return start(event); + }); + $(this._element).on(EVENT_POINTERUP, function (event) { + return end(event); + }); + + this._element.classList.add(CLASS_NAME_POINTER_EVENT); + } else { + $(this._element).on(EVENT_TOUCHSTART, function (event) { + return start(event); + }); + $(this._element).on(EVENT_TOUCHMOVE, function (event) { + return move(event); + }); + $(this._element).on(EVENT_TOUCHEND, function (event) { + return end(event); + }); + } + }; + + _proto._keydown = function _keydown(event) { + if (/input|textarea/i.test(event.target.tagName)) { + return; + } + + switch (event.which) { + case ARROW_LEFT_KEYCODE: + event.preventDefault(); + this.prev(); + break; + + case ARROW_RIGHT_KEYCODE: + event.preventDefault(); + this.next(); + break; + } + }; + + _proto._getItemIndex = function _getItemIndex(element) { + this._items = element && element.parentNode ? [].slice.call(element.parentNode.querySelectorAll(SELECTOR_ITEM)) : []; + return this._items.indexOf(element); + }; + + _proto._getItemByDirection = function _getItemByDirection(direction, activeElement) { + var isNextDirection = direction === DIRECTION_NEXT; + var isPrevDirection = direction === DIRECTION_PREV; + + var activeIndex = this._getItemIndex(activeElement); + + var lastItemIndex = this._items.length - 1; + var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex; + + if (isGoingToWrap && !this._config.wrap) { + return activeElement; + } + + var delta = direction === DIRECTION_PREV ? -1 : 1; + var itemIndex = (activeIndex + delta) % this._items.length; + return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex]; + }; + + _proto._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) { + var targetIndex = this._getItemIndex(relatedTarget); + + var fromIndex = this._getItemIndex(this._element.querySelector(SELECTOR_ACTIVE_ITEM)); + + var slideEvent = $.Event(EVENT_SLIDE, { + relatedTarget: relatedTarget, + direction: eventDirectionName, + from: fromIndex, + to: targetIndex + }); + $(this._element).trigger(slideEvent); + return slideEvent; + }; + + _proto._setActiveIndicatorElement = function _setActiveIndicatorElement(element) { + if (this._indicatorsElement) { + var indicators = [].slice.call(this._indicatorsElement.querySelectorAll(SELECTOR_ACTIVE$1)); + $(indicators).removeClass(CLASS_NAME_ACTIVE$1); + + var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)]; + + if (nextIndicator) { + $(nextIndicator).addClass(CLASS_NAME_ACTIVE$1); + } + } + }; + + _proto._slide = function _slide(direction, element) { + var _this4 = this; + + var activeElement = this._element.querySelector(SELECTOR_ACTIVE_ITEM); + + var activeElementIndex = this._getItemIndex(activeElement); + + var nextElement = element || activeElement && this._getItemByDirection(direction, activeElement); + + var nextElementIndex = this._getItemIndex(nextElement); + + var isCycling = Boolean(this._interval); + var directionalClassName; + var orderClassName; + var eventDirectionName; + + if (direction === DIRECTION_NEXT) { + directionalClassName = CLASS_NAME_LEFT; + orderClassName = CLASS_NAME_NEXT; + eventDirectionName = DIRECTION_LEFT; + } else { + directionalClassName = CLASS_NAME_RIGHT; + orderClassName = CLASS_NAME_PREV; + eventDirectionName = DIRECTION_RIGHT; + } + + if (nextElement && $(nextElement).hasClass(CLASS_NAME_ACTIVE$1)) { + this._isSliding = false; + return; + } + + var slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName); + + if (slideEvent.isDefaultPrevented()) { + return; + } + + if (!activeElement || !nextElement) { + // Some weirdness is happening, so we bail + return; + } + + this._isSliding = true; + + if (isCycling) { + this.pause(); + } + + this._setActiveIndicatorElement(nextElement); + + var slidEvent = $.Event(EVENT_SLID, { + relatedTarget: nextElement, + direction: eventDirectionName, + from: activeElementIndex, + to: nextElementIndex + }); + + if ($(this._element).hasClass(CLASS_NAME_SLIDE)) { + $(nextElement).addClass(orderClassName); + Util.reflow(nextElement); + $(activeElement).addClass(directionalClassName); + $(nextElement).addClass(directionalClassName); + var nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10); + + if (nextElementInterval) { + this._config.defaultInterval = this._config.defaultInterval || this._config.interval; + this._config.interval = nextElementInterval; + } else { + this._config.interval = this._config.defaultInterval || this._config.interval; + } + + var transitionDuration = Util.getTransitionDurationFromElement(activeElement); + $(activeElement).one(Util.TRANSITION_END, function () { + $(nextElement).removeClass(directionalClassName + " " + orderClassName).addClass(CLASS_NAME_ACTIVE$1); + $(activeElement).removeClass(CLASS_NAME_ACTIVE$1 + " " + orderClassName + " " + directionalClassName); + _this4._isSliding = false; + setTimeout(function () { + return $(_this4._element).trigger(slidEvent); + }, 0); + }).emulateTransitionEnd(transitionDuration); + } else { + $(activeElement).removeClass(CLASS_NAME_ACTIVE$1); + $(nextElement).addClass(CLASS_NAME_ACTIVE$1); + this._isSliding = false; + $(this._element).trigger(slidEvent); + } + + if (isCycling) { + this.cycle(); + } + } // Static + ; + + Carousel._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$2); + + var _config = _objectSpread2(_objectSpread2({}, Default), $(this).data()); + + if (typeof config === 'object') { + _config = _objectSpread2(_objectSpread2({}, _config), config); + } + + var action = typeof config === 'string' ? config : _config.slide; + + if (!data) { + data = new Carousel(this, _config); + $(this).data(DATA_KEY$2, data); + } + + if (typeof config === 'number') { + data.to(config); + } else if (typeof action === 'string') { + if (typeof data[action] === 'undefined') { + throw new TypeError("No method named \"" + action + "\""); + } + + data[action](); + } else if (_config.interval && _config.ride) { + data.pause(); + data.cycle(); + } + }); + }; + + Carousel._dataApiClickHandler = function _dataApiClickHandler(event) { + var selector = Util.getSelectorFromElement(this); + + if (!selector) { + return; + } + + var target = $(selector)[0]; + + if (!target || !$(target).hasClass(CLASS_NAME_CAROUSEL)) { + return; + } + + var config = _objectSpread2(_objectSpread2({}, $(target).data()), $(this).data()); + + var slideIndex = this.getAttribute('data-slide-to'); + + if (slideIndex) { + config.interval = false; + } + + Carousel._jQueryInterface.call($(target), config); + + if (slideIndex) { + $(target).data(DATA_KEY$2).to(slideIndex); + } + + event.preventDefault(); + }; + + _createClass(Carousel, null, [{ + key: "VERSION", + get: function get() { + return VERSION$2; + } + }, { + key: "Default", + get: function get() { + return Default; + } + }]); + + return Carousel; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(EVENT_CLICK_DATA_API$2, SELECTOR_DATA_SLIDE, Carousel._dataApiClickHandler); + $(window).on(EVENT_LOAD_DATA_API$1, function () { + var carousels = [].slice.call(document.querySelectorAll(SELECTOR_DATA_RIDE)); + + for (var i = 0, len = carousels.length; i < len; i++) { + var $carousel = $(carousels[i]); + + Carousel._jQueryInterface.call($carousel, $carousel.data()); + } + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$2] = Carousel._jQueryInterface; + $.fn[NAME$2].Constructor = Carousel; + + $.fn[NAME$2].noConflict = function () { + $.fn[NAME$2] = JQUERY_NO_CONFLICT$2; + return Carousel._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$3 = 'collapse'; + var VERSION$3 = '4.5.0'; + var DATA_KEY$3 = 'bs.collapse'; + var EVENT_KEY$3 = "." + DATA_KEY$3; + var DATA_API_KEY$3 = '.data-api'; + var JQUERY_NO_CONFLICT$3 = $.fn[NAME$3]; + var Default$1 = { + toggle: true, + parent: '' + }; + var DefaultType$1 = { + toggle: 'boolean', + parent: '(string|element)' + }; + var EVENT_SHOW = "show" + EVENT_KEY$3; + var EVENT_SHOWN = "shown" + EVENT_KEY$3; + var EVENT_HIDE = "hide" + EVENT_KEY$3; + var EVENT_HIDDEN = "hidden" + EVENT_KEY$3; + var EVENT_CLICK_DATA_API$3 = "click" + EVENT_KEY$3 + DATA_API_KEY$3; + var CLASS_NAME_SHOW$1 = 'show'; + var CLASS_NAME_COLLAPSE = 'collapse'; + var CLASS_NAME_COLLAPSING = 'collapsing'; + var CLASS_NAME_COLLAPSED = 'collapsed'; + var DIMENSION_WIDTH = 'width'; + var DIMENSION_HEIGHT = 'height'; + var SELECTOR_ACTIVES = '.show, .collapsing'; + var SELECTOR_DATA_TOGGLE$1 = '[data-toggle="collapse"]'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + var Collapse = /*#__PURE__*/function () { + function Collapse(element, config) { + this._isTransitioning = false; + this._element = element; + this._config = this._getConfig(config); + this._triggerArray = [].slice.call(document.querySelectorAll("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]"))); + var toggleList = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLE$1)); + + for (var i = 0, len = toggleList.length; i < len; i++) { + var elem = toggleList[i]; + var selector = Util.getSelectorFromElement(elem); + var filterElement = [].slice.call(document.querySelectorAll(selector)).filter(function (foundElem) { + return foundElem === element; + }); + + if (selector !== null && filterElement.length > 0) { + this._selector = selector; + + this._triggerArray.push(elem); + } + } + + this._parent = this._config.parent ? this._getParent() : null; + + if (!this._config.parent) { + this._addAriaAndCollapsedClass(this._element, this._triggerArray); + } + + if (this._config.toggle) { + this.toggle(); + } + } // Getters + + + var _proto = Collapse.prototype; + + // Public + _proto.toggle = function toggle() { + if ($(this._element).hasClass(CLASS_NAME_SHOW$1)) { + this.hide(); + } else { + this.show(); + } + }; + + _proto.show = function show() { + var _this = this; + + if (this._isTransitioning || $(this._element).hasClass(CLASS_NAME_SHOW$1)) { + return; + } + + var actives; + var activesData; + + if (this._parent) { + actives = [].slice.call(this._parent.querySelectorAll(SELECTOR_ACTIVES)).filter(function (elem) { + if (typeof _this._config.parent === 'string') { + return elem.getAttribute('data-parent') === _this._config.parent; + } + + return elem.classList.contains(CLASS_NAME_COLLAPSE); + }); + + if (actives.length === 0) { + actives = null; + } + } + + if (actives) { + activesData = $(actives).not(this._selector).data(DATA_KEY$3); + + if (activesData && activesData._isTransitioning) { + return; + } + } + + var startEvent = $.Event(EVENT_SHOW); + $(this._element).trigger(startEvent); + + if (startEvent.isDefaultPrevented()) { + return; + } + + if (actives) { + Collapse._jQueryInterface.call($(actives).not(this._selector), 'hide'); + + if (!activesData) { + $(actives).data(DATA_KEY$3, null); + } + } + + var dimension = this._getDimension(); + + $(this._element).removeClass(CLASS_NAME_COLLAPSE).addClass(CLASS_NAME_COLLAPSING); + this._element.style[dimension] = 0; + + if (this._triggerArray.length) { + $(this._triggerArray).removeClass(CLASS_NAME_COLLAPSED).attr('aria-expanded', true); + } + + this.setTransitioning(true); + + var complete = function complete() { + $(_this._element).removeClass(CLASS_NAME_COLLAPSING).addClass(CLASS_NAME_COLLAPSE + " " + CLASS_NAME_SHOW$1); + _this._element.style[dimension] = ''; + + _this.setTransitioning(false); + + $(_this._element).trigger(EVENT_SHOWN); + }; + + var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); + var scrollSize = "scroll" + capitalizedDimension; + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + this._element.style[dimension] = this._element[scrollSize] + "px"; + }; + + _proto.hide = function hide() { + var _this2 = this; + + if (this._isTransitioning || !$(this._element).hasClass(CLASS_NAME_SHOW$1)) { + return; + } + + var startEvent = $.Event(EVENT_HIDE); + $(this._element).trigger(startEvent); + + if (startEvent.isDefaultPrevented()) { + return; + } + + var dimension = this._getDimension(); + + this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px"; + Util.reflow(this._element); + $(this._element).addClass(CLASS_NAME_COLLAPSING).removeClass(CLASS_NAME_COLLAPSE + " " + CLASS_NAME_SHOW$1); + var triggerArrayLength = this._triggerArray.length; + + if (triggerArrayLength > 0) { + for (var i = 0; i < triggerArrayLength; i++) { + var trigger = this._triggerArray[i]; + var selector = Util.getSelectorFromElement(trigger); + + if (selector !== null) { + var $elem = $([].slice.call(document.querySelectorAll(selector))); + + if (!$elem.hasClass(CLASS_NAME_SHOW$1)) { + $(trigger).addClass(CLASS_NAME_COLLAPSED).attr('aria-expanded', false); + } + } + } + } + + this.setTransitioning(true); + + var complete = function complete() { + _this2.setTransitioning(false); + + $(_this2._element).removeClass(CLASS_NAME_COLLAPSING).addClass(CLASS_NAME_COLLAPSE).trigger(EVENT_HIDDEN); + }; + + this._element.style[dimension] = ''; + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + }; + + _proto.setTransitioning = function setTransitioning(isTransitioning) { + this._isTransitioning = isTransitioning; + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$3); + this._config = null; + this._parent = null; + this._element = null; + this._triggerArray = null; + this._isTransitioning = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread2(_objectSpread2({}, Default$1), config); + config.toggle = Boolean(config.toggle); // Coerce string values + + Util.typeCheckConfig(NAME$3, config, DefaultType$1); + return config; + }; + + _proto._getDimension = function _getDimension() { + var hasWidth = $(this._element).hasClass(DIMENSION_WIDTH); + return hasWidth ? DIMENSION_WIDTH : DIMENSION_HEIGHT; + }; + + _proto._getParent = function _getParent() { + var _this3 = this; + + var parent; + + if (Util.isElement(this._config.parent)) { + parent = this._config.parent; // It's a jQuery object + + if (typeof this._config.parent.jquery !== 'undefined') { + parent = this._config.parent[0]; + } + } else { + parent = document.querySelector(this._config.parent); + } + + var selector = "[data-toggle=\"collapse\"][data-parent=\"" + this._config.parent + "\"]"; + var children = [].slice.call(parent.querySelectorAll(selector)); + $(children).each(function (i, element) { + _this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]); + }); + return parent; + }; + + _proto._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) { + var isOpen = $(element).hasClass(CLASS_NAME_SHOW$1); + + if (triggerArray.length) { + $(triggerArray).toggleClass(CLASS_NAME_COLLAPSED, !isOpen).attr('aria-expanded', isOpen); + } + } // Static + ; + + Collapse._getTargetFromElement = function _getTargetFromElement(element) { + var selector = Util.getSelectorFromElement(element); + return selector ? document.querySelector(selector) : null; + }; + + Collapse._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var $this = $(this); + var data = $this.data(DATA_KEY$3); + + var _config = _objectSpread2(_objectSpread2(_objectSpread2({}, Default$1), $this.data()), typeof config === 'object' && config ? config : {}); + + if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) { + _config.toggle = false; + } + + if (!data) { + data = new Collapse(this, _config); + $this.data(DATA_KEY$3, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Collapse, null, [{ + key: "VERSION", + get: function get() { + return VERSION$3; + } + }, { + key: "Default", + get: function get() { + return Default$1; + } + }]); + + return Collapse; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$1, function (event) { + // preventDefault only for elements (which change the URL) not inside the collapsible element + if (event.currentTarget.tagName === 'A') { + event.preventDefault(); + } + + var $trigger = $(this); + var selector = Util.getSelectorFromElement(this); + var selectors = [].slice.call(document.querySelectorAll(selector)); + $(selectors).each(function () { + var $target = $(this); + var data = $target.data(DATA_KEY$3); + var config = data ? 'toggle' : $trigger.data(); + + Collapse._jQueryInterface.call($target, config); + }); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$3] = Collapse._jQueryInterface; + $.fn[NAME$3].Constructor = Collapse; + + $.fn[NAME$3].noConflict = function () { + $.fn[NAME$3] = JQUERY_NO_CONFLICT$3; + return Collapse._jQueryInterface; + }; + + /**! + * @fileOverview Kickass library to create and place poppers near their reference elements. + * @version 1.16.0 + * @license + * Copyright (c) 2016 Federico Zivolo and contributors + * + * 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. + */ + var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined'; + + var timeoutDuration = function () { + var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox']; + for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) { + if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) { + return 1; + } + } + return 0; + }(); + + function microtaskDebounce(fn) { + var called = false; + return function () { + if (called) { + return; + } + called = true; + window.Promise.resolve().then(function () { + called = false; + fn(); + }); + }; + } + + function taskDebounce(fn) { + var scheduled = false; + return function () { + if (!scheduled) { + scheduled = true; + setTimeout(function () { + scheduled = false; + fn(); + }, timeoutDuration); + } + }; + } + + var supportsMicroTasks = isBrowser && window.Promise; + + /** + * Create a debounced version of a method, that's asynchronously deferred + * but called in the minimum time possible. + * + * @method + * @memberof Popper.Utils + * @argument {Function} fn + * @returns {Function} + */ + var debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce; + + /** + * Check if the given variable is a function + * @method + * @memberof Popper.Utils + * @argument {Any} functionToCheck - variable to check + * @returns {Boolean} answer to: is a function? + */ + function isFunction(functionToCheck) { + var getType = {}; + return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]'; + } + + /** + * Get CSS computed property of the given element + * @method + * @memberof Popper.Utils + * @argument {Eement} element + * @argument {String} property + */ + function getStyleComputedProperty(element, property) { + if (element.nodeType !== 1) { + return []; + } + // NOTE: 1 DOM access here + var window = element.ownerDocument.defaultView; + var css = window.getComputedStyle(element, null); + return property ? css[property] : css; + } + + /** + * Returns the parentNode or the host of the element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} parent + */ + function getParentNode(element) { + if (element.nodeName === 'HTML') { + return element; + } + return element.parentNode || element.host; + } + + /** + * Returns the scrolling parent of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} scroll parent + */ + function getScrollParent(element) { + // Return body, `getScroll` will take care to get the correct `scrollTop` from it + if (!element) { + return document.body; + } + + switch (element.nodeName) { + case 'HTML': + case 'BODY': + return element.ownerDocument.body; + case '#document': + return element.body; + } + + // Firefox want us to check `-x` and `-y` variations as well + + var _getStyleComputedProp = getStyleComputedProperty(element), + overflow = _getStyleComputedProp.overflow, + overflowX = _getStyleComputedProp.overflowX, + overflowY = _getStyleComputedProp.overflowY; + + if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) { + return element; + } + + return getScrollParent(getParentNode(element)); + } + + /** + * Returns the reference node of the reference object, or the reference object itself. + * @method + * @memberof Popper.Utils + * @param {Element|Object} reference - the reference element (the popper will be relative to this) + * @returns {Element} parent + */ + function getReferenceNode(reference) { + return reference && reference.referenceNode ? reference.referenceNode : reference; + } + + var isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode); + var isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent); + + /** + * Determines if the browser is Internet Explorer + * @method + * @memberof Popper.Utils + * @param {Number} version to check + * @returns {Boolean} isIE + */ + function isIE(version) { + if (version === 11) { + return isIE11; + } + if (version === 10) { + return isIE10; + } + return isIE11 || isIE10; + } + + /** + * Returns the offset parent of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} offset parent + */ + function getOffsetParent(element) { + if (!element) { + return document.documentElement; + } + + var noOffsetParent = isIE(10) ? document.body : null; + + // NOTE: 1 DOM access here + var offsetParent = element.offsetParent || null; + // Skip hidden elements which don't have an offsetParent + while (offsetParent === noOffsetParent && element.nextElementSibling) { + offsetParent = (element = element.nextElementSibling).offsetParent; + } + + var nodeName = offsetParent && offsetParent.nodeName; + + if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { + return element ? element.ownerDocument.documentElement : document.documentElement; + } + + // .offsetParent will return the closest TH, TD or TABLE in case + // no offsetParent is present, I hate this job... + if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') { + return getOffsetParent(offsetParent); + } + + return offsetParent; + } + + function isOffsetContainer(element) { + var nodeName = element.nodeName; + + if (nodeName === 'BODY') { + return false; + } + return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element; + } + + /** + * Finds the root node (document, shadowDOM root) of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} node + * @returns {Element} root node + */ + function getRoot(node) { + if (node.parentNode !== null) { + return getRoot(node.parentNode); + } + + return node; + } + + /** + * Finds the offset parent common to the two provided nodes + * @method + * @memberof Popper.Utils + * @argument {Element} element1 + * @argument {Element} element2 + * @returns {Element} common offset parent + */ + function findCommonOffsetParent(element1, element2) { + // This check is needed to avoid errors in case one of the elements isn't defined for any reason + if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) { + return document.documentElement; + } + + // Here we make sure to give as "start" the element that comes first in the DOM + var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING; + var start = order ? element1 : element2; + var end = order ? element2 : element1; + + // Get common ancestor container + var range = document.createRange(); + range.setStart(start, 0); + range.setEnd(end, 0); + var commonAncestorContainer = range.commonAncestorContainer; + + // Both nodes are inside #document + + if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) { + if (isOffsetContainer(commonAncestorContainer)) { + return commonAncestorContainer; + } + + return getOffsetParent(commonAncestorContainer); + } + + // one of the nodes is inside shadowDOM, find which one + var element1root = getRoot(element1); + if (element1root.host) { + return findCommonOffsetParent(element1root.host, element2); + } else { + return findCommonOffsetParent(element1, getRoot(element2).host); + } + } + + /** + * Gets the scroll value of the given element in the given side (top and left) + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @argument {String} side `top` or `left` + * @returns {number} amount of scrolled pixels + */ + function getScroll(element) { + var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top'; + + var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft'; + var nodeName = element.nodeName; + + if (nodeName === 'BODY' || nodeName === 'HTML') { + var html = element.ownerDocument.documentElement; + var scrollingElement = element.ownerDocument.scrollingElement || html; + return scrollingElement[upperSide]; + } + + return element[upperSide]; + } + + /* + * Sum or subtract the element scroll values (left and top) from a given rect object + * @method + * @memberof Popper.Utils + * @param {Object} rect - Rect object you want to change + * @param {HTMLElement} element - The element from the function reads the scroll values + * @param {Boolean} subtract - set to true if you want to subtract the scroll values + * @return {Object} rect - The modifier rect object + */ + function includeScroll(rect, element) { + var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + + var scrollTop = getScroll(element, 'top'); + var scrollLeft = getScroll(element, 'left'); + var modifier = subtract ? -1 : 1; + rect.top += scrollTop * modifier; + rect.bottom += scrollTop * modifier; + rect.left += scrollLeft * modifier; + rect.right += scrollLeft * modifier; + return rect; + } + + /* + * Helper to detect borders of a given element + * @method + * @memberof Popper.Utils + * @param {CSSStyleDeclaration} styles + * Result of `getStyleComputedProperty` on the given element + * @param {String} axis - `x` or `y` + * @return {number} borders - The borders size of the given axis + */ + + function getBordersSize(styles, axis) { + var sideA = axis === 'x' ? 'Left' : 'Top'; + var sideB = sideA === 'Left' ? 'Right' : 'Bottom'; + + return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10); + } + + function getSize(axis, body, html, computedStyle) { + return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0); + } + + function getWindowSizes(document) { + var body = document.body; + var html = document.documentElement; + var computedStyle = isIE(10) && getComputedStyle(html); + + return { + height: getSize('Height', body, html, computedStyle), + width: getSize('Width', body, html, computedStyle) + }; + } + + var classCallCheck = function (instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + }; + + var createClass = function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; + }(); + + + + + + var defineProperty = function (obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; + }; + + var _extends = Object.assign || function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + + return target; + }; + + /** + * Given element offsets, generate an output similar to getBoundingClientRect + * @method + * @memberof Popper.Utils + * @argument {Object} offsets + * @returns {Object} ClientRect like output + */ + function getClientRect(offsets) { + return _extends({}, offsets, { + right: offsets.left + offsets.width, + bottom: offsets.top + offsets.height + }); + } + + /** + * Get bounding client rect of given element + * @method + * @memberof Popper.Utils + * @param {HTMLElement} element + * @return {Object} client rect + */ + function getBoundingClientRect(element) { + var rect = {}; + + // IE10 10 FIX: Please, don't ask, the element isn't + // considered in DOM in some circumstances... + // This isn't reproducible in IE10 compatibility mode of IE11 + try { + if (isIE(10)) { + rect = element.getBoundingClientRect(); + var scrollTop = getScroll(element, 'top'); + var scrollLeft = getScroll(element, 'left'); + rect.top += scrollTop; + rect.left += scrollLeft; + rect.bottom += scrollTop; + rect.right += scrollLeft; + } else { + rect = element.getBoundingClientRect(); + } + } catch (e) {} + + var result = { + left: rect.left, + top: rect.top, + width: rect.right - rect.left, + height: rect.bottom - rect.top + }; + + // subtract scrollbar size from sizes + var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {}; + var width = sizes.width || element.clientWidth || result.width; + var height = sizes.height || element.clientHeight || result.height; + + var horizScrollbar = element.offsetWidth - width; + var vertScrollbar = element.offsetHeight - height; + + // if an hypothetical scrollbar is detected, we must be sure it's not a `border` + // we make this check conditional for performance reasons + if (horizScrollbar || vertScrollbar) { + var styles = getStyleComputedProperty(element); + horizScrollbar -= getBordersSize(styles, 'x'); + vertScrollbar -= getBordersSize(styles, 'y'); + + result.width -= horizScrollbar; + result.height -= vertScrollbar; + } + + return getClientRect(result); + } + + function getOffsetRectRelativeToArbitraryNode(children, parent) { + var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + + var isIE10 = isIE(10); + var isHTML = parent.nodeName === 'HTML'; + var childrenRect = getBoundingClientRect(children); + var parentRect = getBoundingClientRect(parent); + var scrollParent = getScrollParent(children); + + var styles = getStyleComputedProperty(parent); + var borderTopWidth = parseFloat(styles.borderTopWidth, 10); + var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10); + + // In cases where the parent is fixed, we must ignore negative scroll in offset calc + if (fixedPosition && isHTML) { + parentRect.top = Math.max(parentRect.top, 0); + parentRect.left = Math.max(parentRect.left, 0); + } + var offsets = getClientRect({ + top: childrenRect.top - parentRect.top - borderTopWidth, + left: childrenRect.left - parentRect.left - borderLeftWidth, + width: childrenRect.width, + height: childrenRect.height + }); + offsets.marginTop = 0; + offsets.marginLeft = 0; + + // Subtract margins of documentElement in case it's being used as parent + // we do this only on HTML because it's the only element that behaves + // differently when margins are applied to it. The margins are included in + // the box of the documentElement, in the other cases not. + if (!isIE10 && isHTML) { + var marginTop = parseFloat(styles.marginTop, 10); + var marginLeft = parseFloat(styles.marginLeft, 10); + + offsets.top -= borderTopWidth - marginTop; + offsets.bottom -= borderTopWidth - marginTop; + offsets.left -= borderLeftWidth - marginLeft; + offsets.right -= borderLeftWidth - marginLeft; + + // Attach marginTop and marginLeft because in some circumstances we may need them + offsets.marginTop = marginTop; + offsets.marginLeft = marginLeft; + } + + if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { + offsets = includeScroll(offsets, parent); + } + + return offsets; + } + + function getViewportOffsetRectRelativeToArtbitraryNode(element) { + var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + + var html = element.ownerDocument.documentElement; + var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html); + var width = Math.max(html.clientWidth, window.innerWidth || 0); + var height = Math.max(html.clientHeight, window.innerHeight || 0); + + var scrollTop = !excludeScroll ? getScroll(html) : 0; + var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0; + + var offset = { + top: scrollTop - relativeOffset.top + relativeOffset.marginTop, + left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft, + width: width, + height: height + }; + + return getClientRect(offset); + } + + /** + * Check if the given element is fixed or is inside a fixed parent + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @argument {Element} customContainer + * @returns {Boolean} answer to "isFixed?" + */ + function isFixed(element) { + var nodeName = element.nodeName; + if (nodeName === 'BODY' || nodeName === 'HTML') { + return false; + } + if (getStyleComputedProperty(element, 'position') === 'fixed') { + return true; + } + var parentNode = getParentNode(element); + if (!parentNode) { + return false; + } + return isFixed(parentNode); + } + + /** + * Finds the first parent of an element that has a transformed property defined + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} first transformed parent or documentElement + */ + + function getFixedPositionOffsetParent(element) { + // This check is needed to avoid errors in case one of the elements isn't defined for any reason + if (!element || !element.parentElement || isIE()) { + return document.documentElement; + } + var el = element.parentElement; + while (el && getStyleComputedProperty(el, 'transform') === 'none') { + el = el.parentElement; + } + return el || document.documentElement; + } + + /** + * Computed the boundaries limits and return them + * @method + * @memberof Popper.Utils + * @param {HTMLElement} popper + * @param {HTMLElement} reference + * @param {number} padding + * @param {HTMLElement} boundariesElement - Element used to define the boundaries + * @param {Boolean} fixedPosition - Is in fixed position mode + * @returns {Object} Coordinates of the boundaries + */ + function getBoundaries(popper, reference, padding, boundariesElement) { + var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; + + // NOTE: 1 DOM access here + + var boundaries = { top: 0, left: 0 }; + var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); + + // Handle viewport case + if (boundariesElement === 'viewport') { + boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition); + } else { + // Handle other cases based on DOM element used as boundaries + var boundariesNode = void 0; + if (boundariesElement === 'scrollParent') { + boundariesNode = getScrollParent(getParentNode(reference)); + if (boundariesNode.nodeName === 'BODY') { + boundariesNode = popper.ownerDocument.documentElement; + } + } else if (boundariesElement === 'window') { + boundariesNode = popper.ownerDocument.documentElement; + } else { + boundariesNode = boundariesElement; + } + + var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition); + + // In case of HTML, we need a different computation + if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) { + var _getWindowSizes = getWindowSizes(popper.ownerDocument), + height = _getWindowSizes.height, + width = _getWindowSizes.width; + + boundaries.top += offsets.top - offsets.marginTop; + boundaries.bottom = height + offsets.top; + boundaries.left += offsets.left - offsets.marginLeft; + boundaries.right = width + offsets.left; + } else { + // for all the other DOM elements, this one is good + boundaries = offsets; + } + } + + // Add paddings + padding = padding || 0; + var isPaddingNumber = typeof padding === 'number'; + boundaries.left += isPaddingNumber ? padding : padding.left || 0; + boundaries.top += isPaddingNumber ? padding : padding.top || 0; + boundaries.right -= isPaddingNumber ? padding : padding.right || 0; + boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0; + + return boundaries; + } + + function getArea(_ref) { + var width = _ref.width, + height = _ref.height; + + return width * height; + } + + /** + * Utility used to transform the `auto` placement to the placement with more + * available space. + * @method + * @memberof Popper.Utils + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) { + var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0; + + if (placement.indexOf('auto') === -1) { + return placement; + } + + var boundaries = getBoundaries(popper, reference, padding, boundariesElement); + + var rects = { + top: { + width: boundaries.width, + height: refRect.top - boundaries.top + }, + right: { + width: boundaries.right - refRect.right, + height: boundaries.height + }, + bottom: { + width: boundaries.width, + height: boundaries.bottom - refRect.bottom + }, + left: { + width: refRect.left - boundaries.left, + height: boundaries.height + } + }; + + var sortedAreas = Object.keys(rects).map(function (key) { + return _extends({ + key: key + }, rects[key], { + area: getArea(rects[key]) + }); + }).sort(function (a, b) { + return b.area - a.area; + }); + + var filteredAreas = sortedAreas.filter(function (_ref2) { + var width = _ref2.width, + height = _ref2.height; + return width >= popper.clientWidth && height >= popper.clientHeight; + }); + + var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key; + + var variation = placement.split('-')[1]; + + return computedPlacement + (variation ? '-' + variation : ''); + } + + /** + * Get offsets to the reference element + * @method + * @memberof Popper.Utils + * @param {Object} state + * @param {Element} popper - the popper element + * @param {Element} reference - the reference element (the popper will be relative to this) + * @param {Element} fixedPosition - is in fixed position mode + * @returns {Object} An object containing the offsets which will be applied to the popper + */ + function getReferenceOffsets(state, popper, reference) { + var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; + + var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); + return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition); + } + + /** + * Get the outer sizes of the given element (offset size + margins) + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Object} object containing width and height properties + */ + function getOuterSizes(element) { + var window = element.ownerDocument.defaultView; + var styles = window.getComputedStyle(element); + var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0); + var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0); + var result = { + width: element.offsetWidth + y, + height: element.offsetHeight + x + }; + return result; + } + + /** + * Get the opposite placement of the given one + * @method + * @memberof Popper.Utils + * @argument {String} placement + * @returns {String} flipped placement + */ + function getOppositePlacement(placement) { + var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' }; + return placement.replace(/left|right|bottom|top/g, function (matched) { + return hash[matched]; + }); + } + + /** + * Get offsets to the popper + * @method + * @memberof Popper.Utils + * @param {Object} position - CSS position the Popper will get applied + * @param {HTMLElement} popper - the popper element + * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this) + * @param {String} placement - one of the valid placement options + * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper + */ + function getPopperOffsets(popper, referenceOffsets, placement) { + placement = placement.split('-')[0]; + + // Get popper node sizes + var popperRect = getOuterSizes(popper); + + // Add position, width and height to our offsets object + var popperOffsets = { + width: popperRect.width, + height: popperRect.height + }; + + // depending by the popper placement we have to compute its offsets slightly differently + var isHoriz = ['right', 'left'].indexOf(placement) !== -1; + var mainSide = isHoriz ? 'top' : 'left'; + var secondarySide = isHoriz ? 'left' : 'top'; + var measurement = isHoriz ? 'height' : 'width'; + var secondaryMeasurement = !isHoriz ? 'height' : 'width'; + + popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2; + if (placement === secondarySide) { + popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement]; + } else { + popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)]; + } + + return popperOffsets; + } + + /** + * Mimics the `find` method of Array + * @method + * @memberof Popper.Utils + * @argument {Array} arr + * @argument prop + * @argument value + * @returns index or -1 + */ + function find(arr, check) { + // use native find if supported + if (Array.prototype.find) { + return arr.find(check); + } + + // use `filter` to obtain the same behavior of `find` + return arr.filter(check)[0]; + } + + /** + * Return the index of the matching object + * @method + * @memberof Popper.Utils + * @argument {Array} arr + * @argument prop + * @argument value + * @returns index or -1 + */ + function findIndex(arr, prop, value) { + // use native findIndex if supported + if (Array.prototype.findIndex) { + return arr.findIndex(function (cur) { + return cur[prop] === value; + }); + } + + // use `find` + `indexOf` if `findIndex` isn't supported + var match = find(arr, function (obj) { + return obj[prop] === value; + }); + return arr.indexOf(match); + } + + /** + * Loop trough the list of modifiers and run them in order, + * each of them will then edit the data object. + * @method + * @memberof Popper.Utils + * @param {dataObject} data + * @param {Array} modifiers + * @param {String} ends - Optional modifier name used as stopper + * @returns {dataObject} + */ + function runModifiers(modifiers, data, ends) { + var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends)); + + modifiersToRun.forEach(function (modifier) { + if (modifier['function']) { + // eslint-disable-line dot-notation + console.warn('`modifier.function` is deprecated, use `modifier.fn`!'); + } + var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation + if (modifier.enabled && isFunction(fn)) { + // Add properties to offsets to make them a complete clientRect object + // we do this before each modifier to make sure the previous one doesn't + // mess with these values + data.offsets.popper = getClientRect(data.offsets.popper); + data.offsets.reference = getClientRect(data.offsets.reference); + + data = fn(data, modifier); + } + }); + + return data; + } + + /** + * Updates the position of the popper, computing the new offsets and applying + * the new style.
+ * Prefer `scheduleUpdate` over `update` because of performance reasons. + * @method + * @memberof Popper + */ + function update() { + // if popper is destroyed, don't perform any further update + if (this.state.isDestroyed) { + return; + } + + var data = { + instance: this, + styles: {}, + arrowStyles: {}, + attributes: {}, + flipped: false, + offsets: {} + }; + + // compute reference element offsets + data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed); + + // compute auto placement, store placement inside the data object, + // modifiers will be able to edit `placement` if needed + // and refer to originalPlacement to know the original value + data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding); + + // store the computed placement inside `originalPlacement` + data.originalPlacement = data.placement; + + data.positionFixed = this.options.positionFixed; + + // compute the popper offsets + data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement); + + data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute'; + + // run the modifiers + data = runModifiers(this.modifiers, data); + + // the first `update` will call `onCreate` callback + // the other ones will call `onUpdate` callback + if (!this.state.isCreated) { + this.state.isCreated = true; + this.options.onCreate(data); + } else { + this.options.onUpdate(data); + } + } + + /** + * Helper used to know if the given modifier is enabled. + * @method + * @memberof Popper.Utils + * @returns {Boolean} + */ + function isModifierEnabled(modifiers, modifierName) { + return modifiers.some(function (_ref) { + var name = _ref.name, + enabled = _ref.enabled; + return enabled && name === modifierName; + }); + } + + /** + * Get the prefixed supported property name + * @method + * @memberof Popper.Utils + * @argument {String} property (camelCase) + * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix) + */ + function getSupportedPropertyName(property) { + var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O']; + var upperProp = property.charAt(0).toUpperCase() + property.slice(1); + + for (var i = 0; i < prefixes.length; i++) { + var prefix = prefixes[i]; + var toCheck = prefix ? '' + prefix + upperProp : property; + if (typeof document.body.style[toCheck] !== 'undefined') { + return toCheck; + } + } + return null; + } + + /** + * Destroys the popper. + * @method + * @memberof Popper + */ + function destroy() { + this.state.isDestroyed = true; + + // touch DOM only if `applyStyle` modifier is enabled + if (isModifierEnabled(this.modifiers, 'applyStyle')) { + this.popper.removeAttribute('x-placement'); + this.popper.style.position = ''; + this.popper.style.top = ''; + this.popper.style.left = ''; + this.popper.style.right = ''; + this.popper.style.bottom = ''; + this.popper.style.willChange = ''; + this.popper.style[getSupportedPropertyName('transform')] = ''; + } + + this.disableEventListeners(); + + // remove the popper if user explicitly asked for the deletion on destroy + // do not use `remove` because IE11 doesn't support it + if (this.options.removeOnDestroy) { + this.popper.parentNode.removeChild(this.popper); + } + return this; + } + + /** + * Get the window associated with the element + * @argument {Element} element + * @returns {Window} + */ + function getWindow(element) { + var ownerDocument = element.ownerDocument; + return ownerDocument ? ownerDocument.defaultView : window; + } + + function attachToScrollParents(scrollParent, event, callback, scrollParents) { + var isBody = scrollParent.nodeName === 'BODY'; + var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent; + target.addEventListener(event, callback, { passive: true }); + + if (!isBody) { + attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents); + } + scrollParents.push(target); + } + + /** + * Setup needed event listeners used to update the popper position + * @method + * @memberof Popper.Utils + * @private + */ + function setupEventListeners(reference, options, state, updateBound) { + // Resize event listener on window + state.updateBound = updateBound; + getWindow(reference).addEventListener('resize', state.updateBound, { passive: true }); + + // Scroll event listener on scroll parents + var scrollElement = getScrollParent(reference); + attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents); + state.scrollElement = scrollElement; + state.eventsEnabled = true; + + return state; + } + + /** + * It will add resize/scroll events and start recalculating + * position of the popper element when they are triggered. + * @method + * @memberof Popper + */ + function enableEventListeners() { + if (!this.state.eventsEnabled) { + this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate); + } + } + + /** + * Remove event listeners used to update the popper position + * @method + * @memberof Popper.Utils + * @private + */ + function removeEventListeners(reference, state) { + // Remove resize event listener on window + getWindow(reference).removeEventListener('resize', state.updateBound); + + // Remove scroll event listener on scroll parents + state.scrollParents.forEach(function (target) { + target.removeEventListener('scroll', state.updateBound); + }); + + // Reset state + state.updateBound = null; + state.scrollParents = []; + state.scrollElement = null; + state.eventsEnabled = false; + return state; + } + + /** + * It will remove resize/scroll events and won't recalculate popper position + * when they are triggered. It also won't trigger `onUpdate` callback anymore, + * unless you call `update` method manually. + * @method + * @memberof Popper + */ + function disableEventListeners() { + if (this.state.eventsEnabled) { + cancelAnimationFrame(this.scheduleUpdate); + this.state = removeEventListeners(this.reference, this.state); + } + } + + /** + * Tells if a given input is a number + * @method + * @memberof Popper.Utils + * @param {*} input to check + * @return {Boolean} + */ + function isNumeric(n) { + return n !== '' && !isNaN(parseFloat(n)) && isFinite(n); + } + + /** + * Set the style to the given popper + * @method + * @memberof Popper.Utils + * @argument {Element} element - Element to apply the style to + * @argument {Object} styles + * Object with a list of properties and values which will be applied to the element + */ + function setStyles(element, styles) { + Object.keys(styles).forEach(function (prop) { + var unit = ''; + // add unit if the value is numeric and is one of the following + if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) { + unit = 'px'; + } + element.style[prop] = styles[prop] + unit; + }); + } + + /** + * Set the attributes to the given popper + * @method + * @memberof Popper.Utils + * @argument {Element} element - Element to apply the attributes to + * @argument {Object} styles + * Object with a list of properties and values which will be applied to the element + */ + function setAttributes(element, attributes) { + Object.keys(attributes).forEach(function (prop) { + var value = attributes[prop]; + if (value !== false) { + element.setAttribute(prop, attributes[prop]); + } else { + element.removeAttribute(prop); + } + }); + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} data.styles - List of style properties - values to apply to popper element + * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The same data object + */ + function applyStyle(data) { + // any property present in `data.styles` will be applied to the popper, + // in this way we can make the 3rd party modifiers add custom styles to it + // Be aware, modifiers could override the properties defined in the previous + // lines of this modifier! + setStyles(data.instance.popper, data.styles); + + // any property present in `data.attributes` will be applied to the popper, + // they will be set as HTML attributes of the element + setAttributes(data.instance.popper, data.attributes); + + // if arrowElement is defined and arrowStyles has some properties + if (data.arrowElement && Object.keys(data.arrowStyles).length) { + setStyles(data.arrowElement, data.arrowStyles); + } + + return data; + } + + /** + * Set the x-placement attribute before everything else because it could be used + * to add margins to the popper margins needs to be calculated to get the + * correct popper offsets. + * @method + * @memberof Popper.modifiers + * @param {HTMLElement} reference - The reference element used to position the popper + * @param {HTMLElement} popper - The HTML element used as popper + * @param {Object} options - Popper.js options + */ + function applyStyleOnLoad(reference, popper, options, modifierOptions, state) { + // compute reference element offsets + var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed); + + // compute auto placement, store placement inside the data object, + // modifiers will be able to edit `placement` if needed + // and refer to originalPlacement to know the original value + var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding); + + popper.setAttribute('x-placement', placement); + + // Apply `position` to popper before anything else because + // without the position applied we can't guarantee correct computations + setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' }); + + return options; + } + + /** + * @function + * @memberof Popper.Utils + * @argument {Object} data - The data object generated by `update` method + * @argument {Boolean} shouldRound - If the offsets should be rounded at all + * @returns {Object} The popper's position offsets rounded + * + * The tale of pixel-perfect positioning. It's still not 100% perfect, but as + * good as it can be within reason. + * Discussion here: https://github.com/FezVrasta/popper.js/pull/715 + * + * Low DPI screens cause a popper to be blurry if not using full pixels (Safari + * as well on High DPI screens). + * + * Firefox prefers no rounding for positioning and does not have blurriness on + * high DPI screens. + * + * Only horizontal placement and left/right values need to be considered. + */ + function getRoundedOffsets(data, shouldRound) { + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + var round = Math.round, + floor = Math.floor; + + var noRound = function noRound(v) { + return v; + }; + + var referenceWidth = round(reference.width); + var popperWidth = round(popper.width); + + var isVertical = ['left', 'right'].indexOf(data.placement) !== -1; + var isVariation = data.placement.indexOf('-') !== -1; + var sameWidthParity = referenceWidth % 2 === popperWidth % 2; + var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1; + + var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor; + var verticalToInteger = !shouldRound ? noRound : round; + + return { + left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left), + top: verticalToInteger(popper.top), + bottom: verticalToInteger(popper.bottom), + right: horizontalToInteger(popper.right) + }; + } + + var isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent); + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function computeStyle(data, options) { + var x = options.x, + y = options.y; + var popper = data.offsets.popper; + + // Remove this legacy support in Popper.js v2 + + var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) { + return modifier.name === 'applyStyle'; + }).gpuAcceleration; + if (legacyGpuAccelerationOption !== undefined) { + console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!'); + } + var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration; + + var offsetParent = getOffsetParent(data.instance.popper); + var offsetParentRect = getBoundingClientRect(offsetParent); + + // Styles + var styles = { + position: popper.position + }; + + var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox); + + var sideA = x === 'bottom' ? 'top' : 'bottom'; + var sideB = y === 'right' ? 'left' : 'right'; + + // if gpuAcceleration is set to `true` and transform is supported, + // we use `translate3d` to apply the position to the popper we + // automatically use the supported prefixed version if needed + var prefixedProperty = getSupportedPropertyName('transform'); + + // now, let's make a step back and look at this code closely (wtf?) + // If the content of the popper grows once it's been positioned, it + // may happen that the popper gets misplaced because of the new content + // overflowing its reference element + // To avoid this problem, we provide two options (x and y), which allow + // the consumer to define the offset origin. + // If we position a popper on top of a reference element, we can set + // `x` to `top` to make the popper grow towards its top instead of + // its bottom. + var left = void 0, + top = void 0; + if (sideA === 'bottom') { + // when offsetParent is the positioning is relative to the bottom of the screen (excluding the scrollbar) + // and not the bottom of the html element + if (offsetParent.nodeName === 'HTML') { + top = -offsetParent.clientHeight + offsets.bottom; + } else { + top = -offsetParentRect.height + offsets.bottom; + } + } else { + top = offsets.top; + } + if (sideB === 'right') { + if (offsetParent.nodeName === 'HTML') { + left = -offsetParent.clientWidth + offsets.right; + } else { + left = -offsetParentRect.width + offsets.right; + } + } else { + left = offsets.left; + } + if (gpuAcceleration && prefixedProperty) { + styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)'; + styles[sideA] = 0; + styles[sideB] = 0; + styles.willChange = 'transform'; + } else { + // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties + var invertTop = sideA === 'bottom' ? -1 : 1; + var invertLeft = sideB === 'right' ? -1 : 1; + styles[sideA] = top * invertTop; + styles[sideB] = left * invertLeft; + styles.willChange = sideA + ', ' + sideB; + } + + // Attributes + var attributes = { + 'x-placement': data.placement + }; + + // Update `data` attributes, styles and arrowStyles + data.attributes = _extends({}, attributes, data.attributes); + data.styles = _extends({}, styles, data.styles); + data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles); + + return data; + } + + /** + * Helper used to know if the given modifier depends from another one.
+ * It checks if the needed modifier is listed and enabled. + * @method + * @memberof Popper.Utils + * @param {Array} modifiers - list of modifiers + * @param {String} requestingName - name of requesting modifier + * @param {String} requestedName - name of requested modifier + * @returns {Boolean} + */ + function isModifierRequired(modifiers, requestingName, requestedName) { + var requesting = find(modifiers, function (_ref) { + var name = _ref.name; + return name === requestingName; + }); + + var isRequired = !!requesting && modifiers.some(function (modifier) { + return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order; + }); + + if (!isRequired) { + var _requesting = '`' + requestingName + '`'; + var requested = '`' + requestedName + '`'; + console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!'); + } + return isRequired; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function arrow(data, options) { + var _data$offsets$arrow; + + // arrow depends on keepTogether in order to work + if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) { + return data; + } + + var arrowElement = options.element; + + // if arrowElement is a string, suppose it's a CSS selector + if (typeof arrowElement === 'string') { + arrowElement = data.instance.popper.querySelector(arrowElement); + + // if arrowElement is not found, don't run the modifier + if (!arrowElement) { + return data; + } + } else { + // if the arrowElement isn't a query selector we must check that the + // provided DOM node is child of its popper node + if (!data.instance.popper.contains(arrowElement)) { + console.warn('WARNING: `arrow.element` must be child of its popper element!'); + return data; + } + } + + var placement = data.placement.split('-')[0]; + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var isVertical = ['left', 'right'].indexOf(placement) !== -1; + + var len = isVertical ? 'height' : 'width'; + var sideCapitalized = isVertical ? 'Top' : 'Left'; + var side = sideCapitalized.toLowerCase(); + var altSide = isVertical ? 'left' : 'top'; + var opSide = isVertical ? 'bottom' : 'right'; + var arrowElementSize = getOuterSizes(arrowElement)[len]; + + // + // extends keepTogether behavior making sure the popper and its + // reference have enough pixels in conjunction + // + + // top/left side + if (reference[opSide] - arrowElementSize < popper[side]) { + data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize); + } + // bottom/right side + if (reference[side] + arrowElementSize > popper[opSide]) { + data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide]; + } + data.offsets.popper = getClientRect(data.offsets.popper); + + // compute center of the popper + var center = reference[side] + reference[len] / 2 - arrowElementSize / 2; + + // Compute the sideValue using the updated popper offsets + // take popper margin in account because we don't have this info available + var css = getStyleComputedProperty(data.instance.popper); + var popperMarginSide = parseFloat(css['margin' + sideCapitalized], 10); + var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width'], 10); + var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide; + + // prevent arrowElement from being placed not contiguously to its popper + sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0); + + data.arrowElement = arrowElement; + data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow); + + return data; + } + + /** + * Get the opposite placement variation of the given one + * @method + * @memberof Popper.Utils + * @argument {String} placement variation + * @returns {String} flipped placement variation + */ + function getOppositeVariation(variation) { + if (variation === 'end') { + return 'start'; + } else if (variation === 'start') { + return 'end'; + } + return variation; + } + + /** + * List of accepted placements to use as values of the `placement` option.
+ * Valid placements are: + * - `auto` + * - `top` + * - `right` + * - `bottom` + * - `left` + * + * Each placement can have a variation from this list: + * - `-start` + * - `-end` + * + * Variations are interpreted easily if you think of them as the left to right + * written languages. Horizontally (`top` and `bottom`), `start` is left and `end` + * is right.
+ * Vertically (`left` and `right`), `start` is top and `end` is bottom. + * + * Some valid examples are: + * - `top-end` (on top of reference, right aligned) + * - `right-start` (on right of reference, top aligned) + * - `bottom` (on bottom, centered) + * - `auto-end` (on the side with more space available, alignment depends by placement) + * + * @static + * @type {Array} + * @enum {String} + * @readonly + * @method placements + * @memberof Popper + */ + var placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start']; + + // Get rid of `auto` `auto-start` and `auto-end` + var validPlacements = placements.slice(3); + + /** + * Given an initial placement, returns all the subsequent placements + * clockwise (or counter-clockwise). + * + * @method + * @memberof Popper.Utils + * @argument {String} placement - A valid placement (it accepts variations) + * @argument {Boolean} counter - Set to true to walk the placements counterclockwise + * @returns {Array} placements including their variations + */ + function clockwise(placement) { + var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + + var index = validPlacements.indexOf(placement); + var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index)); + return counter ? arr.reverse() : arr; + } + + var BEHAVIORS = { + FLIP: 'flip', + CLOCKWISE: 'clockwise', + COUNTERCLOCKWISE: 'counterclockwise' + }; + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function flip(data, options) { + // if `inner` modifier is enabled, we can't use the `flip` modifier + if (isModifierEnabled(data.instance.modifiers, 'inner')) { + return data; + } + + if (data.flipped && data.placement === data.originalPlacement) { + // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides + return data; + } + + var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed); + + var placement = data.placement.split('-')[0]; + var placementOpposite = getOppositePlacement(placement); + var variation = data.placement.split('-')[1] || ''; + + var flipOrder = []; + + switch (options.behavior) { + case BEHAVIORS.FLIP: + flipOrder = [placement, placementOpposite]; + break; + case BEHAVIORS.CLOCKWISE: + flipOrder = clockwise(placement); + break; + case BEHAVIORS.COUNTERCLOCKWISE: + flipOrder = clockwise(placement, true); + break; + default: + flipOrder = options.behavior; + } + + flipOrder.forEach(function (step, index) { + if (placement !== step || flipOrder.length === index + 1) { + return data; + } + + placement = data.placement.split('-')[0]; + placementOpposite = getOppositePlacement(placement); + + var popperOffsets = data.offsets.popper; + var refOffsets = data.offsets.reference; + + // using floor because the reference offsets may contain decimals we are not going to consider here + var floor = Math.floor; + var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom); + + var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left); + var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right); + var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top); + var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom); + + var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom; + + // flip the variation if required + var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; + + // flips variation if reference element overflows boundaries + var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom); + + // flips variation if popper content overflows boundaries + var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop); + + var flippedVariation = flippedVariationByRef || flippedVariationByContent; + + if (overlapsRef || overflowsBoundaries || flippedVariation) { + // this boolean to detect any flip loop + data.flipped = true; + + if (overlapsRef || overflowsBoundaries) { + placement = flipOrder[index + 1]; + } + + if (flippedVariation) { + variation = getOppositeVariation(variation); + } + + data.placement = placement + (variation ? '-' + variation : ''); + + // this object contains `position`, we want to preserve it along with + // any additional property we may add in the future + data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement)); + + data = runModifiers(data.instance.modifiers, data, 'flip'); + } + }); + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function keepTogether(data) { + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var placement = data.placement.split('-')[0]; + var floor = Math.floor; + var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; + var side = isVertical ? 'right' : 'bottom'; + var opSide = isVertical ? 'left' : 'top'; + var measurement = isVertical ? 'width' : 'height'; + + if (popper[side] < floor(reference[opSide])) { + data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement]; + } + if (popper[opSide] > floor(reference[side])) { + data.offsets.popper[opSide] = floor(reference[side]); + } + + return data; + } + + /** + * Converts a string containing value + unit into a px value number + * @function + * @memberof {modifiers~offset} + * @private + * @argument {String} str - Value + unit string + * @argument {String} measurement - `height` or `width` + * @argument {Object} popperOffsets + * @argument {Object} referenceOffsets + * @returns {Number|String} + * Value in pixels, or original string if no values were extracted + */ + function toValue(str, measurement, popperOffsets, referenceOffsets) { + // separate value from unit + var split = str.match(/((?:\-|\+)?\d*\.?\d*)(.*)/); + var value = +split[1]; + var unit = split[2]; + + // If it's not a number it's an operator, I guess + if (!value) { + return str; + } + + if (unit.indexOf('%') === 0) { + var element = void 0; + switch (unit) { + case '%p': + element = popperOffsets; + break; + case '%': + case '%r': + default: + element = referenceOffsets; + } + + var rect = getClientRect(element); + return rect[measurement] / 100 * value; + } else if (unit === 'vh' || unit === 'vw') { + // if is a vh or vw, we calculate the size based on the viewport + var size = void 0; + if (unit === 'vh') { + size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0); + } else { + size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0); + } + return size / 100 * value; + } else { + // if is an explicit pixel unit, we get rid of the unit and keep the value + // if is an implicit unit, it's px, and we return just the value + return value; + } + } + + /** + * Parse an `offset` string to extrapolate `x` and `y` numeric offsets. + * @function + * @memberof {modifiers~offset} + * @private + * @argument {String} offset + * @argument {Object} popperOffsets + * @argument {Object} referenceOffsets + * @argument {String} basePlacement + * @returns {Array} a two cells array with x and y offsets in numbers + */ + function parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) { + var offsets = [0, 0]; + + // Use height if placement is left or right and index is 0 otherwise use width + // in this way the first offset will use an axis and the second one + // will use the other one + var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1; + + // Split the offset string to obtain a list of values and operands + // The regex addresses values with the plus or minus sign in front (+10, -20, etc) + var fragments = offset.split(/(\+|\-)/).map(function (frag) { + return frag.trim(); + }); + + // Detect if the offset string contains a pair of values or a single one + // they could be separated by comma or space + var divider = fragments.indexOf(find(fragments, function (frag) { + return frag.search(/,|\s/) !== -1; + })); + + if (fragments[divider] && fragments[divider].indexOf(',') === -1) { + console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.'); + } + + // If divider is found, we divide the list of values and operands to divide + // them by ofset X and Y. + var splitRegex = /\s*,\s*|\s+/; + var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments]; + + // Convert the values with units to absolute pixels to allow our computations + ops = ops.map(function (op, index) { + // Most of the units rely on the orientation of the popper + var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width'; + var mergeWithPrevious = false; + return op + // This aggregates any `+` or `-` sign that aren't considered operators + // e.g.: 10 + +5 => [10, +, +5] + .reduce(function (a, b) { + if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) { + a[a.length - 1] = b; + mergeWithPrevious = true; + return a; + } else if (mergeWithPrevious) { + a[a.length - 1] += b; + mergeWithPrevious = false; + return a; + } else { + return a.concat(b); + } + }, []) + // Here we convert the string values into number values (in px) + .map(function (str) { + return toValue(str, measurement, popperOffsets, referenceOffsets); + }); + }); + + // Loop trough the offsets arrays and execute the operations + ops.forEach(function (op, index) { + op.forEach(function (frag, index2) { + if (isNumeric(frag)) { + offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1); + } + }); + }); + return offsets; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @argument {Number|String} options.offset=0 + * The offset value as described in the modifier description + * @returns {Object} The data object, properly modified + */ + function offset(data, _ref) { + var offset = _ref.offset; + var placement = data.placement, + _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var basePlacement = placement.split('-')[0]; + + var offsets = void 0; + if (isNumeric(+offset)) { + offsets = [+offset, 0]; + } else { + offsets = parseOffset(offset, popper, reference, basePlacement); + } + + if (basePlacement === 'left') { + popper.top += offsets[0]; + popper.left -= offsets[1]; + } else if (basePlacement === 'right') { + popper.top += offsets[0]; + popper.left += offsets[1]; + } else if (basePlacement === 'top') { + popper.left += offsets[0]; + popper.top -= offsets[1]; + } else if (basePlacement === 'bottom') { + popper.left += offsets[0]; + popper.top += offsets[1]; + } + + data.popper = popper; + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function preventOverflow(data, options) { + var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper); + + // If offsetParent is the reference element, we really want to + // go one step up and use the next offsetParent as reference to + // avoid to make this modifier completely useless and look like broken + if (data.instance.reference === boundariesElement) { + boundariesElement = getOffsetParent(boundariesElement); + } + + // NOTE: DOM access here + // resets the popper's position so that the document size can be calculated excluding + // the size of the popper element itself + var transformProp = getSupportedPropertyName('transform'); + var popperStyles = data.instance.popper.style; // assignment to help minification + var top = popperStyles.top, + left = popperStyles.left, + transform = popperStyles[transformProp]; + + popperStyles.top = ''; + popperStyles.left = ''; + popperStyles[transformProp] = ''; + + var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed); + + // NOTE: DOM access here + // restores the original style properties after the offsets have been computed + popperStyles.top = top; + popperStyles.left = left; + popperStyles[transformProp] = transform; + + options.boundaries = boundaries; + + var order = options.priority; + var popper = data.offsets.popper; + + var check = { + primary: function primary(placement) { + var value = popper[placement]; + if (popper[placement] < boundaries[placement] && !options.escapeWithReference) { + value = Math.max(popper[placement], boundaries[placement]); + } + return defineProperty({}, placement, value); + }, + secondary: function secondary(placement) { + var mainSide = placement === 'right' ? 'left' : 'top'; + var value = popper[mainSide]; + if (popper[placement] > boundaries[placement] && !options.escapeWithReference) { + value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height)); + } + return defineProperty({}, mainSide, value); + } + }; + + order.forEach(function (placement) { + var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary'; + popper = _extends({}, popper, check[side](placement)); + }); + + data.offsets.popper = popper; + + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function shift(data) { + var placement = data.placement; + var basePlacement = placement.split('-')[0]; + var shiftvariation = placement.split('-')[1]; + + // if shift shiftvariation is specified, run the modifier + if (shiftvariation) { + var _data$offsets = data.offsets, + reference = _data$offsets.reference, + popper = _data$offsets.popper; + + var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1; + var side = isVertical ? 'left' : 'top'; + var measurement = isVertical ? 'width' : 'height'; + + var shiftOffsets = { + start: defineProperty({}, side, reference[side]), + end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement]) + }; + + data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]); + } + + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function hide(data) { + if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) { + return data; + } + + var refRect = data.offsets.reference; + var bound = find(data.instance.modifiers, function (modifier) { + return modifier.name === 'preventOverflow'; + }).boundaries; + + if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) { + // Avoid unnecessary DOM access if visibility hasn't changed + if (data.hide === true) { + return data; + } + + data.hide = true; + data.attributes['x-out-of-boundaries'] = ''; + } else { + // Avoid unnecessary DOM access if visibility hasn't changed + if (data.hide === false) { + return data; + } + + data.hide = false; + data.attributes['x-out-of-boundaries'] = false; + } + + return data; + } + + /** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ + function inner(data) { + var placement = data.placement; + var basePlacement = placement.split('-')[0]; + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1; + + var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1; + + popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0); + + data.placement = getOppositePlacement(placement); + data.offsets.popper = getClientRect(popper); + + return data; + } + + /** + * Modifier function, each modifier can have a function of this type assigned + * to its `fn` property.
+ * These functions will be called on each update, this means that you must + * make sure they are performant enough to avoid performance bottlenecks. + * + * @function ModifierFn + * @argument {dataObject} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {dataObject} The data object, properly modified + */ + + /** + * Modifiers are plugins used to alter the behavior of your poppers.
+ * Popper.js uses a set of 9 modifiers to provide all the basic functionalities + * needed by the library. + * + * Usually you don't want to override the `order`, `fn` and `onLoad` props. + * All the other properties are configurations that could be tweaked. + * @namespace modifiers + */ + var modifiers = { + /** + * Modifier used to shift the popper on the start or end of its reference + * element.
+ * It will read the variation of the `placement` property.
+ * It can be one either `-end` or `-start`. + * @memberof modifiers + * @inner + */ + shift: { + /** @prop {number} order=100 - Index used to define the order of execution */ + order: 100, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: shift + }, + + /** + * The `offset` modifier can shift your popper on both its axis. + * + * It accepts the following units: + * - `px` or unit-less, interpreted as pixels + * - `%` or `%r`, percentage relative to the length of the reference element + * - `%p`, percentage relative to the length of the popper element + * - `vw`, CSS viewport width unit + * - `vh`, CSS viewport height unit + * + * For length is intended the main axis relative to the placement of the popper.
+ * This means that if the placement is `top` or `bottom`, the length will be the + * `width`. In case of `left` or `right`, it will be the `height`. + * + * You can provide a single value (as `Number` or `String`), or a pair of values + * as `String` divided by a comma or one (or more) white spaces.
+ * The latter is a deprecated method because it leads to confusion and will be + * removed in v2.
+ * Additionally, it accepts additions and subtractions between different units. + * Note that multiplications and divisions aren't supported. + * + * Valid examples are: + * ``` + * 10 + * '10%' + * '10, 10' + * '10%, 10' + * '10 + 10%' + * '10 - 5vh + 3%' + * '-10px + 5vh, 5px - 6%' + * ``` + * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap + * > with their reference element, unfortunately, you will have to disable the `flip` modifier. + * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373). + * + * @memberof modifiers + * @inner + */ + offset: { + /** @prop {number} order=200 - Index used to define the order of execution */ + order: 200, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: offset, + /** @prop {Number|String} offset=0 + * The offset value as described in the modifier description + */ + offset: 0 + }, + + /** + * Modifier used to prevent the popper from being positioned outside the boundary. + * + * A scenario exists where the reference itself is not within the boundaries.
+ * We can say it has "escaped the boundaries" — or just "escaped".
+ * In this case we need to decide whether the popper should either: + * + * - detach from the reference and remain "trapped" in the boundaries, or + * - if it should ignore the boundary and "escape with its reference" + * + * When `escapeWithReference` is set to`true` and reference is completely + * outside its boundaries, the popper will overflow (or completely leave) + * the boundaries in order to remain attached to the edge of the reference. + * + * @memberof modifiers + * @inner + */ + preventOverflow: { + /** @prop {number} order=300 - Index used to define the order of execution */ + order: 300, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: preventOverflow, + /** + * @prop {Array} [priority=['left','right','top','bottom']] + * Popper will try to prevent overflow following these priorities by default, + * then, it could overflow on the left and on top of the `boundariesElement` + */ + priority: ['left', 'right', 'top', 'bottom'], + /** + * @prop {number} padding=5 + * Amount of pixel used to define a minimum distance between the boundaries + * and the popper. This makes sure the popper always has a little padding + * between the edges of its container + */ + padding: 5, + /** + * @prop {String|HTMLElement} boundariesElement='scrollParent' + * Boundaries used by the modifier. Can be `scrollParent`, `window`, + * `viewport` or any DOM element. + */ + boundariesElement: 'scrollParent' + }, + + /** + * Modifier used to make sure the reference and its popper stay near each other + * without leaving any gap between the two. Especially useful when the arrow is + * enabled and you want to ensure that it points to its reference element. + * It cares only about the first axis. You can still have poppers with margin + * between the popper and its reference element. + * @memberof modifiers + * @inner + */ + keepTogether: { + /** @prop {number} order=400 - Index used to define the order of execution */ + order: 400, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: keepTogether + }, + + /** + * This modifier is used to move the `arrowElement` of the popper to make + * sure it is positioned between the reference element and its popper element. + * It will read the outer size of the `arrowElement` node to detect how many + * pixels of conjunction are needed. + * + * It has no effect if no `arrowElement` is provided. + * @memberof modifiers + * @inner + */ + arrow: { + /** @prop {number} order=500 - Index used to define the order of execution */ + order: 500, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: arrow, + /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */ + element: '[x-arrow]' + }, + + /** + * Modifier used to flip the popper's placement when it starts to overlap its + * reference element. + * + * Requires the `preventOverflow` modifier before it in order to work. + * + * **NOTE:** this modifier will interrupt the current update cycle and will + * restart it if it detects the need to flip the placement. + * @memberof modifiers + * @inner + */ + flip: { + /** @prop {number} order=600 - Index used to define the order of execution */ + order: 600, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: flip, + /** + * @prop {String|Array} behavior='flip' + * The behavior used to change the popper's placement. It can be one of + * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid + * placements (with optional variations) + */ + behavior: 'flip', + /** + * @prop {number} padding=5 + * The popper will flip if it hits the edges of the `boundariesElement` + */ + padding: 5, + /** + * @prop {String|HTMLElement} boundariesElement='viewport' + * The element which will define the boundaries of the popper position. + * The popper will never be placed outside of the defined boundaries + * (except if `keepTogether` is enabled) + */ + boundariesElement: 'viewport', + /** + * @prop {Boolean} flipVariations=false + * The popper will switch placement variation between `-start` and `-end` when + * the reference element overlaps its boundaries. + * + * The original placement should have a set variation. + */ + flipVariations: false, + /** + * @prop {Boolean} flipVariationsByContent=false + * The popper will switch placement variation between `-start` and `-end` when + * the popper element overlaps its reference boundaries. + * + * The original placement should have a set variation. + */ + flipVariationsByContent: false + }, + + /** + * Modifier used to make the popper flow toward the inner of the reference element. + * By default, when this modifier is disabled, the popper will be placed outside + * the reference element. + * @memberof modifiers + * @inner + */ + inner: { + /** @prop {number} order=700 - Index used to define the order of execution */ + order: 700, + /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */ + enabled: false, + /** @prop {ModifierFn} */ + fn: inner + }, + + /** + * Modifier used to hide the popper when its reference element is outside of the + * popper boundaries. It will set a `x-out-of-boundaries` attribute which can + * be used to hide with a CSS selector the popper when its reference is + * out of boundaries. + * + * Requires the `preventOverflow` modifier before it in order to work. + * @memberof modifiers + * @inner + */ + hide: { + /** @prop {number} order=800 - Index used to define the order of execution */ + order: 800, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: hide + }, + + /** + * Computes the style that will be applied to the popper element to gets + * properly positioned. + * + * Note that this modifier will not touch the DOM, it just prepares the styles + * so that `applyStyle` modifier can apply it. This separation is useful + * in case you need to replace `applyStyle` with a custom implementation. + * + * This modifier has `850` as `order` value to maintain backward compatibility + * with previous versions of Popper.js. Expect the modifiers ordering method + * to change in future major versions of the library. + * + * @memberof modifiers + * @inner + */ + computeStyle: { + /** @prop {number} order=850 - Index used to define the order of execution */ + order: 850, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: computeStyle, + /** + * @prop {Boolean} gpuAcceleration=true + * If true, it uses the CSS 3D transformation to position the popper. + * Otherwise, it will use the `top` and `left` properties + */ + gpuAcceleration: true, + /** + * @prop {string} [x='bottom'] + * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin. + * Change this if your popper should grow in a direction different from `bottom` + */ + x: 'bottom', + /** + * @prop {string} [x='left'] + * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin. + * Change this if your popper should grow in a direction different from `right` + */ + y: 'right' + }, + + /** + * Applies the computed styles to the popper element. + * + * All the DOM manipulations are limited to this modifier. This is useful in case + * you want to integrate Popper.js inside a framework or view library and you + * want to delegate all the DOM manipulations to it. + * + * Note that if you disable this modifier, you must make sure the popper element + * has its position set to `absolute` before Popper.js can do its work! + * + * Just disable this modifier and define your own to achieve the desired effect. + * + * @memberof modifiers + * @inner + */ + applyStyle: { + /** @prop {number} order=900 - Index used to define the order of execution */ + order: 900, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: applyStyle, + /** @prop {Function} */ + onLoad: applyStyleOnLoad, + /** + * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier + * @prop {Boolean} gpuAcceleration=true + * If true, it uses the CSS 3D transformation to position the popper. + * Otherwise, it will use the `top` and `left` properties + */ + gpuAcceleration: undefined + } + }; + + /** + * The `dataObject` is an object containing all the information used by Popper.js. + * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks. + * @name dataObject + * @property {Object} data.instance The Popper.js instance + * @property {String} data.placement Placement applied to popper + * @property {String} data.originalPlacement Placement originally defined on init + * @property {Boolean} data.flipped True if popper has been flipped by flip modifier + * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper + * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier + * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`) + * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`) + * @property {Object} data.boundaries Offsets of the popper boundaries + * @property {Object} data.offsets The measurements of popper, reference and arrow elements + * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values + * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values + * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0 + */ + + /** + * Default options provided to Popper.js constructor.
+ * These can be overridden using the `options` argument of Popper.js.
+ * To override an option, simply pass an object with the same + * structure of the `options` object, as the 3rd argument. For example: + * ``` + * new Popper(ref, pop, { + * modifiers: { + * preventOverflow: { enabled: false } + * } + * }) + * ``` + * @type {Object} + * @static + * @memberof Popper + */ + var Defaults = { + /** + * Popper's placement. + * @prop {Popper.placements} placement='bottom' + */ + placement: 'bottom', + + /** + * Set this to true if you want popper to position it self in 'fixed' mode + * @prop {Boolean} positionFixed=false + */ + positionFixed: false, + + /** + * Whether events (resize, scroll) are initially enabled. + * @prop {Boolean} eventsEnabled=true + */ + eventsEnabled: true, + + /** + * Set to true if you want to automatically remove the popper when + * you call the `destroy` method. + * @prop {Boolean} removeOnDestroy=false + */ + removeOnDestroy: false, + + /** + * Callback called when the popper is created.
+ * By default, it is set to no-op.
+ * Access Popper.js instance with `data.instance`. + * @prop {onCreate} + */ + onCreate: function onCreate() {}, + + /** + * Callback called when the popper is updated. This callback is not called + * on the initialization/creation of the popper, but only on subsequent + * updates.
+ * By default, it is set to no-op.
+ * Access Popper.js instance with `data.instance`. + * @prop {onUpdate} + */ + onUpdate: function onUpdate() {}, + + /** + * List of modifiers used to modify the offsets before they are applied to the popper. + * They provide most of the functionalities of Popper.js. + * @prop {modifiers} + */ + modifiers: modifiers + }; + + /** + * @callback onCreate + * @param {dataObject} data + */ + + /** + * @callback onUpdate + * @param {dataObject} data + */ + + // Utils + // Methods + var Popper = function () { + /** + * Creates a new Popper.js instance. + * @class Popper + * @param {Element|referenceObject} reference - The reference element used to position the popper + * @param {Element} popper - The HTML / XML element used as the popper + * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults) + * @return {Object} instance - The generated Popper.js instance + */ + function Popper(reference, popper) { + var _this = this; + + var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + classCallCheck(this, Popper); + + this.scheduleUpdate = function () { + return requestAnimationFrame(_this.update); + }; + + // make update() debounced, so that it only runs at most once-per-tick + this.update = debounce(this.update.bind(this)); + + // with {} we create a new object with the options inside it + this.options = _extends({}, Popper.Defaults, options); + + // init state + this.state = { + isDestroyed: false, + isCreated: false, + scrollParents: [] + }; + + // get reference and popper elements (allow jQuery wrappers) + this.reference = reference && reference.jquery ? reference[0] : reference; + this.popper = popper && popper.jquery ? popper[0] : popper; + + // Deep merge modifiers options + this.options.modifiers = {}; + Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) { + _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {}); + }); + + // Refactoring modifiers' list (Object => Array) + this.modifiers = Object.keys(this.options.modifiers).map(function (name) { + return _extends({ + name: name + }, _this.options.modifiers[name]); + }) + // sort the modifiers by order + .sort(function (a, b) { + return a.order - b.order; + }); + + // modifiers have the ability to execute arbitrary code when Popper.js get inited + // such code is executed in the same order of its modifier + // they could add new properties to their options configuration + // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`! + this.modifiers.forEach(function (modifierOptions) { + if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) { + modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state); + } + }); + + // fire the first update to position the popper in the right place + this.update(); + + var eventsEnabled = this.options.eventsEnabled; + if (eventsEnabled) { + // setup event listeners, they will take care of update the position in specific situations + this.enableEventListeners(); + } + + this.state.eventsEnabled = eventsEnabled; + } + + // We can't use class properties because they don't get listed in the + // class prototype and break stuff like Sinon stubs + + + createClass(Popper, [{ + key: 'update', + value: function update$$1() { + return update.call(this); + } + }, { + key: 'destroy', + value: function destroy$$1() { + return destroy.call(this); + } + }, { + key: 'enableEventListeners', + value: function enableEventListeners$$1() { + return enableEventListeners.call(this); + } + }, { + key: 'disableEventListeners', + value: function disableEventListeners$$1() { + return disableEventListeners.call(this); + } + + /** + * Schedules an update. It will run on the next UI update available. + * @method scheduleUpdate + * @memberof Popper + */ + + + /** + * Collection of utilities useful when writing custom modifiers. + * Starting from version 1.7, this method is available only if you + * include `popper-utils.js` before `popper.js`. + * + * **DEPRECATION**: This way to access PopperUtils is deprecated + * and will be removed in v2! Use the PopperUtils module directly instead. + * Due to the high instability of the methods contained in Utils, we can't + * guarantee them to follow semver. Use them at your own risk! + * @static + * @private + * @type {Object} + * @deprecated since version 1.8 + * @member Utils + * @memberof Popper + */ + + }]); + return Popper; + }(); + + /** + * The `referenceObject` is an object that provides an interface compatible with Popper.js + * and lets you use it as replacement of a real DOM node.
+ * You can use this method to position a popper relatively to a set of coordinates + * in case you don't have a DOM node to use as reference. + * + * ``` + * new Popper(referenceObject, popperNode); + * ``` + * + * NB: This feature isn't supported in Internet Explorer 10. + * @name referenceObject + * @property {Function} data.getBoundingClientRect + * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method. + * @property {number} data.clientWidth + * An ES6 getter that will return the width of the virtual reference element. + * @property {number} data.clientHeight + * An ES6 getter that will return the height of the virtual reference element. + */ + + + Popper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils; + Popper.placements = placements; + Popper.Defaults = Defaults; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$4 = 'dropdown'; + var VERSION$4 = '4.5.0'; + var DATA_KEY$4 = 'bs.dropdown'; + var EVENT_KEY$4 = "." + DATA_KEY$4; + var DATA_API_KEY$4 = '.data-api'; + var JQUERY_NO_CONFLICT$4 = $.fn[NAME$4]; + var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key + + var SPACE_KEYCODE = 32; // KeyboardEvent.which value for space key + + var TAB_KEYCODE = 9; // KeyboardEvent.which value for tab key + + var ARROW_UP_KEYCODE = 38; // KeyboardEvent.which value for up arrow key + + var ARROW_DOWN_KEYCODE = 40; // KeyboardEvent.which value for down arrow key + + var RIGHT_MOUSE_BUTTON_WHICH = 3; // MouseEvent.which value for the right button (assuming a right-handed mouse) + + var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEYCODE + "|" + ARROW_DOWN_KEYCODE + "|" + ESCAPE_KEYCODE); + var EVENT_HIDE$1 = "hide" + EVENT_KEY$4; + var EVENT_HIDDEN$1 = "hidden" + EVENT_KEY$4; + var EVENT_SHOW$1 = "show" + EVENT_KEY$4; + var EVENT_SHOWN$1 = "shown" + EVENT_KEY$4; + var EVENT_CLICK = "click" + EVENT_KEY$4; + var EVENT_CLICK_DATA_API$4 = "click" + EVENT_KEY$4 + DATA_API_KEY$4; + var EVENT_KEYDOWN_DATA_API = "keydown" + EVENT_KEY$4 + DATA_API_KEY$4; + var EVENT_KEYUP_DATA_API = "keyup" + EVENT_KEY$4 + DATA_API_KEY$4; + var CLASS_NAME_DISABLED = 'disabled'; + var CLASS_NAME_SHOW$2 = 'show'; + var CLASS_NAME_DROPUP = 'dropup'; + var CLASS_NAME_DROPRIGHT = 'dropright'; + var CLASS_NAME_DROPLEFT = 'dropleft'; + var CLASS_NAME_MENURIGHT = 'dropdown-menu-right'; + var CLASS_NAME_POSITION_STATIC = 'position-static'; + var SELECTOR_DATA_TOGGLE$2 = '[data-toggle="dropdown"]'; + var SELECTOR_FORM_CHILD = '.dropdown form'; + var SELECTOR_MENU = '.dropdown-menu'; + var SELECTOR_NAVBAR_NAV = '.navbar-nav'; + var SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'; + var PLACEMENT_TOP = 'top-start'; + var PLACEMENT_TOPEND = 'top-end'; + var PLACEMENT_BOTTOM = 'bottom-start'; + var PLACEMENT_BOTTOMEND = 'bottom-end'; + var PLACEMENT_RIGHT = 'right-start'; + var PLACEMENT_LEFT = 'left-start'; + var Default$2 = { + offset: 0, + flip: true, + boundary: 'scrollParent', + reference: 'toggle', + display: 'dynamic', + popperConfig: null + }; + var DefaultType$2 = { + offset: '(number|string|function)', + flip: 'boolean', + boundary: '(string|element)', + reference: '(string|element)', + display: 'string', + popperConfig: '(null|object)' + }; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + var Dropdown = /*#__PURE__*/function () { + function Dropdown(element, config) { + this._element = element; + this._popper = null; + this._config = this._getConfig(config); + this._menu = this._getMenuElement(); + this._inNavbar = this._detectNavbar(); + + this._addEventListeners(); + } // Getters + + + var _proto = Dropdown.prototype; + + // Public + _proto.toggle = function toggle() { + if (this._element.disabled || $(this._element).hasClass(CLASS_NAME_DISABLED)) { + return; + } + + var isActive = $(this._menu).hasClass(CLASS_NAME_SHOW$2); + + Dropdown._clearMenus(); + + if (isActive) { + return; + } + + this.show(true); + }; + + _proto.show = function show(usePopper) { + if (usePopper === void 0) { + usePopper = false; + } + + if (this._element.disabled || $(this._element).hasClass(CLASS_NAME_DISABLED) || $(this._menu).hasClass(CLASS_NAME_SHOW$2)) { + return; + } + + var relatedTarget = { + relatedTarget: this._element + }; + var showEvent = $.Event(EVENT_SHOW$1, relatedTarget); + + var parent = Dropdown._getParentFromElement(this._element); + + $(parent).trigger(showEvent); + + if (showEvent.isDefaultPrevented()) { + return; + } // Disable totally Popper.js for Dropdown in Navbar + + + if (!this._inNavbar && usePopper) { + /** + * Check for Popper dependency + * Popper - https://popper.js.org + */ + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s dropdowns require Popper.js (https://popper.js.org/)'); + } + + var referenceElement = this._element; + + if (this._config.reference === 'parent') { + referenceElement = parent; + } else if (Util.isElement(this._config.reference)) { + referenceElement = this._config.reference; // Check if it's jQuery element + + if (typeof this._config.reference.jquery !== 'undefined') { + referenceElement = this._config.reference[0]; + } + } // If boundary is not `scrollParent`, then set position to `static` + // to allow the menu to "escape" the scroll parent's boundaries + // https://github.com/twbs/bootstrap/issues/24251 + + + if (this._config.boundary !== 'scrollParent') { + $(parent).addClass(CLASS_NAME_POSITION_STATIC); + } + + this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig()); + } // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + + if ('ontouchstart' in document.documentElement && $(parent).closest(SELECTOR_NAVBAR_NAV).length === 0) { + $(document.body).children().on('mouseover', null, $.noop); + } + + this._element.focus(); + + this._element.setAttribute('aria-expanded', true); + + $(this._menu).toggleClass(CLASS_NAME_SHOW$2); + $(parent).toggleClass(CLASS_NAME_SHOW$2).trigger($.Event(EVENT_SHOWN$1, relatedTarget)); + }; + + _proto.hide = function hide() { + if (this._element.disabled || $(this._element).hasClass(CLASS_NAME_DISABLED) || !$(this._menu).hasClass(CLASS_NAME_SHOW$2)) { + return; + } + + var relatedTarget = { + relatedTarget: this._element + }; + var hideEvent = $.Event(EVENT_HIDE$1, relatedTarget); + + var parent = Dropdown._getParentFromElement(this._element); + + $(parent).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + return; + } + + if (this._popper) { + this._popper.destroy(); + } + + $(this._menu).toggleClass(CLASS_NAME_SHOW$2); + $(parent).toggleClass(CLASS_NAME_SHOW$2).trigger($.Event(EVENT_HIDDEN$1, relatedTarget)); + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$4); + $(this._element).off(EVENT_KEY$4); + this._element = null; + this._menu = null; + + if (this._popper !== null) { + this._popper.destroy(); + + this._popper = null; + } + }; + + _proto.update = function update() { + this._inNavbar = this._detectNavbar(); + + if (this._popper !== null) { + this._popper.scheduleUpdate(); + } + } // Private + ; + + _proto._addEventListeners = function _addEventListeners() { + var _this = this; + + $(this._element).on(EVENT_CLICK, function (event) { + event.preventDefault(); + event.stopPropagation(); + + _this.toggle(); + }); + }; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread2(_objectSpread2(_objectSpread2({}, this.constructor.Default), $(this._element).data()), config); + Util.typeCheckConfig(NAME$4, config, this.constructor.DefaultType); + return config; + }; + + _proto._getMenuElement = function _getMenuElement() { + if (!this._menu) { + var parent = Dropdown._getParentFromElement(this._element); + + if (parent) { + this._menu = parent.querySelector(SELECTOR_MENU); + } + } + + return this._menu; + }; + + _proto._getPlacement = function _getPlacement() { + var $parentDropdown = $(this._element.parentNode); + var placement = PLACEMENT_BOTTOM; // Handle dropup + + if ($parentDropdown.hasClass(CLASS_NAME_DROPUP)) { + placement = $(this._menu).hasClass(CLASS_NAME_MENURIGHT) ? PLACEMENT_TOPEND : PLACEMENT_TOP; + } else if ($parentDropdown.hasClass(CLASS_NAME_DROPRIGHT)) { + placement = PLACEMENT_RIGHT; + } else if ($parentDropdown.hasClass(CLASS_NAME_DROPLEFT)) { + placement = PLACEMENT_LEFT; + } else if ($(this._menu).hasClass(CLASS_NAME_MENURIGHT)) { + placement = PLACEMENT_BOTTOMEND; + } + + return placement; + }; + + _proto._detectNavbar = function _detectNavbar() { + return $(this._element).closest('.navbar').length > 0; + }; + + _proto._getOffset = function _getOffset() { + var _this2 = this; + + var offset = {}; + + if (typeof this._config.offset === 'function') { + offset.fn = function (data) { + data.offsets = _objectSpread2(_objectSpread2({}, data.offsets), _this2._config.offset(data.offsets, _this2._element) || {}); + return data; + }; + } else { + offset.offset = this._config.offset; + } + + return offset; + }; + + _proto._getPopperConfig = function _getPopperConfig() { + var popperConfig = { + placement: this._getPlacement(), + modifiers: { + offset: this._getOffset(), + flip: { + enabled: this._config.flip + }, + preventOverflow: { + boundariesElement: this._config.boundary + } + } + }; // Disable Popper.js if we have a static display + + if (this._config.display === 'static') { + popperConfig.modifiers.applyStyle = { + enabled: false + }; + } + + return _objectSpread2(_objectSpread2({}, popperConfig), this._config.popperConfig); + } // Static + ; + + Dropdown._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$4); + + var _config = typeof config === 'object' ? config : null; + + if (!data) { + data = new Dropdown(this, _config); + $(this).data(DATA_KEY$4, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + Dropdown._clearMenus = function _clearMenus(event) { + if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH || event.type === 'keyup' && event.which !== TAB_KEYCODE)) { + return; + } + + var toggles = [].slice.call(document.querySelectorAll(SELECTOR_DATA_TOGGLE$2)); + + for (var i = 0, len = toggles.length; i < len; i++) { + var parent = Dropdown._getParentFromElement(toggles[i]); + + var context = $(toggles[i]).data(DATA_KEY$4); + var relatedTarget = { + relatedTarget: toggles[i] + }; + + if (event && event.type === 'click') { + relatedTarget.clickEvent = event; + } + + if (!context) { + continue; + } + + var dropdownMenu = context._menu; + + if (!$(parent).hasClass(CLASS_NAME_SHOW$2)) { + continue; + } + + if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) && $.contains(parent, event.target)) { + continue; + } + + var hideEvent = $.Event(EVENT_HIDE$1, relatedTarget); + $(parent).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + continue; + } // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + + if ('ontouchstart' in document.documentElement) { + $(document.body).children().off('mouseover', null, $.noop); + } + + toggles[i].setAttribute('aria-expanded', 'false'); + + if (context._popper) { + context._popper.destroy(); + } + + $(dropdownMenu).removeClass(CLASS_NAME_SHOW$2); + $(parent).removeClass(CLASS_NAME_SHOW$2).trigger($.Event(EVENT_HIDDEN$1, relatedTarget)); + } + }; + + Dropdown._getParentFromElement = function _getParentFromElement(element) { + var parent; + var selector = Util.getSelectorFromElement(element); + + if (selector) { + parent = document.querySelector(selector); + } + + return parent || element.parentNode; + } // eslint-disable-next-line complexity + ; + + Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) { + // If not input/textarea: + // - And not a key in REGEXP_KEYDOWN => not a dropdown command + // If input/textarea: + // - If space key => not a dropdown command + // - If key is other than escape + // - If key is not up or down => not a dropdown command + // - If trigger inside the menu => not a dropdown command + if (/input|textarea/i.test(event.target.tagName) ? event.which === SPACE_KEYCODE || event.which !== ESCAPE_KEYCODE && (event.which !== ARROW_DOWN_KEYCODE && event.which !== ARROW_UP_KEYCODE || $(event.target).closest(SELECTOR_MENU).length) : !REGEXP_KEYDOWN.test(event.which)) { + return; + } + + if (this.disabled || $(this).hasClass(CLASS_NAME_DISABLED)) { + return; + } + + var parent = Dropdown._getParentFromElement(this); + + var isActive = $(parent).hasClass(CLASS_NAME_SHOW$2); + + if (!isActive && event.which === ESCAPE_KEYCODE) { + return; + } + + event.preventDefault(); + event.stopPropagation(); + + if (!isActive || isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) { + if (event.which === ESCAPE_KEYCODE) { + $(parent.querySelector(SELECTOR_DATA_TOGGLE$2)).trigger('focus'); + } + + $(this).trigger('click'); + return; + } + + var items = [].slice.call(parent.querySelectorAll(SELECTOR_VISIBLE_ITEMS)).filter(function (item) { + return $(item).is(':visible'); + }); + + if (items.length === 0) { + return; + } + + var index = items.indexOf(event.target); + + if (event.which === ARROW_UP_KEYCODE && index > 0) { + // Up + index--; + } + + if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) { + // Down + index++; + } + + if (index < 0) { + index = 0; + } + + items[index].focus(); + }; + + _createClass(Dropdown, null, [{ + key: "VERSION", + get: function get() { + return VERSION$4; + } + }, { + key: "Default", + get: function get() { + return Default$2; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$2; + } + }]); + + return Dropdown; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$2, Dropdown._dataApiKeydownHandler).on(EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown._dataApiKeydownHandler).on(EVENT_CLICK_DATA_API$4 + " " + EVENT_KEYUP_DATA_API, Dropdown._clearMenus).on(EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$2, function (event) { + event.preventDefault(); + event.stopPropagation(); + + Dropdown._jQueryInterface.call($(this), 'toggle'); + }).on(EVENT_CLICK_DATA_API$4, SELECTOR_FORM_CHILD, function (e) { + e.stopPropagation(); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$4] = Dropdown._jQueryInterface; + $.fn[NAME$4].Constructor = Dropdown; + + $.fn[NAME$4].noConflict = function () { + $.fn[NAME$4] = JQUERY_NO_CONFLICT$4; + return Dropdown._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$5 = 'modal'; + var VERSION$5 = '4.5.0'; + var DATA_KEY$5 = 'bs.modal'; + var EVENT_KEY$5 = "." + DATA_KEY$5; + var DATA_API_KEY$5 = '.data-api'; + var JQUERY_NO_CONFLICT$5 = $.fn[NAME$5]; + var ESCAPE_KEYCODE$1 = 27; // KeyboardEvent.which value for Escape (Esc) key + + var Default$3 = { + backdrop: true, + keyboard: true, + focus: true, + show: true + }; + var DefaultType$3 = { + backdrop: '(boolean|string)', + keyboard: 'boolean', + focus: 'boolean', + show: 'boolean' + }; + var EVENT_HIDE$2 = "hide" + EVENT_KEY$5; + var EVENT_HIDE_PREVENTED = "hidePrevented" + EVENT_KEY$5; + var EVENT_HIDDEN$2 = "hidden" + EVENT_KEY$5; + var EVENT_SHOW$2 = "show" + EVENT_KEY$5; + var EVENT_SHOWN$2 = "shown" + EVENT_KEY$5; + var EVENT_FOCUSIN = "focusin" + EVENT_KEY$5; + var EVENT_RESIZE = "resize" + EVENT_KEY$5; + var EVENT_CLICK_DISMISS = "click.dismiss" + EVENT_KEY$5; + var EVENT_KEYDOWN_DISMISS = "keydown.dismiss" + EVENT_KEY$5; + var EVENT_MOUSEUP_DISMISS = "mouseup.dismiss" + EVENT_KEY$5; + var EVENT_MOUSEDOWN_DISMISS = "mousedown.dismiss" + EVENT_KEY$5; + var EVENT_CLICK_DATA_API$5 = "click" + EVENT_KEY$5 + DATA_API_KEY$5; + var CLASS_NAME_SCROLLABLE = 'modal-dialog-scrollable'; + var CLASS_NAME_SCROLLBAR_MEASURER = 'modal-scrollbar-measure'; + var CLASS_NAME_BACKDROP = 'modal-backdrop'; + var CLASS_NAME_OPEN = 'modal-open'; + var CLASS_NAME_FADE$1 = 'fade'; + var CLASS_NAME_SHOW$3 = 'show'; + var CLASS_NAME_STATIC = 'modal-static'; + var SELECTOR_DIALOG = '.modal-dialog'; + var SELECTOR_MODAL_BODY = '.modal-body'; + var SELECTOR_DATA_TOGGLE$3 = '[data-toggle="modal"]'; + var SELECTOR_DATA_DISMISS = '[data-dismiss="modal"]'; + var SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'; + var SELECTOR_STICKY_CONTENT = '.sticky-top'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + var Modal = /*#__PURE__*/function () { + function Modal(element, config) { + this._config = this._getConfig(config); + this._element = element; + this._dialog = element.querySelector(SELECTOR_DIALOG); + this._backdrop = null; + this._isShown = false; + this._isBodyOverflowing = false; + this._ignoreBackdropClick = false; + this._isTransitioning = false; + this._scrollbarWidth = 0; + } // Getters + + + var _proto = Modal.prototype; + + // Public + _proto.toggle = function toggle(relatedTarget) { + return this._isShown ? this.hide() : this.show(relatedTarget); + }; + + _proto.show = function show(relatedTarget) { + var _this = this; + + if (this._isShown || this._isTransitioning) { + return; + } + + if ($(this._element).hasClass(CLASS_NAME_FADE$1)) { + this._isTransitioning = true; + } + + var showEvent = $.Event(EVENT_SHOW$2, { + relatedTarget: relatedTarget + }); + $(this._element).trigger(showEvent); + + if (this._isShown || showEvent.isDefaultPrevented()) { + return; + } + + this._isShown = true; + + this._checkScrollbar(); + + this._setScrollbar(); + + this._adjustDialog(); + + this._setEscapeEvent(); + + this._setResizeEvent(); + + $(this._element).on(EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, function (event) { + return _this.hide(event); + }); + $(this._dialog).on(EVENT_MOUSEDOWN_DISMISS, function () { + $(_this._element).one(EVENT_MOUSEUP_DISMISS, function (event) { + if ($(event.target).is(_this._element)) { + _this._ignoreBackdropClick = true; + } + }); + }); + + this._showBackdrop(function () { + return _this._showElement(relatedTarget); + }); + }; + + _proto.hide = function hide(event) { + var _this2 = this; + + if (event) { + event.preventDefault(); + } + + if (!this._isShown || this._isTransitioning) { + return; + } + + var hideEvent = $.Event(EVENT_HIDE$2); + $(this._element).trigger(hideEvent); + + if (!this._isShown || hideEvent.isDefaultPrevented()) { + return; + } + + this._isShown = false; + var transition = $(this._element).hasClass(CLASS_NAME_FADE$1); + + if (transition) { + this._isTransitioning = true; + } + + this._setEscapeEvent(); + + this._setResizeEvent(); + + $(document).off(EVENT_FOCUSIN); + $(this._element).removeClass(CLASS_NAME_SHOW$3); + $(this._element).off(EVENT_CLICK_DISMISS); + $(this._dialog).off(EVENT_MOUSEDOWN_DISMISS); + + if (transition) { + var transitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, function (event) { + return _this2._hideModal(event); + }).emulateTransitionEnd(transitionDuration); + } else { + this._hideModal(); + } + }; + + _proto.dispose = function dispose() { + [window, this._element, this._dialog].forEach(function (htmlElement) { + return $(htmlElement).off(EVENT_KEY$5); + }); + /** + * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API` + * Do not move `document` in `htmlElements` array + * It will remove `EVENT_CLICK_DATA_API` event that should remain + */ + + $(document).off(EVENT_FOCUSIN); + $.removeData(this._element, DATA_KEY$5); + this._config = null; + this._element = null; + this._dialog = null; + this._backdrop = null; + this._isShown = null; + this._isBodyOverflowing = null; + this._ignoreBackdropClick = null; + this._isTransitioning = null; + this._scrollbarWidth = null; + }; + + _proto.handleUpdate = function handleUpdate() { + this._adjustDialog(); + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread2(_objectSpread2({}, Default$3), config); + Util.typeCheckConfig(NAME$5, config, DefaultType$3); + return config; + }; + + _proto._triggerBackdropTransition = function _triggerBackdropTransition() { + var _this3 = this; + + if (this._config.backdrop === 'static') { + var hideEventPrevented = $.Event(EVENT_HIDE_PREVENTED); + $(this._element).trigger(hideEventPrevented); + + if (hideEventPrevented.defaultPrevented) { + return; + } + + this._element.classList.add(CLASS_NAME_STATIC); + + var modalTransitionDuration = Util.getTransitionDurationFromElement(this._element); + $(this._element).one(Util.TRANSITION_END, function () { + _this3._element.classList.remove(CLASS_NAME_STATIC); + }).emulateTransitionEnd(modalTransitionDuration); + + this._element.focus(); + } else { + this.hide(); + } + }; + + _proto._showElement = function _showElement(relatedTarget) { + var _this4 = this; + + var transition = $(this._element).hasClass(CLASS_NAME_FADE$1); + var modalBody = this._dialog ? this._dialog.querySelector(SELECTOR_MODAL_BODY) : null; + + if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { + // Don't move modal's DOM position + document.body.appendChild(this._element); + } + + this._element.style.display = 'block'; + + this._element.removeAttribute('aria-hidden'); + + this._element.setAttribute('aria-modal', true); + + if ($(this._dialog).hasClass(CLASS_NAME_SCROLLABLE) && modalBody) { + modalBody.scrollTop = 0; + } else { + this._element.scrollTop = 0; + } + + if (transition) { + Util.reflow(this._element); + } + + $(this._element).addClass(CLASS_NAME_SHOW$3); + + if (this._config.focus) { + this._enforceFocus(); + } + + var shownEvent = $.Event(EVENT_SHOWN$2, { + relatedTarget: relatedTarget + }); + + var transitionComplete = function transitionComplete() { + if (_this4._config.focus) { + _this4._element.focus(); + } + + _this4._isTransitioning = false; + $(_this4._element).trigger(shownEvent); + }; + + if (transition) { + var transitionDuration = Util.getTransitionDurationFromElement(this._dialog); + $(this._dialog).one(Util.TRANSITION_END, transitionComplete).emulateTransitionEnd(transitionDuration); + } else { + transitionComplete(); + } + }; + + _proto._enforceFocus = function _enforceFocus() { + var _this5 = this; + + $(document).off(EVENT_FOCUSIN) // Guard against infinite focus loop + .on(EVENT_FOCUSIN, function (event) { + if (document !== event.target && _this5._element !== event.target && $(_this5._element).has(event.target).length === 0) { + _this5._element.focus(); + } + }); + }; + + _proto._setEscapeEvent = function _setEscapeEvent() { + var _this6 = this; + + if (this._isShown) { + $(this._element).on(EVENT_KEYDOWN_DISMISS, function (event) { + if (_this6._config.keyboard && event.which === ESCAPE_KEYCODE$1) { + event.preventDefault(); + + _this6.hide(); + } else if (!_this6._config.keyboard && event.which === ESCAPE_KEYCODE$1) { + _this6._triggerBackdropTransition(); + } + }); + } else if (!this._isShown) { + $(this._element).off(EVENT_KEYDOWN_DISMISS); + } + }; + + _proto._setResizeEvent = function _setResizeEvent() { + var _this7 = this; + + if (this._isShown) { + $(window).on(EVENT_RESIZE, function (event) { + return _this7.handleUpdate(event); + }); + } else { + $(window).off(EVENT_RESIZE); + } + }; + + _proto._hideModal = function _hideModal() { + var _this8 = this; + + this._element.style.display = 'none'; + + this._element.setAttribute('aria-hidden', true); + + this._element.removeAttribute('aria-modal'); + + this._isTransitioning = false; + + this._showBackdrop(function () { + $(document.body).removeClass(CLASS_NAME_OPEN); + + _this8._resetAdjustments(); + + _this8._resetScrollbar(); + + $(_this8._element).trigger(EVENT_HIDDEN$2); + }); + }; + + _proto._removeBackdrop = function _removeBackdrop() { + if (this._backdrop) { + $(this._backdrop).remove(); + this._backdrop = null; + } + }; + + _proto._showBackdrop = function _showBackdrop(callback) { + var _this9 = this; + + var animate = $(this._element).hasClass(CLASS_NAME_FADE$1) ? CLASS_NAME_FADE$1 : ''; + + if (this._isShown && this._config.backdrop) { + this._backdrop = document.createElement('div'); + this._backdrop.className = CLASS_NAME_BACKDROP; + + if (animate) { + this._backdrop.classList.add(animate); + } + + $(this._backdrop).appendTo(document.body); + $(this._element).on(EVENT_CLICK_DISMISS, function (event) { + if (_this9._ignoreBackdropClick) { + _this9._ignoreBackdropClick = false; + return; + } + + if (event.target !== event.currentTarget) { + return; + } + + _this9._triggerBackdropTransition(); + }); + + if (animate) { + Util.reflow(this._backdrop); + } + + $(this._backdrop).addClass(CLASS_NAME_SHOW$3); + + if (!callback) { + return; + } + + if (!animate) { + callback(); + return; + } + + var backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop); + $(this._backdrop).one(Util.TRANSITION_END, callback).emulateTransitionEnd(backdropTransitionDuration); + } else if (!this._isShown && this._backdrop) { + $(this._backdrop).removeClass(CLASS_NAME_SHOW$3); + + var callbackRemove = function callbackRemove() { + _this9._removeBackdrop(); + + if (callback) { + callback(); + } + }; + + if ($(this._element).hasClass(CLASS_NAME_FADE$1)) { + var _backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop); + + $(this._backdrop).one(Util.TRANSITION_END, callbackRemove).emulateTransitionEnd(_backdropTransitionDuration); + } else { + callbackRemove(); + } + } else if (callback) { + callback(); + } + } // ---------------------------------------------------------------------- + // the following methods are used to handle overflowing modals + // todo (fat): these should probably be refactored out of modal.js + // ---------------------------------------------------------------------- + ; + + _proto._adjustDialog = function _adjustDialog() { + var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; + + if (!this._isBodyOverflowing && isModalOverflowing) { + this._element.style.paddingLeft = this._scrollbarWidth + "px"; + } + + if (this._isBodyOverflowing && !isModalOverflowing) { + this._element.style.paddingRight = this._scrollbarWidth + "px"; + } + }; + + _proto._resetAdjustments = function _resetAdjustments() { + this._element.style.paddingLeft = ''; + this._element.style.paddingRight = ''; + }; + + _proto._checkScrollbar = function _checkScrollbar() { + var rect = document.body.getBoundingClientRect(); + this._isBodyOverflowing = Math.round(rect.left + rect.right) < window.innerWidth; + this._scrollbarWidth = this._getScrollbarWidth(); + }; + + _proto._setScrollbar = function _setScrollbar() { + var _this10 = this; + + if (this._isBodyOverflowing) { + // Note: DOMNode.style.paddingRight returns the actual value or '' if not set + // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set + var fixedContent = [].slice.call(document.querySelectorAll(SELECTOR_FIXED_CONTENT)); + var stickyContent = [].slice.call(document.querySelectorAll(SELECTOR_STICKY_CONTENT)); // Adjust fixed content padding + + $(fixedContent).each(function (index, element) { + var actualPadding = element.style.paddingRight; + var calculatedPadding = $(element).css('padding-right'); + $(element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this10._scrollbarWidth + "px"); + }); // Adjust sticky content margin + + $(stickyContent).each(function (index, element) { + var actualMargin = element.style.marginRight; + var calculatedMargin = $(element).css('margin-right'); + $(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) - _this10._scrollbarWidth + "px"); + }); // Adjust body padding + + var actualPadding = document.body.style.paddingRight; + var calculatedPadding = $(document.body).css('padding-right'); + $(document.body).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + this._scrollbarWidth + "px"); + } + + $(document.body).addClass(CLASS_NAME_OPEN); + }; + + _proto._resetScrollbar = function _resetScrollbar() { + // Restore fixed content padding + var fixedContent = [].slice.call(document.querySelectorAll(SELECTOR_FIXED_CONTENT)); + $(fixedContent).each(function (index, element) { + var padding = $(element).data('padding-right'); + $(element).removeData('padding-right'); + element.style.paddingRight = padding ? padding : ''; + }); // Restore sticky content + + var elements = [].slice.call(document.querySelectorAll("" + SELECTOR_STICKY_CONTENT)); + $(elements).each(function (index, element) { + var margin = $(element).data('margin-right'); + + if (typeof margin !== 'undefined') { + $(element).css('margin-right', margin).removeData('margin-right'); + } + }); // Restore body padding + + var padding = $(document.body).data('padding-right'); + $(document.body).removeData('padding-right'); + document.body.style.paddingRight = padding ? padding : ''; + }; + + _proto._getScrollbarWidth = function _getScrollbarWidth() { + // thx d.walsh + var scrollDiv = document.createElement('div'); + scrollDiv.className = CLASS_NAME_SCROLLBAR_MEASURER; + document.body.appendChild(scrollDiv); + var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth; + document.body.removeChild(scrollDiv); + return scrollbarWidth; + } // Static + ; + + Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) { + return this.each(function () { + var data = $(this).data(DATA_KEY$5); + + var _config = _objectSpread2(_objectSpread2(_objectSpread2({}, Default$3), $(this).data()), typeof config === 'object' && config ? config : {}); + + if (!data) { + data = new Modal(this, _config); + $(this).data(DATA_KEY$5, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](relatedTarget); + } else if (_config.show) { + data.show(relatedTarget); + } + }); + }; + + _createClass(Modal, null, [{ + key: "VERSION", + get: function get() { + return VERSION$5; + } + }, { + key: "Default", + get: function get() { + return Default$3; + } + }]); + + return Modal; + }(); + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + $(document).on(EVENT_CLICK_DATA_API$5, SELECTOR_DATA_TOGGLE$3, function (event) { + var _this11 = this; + + var target; + var selector = Util.getSelectorFromElement(this); + + if (selector) { + target = document.querySelector(selector); + } + + var config = $(target).data(DATA_KEY$5) ? 'toggle' : _objectSpread2(_objectSpread2({}, $(target).data()), $(this).data()); + + if (this.tagName === 'A' || this.tagName === 'AREA') { + event.preventDefault(); + } + + var $target = $(target).one(EVENT_SHOW$2, function (showEvent) { + if (showEvent.isDefaultPrevented()) { + // Only register focus restorer if modal will actually get shown + return; + } + + $target.one(EVENT_HIDDEN$2, function () { + if ($(_this11).is(':visible')) { + _this11.focus(); + } + }); + }); + + Modal._jQueryInterface.call($(target), config, this); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + $.fn[NAME$5] = Modal._jQueryInterface; + $.fn[NAME$5].Constructor = Modal; + + $.fn[NAME$5].noConflict = function () { + $.fn[NAME$5] = JQUERY_NO_CONFLICT$5; + return Modal._jQueryInterface; + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v4.5.0): tools/sanitizer.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + var uriAttrs = ['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']; + var ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i; + var DefaultWhitelist = { + // Global attributes allowed on any supplied element below. + '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN], + a: ['target', 'href', 'title', 'rel'], + area: [], + b: [], + br: [], + col: [], + code: [], + div: [], + em: [], + hr: [], + h1: [], + h2: [], + h3: [], + h4: [], + h5: [], + h6: [], + i: [], + img: ['src', 'srcset', 'alt', 'title', 'width', 'height'], + li: [], + ol: [], + p: [], + pre: [], + s: [], + small: [], + span: [], + sub: [], + sup: [], + strong: [], + u: [], + ul: [] + }; + /** + * A pattern that recognizes a commonly useful subset of URLs that are safe. + * + * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts + */ + + var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/gi; + /** + * A pattern that matches safe data URLs. Only matches image, video and audio types. + * + * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts + */ + + var DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i; + + function allowedAttribute(attr, allowedAttributeList) { + var attrName = attr.nodeName.toLowerCase(); + + if (allowedAttributeList.indexOf(attrName) !== -1) { + if (uriAttrs.indexOf(attrName) !== -1) { + return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN)); + } + + return true; + } + + var regExp = allowedAttributeList.filter(function (attrRegex) { + return attrRegex instanceof RegExp; + }); // Check if a regular expression validates the attribute. + + for (var i = 0, len = regExp.length; i < len; i++) { + if (attrName.match(regExp[i])) { + return true; + } + } + + return false; + } + + function sanitizeHtml(unsafeHtml, whiteList, sanitizeFn) { + if (unsafeHtml.length === 0) { + return unsafeHtml; + } + + if (sanitizeFn && typeof sanitizeFn === 'function') { + return sanitizeFn(unsafeHtml); + } + + var domParser = new window.DOMParser(); + var createdDocument = domParser.parseFromString(unsafeHtml, 'text/html'); + var whitelistKeys = Object.keys(whiteList); + var elements = [].slice.call(createdDocument.body.querySelectorAll('*')); + + var _loop = function _loop(i, len) { + var el = elements[i]; + var elName = el.nodeName.toLowerCase(); + + if (whitelistKeys.indexOf(el.nodeName.toLowerCase()) === -1) { + el.parentNode.removeChild(el); + return "continue"; + } + + var attributeList = [].slice.call(el.attributes); + var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []); + attributeList.forEach(function (attr) { + if (!allowedAttribute(attr, whitelistedAttributes)) { + el.removeAttribute(attr.nodeName); + } + }); + }; + + for (var i = 0, len = elements.length; i < len; i++) { + var _ret = _loop(i); + + if (_ret === "continue") continue; + } + + return createdDocument.body.innerHTML; + } + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$6 = 'tooltip'; + var VERSION$6 = '4.5.0'; + var DATA_KEY$6 = 'bs.tooltip'; + var EVENT_KEY$6 = "." + DATA_KEY$6; + var JQUERY_NO_CONFLICT$6 = $.fn[NAME$6]; + var CLASS_PREFIX = 'bs-tooltip'; + var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g'); + var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn']; + var DefaultType$4 = { + animation: 'boolean', + template: 'string', + title: '(string|element|function)', + trigger: 'string', + delay: '(number|object)', + html: 'boolean', + selector: '(string|boolean)', + placement: '(string|function)', + offset: '(number|string|function)', + container: '(string|element|boolean)', + fallbackPlacement: '(string|array)', + boundary: '(string|element)', + sanitize: 'boolean', + sanitizeFn: '(null|function)', + whiteList: 'object', + popperConfig: '(null|object)' + }; + var AttachmentMap = { + AUTO: 'auto', + TOP: 'top', + RIGHT: 'right', + BOTTOM: 'bottom', + LEFT: 'left' + }; + var Default$4 = { + animation: true, + template: '

', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + selector: false, + placement: 'top', + offset: 0, + container: false, + fallbackPlacement: 'flip', + boundary: 'scrollParent', + sanitize: true, + sanitizeFn: null, + whiteList: DefaultWhitelist, + popperConfig: null + }; + var HOVER_STATE_SHOW = 'show'; + var HOVER_STATE_OUT = 'out'; + var Event = { + HIDE: "hide" + EVENT_KEY$6, + HIDDEN: "hidden" + EVENT_KEY$6, + SHOW: "show" + EVENT_KEY$6, + SHOWN: "shown" + EVENT_KEY$6, + INSERTED: "inserted" + EVENT_KEY$6, + CLICK: "click" + EVENT_KEY$6, + FOCUSIN: "focusin" + EVENT_KEY$6, + FOCUSOUT: "focusout" + EVENT_KEY$6, + MOUSEENTER: "mouseenter" + EVENT_KEY$6, + MOUSELEAVE: "mouseleave" + EVENT_KEY$6 + }; + var CLASS_NAME_FADE$2 = 'fade'; + var CLASS_NAME_SHOW$4 = 'show'; + var SELECTOR_TOOLTIP_INNER = '.tooltip-inner'; + var SELECTOR_ARROW = '.arrow'; + var TRIGGER_HOVER = 'hover'; + var TRIGGER_FOCUS = 'focus'; + var TRIGGER_CLICK = 'click'; + var TRIGGER_MANUAL = 'manual'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + var Tooltip = /*#__PURE__*/function () { + function Tooltip(element, config) { + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s tooltips require Popper.js (https://popper.js.org/)'); + } // private + + + this._isEnabled = true; + this._timeout = 0; + this._hoverState = ''; + this._activeTrigger = {}; + this._popper = null; // Protected + + this.element = element; + this.config = this._getConfig(config); + this.tip = null; + + this._setListeners(); + } // Getters + + + var _proto = Tooltip.prototype; + + // Public + _proto.enable = function enable() { + this._isEnabled = true; + }; + + _proto.disable = function disable() { + this._isEnabled = false; + }; + + _proto.toggleEnabled = function toggleEnabled() { + this._isEnabled = !this._isEnabled; + }; + + _proto.toggle = function toggle(event) { + if (!this._isEnabled) { + return; + } + + if (event) { + var dataKey = this.constructor.DATA_KEY; + var context = $(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $(event.currentTarget).data(dataKey, context); + } + + context._activeTrigger.click = !context._activeTrigger.click; + + if (context._isWithActiveTrigger()) { + context._enter(null, context); + } else { + context._leave(null, context); + } + } else { + if ($(this.getTipElement()).hasClass(CLASS_NAME_SHOW$4)) { + this._leave(null, this); + + return; + } + + this._enter(null, this); + } + }; + + _proto.dispose = function dispose() { + clearTimeout(this._timeout); + $.removeData(this.element, this.constructor.DATA_KEY); + $(this.element).off(this.constructor.EVENT_KEY); + $(this.element).closest('.modal').off('hide.bs.modal', this._hideModalHandler); + + if (this.tip) { + $(this.tip).remove(); + } + + this._isEnabled = null; + this._timeout = null; + this._hoverState = null; + this._activeTrigger = null; + + if (this._popper) { + this._popper.destroy(); + } + + this._popper = null; + this.element = null; + this.config = null; + this.tip = null; + }; + + _proto.show = function show() { + var _this = this; + + if ($(this.element).css('display') === 'none') { + throw new Error('Please use show on visible elements'); + } + + var showEvent = $.Event(this.constructor.Event.SHOW); + + if (this.isWithContent() && this._isEnabled) { + $(this.element).trigger(showEvent); + var shadowRoot = Util.findShadowRoot(this.element); + var isInTheDom = $.contains(shadowRoot !== null ? shadowRoot : this.element.ownerDocument.documentElement, this.element); + + if (showEvent.isDefaultPrevented() || !isInTheDom) { + return; + } + + var tip = this.getTipElement(); + var tipId = Util.getUID(this.constructor.NAME); + tip.setAttribute('id', tipId); + this.element.setAttribute('aria-describedby', tipId); + this.setContent(); + + if (this.config.animation) { + $(tip).addClass(CLASS_NAME_FADE$2); + } + + var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement; + + var attachment = this._getAttachment(placement); + + this.addAttachmentClass(attachment); + + var container = this._getContainer(); + + $(tip).data(this.constructor.DATA_KEY, this); + + if (!$.contains(this.element.ownerDocument.documentElement, this.tip)) { + $(tip).appendTo(container); + } + + $(this.element).trigger(this.constructor.Event.INSERTED); + this._popper = new Popper(this.element, tip, this._getPopperConfig(attachment)); + $(tip).addClass(CLASS_NAME_SHOW$4); // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + if ('ontouchstart' in document.documentElement) { + $(document.body).children().on('mouseover', null, $.noop); + } + + var complete = function complete() { + if (_this.config.animation) { + _this._fixTransition(); + } + + var prevHoverState = _this._hoverState; + _this._hoverState = null; + $(_this.element).trigger(_this.constructor.Event.SHOWN); + + if (prevHoverState === HOVER_STATE_OUT) { + _this._leave(null, _this); + } + }; + + if ($(this.tip).hasClass(CLASS_NAME_FADE$2)) { + var transitionDuration = Util.getTransitionDurationFromElement(this.tip); + $(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + } + }; + + _proto.hide = function hide(callback) { + var _this2 = this; + + var tip = this.getTipElement(); + var hideEvent = $.Event(this.constructor.Event.HIDE); + + var complete = function complete() { + if (_this2._hoverState !== HOVER_STATE_SHOW && tip.parentNode) { + tip.parentNode.removeChild(tip); + } + + _this2._cleanTipClass(); + + _this2.element.removeAttribute('aria-describedby'); + + $(_this2.element).trigger(_this2.constructor.Event.HIDDEN); + + if (_this2._popper !== null) { + _this2._popper.destroy(); + } + + if (callback) { + callback(); + } + }; + + $(this.element).trigger(hideEvent); + + if (hideEvent.isDefaultPrevented()) { + return; + } + + $(tip).removeClass(CLASS_NAME_SHOW$4); // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + if ('ontouchstart' in document.documentElement) { + $(document.body).children().off('mouseover', null, $.noop); + } + + this._activeTrigger[TRIGGER_CLICK] = false; + this._activeTrigger[TRIGGER_FOCUS] = false; + this._activeTrigger[TRIGGER_HOVER] = false; + + if ($(this.tip).hasClass(CLASS_NAME_FADE$2)) { + var transitionDuration = Util.getTransitionDurationFromElement(tip); + $(tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); + } else { + complete(); + } + + this._hoverState = ''; + }; + + _proto.update = function update() { + if (this._popper !== null) { + this._popper.scheduleUpdate(); + } + } // Protected + ; + + _proto.isWithContent = function isWithContent() { + return Boolean(this.getTitle()); + }; + + _proto.addAttachmentClass = function addAttachmentClass(attachment) { + $(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment); + }; + + _proto.getTipElement = function getTipElement() { + this.tip = this.tip || $(this.config.template)[0]; + return this.tip; + }; + + _proto.setContent = function setContent() { + var tip = this.getTipElement(); + this.setElementContent($(tip.querySelectorAll(SELECTOR_TOOLTIP_INNER)), this.getTitle()); + $(tip).removeClass(CLASS_NAME_FADE$2 + " " + CLASS_NAME_SHOW$4); + }; + + _proto.setElementContent = function setElementContent($element, content) { + if (typeof content === 'object' && (content.nodeType || content.jquery)) { + // Content is a DOM node or a jQuery + if (this.config.html) { + if (!$(content).parent().is($element)) { + $element.empty().append(content); + } + } else { + $element.text($(content).text()); + } + + return; + } + + if (this.config.html) { + if (this.config.sanitize) { + content = sanitizeHtml(content, this.config.whiteList, this.config.sanitizeFn); + } + + $element.html(content); + } else { + $element.text(content); + } + }; + + _proto.getTitle = function getTitle() { + var title = this.element.getAttribute('data-original-title'); + + if (!title) { + title = typeof this.config.title === 'function' ? this.config.title.call(this.element) : this.config.title; + } + + return title; + } // Private + ; + + _proto._getPopperConfig = function _getPopperConfig(attachment) { + var _this3 = this; + + var defaultBsConfig = { + placement: attachment, + modifiers: { + offset: this._getOffset(), + flip: { + behavior: this.config.fallbackPlacement + }, + arrow: { + element: SELECTOR_ARROW + }, + preventOverflow: { + boundariesElement: this.config.boundary + } + }, + onCreate: function onCreate(data) { + if (data.originalPlacement !== data.placement) { + _this3._handlePopperPlacementChange(data); + } + }, + onUpdate: function onUpdate(data) { + return _this3._handlePopperPlacementChange(data); + } + }; + return _objectSpread2(_objectSpread2({}, defaultBsConfig), this.config.popperConfig); + }; + + _proto._getOffset = function _getOffset() { + var _this4 = this; + + var offset = {}; + + if (typeof this.config.offset === 'function') { + offset.fn = function (data) { + data.offsets = _objectSpread2(_objectSpread2({}, data.offsets), _this4.config.offset(data.offsets, _this4.element) || {}); + return data; + }; + } else { + offset.offset = this.config.offset; + } + + return offset; + }; + + _proto._getContainer = function _getContainer() { + if (this.config.container === false) { + return document.body; + } + + if (Util.isElement(this.config.container)) { + return $(this.config.container); + } + + return $(document).find(this.config.container); + }; + + _proto._getAttachment = function _getAttachment(placement) { + return AttachmentMap[placement.toUpperCase()]; + }; + + _proto._setListeners = function _setListeners() { + var _this5 = this; + + var triggers = this.config.trigger.split(' '); + triggers.forEach(function (trigger) { + if (trigger === 'click') { + $(_this5.element).on(_this5.constructor.Event.CLICK, _this5.config.selector, function (event) { + return _this5.toggle(event); + }); + } else if (trigger !== TRIGGER_MANUAL) { + var eventIn = trigger === TRIGGER_HOVER ? _this5.constructor.Event.MOUSEENTER : _this5.constructor.Event.FOCUSIN; + var eventOut = trigger === TRIGGER_HOVER ? _this5.constructor.Event.MOUSELEAVE : _this5.constructor.Event.FOCUSOUT; + $(_this5.element).on(eventIn, _this5.config.selector, function (event) { + return _this5._enter(event); + }).on(eventOut, _this5.config.selector, function (event) { + return _this5._leave(event); + }); + } + }); + + this._hideModalHandler = function () { + if (_this5.element) { + _this5.hide(); + } + }; + + $(this.element).closest('.modal').on('hide.bs.modal', this._hideModalHandler); + + if (this.config.selector) { + this.config = _objectSpread2(_objectSpread2({}, this.config), {}, { + trigger: 'manual', + selector: '' + }); + } else { + this._fixTitle(); + } + }; + + _proto._fixTitle = function _fixTitle() { + var titleType = typeof this.element.getAttribute('data-original-title'); + + if (this.element.getAttribute('title') || titleType !== 'string') { + this.element.setAttribute('data-original-title', this.element.getAttribute('title') || ''); + this.element.setAttribute('title', ''); + } + }; + + _proto._enter = function _enter(event, context) { + var dataKey = this.constructor.DATA_KEY; + context = context || $(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $(event.currentTarget).data(dataKey, context); + } + + if (event) { + context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true; + } + + if ($(context.getTipElement()).hasClass(CLASS_NAME_SHOW$4) || context._hoverState === HOVER_STATE_SHOW) { + context._hoverState = HOVER_STATE_SHOW; + return; + } + + clearTimeout(context._timeout); + context._hoverState = HOVER_STATE_SHOW; + + if (!context.config.delay || !context.config.delay.show) { + context.show(); + return; + } + + context._timeout = setTimeout(function () { + if (context._hoverState === HOVER_STATE_SHOW) { + context.show(); + } + }, context.config.delay.show); + }; + + _proto._leave = function _leave(event, context) { + var dataKey = this.constructor.DATA_KEY; + context = context || $(event.currentTarget).data(dataKey); + + if (!context) { + context = new this.constructor(event.currentTarget, this._getDelegateConfig()); + $(event.currentTarget).data(dataKey, context); + } + + if (event) { + context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = false; + } + + if (context._isWithActiveTrigger()) { + return; + } + + clearTimeout(context._timeout); + context._hoverState = HOVER_STATE_OUT; + + if (!context.config.delay || !context.config.delay.hide) { + context.hide(); + return; + } + + context._timeout = setTimeout(function () { + if (context._hoverState === HOVER_STATE_OUT) { + context.hide(); + } + }, context.config.delay.hide); + }; + + _proto._isWithActiveTrigger = function _isWithActiveTrigger() { + for (var trigger in this._activeTrigger) { + if (this._activeTrigger[trigger]) { + return true; + } + } + + return false; + }; + + _proto._getConfig = function _getConfig(config) { + var dataAttributes = $(this.element).data(); + Object.keys(dataAttributes).forEach(function (dataAttr) { + if (DISALLOWED_ATTRIBUTES.indexOf(dataAttr) !== -1) { + delete dataAttributes[dataAttr]; + } + }); + config = _objectSpread2(_objectSpread2(_objectSpread2({}, this.constructor.Default), dataAttributes), typeof config === 'object' && config ? config : {}); + + if (typeof config.delay === 'number') { + config.delay = { + show: config.delay, + hide: config.delay + }; + } + + if (typeof config.title === 'number') { + config.title = config.title.toString(); + } + + if (typeof config.content === 'number') { + config.content = config.content.toString(); + } + + Util.typeCheckConfig(NAME$6, config, this.constructor.DefaultType); + + if (config.sanitize) { + config.template = sanitizeHtml(config.template, config.whiteList, config.sanitizeFn); + } + + return config; + }; + + _proto._getDelegateConfig = function _getDelegateConfig() { + var config = {}; + + if (this.config) { + for (var key in this.config) { + if (this.constructor.Default[key] !== this.config[key]) { + config[key] = this.config[key]; + } + } + } + + return config; + }; + + _proto._cleanTipClass = function _cleanTipClass() { + var $tip = $(this.getTipElement()); + var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX); + + if (tabClass !== null && tabClass.length) { + $tip.removeClass(tabClass.join('')); + } + }; + + _proto._handlePopperPlacementChange = function _handlePopperPlacementChange(popperData) { + this.tip = popperData.instance.popper; + + this._cleanTipClass(); + + this.addAttachmentClass(this._getAttachment(popperData.placement)); + }; + + _proto._fixTransition = function _fixTransition() { + var tip = this.getTipElement(); + var initConfigAnimation = this.config.animation; + + if (tip.getAttribute('x-placement') !== null) { + return; + } + + $(tip).removeClass(CLASS_NAME_FADE$2); + this.config.animation = false; + this.hide(); + this.show(); + this.config.animation = initConfigAnimation; + } // Static + ; + + Tooltip._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$6); + + var _config = typeof config === 'object' && config; + + if (!data && /dispose|hide/.test(config)) { + return; + } + + if (!data) { + data = new Tooltip(this, _config); + $(this).data(DATA_KEY$6, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Tooltip, null, [{ + key: "VERSION", + get: function get() { + return VERSION$6; + } + }, { + key: "Default", + get: function get() { + return Default$4; + } + }, { + key: "NAME", + get: function get() { + return NAME$6; + } + }, { + key: "DATA_KEY", + get: function get() { + return DATA_KEY$6; + } + }, { + key: "Event", + get: function get() { + return Event; + } + }, { + key: "EVENT_KEY", + get: function get() { + return EVENT_KEY$6; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$4; + } + }]); + + return Tooltip; + }(); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + + $.fn[NAME$6] = Tooltip._jQueryInterface; + $.fn[NAME$6].Constructor = Tooltip; + + $.fn[NAME$6].noConflict = function () { + $.fn[NAME$6] = JQUERY_NO_CONFLICT$6; + return Tooltip._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$7 = 'popover'; + var VERSION$7 = '4.5.0'; + var DATA_KEY$7 = 'bs.popover'; + var EVENT_KEY$7 = "." + DATA_KEY$7; + var JQUERY_NO_CONFLICT$7 = $.fn[NAME$7]; + var CLASS_PREFIX$1 = 'bs-popover'; + var BSCLS_PREFIX_REGEX$1 = new RegExp("(^|\\s)" + CLASS_PREFIX$1 + "\\S+", 'g'); + + var Default$5 = _objectSpread2(_objectSpread2({}, Tooltip.Default), {}, { + placement: 'right', + trigger: 'click', + content: '', + template: '' + }); + + var DefaultType$5 = _objectSpread2(_objectSpread2({}, Tooltip.DefaultType), {}, { + content: '(string|element|function)' + }); + + var CLASS_NAME_FADE$3 = 'fade'; + var CLASS_NAME_SHOW$5 = 'show'; + var SELECTOR_TITLE = '.popover-header'; + var SELECTOR_CONTENT = '.popover-body'; + var Event$1 = { + HIDE: "hide" + EVENT_KEY$7, + HIDDEN: "hidden" + EVENT_KEY$7, + SHOW: "show" + EVENT_KEY$7, + SHOWN: "shown" + EVENT_KEY$7, + INSERTED: "inserted" + EVENT_KEY$7, + CLICK: "click" + EVENT_KEY$7, + FOCUSIN: "focusin" + EVENT_KEY$7, + FOCUSOUT: "focusout" + EVENT_KEY$7, + MOUSEENTER: "mouseenter" + EVENT_KEY$7, + MOUSELEAVE: "mouseleave" + EVENT_KEY$7 + }; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + var Popover = /*#__PURE__*/function (_Tooltip) { + _inheritsLoose(Popover, _Tooltip); + + function Popover() { + return _Tooltip.apply(this, arguments) || this; + } + + var _proto = Popover.prototype; + + // Overrides + _proto.isWithContent = function isWithContent() { + return this.getTitle() || this._getContent(); + }; + + _proto.addAttachmentClass = function addAttachmentClass(attachment) { + $(this.getTipElement()).addClass(CLASS_PREFIX$1 + "-" + attachment); + }; + + _proto.getTipElement = function getTipElement() { + this.tip = this.tip || $(this.config.template)[0]; + return this.tip; + }; + + _proto.setContent = function setContent() { + var $tip = $(this.getTipElement()); // We use append for html objects to maintain js events + + this.setElementContent($tip.find(SELECTOR_TITLE), this.getTitle()); + + var content = this._getContent(); + + if (typeof content === 'function') { + content = content.call(this.element); + } + + this.setElementContent($tip.find(SELECTOR_CONTENT), content); + $tip.removeClass(CLASS_NAME_FADE$3 + " " + CLASS_NAME_SHOW$5); + } // Private + ; + + _proto._getContent = function _getContent() { + return this.element.getAttribute('data-content') || this.config.content; + }; + + _proto._cleanTipClass = function _cleanTipClass() { + var $tip = $(this.getTipElement()); + var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX$1); + + if (tabClass !== null && tabClass.length > 0) { + $tip.removeClass(tabClass.join('')); + } + } // Static + ; + + Popover._jQueryInterface = function _jQueryInterface(config) { + return this.each(function () { + var data = $(this).data(DATA_KEY$7); + + var _config = typeof config === 'object' ? config : null; + + if (!data && /dispose|hide/.test(config)) { + return; + } + + if (!data) { + data = new Popover(this, _config); + $(this).data(DATA_KEY$7, data); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError("No method named \"" + config + "\""); + } + + data[config](); + } + }); + }; + + _createClass(Popover, null, [{ + key: "VERSION", + // Getters + get: function get() { + return VERSION$7; + } + }, { + key: "Default", + get: function get() { + return Default$5; + } + }, { + key: "NAME", + get: function get() { + return NAME$7; + } + }, { + key: "DATA_KEY", + get: function get() { + return DATA_KEY$7; + } + }, { + key: "Event", + get: function get() { + return Event$1; + } + }, { + key: "EVENT_KEY", + get: function get() { + return EVENT_KEY$7; + } + }, { + key: "DefaultType", + get: function get() { + return DefaultType$5; + } + }]); + + return Popover; + }(Tooltip); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + + $.fn[NAME$7] = Popover._jQueryInterface; + $.fn[NAME$7].Constructor = Popover; + + $.fn[NAME$7].noConflict = function () { + $.fn[NAME$7] = JQUERY_NO_CONFLICT$7; + return Popover._jQueryInterface; + }; + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + var NAME$8 = 'scrollspy'; + var VERSION$8 = '4.5.0'; + var DATA_KEY$8 = 'bs.scrollspy'; + var EVENT_KEY$8 = "." + DATA_KEY$8; + var DATA_API_KEY$6 = '.data-api'; + var JQUERY_NO_CONFLICT$8 = $.fn[NAME$8]; + var Default$6 = { + offset: 10, + method: 'auto', + target: '' + }; + var DefaultType$6 = { + offset: 'number', + method: 'string', + target: '(string|element)' + }; + var EVENT_ACTIVATE = "activate" + EVENT_KEY$8; + var EVENT_SCROLL = "scroll" + EVENT_KEY$8; + var EVENT_LOAD_DATA_API$2 = "load" + EVENT_KEY$8 + DATA_API_KEY$6; + var CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'; + var CLASS_NAME_ACTIVE$2 = 'active'; + var SELECTOR_DATA_SPY = '[data-spy="scroll"]'; + var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'; + var SELECTOR_NAV_LINKS = '.nav-link'; + var SELECTOR_NAV_ITEMS = '.nav-item'; + var SELECTOR_LIST_ITEMS = '.list-group-item'; + var SELECTOR_DROPDOWN = '.dropdown'; + var SELECTOR_DROPDOWN_ITEMS = '.dropdown-item'; + var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'; + var METHOD_OFFSET = 'offset'; + var METHOD_POSITION = 'position'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + var ScrollSpy = /*#__PURE__*/function () { + function ScrollSpy(element, config) { + var _this = this; + + this._element = element; + this._scrollElement = element.tagName === 'BODY' ? window : element; + this._config = this._getConfig(config); + this._selector = this._config.target + " " + SELECTOR_NAV_LINKS + "," + (this._config.target + " " + SELECTOR_LIST_ITEMS + ",") + (this._config.target + " " + SELECTOR_DROPDOWN_ITEMS); + this._offsets = []; + this._targets = []; + this._activeTarget = null; + this._scrollHeight = 0; + $(this._scrollElement).on(EVENT_SCROLL, function (event) { + return _this._process(event); + }); + this.refresh(); + + this._process(); + } // Getters + + + var _proto = ScrollSpy.prototype; + + // Public + _proto.refresh = function refresh() { + var _this2 = this; + + var autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION; + var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method; + var offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0; + this._offsets = []; + this._targets = []; + this._scrollHeight = this._getScrollHeight(); + var targets = [].slice.call(document.querySelectorAll(this._selector)); + targets.map(function (element) { + var target; + var targetSelector = Util.getSelectorFromElement(element); + + if (targetSelector) { + target = document.querySelector(targetSelector); + } + + if (target) { + var targetBCR = target.getBoundingClientRect(); + + if (targetBCR.width || targetBCR.height) { + // TODO (fat): remove sketch reliance on jQuery position/offset + return [$(target)[offsetMethod]().top + offsetBase, targetSelector]; + } + } + + return null; + }).filter(function (item) { + return item; + }).sort(function (a, b) { + return a[0] - b[0]; + }).forEach(function (item) { + _this2._offsets.push(item[0]); + + _this2._targets.push(item[1]); + }); + }; + + _proto.dispose = function dispose() { + $.removeData(this._element, DATA_KEY$8); + $(this._scrollElement).off(EVENT_KEY$8); + this._element = null; + this._scrollElement = null; + this._config = null; + this._selector = null; + this._offsets = null; + this._targets = null; + this._activeTarget = null; + this._scrollHeight = null; + } // Private + ; + + _proto._getConfig = function _getConfig(config) { + config = _objectSpread2(_objectSpread2({}, Default$6), typeof config === 'object' && config ? config : {}); + + if (typeof config.target !== 'string' && Util.isElement(config.target)) { + var id = $(config.target).attr('id'); + + if (!id) { + id = Util.getUID(NAME$8); + $(config.target).attr('id', id); + } + + config.target = "#" + id; + } + + Util.typeCheckConfig(NAME$8, config, DefaultType$6); + return config; + }; + + _proto._getScrollTop = function _getScrollTop() { + return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop; + }; + + _proto._getScrollHeight = function _getScrollHeight() { + return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight); + }; + + _proto._getOffsetHeight = function _getOffsetHeight() { + return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height; + }; + + _proto._process = function _process() { + var scrollTop = this._getScrollTop() + this._config.offset; + + var scrollHeight = this._getScrollHeight(); + + var maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight(); + + if (this._scrollHeight !== scrollHeight) { + this.refresh(); + } + + if (scrollTop >= maxScroll) { + var target = this._targets[this._targets.length - 1]; + + if (this._activeTarget !== target) { + this._activate(target); + } + + return; + } + + if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) { + this._activeTarget = null; + + this._clear(); + + return; + } + + for (var i = this._offsets.length; i--;) { + var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]); + + if (isActiveTarget) { + this._activate(this._targets[i]); + } + } + }; + + _proto._activate = function _activate(target) { + this._activeTarget = target; + + this._clear(); + + var queries = this._selector.split(',').map(function (selector) { + return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]"; + }); + + var $link = $([].slice.call(document.querySelectorAll(queries.join(',')))); + + if ($link.hasClass(CLASS_NAME_DROPDOWN_ITEM)) { + $link.closest(SELECTOR_DROPDOWN).find(SELECTOR_DROPDOWN_TOGGLE).addClass(CLASS_NAME_ACTIVE$2); + $link.addClass(CLASS_NAME_ACTIVE$2); + } else { + // Set triggered link as active + $link.addClass(CLASS_NAME_ACTIVE$2); // Set triggered links parents as active + // With both