From 23a46d9f289c31266a800b661edb985463a625ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20Stawujak?= Date: Tue, 27 Nov 2018 17:46:25 +0100 Subject: [PATCH] SKE-4 --- SystemKonkursow/4.2.1/.gitignore | 9 + SystemKonkursow/4.2.1/LICENSE | 21 + SystemKonkursow/4.2.1/README.md | 33 + SystemKonkursow/4.2.1/_screenshots/Thumbs.db | Bin 0 -> 28160 bytes .../4.2.1/_screenshots/ui-home.png | Bin 0 -> 160697 bytes .../4.2.1/_screenshots/ui-login.png | Bin 0 -> 31870 bytes .../_screenshots/ui-user-create-modal.png | Bin 0 -> 88033 bytes SystemKonkursow/4.2.1/angular/.editorconfig | 12 + SystemKonkursow/4.2.1/angular/.gitignore | 43 + SystemKonkursow/4.2.1/angular/Dockerfile | 3 + .../angular/Properties/launchSettings.json | 27 + SystemKonkursow/4.2.1/angular/README.md | 27 + .../angular/SystemKonkursow.AngularUI.csproj | 24 + .../angular/SystemKonkursow.AngularUI.sln | 33 + SystemKonkursow/4.2.1/angular/angular.json | 249 + SystemKonkursow/4.2.1/angular/app.config | 5 + .../4.2.1/angular/e2e/app.e2e-spec.ts | 14 + SystemKonkursow/4.2.1/angular/e2e/app.po.ts | 11 + .../4.2.1/angular/e2e/tsconfig.json | 19 + SystemKonkursow/4.2.1/angular/karma.conf.js | 41 + .../4.2.1/angular/nswag/refresh.bat | 1 + .../4.2.1/angular/nswag/service.config.nswag | 139 + .../4.2.1/angular/package-lock.json | 10842 ++++++++++++++++ SystemKonkursow/4.2.1/angular/package.json | 91 + .../4.2.1/angular/protractor.conf.js | 32 + .../4.2.1/angular/src/AppPreBootstrap.ts | 70 + .../src/account/account-routing.module.ts | 24 + .../src/account/account.component.html | 20 + .../src/account/account.component.less | 13 + .../angular/src/account/account.component.ts | 36 + .../angular/src/account/account.module.ts | 52 + .../layout/account-languages.component.html | 5 + .../layout/account-languages.component.less | 11 + .../layout/account-languages.component.ts | 39 + .../src/account/login/login.component.html | 40 + .../src/account/login/login.component.less | 12 + .../src/account/login/login.component.ts | 52 + .../src/account/login/login.service.ts | 90 + .../account/register/register.component.html | 48 + .../account/register/register.component.ts | 56 + .../tenant/tenant-change-modal.component.html | 36 + .../tenant/tenant-change-modal.component.ts | 76 + .../tenant/tenant-change.component.html | 8 + .../account/tenant/tenant-change.component.ts | 39 + .../src/app/about/about.component.html | 84 + .../angular/src/app/about/about.component.ts | 16 + .../angular/src/app/app-routing.module.ts | 29 + .../4.2.1/angular/src/app/app.component.html | 19 + .../angular/src/app/app.component.spec.ts | 34 + .../4.2.1/angular/src/app/app.component.ts | 53 + .../4.2.1/angular/src/app/app.module.ts | 74 + .../angular/src/app/home/home.component.html | 310 + .../angular/src/app/home/home.component.ts | 135 + .../app/layout/right-sidebar.component.html | 65 + .../src/app/layout/right-sidebar.component.ts | 70 + .../app/layout/sidebar-footer.component.html | 8 + .../app/layout/sidebar-footer.component.ts | 22 + .../src/app/layout/sidebar-nav.component.html | 60 + .../src/app/layout/sidebar-nav.component.ts | 51 + .../layout/sidebar-user-area.component.html | 15 + .../app/layout/sidebar-user-area.component.ts | 28 + .../topbar-languageswitch.component.html | 12 + .../layout/topbar-languageswitch.component.ts | 44 + .../src/app/layout/topbar.component.html | 27 + .../src/app/layout/topbar.component.ts | 16 + .../create-role/create-role.component.html | 75 + .../create-role/create-role.component.ts | 74 + .../roles/edit-role/edit-role.component.html | 77 + .../roles/edit-role/edit-role.component.ts | 88 + .../src/app/roles/roles.component.html | 59 + .../angular/src/app/roles/roles.component.ts | 62 + .../create-tenant.component.html | 60 + .../create-tenant/create-tenant.component.ts | 55 + .../edit-tenant/edit-tenant.component.html | 47 + .../edit-tenant/edit-tenant.component.ts | 59 + .../src/app/tenants/tenants.component.html | 66 + .../src/app/tenants/tenants.component.ts | 61 + .../create-user/create-user.component.html | 126 + .../create-user/create-user.component.ts | 72 + .../users/edit-user/edit-user.component.html | 102 + .../users/edit-user/edit-user.component.ts | 84 + .../src/app/users/users.component.html | 70 + .../angular/src/app/users/users.component.ts | 62 + .../4.2.1/angular/src/assets/.gitkeep | 0 .../angular/src/assets/app-logo-small.png | Bin 0 -> 731 bytes .../4.2.1/angular/src/assets/appconfig.json | 18 + ...Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2 | Bin 0 -> 1468 bytes ...bGzN4aCrSFhlh3hJtnKITppOI_IvcXXDNrsc.woff2 | Bin 0 -> 14876 bytes ...qZRoncBaCEI3aWxJtnKITppOI_IvcXXDNrsc.woff2 | Bin 0 -> 11728 bytes .../fonts/roboto/CWB0XYA8bzo0kSThX0UTuA.woff2 | Bin 0 -> 14600 bytes ...8OzT71A3E1XOAjvesZW2xOQ-xsNqO47m55DA.woff2 | Bin 0 -> 11788 bytes ...OpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2 | Bin 0 -> 5208 bytes ...IL414wB9rB1IAPRJtnKITppOI_IvcXXDNrsc.woff2 | Bin 0 -> 5124 bytes ...QDm3fVTc1CPuwqhJtnKITppOI_IvcXXDNrsc.woff2 | Bin 0 -> 1400 bytes ...OFocCacKzxwXSOFtXRa8TVwTICgirnJhmVJw.woff2 | Bin 0 -> 14680 bytes ...GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2 | Bin 0 -> 15516 bytes ...XNKAbnjo6_TwHThJtnKITppOI_IvcXXDNrsc.woff2 | Bin 0 -> 9704 bytes ...DbcVyCnfJfjSdfBJtnKITppOI_IvcXXDNrsc.woff2 | Bin 0 -> 7008 bytes ...g_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2 | Bin 0 -> 9848 bytes .../src/assets/fonts/roboto/roboto.css | 112 + ...82MNkS5K0Q4rhqvesZW2xOQ-xsNqO47m55DA.woff2 | Bin 0 -> 7236 bytes .../4.2.1/angular/src/assets/images/user.png | Bin 0 -> 1576 bytes .../angular/src/bsb-theme/css/materialize.css | 416 + .../4.2.1/angular/src/bsb-theme/css/style.css | 8109 ++++++++++++ .../angular/src/bsb-theme/css/style.min.css | 1 + .../src/bsb-theme/css/themes/all-themes.css | 900 ++ .../bsb-theme/css/themes/all-themes.min.css | 1 + .../src/bsb-theme/css/themes/theme-amber.css | 45 + .../bsb-theme/css/themes/theme-amber.min.css | 1 + .../src/bsb-theme/css/themes/theme-black.css | 45 + .../bsb-theme/css/themes/theme-black.min.css | 1 + .../bsb-theme/css/themes/theme-blue-grey.css | 45 + .../css/themes/theme-blue-grey.min.css | 1 + .../src/bsb-theme/css/themes/theme-blue.css | 45 + .../bsb-theme/css/themes/theme-blue.min.css | 1 + .../src/bsb-theme/css/themes/theme-brown.css | 45 + .../bsb-theme/css/themes/theme-brown.min.css | 1 + .../src/bsb-theme/css/themes/theme-cyan.css | 45 + .../bsb-theme/css/themes/theme-cyan.min.css | 1 + .../css/themes/theme-deep-orange.css | 45 + .../css/themes/theme-deep-orange.min.css | 1 + .../css/themes/theme-deep-purple.css | 45 + .../css/themes/theme-deep-purple.min.css | 1 + .../src/bsb-theme/css/themes/theme-green.css | 45 + .../bsb-theme/css/themes/theme-green.min.css | 1 + .../src/bsb-theme/css/themes/theme-grey.css | 45 + .../bsb-theme/css/themes/theme-grey.min.css | 1 + .../src/bsb-theme/css/themes/theme-indigo.css | 45 + .../bsb-theme/css/themes/theme-indigo.min.css | 1 + .../bsb-theme/css/themes/theme-light-blue.css | 45 + .../css/themes/theme-light-blue.min.css | 1 + .../src/bsb-theme/css/themes/theme-lime.css | 45 + .../bsb-theme/css/themes/theme-lime.min.css | 1 + .../src/bsb-theme/css/themes/theme-orange.css | 45 + .../bsb-theme/css/themes/theme-orange.min.css | 1 + .../src/bsb-theme/css/themes/theme-pink.css | 45 + .../bsb-theme/css/themes/theme-pink.min.css | 1 + .../src/bsb-theme/css/themes/theme-purple.css | 45 + .../bsb-theme/css/themes/theme-purple.min.css | 1 + .../src/bsb-theme/css/themes/theme-red.css | 45 + .../bsb-theme/css/themes/theme-red.min.css | 1 + .../src/bsb-theme/css/themes/theme-teal.css | 45 + .../bsb-theme/css/themes/theme-teal.min.css | 1 + .../src/bsb-theme/css/themes/theme-yellow.css | 45 + .../bsb-theme/css/themes/theme-yellow.min.css | 1 + .../bsb-theme/images/user-img-background.jpg | Bin 0 -> 26835 bytes .../4.2.1/angular/src/bsb-theme/js/admin.js | 467 + .../4.2.1/angular/src/bsb-theme/js/demo.js | 62 + .../4.2.1/angular/src/bsb-theme/js/helpers.js | 13 + .../src/bsb-theme/js/jquery.validate.js | 1574 +++ .../src/environments/environment.hmr.ts | 7 + .../src/environments/environment.prod.ts | 7 + .../angular/src/environments/environment.ts | 10 + SystemKonkursow/4.2.1/angular/src/favicon.ico | Bin 0 -> 5430 bytes SystemKonkursow/4.2.1/angular/src/hmr.ts | 15 + SystemKonkursow/4.2.1/angular/src/index.html | 18 + SystemKonkursow/4.2.1/angular/src/main.ts | 33 + .../4.2.1/angular/src/polyfills.ts | 68 + .../4.2.1/angular/src/root-routing.module.ts | 23 + .../4.2.1/angular/src/root.component.ts | 9 + .../4.2.1/angular/src/root.module.ts | 137 + .../4.2.1/angular/src/shared/AppConsts.ts | 20 + .../4.2.1/angular/src/shared/AppEnums.ts | 8 + .../src/shared/animations/routerTransition.ts | 29 + .../angular/src/shared/app-component-base.ts | 56 + .../src/shared/auth/app-auth.service.ts | 13 + .../src/shared/auth/auth-route-guard.ts | 54 + .../4.2.1/angular/src/shared/core.less | 39 + .../directives/material-input.directive.ts | 15 + .../shared/helpers/SignalRAspNetCoreHelper.ts | 21 + .../angular/src/shared/helpers/UrlHelper.ts | 10 + .../angular/src/shared/layout/menu-item.ts | 20 + .../angular/src/shared/nav/app-url.service.ts | 63 + .../shared/paged-listing-component-base.ts | 58 + .../shared/service-proxies/service-proxies.ts | 3418 +++++ .../service-proxies/service-proxy.module.ts | 19 + .../src/shared/session/app-session.service.ts | 79 + .../4.2.1/angular/src/shared/shared.module.ts | 37 + SystemKonkursow/4.2.1/angular/src/test.ts | 32 + .../4.2.1/angular/src/tsconfig.json | 27 + .../4.2.1/angular/src/typings.d.ts | 31 + SystemKonkursow/4.2.1/angular/tslint.json | 116 + SystemKonkursow/4.2.1/angular/web.config | 25 + SystemKonkursow/4.2.1/angular/yarn.lock | 6829 ++++++++++ .../4.2.1/aspnet-core/.gitattributes | 63 + SystemKonkursow/4.2.1/aspnet-core/.gitignore | 252 + .../4.2.1/aspnet-core/SystemKonkursow.sln | 71 + .../4.2.1/aspnet-core/build/build-with-ng.ps1 | 57 + .../aspnet-core/docker/ng/docker-compose.yml | 17 + .../4.2.1/aspnet-core/docker/ng/down.ps1 | 1 + .../4.2.1/aspnet-core/docker/ng/up.ps1 | 1 + .../SystemKonkursow.Application/AppConsts.cs | 10 + .../Authorization/AbpLoginResultTypeHelper.cs | 64 + .../Accounts/AccountAppService.cs | 54 + .../Accounts/Dto/IsTenantAvailableInput.cs | 12 + .../Accounts/Dto/IsTenantAvailableOutput.cs | 19 + .../Accounts/Dto/RegisterInput.cs | 48 + .../Accounts/Dto/RegisterOutput.cs | 7 + .../Accounts/Dto/TenantAvailabilityState.cs | 9 + .../Accounts/IAccountAppService.cs | 13 + .../Configuration/ConfigurationAppService.cs | 16 + .../Configuration/Dto/ChangeUiThemeInput.cs | 11 + .../Configuration/IConfigurationAppService.cs | 10 + .../Configuration/Ui/UiThemeInfo.cs | 14 + .../Configuration/Ui/UiThemes.cs | 36 + .../MultiTenancy/Dto/CreateTenantDto.cs | 29 + .../MultiTenancy/Dto/TenantDto.cs | 22 + .../MultiTenancy/ITenantAppService.cs | 10 + .../MultiTenancy/TenantAppService.cs | 117 + .../Net/MimeTypes/MimeTypeNames.cs | 311 + .../Properties/AssemblyInfo.cs | 18 + .../Roles/Dto/CreateRoleDto.cs | 29 + .../Roles/Dto/FlatPermissionDto.cs | 11 + .../Roles/Dto/GetRoleForEditOutput.cs | 13 + .../Roles/Dto/GetRolesInput.cs | 7 + .../Roles/Dto/PermissionDto.cs | 16 + .../Roles/Dto/RoleDto.cs | 30 + .../Roles/Dto/RoleEditDto.cs | 23 + .../Roles/Dto/RoleListDto.cs | 19 + .../Roles/Dto/RoleMapProfile.cs | 20 + .../Roles/IRoleAppService.cs | 16 + .../Roles/RoleAppService.cs | 144 + .../Sessions/Dto/ApplicationInfoDto.cs | 14 + .../Dto/GetCurrentLoginInformationsOutput.cs | 11 + .../Sessions/Dto/TenantLoginInfoDto.cs | 14 + .../Sessions/Dto/UserLoginInfoDto.cs | 18 + .../Sessions/ISessionAppService.cs | 11 + .../Sessions/SessionAppService.cs | 36 + .../SystemKonkursow.Application.csproj | 16 + .../SystemKonkursowAppServiceBase.cs | 47 + .../SystemKonkursowApplicationModule.cs | 30 + .../Users/Dto/ChangeUserLanguageDto.cs | 10 + .../Users/Dto/CreateUserDto.cs | 47 + .../Users/Dto/UserDto.cs | 40 + .../Users/Dto/UserMapProfile.cs | 20 + .../Users/IUserAppService.cs | 15 + .../Users/UserAppService.cs | 154 + .../SystemKonkursow.Core/AppVersionHelper.cs | 27 + .../Authorization/LoginManager.cs | 45 + .../Authorization/PermissionChecker.cs | 14 + .../Authorization/PermissionNames.cs | 11 + .../Authorization/Roles/AppRoleConfig.cs | 29 + .../Authorization/Roles/Role.cs | 28 + .../Authorization/Roles/RoleManager.cs | 37 + .../Authorization/Roles/RoleStore.cs | 21 + .../Authorization/Roles/StaticRoleNames.cs | 15 + .../SystemKonkursowAuthorizationProvider.cs | 21 + .../Authorization/Users/User.cs | 32 + .../Users/UserClaimsPrincipalFactory.cs | 21 + .../Authorization/Users/UserManager.cs | 58 + .../Users/UserRegistrationManager.cs | 112 + .../Authorization/Users/UserStore.cs | 32 + .../Configuration/AppConfigurations.cs | 47 + .../Configuration/AppSettingNames.cs | 7 + .../Configuration/AppSettingProvider.cs | 16 + .../Editions/EditionManager.cs | 20 + .../Features/FeatureValueStore.cs | 30 + .../Identity/IdentityRegistrar.cs | 32 + .../Identity/SecurityStampValidator.cs | 24 + .../Identity/SignInManager.cs | 38 + .../SourceFiles/SystemKonkursow-es.xml | 47 + .../SourceFiles/SystemKonkursow-fr.xml | 47 + .../SourceFiles/SystemKonkursow-it.xml | 57 + .../SourceFiles/SystemKonkursow-ja.xml | 57 + .../SourceFiles/SystemKonkursow-lt.xml | 109 + .../SourceFiles/SystemKonkursow-nl.xml | 88 + .../SourceFiles/SystemKonkursow-pt-BR.xml | 95 + .../SourceFiles/SystemKonkursow-tr.xml | 87 + .../SourceFiles/SystemKonkursow-zh-Hans.xml | 25 + .../SourceFiles/SystemKonkursow.xml | 95 + .../SystemKonkursowLocalizationConfigurer.cs | 22 + .../MultiTenancy/Tenant.cs | 17 + .../MultiTenancy/TenantManager.cs | 24 + .../Properties/AssemblyInfo.cs | 18 + .../SystemKonkursow.Core.csproj | 25 + .../SystemKonkursowConsts.cs | 11 + .../SystemKonkursowCoreModule.cs | 48 + .../SystemKonkursow.Core/Timing/AppTimes.cs | 13 + .../Validation/ValidationHelper.cs | 21 + .../Web/WebContentFolderHelper.cs | 53 + .../EntityFrameworkCore/AbpZeroDbMigrator.cs | 21 + .../SystemKonkursowRepositoryBase.cs | 39 + .../Seed/Host/DefaultEditionCreator.cs | 52 + .../Seed/Host/DefaultLanguagesCreator.cs | 62 + .../Seed/Host/DefaultSettingsCreator.cs | 39 + .../Seed/Host/HostRoleAndUserCreator.cs | 98 + .../Seed/Host/InitialHostDbBuilder.cs | 22 + .../EntityFrameworkCore/Seed/SeedHelper.cs | 48 + .../Seed/Tenants/DefaultTenantBuilder.cs | 43 + .../Seed/Tenants/TenantRoleAndUserBuilder.cs | 89 + .../SystemKonkursowDbContext.cs | 18 + .../SystemKonkursowDbContextConfigurer.cs | 18 + .../SystemKonkursowDbContextFactory.cs | 22 + .../SystemKonkursowEntityFrameworkModule.cs | 50 + .../Migrations/20181126093929_a.Designer.cs | 1259 ++ .../Migrations/20181126093929_a.cs | 1103 ++ .../SystemKonkursowDbContextModelSnapshot.cs | 1257 ++ ...SystemKonkursow.EntityFrameworkCore.csproj | 28 + .../ServiceCollectionRegistrar.cs | 19 + .../src/SystemKonkursow.Migrator/Log.cs | 23 + .../MultiTenantMigrateExecuter.cs | 131 + .../src/SystemKonkursow.Migrator/Program.cs | 64 + .../Properties/AssemblyInfo.cs | 18 + .../SystemKonkursow.Migrator.csproj | 24 + .../SystemKonkursowMigratorModule.cs | 47 + .../SystemKonkursow.Migrator/appsettings.json | 5 + .../SystemKonkursow.Migrator/log4net.config | 19 + .../External/ExternalAuthConfiguration.cs | 15 + .../External/ExternalAuthManager.cs | 48 + .../External/ExternalAuthProviderApiBase.cs | 23 + .../External/ExternalAuthUserInfo.cs | 15 + .../External/ExternalLoginProviderInfo.cs | 23 + .../External/IExternalAuthConfiguration.cs | 9 + .../External/IExternalAuthManager.cs | 11 + .../External/IExternalAuthProviderApi.cs | 15 + .../JwtBearer/JwtTokenMiddleware.cs | 26 + .../JwtBearer/TokenAuthConfiguration.cs | 18 + .../HostingEnvironmentExtensions.cs | 13 + .../SystemKonkursowControllerBase.cs | 19 + .../Controllers/TokenAuthController.cs | 233 + .../Identity/ExternalLoginInfoHelper.cs | 52 + .../Models/TokenAuth/AuthenticateModel.cs | 18 + .../TokenAuth/AuthenticateResultModel.cs | 13 + .../TokenAuth/ExternalAuthenticateModel.cs | 19 + .../ExternalAuthenticateResultModel.cs | 13 + .../ExternalLoginProviderInfoModel.cs | 13 + .../Properties/AssemblyInfo.cs | 35 + .../SystemKonkursow.Web.Core.csproj | 31 + .../SystemKonkursowWebCoreModule.cs | 69 + .../Controllers/AntiForgeryController.cs | 20 + .../Controllers/HomeController.cs | 51 + .../src/SystemKonkursow.Web.Host/Dockerfile | 6 + .../Properties/launchSettings.json | 28 + .../Startup/AuthConfigurer.cs | 78 + .../Startup/Program.cs | 20 + .../Startup/Startup.cs | 128 + .../Startup/SystemKonkursowWebHostModule.cs | 27 + .../SystemKonkursow.Web.Host.csproj | 55 + .../src/SystemKonkursow.Web.Host/app.config | 8 + .../appsettings.Staging.json | 9 + .../SystemKonkursow.Web.Host/appsettings.json | 18 + .../SystemKonkursow.Web.Host/log4net.config | 18 + .../src/SystemKonkursow.Web.Host/web.config | 14 + .../wwwroot/swagger/ui/abp.js | 117 + .../wwwroot/swagger/ui/abp.swagger.js | 199 + .../wwwroot/swagger/ui/index.html | 133 + .../ServiceCollectionRegistrar.cs | 35 + .../MultiTenantFactAttribute.cs | 15 + .../Properties/AssemblyInfo.cs | 18 + .../Sessions/SessionAppService_Tests.cs | 52 + .../SystemKonkursow.Tests.csproj | 39 + .../SystemKonkursowTestBase.cs | 210 + .../SystemKonkursowTestModule.cs | 62 + .../Users/UserAppService_Tests.cs | 52 + 354 files changed, 49307 insertions(+) create mode 100644 SystemKonkursow/4.2.1/.gitignore create mode 100644 SystemKonkursow/4.2.1/LICENSE create mode 100644 SystemKonkursow/4.2.1/README.md create mode 100644 SystemKonkursow/4.2.1/_screenshots/Thumbs.db create mode 100644 SystemKonkursow/4.2.1/_screenshots/ui-home.png create mode 100644 SystemKonkursow/4.2.1/_screenshots/ui-login.png create mode 100644 SystemKonkursow/4.2.1/_screenshots/ui-user-create-modal.png create mode 100644 SystemKonkursow/4.2.1/angular/.editorconfig create mode 100644 SystemKonkursow/4.2.1/angular/.gitignore create mode 100644 SystemKonkursow/4.2.1/angular/Dockerfile create mode 100644 SystemKonkursow/4.2.1/angular/Properties/launchSettings.json create mode 100644 SystemKonkursow/4.2.1/angular/README.md create mode 100644 SystemKonkursow/4.2.1/angular/SystemKonkursow.AngularUI.csproj create mode 100644 SystemKonkursow/4.2.1/angular/SystemKonkursow.AngularUI.sln create mode 100644 SystemKonkursow/4.2.1/angular/angular.json create mode 100644 SystemKonkursow/4.2.1/angular/app.config create mode 100644 SystemKonkursow/4.2.1/angular/e2e/app.e2e-spec.ts create mode 100644 SystemKonkursow/4.2.1/angular/e2e/app.po.ts create mode 100644 SystemKonkursow/4.2.1/angular/e2e/tsconfig.json create mode 100644 SystemKonkursow/4.2.1/angular/karma.conf.js create mode 100644 SystemKonkursow/4.2.1/angular/nswag/refresh.bat create mode 100644 SystemKonkursow/4.2.1/angular/nswag/service.config.nswag create mode 100644 SystemKonkursow/4.2.1/angular/package-lock.json create mode 100644 SystemKonkursow/4.2.1/angular/package.json create mode 100644 SystemKonkursow/4.2.1/angular/protractor.conf.js create mode 100644 SystemKonkursow/4.2.1/angular/src/AppPreBootstrap.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/account/account-routing.module.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/account/account.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/account/account.component.less create mode 100644 SystemKonkursow/4.2.1/angular/src/account/account.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/account/account.module.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.less create mode 100644 SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/account/login/login.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/account/login/login.component.less create mode 100644 SystemKonkursow/4.2.1/angular/src/account/login/login.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/account/login/login.service.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/account/register/register.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/account/register/register.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change-modal.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change-modal.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/about/about.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/about/about.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/app-routing.module.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/app.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/app.component.spec.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/app.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/app.module.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/home/home.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/home/home.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/right-sidebar.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/right-sidebar.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-footer.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-footer.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-nav.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-nav.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-user-area.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-user-area.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/topbar-languageswitch.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/topbar-languageswitch.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/topbar.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/layout/topbar.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/roles/create-role/create-role.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/roles/create-role/create-role.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/roles/edit-role/edit-role.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/roles/edit-role/edit-role.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/roles/roles.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/roles/roles.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/tenants/create-tenant/create-tenant.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/tenants/create-tenant/create-tenant.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/tenants/edit-tenant/edit-tenant.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/tenants/edit-tenant/edit-tenant.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/tenants/tenants.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/tenants/tenants.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/users/create-user/create-user.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/users/create-user/create-user.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/users/edit-user/edit-user.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/users/edit-user/edit-user.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/app/users/users.component.html create mode 100644 SystemKonkursow/4.2.1/angular/src/app/users/users.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/.gitkeep create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/app-logo-small.png create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/appconfig.json create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/-2n2p-_Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/77FXFjRbGzN4aCrSFhlh3hJtnKITppOI_IvcXXDNrsc.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/97uahxiqZRoncBaCEI3aWxJtnKITppOI_IvcXXDNrsc.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/CWB0XYA8bzo0kSThX0UTuA.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/Fcx7Wwv8OzT71A3E1XOAjvesZW2xOQ-xsNqO47m55DA.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/NdF9MtnOpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/PwZc-YbIL414wB9rB1IAPRJtnKITppOI_IvcXXDNrsc.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/UX6i4JxQDm3fVTc1CPuwqhJtnKITppOI_IvcXXDNrsc.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/d-6IYplOFocCacKzxwXSOFtXRa8TVwTICgirnJhmVJw.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/ek4gzZ-GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/isZ-wbCXNKAbnjo6_TwHThJtnKITppOI_IvcXXDNrsc.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/jSN2CGVDbcVyCnfJfjSdfBJtnKITppOI_IvcXXDNrsc.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/mErvLBYg_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/roboto.css create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/u0TOpm082MNkS5K0Q4rhqvesZW2xOQ-xsNqO47m55DA.woff2 create mode 100644 SystemKonkursow/4.2.1/angular/src/assets/images/user.png create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/materialize.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/style.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/style.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/all-themes.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/all-themes.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-amber.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-amber.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-black.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-black.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue-grey.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue-grey.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-brown.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-brown.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-cyan.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-cyan.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-orange.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-orange.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-purple.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-purple.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-green.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-green.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-grey.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-grey.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-indigo.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-indigo.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-light-blue.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-light-blue.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-lime.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-lime.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-orange.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-orange.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-pink.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-pink.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-purple.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-purple.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-red.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-red.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-teal.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-teal.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-yellow.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-yellow.min.css create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/images/user-img-background.jpg create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/js/admin.js create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/js/demo.js create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/js/helpers.js create mode 100644 SystemKonkursow/4.2.1/angular/src/bsb-theme/js/jquery.validate.js create mode 100644 SystemKonkursow/4.2.1/angular/src/environments/environment.hmr.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/environments/environment.prod.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/environments/environment.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/favicon.ico create mode 100644 SystemKonkursow/4.2.1/angular/src/hmr.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/index.html create mode 100644 SystemKonkursow/4.2.1/angular/src/main.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/polyfills.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/root-routing.module.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/root.component.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/root.module.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/AppConsts.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/AppEnums.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/animations/routerTransition.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/app-component-base.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/auth/app-auth.service.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/auth/auth-route-guard.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/core.less create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/directives/material-input.directive.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/helpers/SignalRAspNetCoreHelper.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/helpers/UrlHelper.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/layout/menu-item.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/nav/app-url.service.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/paged-listing-component-base.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/service-proxies/service-proxies.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/service-proxies/service-proxy.module.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/session/app-session.service.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/shared/shared.module.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/test.ts create mode 100644 SystemKonkursow/4.2.1/angular/src/tsconfig.json create mode 100644 SystemKonkursow/4.2.1/angular/src/typings.d.ts create mode 100644 SystemKonkursow/4.2.1/angular/tslint.json create mode 100644 SystemKonkursow/4.2.1/angular/web.config create mode 100644 SystemKonkursow/4.2.1/angular/yarn.lock create mode 100644 SystemKonkursow/4.2.1/aspnet-core/.gitattributes create mode 100644 SystemKonkursow/4.2.1/aspnet-core/.gitignore create mode 100644 SystemKonkursow/4.2.1/aspnet-core/SystemKonkursow.sln create mode 100644 SystemKonkursow/4.2.1/aspnet-core/build/build-with-ng.ps1 create mode 100644 SystemKonkursow/4.2.1/aspnet-core/docker/ng/docker-compose.yml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/docker/ng/down.ps1 create mode 100644 SystemKonkursow/4.2.1/aspnet-core/docker/ng/up.ps1 create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/AppConsts.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/AbpLoginResultTypeHelper.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/AccountAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/IsTenantAvailableInput.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/IsTenantAvailableOutput.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/RegisterInput.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/RegisterOutput.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/TenantAvailabilityState.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/IAccountAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/ConfigurationAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Dto/ChangeUiThemeInput.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/IConfigurationAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Ui/UiThemeInfo.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Ui/UiThemes.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/Dto/CreateTenantDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/Dto/TenantDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/ITenantAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/TenantAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Net/MimeTypes/MimeTypeNames.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Properties/AssemblyInfo.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/Dto/CreateRoleDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/Dto/FlatPermissionDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/Dto/GetRoleForEditOutput.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/Dto/GetRolesInput.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/Dto/PermissionDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/Dto/RoleDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/Dto/RoleEditDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/Dto/RoleListDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/Dto/RoleMapProfile.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/IRoleAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Roles/RoleAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Sessions/Dto/ApplicationInfoDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Sessions/Dto/GetCurrentLoginInformationsOutput.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Sessions/Dto/TenantLoginInfoDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Sessions/Dto/UserLoginInfoDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Sessions/ISessionAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Sessions/SessionAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/SystemKonkursow.Application.csproj create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/SystemKonkursowAppServiceBase.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/SystemKonkursowApplicationModule.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Users/Dto/ChangeUserLanguageDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Users/Dto/CreateUserDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Users/Dto/UserDto.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Users/Dto/UserMapProfile.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Users/IUserAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Users/UserAppService.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/AppVersionHelper.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/LoginManager.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/PermissionChecker.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/PermissionNames.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/Roles/AppRoleConfig.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/Roles/Role.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/Roles/RoleManager.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/Roles/RoleStore.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/Roles/StaticRoleNames.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/SystemKonkursowAuthorizationProvider.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/Users/User.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/Users/UserClaimsPrincipalFactory.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/Users/UserManager.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/Users/UserRegistrationManager.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Authorization/Users/UserStore.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Configuration/AppConfigurations.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Configuration/AppSettingNames.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Configuration/AppSettingProvider.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Editions/EditionManager.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Features/FeatureValueStore.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Identity/IdentityRegistrar.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Identity/SecurityStampValidator.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Identity/SignInManager.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SourceFiles/SystemKonkursow-es.xml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SourceFiles/SystemKonkursow-fr.xml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SourceFiles/SystemKonkursow-it.xml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SourceFiles/SystemKonkursow-ja.xml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SourceFiles/SystemKonkursow-lt.xml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SourceFiles/SystemKonkursow-nl.xml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SourceFiles/SystemKonkursow-pt-BR.xml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SourceFiles/SystemKonkursow-tr.xml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SourceFiles/SystemKonkursow-zh-Hans.xml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SourceFiles/SystemKonkursow.xml create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Localization/SystemKonkursowLocalizationConfigurer.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/MultiTenancy/Tenant.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/MultiTenancy/TenantManager.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Properties/AssemblyInfo.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/SystemKonkursow.Core.csproj create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/SystemKonkursowConsts.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/SystemKonkursowCoreModule.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Timing/AppTimes.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Validation/ValidationHelper.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Core/Web/WebContentFolderHelper.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/AbpZeroDbMigrator.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/Repositories/SystemKonkursowRepositoryBase.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/Seed/Host/DefaultEditionCreator.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/Seed/Host/DefaultLanguagesCreator.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/Seed/Host/DefaultSettingsCreator.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/Seed/Host/HostRoleAndUserCreator.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/Seed/Host/InitialHostDbBuilder.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/Seed/SeedHelper.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/Seed/Tenants/DefaultTenantBuilder.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/Seed/Tenants/TenantRoleAndUserBuilder.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/SystemKonkursowDbContext.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/SystemKonkursowDbContextConfigurer.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/SystemKonkursowDbContextFactory.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/EntityFrameworkCore/SystemKonkursowEntityFrameworkModule.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/Migrations/20181126093929_a.Designer.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/Migrations/20181126093929_a.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/Migrations/SystemKonkursowDbContextModelSnapshot.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.EntityFrameworkCore/SystemKonkursow.EntityFrameworkCore.csproj create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Migrator/DependencyInjection/ServiceCollectionRegistrar.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Migrator/Log.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Migrator/MultiTenantMigrateExecuter.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Migrator/Program.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Migrator/Properties/AssemblyInfo.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Migrator/SystemKonkursow.Migrator.csproj create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Migrator/SystemKonkursowMigratorModule.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Migrator/appsettings.json create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Migrator/log4net.config create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Authentication/External/ExternalAuthConfiguration.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Authentication/External/ExternalAuthManager.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Authentication/External/ExternalAuthProviderApiBase.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Authentication/External/ExternalAuthUserInfo.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Authentication/External/ExternalLoginProviderInfo.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Authentication/External/IExternalAuthConfiguration.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Authentication/External/IExternalAuthManager.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Authentication/External/IExternalAuthProviderApi.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Authentication/JwtBearer/JwtTokenMiddleware.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Authentication/JwtBearer/TokenAuthConfiguration.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Configuration/HostingEnvironmentExtensions.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Controllers/SystemKonkursowControllerBase.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Controllers/TokenAuthController.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Identity/ExternalLoginInfoHelper.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Models/TokenAuth/AuthenticateModel.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Models/TokenAuth/AuthenticateResultModel.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Models/TokenAuth/ExternalAuthenticateModel.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Models/TokenAuth/ExternalAuthenticateResultModel.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Models/TokenAuth/ExternalLoginProviderInfoModel.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/Properties/AssemblyInfo.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/SystemKonkursow.Web.Core.csproj create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Core/SystemKonkursowWebCoreModule.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/Controllers/AntiForgeryController.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/Controllers/HomeController.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/Dockerfile create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/Properties/launchSettings.json create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/Startup/AuthConfigurer.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/Startup/Program.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/Startup/Startup.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/Startup/SystemKonkursowWebHostModule.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/SystemKonkursow.Web.Host.csproj create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/app.config create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/appsettings.Staging.json create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/appsettings.json create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/log4net.config create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/web.config create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/wwwroot/swagger/ui/abp.js create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/wwwroot/swagger/ui/abp.swagger.js create mode 100644 SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Web.Host/wwwroot/swagger/ui/index.html create mode 100644 SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/DependencyInjection/ServiceCollectionRegistrar.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/MultiTenantFactAttribute.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Properties/AssemblyInfo.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Sessions/SessionAppService_Tests.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursow.Tests.csproj create mode 100644 SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursowTestBase.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursowTestModule.cs create mode 100644 SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Users/UserAppService_Tests.cs diff --git a/SystemKonkursow/4.2.1/.gitignore b/SystemKonkursow/4.2.1/.gitignore new file mode 100644 index 0000000..5267229 --- /dev/null +++ b/SystemKonkursow/4.2.1/.gitignore @@ -0,0 +1,9 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. + +# IDEs and editors +.vs/ +obj/ +bin/ +aspnet-core/src/SystemKonkursow.Web.Host/App_Data/Logs/ +aspnet-core/src/SystemKonkursow.Web.Mvc/App_Data/Logs/ +aspnet-core/src/SystemKonkursow.Migrator/Logs/Logs.txt diff --git a/SystemKonkursow/4.2.1/LICENSE b/SystemKonkursow/4.2.1/LICENSE new file mode 100644 index 0000000..36263a6 --- /dev/null +++ b/SystemKonkursow/4.2.1/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2016 ASP.NET Boilerplate + +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. diff --git a/SystemKonkursow/4.2.1/README.md b/SystemKonkursow/4.2.1/README.md new file mode 100644 index 0000000..6e63085 --- /dev/null +++ b/SystemKonkursow/4.2.1/README.md @@ -0,0 +1,33 @@ +# Introduction + +This is a template to create **ASP.NET Core MVC / Angular** based startup projects for [ASP.NET Boilerplate](https://aspnetboilerplate.com/Pages/Documents). It has 2 different versions: + +1. [ASP.NET Core MVC & jQuery](https://aspnetboilerplate.com/Pages/Documents/Zero/Startup-Template-Core) (server rendered multi-page application). +2. [ASP.NET Core & Angular](https://aspnetboilerplate.com/Pages/Documents/Zero/Startup-Template-Angular) (single page application). + +User Interface is based on [BSB Admin theme](https://github.com/gurayyarar/AdminBSBMaterialDesign). + +# Download + +Create & download your project from https://aspnetboilerplate.com/Templates + +# Screenshots + +#### Sample Dashboard Page +![](_screenshots/module-zero-core-template-ui-home.png) + +#### User Creation Modal +![](_screenshots/module-zero-core-template-ui-user-create-modal.png) + +#### Login Page + +![](_screenshots/module-zero-core-template-ui-login.png) + +# Documentation + +* [ASP.NET Core MVC & jQuery version.](https://aspnetboilerplate.com/Pages/Documents/Zero/Startup-Template-Core) +* [ASP.NET Core & Angular version.](https://aspnetboilerplate.com/Pages/Documents/Zero/Startup-Template-Angular) + +# License + +[MIT](LICENSE). \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/_screenshots/Thumbs.db b/SystemKonkursow/4.2.1/_screenshots/Thumbs.db new file mode 100644 index 0000000000000000000000000000000000000000..3ca00b61e1ea5e8014fe5f7eab5bcfb9057e1a2d GIT binary patch literal 28160 zcmeFZ2UJu`vo^euFrY|KK$3t0f&|Gq42lv&KtMn;3QCfk5g3AiA`%6ZsANPya%Mnu z$T>+4Ly(+@FzMTz^ZMR%&KuTUcm3a5|GnRB)-%0(&+P81>h9|5>e}@6QqO)YVVnd0 zlH>tG0EZ_7Nd9o20K7iMZ;1*3&VU!EWgH%l|NSNafS3Q9{u@aE3(|Vpf2TN2#9&9B z_BjLuDF`wUXF;3;K@Q?P2nrCCAiyC2P=mMt;vxtd5VRoZKwJVr4}t*%BM2rCr)^vY za~2S+AlN`$0dW-sI|vRCoFJ}&-~z!7;yQ@a=Xk-K4+KAm8z2Ng2!ap-Aq+wUgeV9x z5Wjdi<>!CXzn6eE;0XS?fqiiYZ~$``z#Ej{e?HLx#DAajr~2UEC8yF}FXNCQg46!_ z^*dp($HW0Mu>V8>2|yBrAn*kIlmZ_Ah9|%y@b9#j|9Rp8wa_0q{O7;=^Iamac=4)2#7&y|4uMiK0`=EOadV# zJ9`fNK?N14tqBRw5D^j+6M?G$fgkuiKtxS^;fl~rl8ai8AXlAfgaczflCs|_X{Ocg z-{uf`>=HzFmhKWg10&}(F7E3*qGI9_l2X!&x9=z^tEk@9d7!JO|IonD!t%*eD{C8D zS2uSLPcLtu;1?mGVJ}~W$Hu*lPe^?CJ}DzJD?2AQFaJ|%S$RceRdr46*OqVJ5v^_Q z9Rq_y!y}_V#>VI7kqe7U%Rg6EcXs#o4^W3k$0w(Jo$~oB{XQoD!WT8j*BPSIemUif z;Ed-fBWfABR9kP{MsokvIwK!Nm@Mw+2|tz|r5_2H32@?;9K=ByxP*R3+ZNj&p{ z0?itX)OPfKR=-j83;)DF`?@mU>bfls#Oe#p2__0mGPf9kK;EFG&&}1 z_033EW3PL~TqY6hpG(sx1F$BIGBP)+r*_U@wx?i>M-c{|-VA5OMF=75QD)eUYu zFe{*o2Li7gp1AkCXA51qRdc_IL~nLmN?X|i;X3n?Rejs2N850Jyr!P`DxcH ztw*4-2uh4IC<@`^htJ{xGxi*@OnXDejupRg+_UkFnn5HJ>+!O{0vx0J{0Y2i>*D0s zICdj@cXAPSDY<-Lr{&0m8kt%*^%)5t)u%m9^63{7UPJ! z7WKzM`AMqTq7@}-lM?5zyd{hHcfXCwAI9miPEayRFb9y0tqaBj=`rYDp^OF@ z91S!a-e8XhU`%-6RpwuctM0J)u>amfr@U?m+7@<>b&@)e3v2MP!f?ZAVLlT$oCF@Y zsQl;BFb^K!rQDcg#bBbQo%DS~QThcI?AMkjD%yG8IlM?bs{pz3ijau)ZV4n*VAE2l zc~PE{L#3KfvPYGH5W-SE#sli7BF*}97uacj>OD5YP)zu9iS&HI z@+#WN6ind(@i#^qsVDogyL;-@B{EOPNzZz@J2s>^k#T+Ok#FT@gQ9Q8X0(S5Kjj#TPsqCyI_kGturtFqX z%S%cV6))SZv>7zi#LvWP67BT=JRC2-QORwvt?(%7Z5n~ptc!E6sq=Jwi|(MPi{JGPu?ZLY<)+5G;K}q zBdTaPb?PAe?utupWi3-}SVa6yBhen{n-l-D(0tar$O=j-HLrdJ+>tr{pzO3fkq_%3#k-CBNLlp zSQ9K@Iit@I%Twk(s1jKCRy2cqn^Li<*Lgy6xzOKsbc*%T0aG{cT;1f4ZjOtej0iaH zX@!~)v|J~$yg)(87BkS8^znF$s^5KCDXG6lgRCJg?u7&PhG(>~-5a*O*$@jR*NS$o zGW#B2Q(vxHb|5*`j*#k3>L<T#syT zj*X2;Jgw5`b)RtE7_J@N+cRp3vV!*FfkJ(^F?TXrcsVt7sQ9`RWHevy#O=g6Zs%K4 z)hqUBCD~hD8n`K-RK zr{@+|>b-s;k;NWSr2@}0h zH@V^_PmTT9RQ1BbGMAWBl!#hg)y&5|2AmpSMq)+E+d*xQa2xdN_gga-10qUxOTFj3 z91*6R19+g4Nw2!H%t{Ec#j#agJZ-VKImVdAsMOR8FzcP4+6phfY-_@#4X;sqX=Jf9 zf2-l;v*mcUPzb}gYvk~TGXGK{Pi*a!0S32OIgx+VV9JGZ(&fBsD?BzWJ)^r+6zAMf z6lc4_`fw>?v`Z8AnVlH-gNuvd(uG;)G{1(Er^(`(pTCB{E5;(HCiLcS`B<^MN7DBi zTNFBCqw&CdzpgnvVEhpe$S;B`&+QYKsD3*h*p9Pggk?nQ+x@PmbM)1ct!W#%Zb^EBLz`tv zcC8qO+1?9Yo$AtW8OvkXVlu}ER5TtCrcua@3V1rtpTDF{=b7lb9Glzon8BN%ai>YL zhk|sI*!SL^yh?tx7{jy8&v>A7$xp5L$#ZKz>Ld|Uj=fcG1>69Hi}@aIIb9?DJz!wmz|2QP%;zlKH65j=Jh3GQ{kDm@um-XRGr5Kr{;lt{hEZC)mFy^UPZwT&&f zSMDWA1=H!e)g} z*$kF1&S$4ZKgcDDc*O*{+$tx>JAh-E()7%!GnP^LdQ13QTm*%%t7(q@x9HYklveQT zviJ%0=aqw+I$@XN)Xr&+OI_#9woLLlIbqSU-|qY__{}0wNw`F6av%^P{m7U?N@}fF zinhxZ4?tw^ACjYR3^(Ylpf;`DXnk?>f60C06WKGwga+J5c(C=btZJFWpim#PGb2@{Hycs#ovec!^r4&+cBLng! zxl)$d^jK=PFU}LMcXFl$Y;)7|l(AbbM5}s}^-xGQAtih4HebelgFYisu0XRawVlO1 zotj}IO0D5Nj1;6dCxNirHb_2+);LVW-7P-6%1S+wGyIk{GbPbZrt{>dzZ=gzJ)Df$b_U z+hEh>*_oW_`*JQiw8!4DIMtTkj2Y!vjpV z9$)TQc#})`_}r(vgOdn47g!L~~-gg^B-qD=PgkxnL z_reZ#p|Y}7`_Onl_s`cs>q4Kt6*{&J`^jrs@QZ{nm1^E9^NE!h!&}Csnq``sL&rDR zdqCaFjlQAzujNW;$L`X zi$F_5u;uyzlG&kno(WES6y)cybE{LvfhRKrAl7B*x%DZq*Vyu)xCHja5)Y*D9*0AJ zU7+UPAuhPyAKpA}#3ksLHdH|=i(7Q!Y%+z$KNkTlSq?U9qbsGjYyo~&~G82OE7 z^(%L(YR`ZXGtJl@F(3uyy)b1!Fe^mcYwxINW(hL~RjsW49?h={+Ckv4HU@3aLbr=|X4b(qWqtVP%nxB$FD>S~isq8Jo7u6P>tIsnSCDRS;Av;JjR%6f+_jNjm)l8!1;;6Up(BsodvNs2}5RSf6e^$FVN|IF4%>Kknz? zbp~q7IfSY_p4>u)xInZ&q)|fHqE+aVjYl>ru(xCi?6}t_ppp@>^vg0YWeNA04~w(F z0RY`?hY2a8$kX?}!-UKPj|?5sOHqxRD3r53^t!97z#U#&blK*JH?2I(Y76#eVyVX4 ztU!OFRQB40ZX}1USC4|OjFU)^hL5GtEJ=^TRM5GLx)tY|eeQp<=c$$x^bY`l6ADb+ zNCO@~lV~2#!{258EiY1aa?57XH_|*oHFz%9^i_v&xoet%CM_zr$4fqbHT`@bqY)k$ z)xm^#{*s>32%^6}YxxY0rF>$`KYAIo4yp`lps-Hu8+2Z1` z%$}?Lz+?g3#VDQ1bYd-2jm`m8$S5%m_=O1m~jPD8;R784lB@kNA8RauaxU(^q z9%U+4#e7UU8JD^r|HNDCA$3X+8Ic<_W?$^EwIj}YJb85_V_was&`46K=S=l1^PC#F zYs7M%*vC6GfEEaSnH)UOx&YO~1AXdlx;-m1JI9p6@coMlBzdy>s2qFIaqK%Q>o^bO zp_Aka9^fbAH~`FpAU)_`vb;|WA0-yrwA0KQ^1u+dqpyb1TBN*h#{%qv+0xmx>)e1jR zKURm<^Urt+IIk_#7{+IE(N|q^%cjkW8&};d7jZ+YYfn!h8)^-f_~YGQDu*D02+TFj zk|UNse7`>oLmt2<&DKmPh+W5XG5%HP*I2uY)o}5c9CeSXIHRV~fb*s0ww7O0B7~T} z0JNfiqdzGWkuEzQKJo~aM{ZL$54Tt42m(;;$exoKm(Cq(=(d5|uj0&f<&=yZ| zXsw2H$u!M1-FFUtFHlb>P;{*tH!$>A#EO>&t$UMWj%2WkfsM)q;u~O1n3oZw)CV#4 z8R#RpLvx?NcrzIfutsCS*>qE^|4+jWa8vTa^m4fzS5H;3ORl82BW^ORXg^RIzbG*- zE|B`BZd<~BE#d&7D%m5ft{S+aaMnjlMPWaaa3Fv#S}Slx1^58De_c?HyJ`Oean_a+ zB>NhP&wau?(RVCw&3*2l>GRPBGX?O=j5xx92+F&F)<6|v6#}AN_jnb3x|Qt9uiUtp`fwZl)P3xA2(2Vpa6-ylY0=C z+9yW2Jl6LSLRFXdQcznDr5!Q;iU*EZqR~5l6tE}(%+P(%!cU8){AVC=quI#_h=(xK zwM(`GPCck|UJ&*?CzAGkUm-1!wL)7qWl z&?AX(ZklyXhZZY^aCb=ffqMkSr9E=pyE^42agigMdegNB{odXzaT#`B*0jVSiPC;Y z?L8uW!H5U@5W?u2XDW6~6=_P1+RAQy=hVyB|+w*Po^GXbxX=;CGqy0AH zHE#3qL21PI>#Q>JOg8(PTRx%YBtp9vR1Ed}1%?Xmx84|Q|G5>yyA~Zl0;!r}Pcvd8 zr(@KE&y8Z>7aNw`;wlSa!iGMc@Q%&`!-;+&EoE8ZvMdLN=(zwX9_JJ)X=W;?=ggzY zu&;Ltyfw+vuijF9=G!709YNXA_=8h<>QOVT+Zy@}4{}3qS)k2)>`L=OsGMt>qKl&C z?m3dt)uM^DK^$4fp7oT0j9<>7=_^z0bb&fu?&rsG%%kUFNTc@#=Yw7jkyj)kOpjRVJJ$a(!qc-+8ht&6%XF(XrLdFXwK9 zV+qT8934K-=WFj2n_l(7`X#c1o<}+FsT5?DRPH55WUdiJzCa3=Duf|F1&f2biV9{@0}cjNxuZ|pf>4k6;nKT zEUN1zCG)arVMjggTheVyf$@gfbCSlBvV9oCU8%=fAnM4}k-BKdWDS&rH&;Ky##CmPv zJ0~-n0tX+?uX1Muoc)Dmx0xeM*y_v)Sy6b+lmrfX<)jK1WPQer7F)2cjkFr8%q_xB zv|=C*LR%@L1l>N$F9+0;b!-@;re{ew2&#qW{8S%RN06V-Vo@p5$5EfxMCaoHzq9+> zds>l2<9Hxu_c)%cC&O92=s{7%$QGuH!p6I>rk*$NCX?#5?{|nw_ymDf%`aPOtS=52 z9!L}MG*NlFLt;$)N96jESnc9ncy-HCT+$3^M=9#yR$()@K2~lIZ!A21NbV3;Z7cWr z`G=EivqhM5R5zCx91oC&=33r>Jrz+^_~5lB2AE@@K03s_kn$8?LRd{+ZrlR z$S$H`p@IJKJCsP^9_`mKwfQ&N z&lPRhBT_csIxT8$&nf6aH@JH!06nIz_BlDFI~0LuW1hTGsxgg$Dg*q0^U%Xk8Db;-brxWZdX+C_83KVl~`e9$L)UD^`-<9Hh zZfvXjmZQ@WO;|A(a|SRvPx2p&%imi*Vn%Xd6MjxNJt}F}QuL}*HJ}r^p=h-Xth2m- zW&tT-pkIh4<%$Vw(bo@EK?+GlY&g*~v)!t!zDK6L7JDeiv3e^9=M*2yKpi~r^$Iw6-Jx3_jg-f}8!4|9_VA<| zq|_90jw!9&NHRL8dEVmFfXf7bl&u=S+cutgu2nJ8-ythyFU9EtLG~xm;9G-L!$->8 zOvKgC;v^a^Z*p@7d-Ao?19}Ms;A&lno5ur&vqhs4byYE2vk!*k(9>J#3&*O!`iyIeV*ElRc>o(li5f4DAVKdnupnrH;VB-MXi3-DzaHP7ri{ucG!kn^#cpzpC z6vB~NBk1=}e+l2}7zQQt21ezExLubZYQt{ufId35@K6=uq#?~LxJi5l^nsRmR;)~| z*Q8EWRn-mVqm)r6c%YX7x-+wr^TtDr<0bRO(apV+(eI!K@b9$57iaMMs=@>U*+<`p zO&GR6t(_!i)Dt^ zF|>29M!F!THLuta&6Dee1xcc89lbP{RQpD+ZkHFfqCD`&%9F;|?celCwX)0j;N17@ zeDCahrDAwUXCEx+{>;i685ik1$~@HCY6^vrFu1^0eqf<>tIEr2zp5swt|P~Fn_&n* zFHQfq#ioY3(5$R`q+bH{f@{2 zKytrwTH1rvaN(Od*G<>EBM##-s|V|KEC`ctqC$I4Iaw)>myToA;zd&nxe6EHUHe+a zSGU=mptDe<8nzL>htR}$V(gG;Xhb^I0dq2RhPX-Ir23gvVCn~?T!Zb8qx2os8mha> zSnsqJ=+yr5O1CT4&{Rq76}Mcb*2x_xw)&*YuB6DL2`T5lbuG!k!qy zbQ5FJPkKW)pfz9*jqw*DeoPUjxQJ9mjpR*E`W0CSYJUh2bWRglNjE&ch`ZGK2KL*W ztk{G@d=2uCT5dky&>dbjm?F?UD;|*LB)O_7_V#BrZ&`n{)dOc&l+#i}@?q@VPQT=> zAE-~<88y9`f7c<~@F>>Zt5e`f6eaGB;o;psmnp5lbKB?H;JND~P@QEiyfb95*nRqy zx}#CrClsN2xfzIlPURJ9%`#O9HT@7o%63R(NxhGAzijjhS^d(eqnSaotyK~@(20l^ z>4+vJs#KznW*u^z8qL)`DIWI4ng`KU$2>MY$85RJvfM|Jg<>9e$_J=5&6P{ z{YRv7Nx`T``j1j|M~;|w7ZKLY6qRu3%U4uypGCcW#wXYvOZr{Hy*`GsYuS~1x66F) zUGWqL9ym*M#dRpYY1QDC)YhjF0Xuic2cvQ0X!i+i-fMzrsugjA%+6a?-r(Aj zfAz(T;)P{mRtuq@w579Hf(s%nUz6PzzB`mOpy)P!d_s}5BhxqA%(Tp0((C(<*FkP!EjlsgsZMv)RK|s89zw6ttb7oFF z=Op>Wx4p#<+`}-j)v$Hu^bR^2?XdGKn+H(Xypz7b*5dB)bQU)hC7PWqf@k1XVbkofnzT4aNGC>GPqoWaXXG{MfM8QW3Ji;200&e->|pGR?Y56 zoOpRm>55CwtCTOV#*|c=Ij&z0<3K^U&g9mNVAL%t9Byn~<*+14xY>GdHeCaHw=iqW z)Hv+9)QdaL)sEbn?93D@?HD0F%k6`MCgJjad5X#RN`9_;7K>}W_ZBFVfn$wP*`IqZ z==vG1+;(tzBg&?$`=l_DQJeZOR@H!>xl&b@C98zvkYhRj(;;KX)a-<_Xzcm#+v`S4 zvUCe+8YG%Jfobu~+sWRB*Vy7EIW?4&jX~FmR`bSp7!;)Gx}SS${%OKxj+1ddI4lB=4BOZs|62a>NO1fxg0#! z0i9lfjsAeGSRdiShsxrVsRbt3-*reIKl{Mqg;+}NAkD!*GlL(ncHS^t zGpO@3zB?)-O$+v*Y&+*?AmI7nRxYN_>b2q6xca5{VjbUR)1xyl21b}iN^xwfG%+kh z^SI{Ppj`xXWOo+fl`@{~EI;JDy2RmQY460ZOSJ7uP}h%eH1mv9qw& zcG=|@`^eFwvfdoYZvTWWf4EE40xXUC?u6pfLVEYLimmL3T3!RCP}TMtLU!gWlCAQo zl$vI?y|rj)l7A<>1Ie^gmn+qJ+2^@lxW3e)X1wXjiA*UYcShbf-Wgv`JixI5Ukhp7 z^V#M(oFRj?%Q&9QIb)_9VG=k-Ja7T?{zL!*tJlOesNsRTfxGcpUb=a1-NFy}Mw^+OneM6gS)Gq*m1MSzN%LVWc!UK#NCMLy-grQ_YJ&AS zj)Zbp!;5V);K-!J;))1kXDlP~Ig>w}sXnLgX~DqdUZ;e^i_ zg=ZG*CCv*~MU+?H>lL4mnLr7#t<`n$_`e&6G`ent7d&w7gzZl3oUO?*GMt(uE#{)@ zr*ge=YnHmt-qd^LV69b5qkKPV-4~96j|(As%hva$rr ztrqDQ_99rbVOD0xv`@gDL_Tz%wn$dFWlz2(3_4xwD?DL3wdr^6j#gtsePv9-bYIuU z2cZ-Nv8u#Q-oy$Jt{@5s`@0)rYG}WAgA38(5;R^tlY!XzthrYZWwB-b9IqbEAH_~Hn(t^#CD1gUK?(XiqZloRABW)*> zq^p@huDdmlMMCCW;|7_B_5@Z$^p#Z2)S(TR4mmb)O7S$<%z-zV1D}@}OfT&qakq`& zhjVzKzrb{>+(-X~uNT-b-4^x;wr|__TuK=|C2)eK1nu(cH$UB^tqv))umRY;SG^$| z%n|dPKaB`XSL=w3oq}mV)K+3R@z0dA|z_kmXstILo%2N5n zq%}FWUKZ)r!~eHw-%&yTf=h3r- zsR&!{jNocsmrmodidXE<>7P6qtC=Vu=6lFO$`qW(LH_1-`?93_Kr6D__PU|2SBv0% zm|ObShmlh*8*xJsXS`^bE9MtICrW%yfzs#9nALa=GTJ2@uu-=mH}adc7zN z!UIhwHL%XA;f|B6zS_(41Yi<5qw$vEe38Fzx+U?*nuHr=JH7;uu zBZTw*nxW>72LhDLUJsu%JiL~jQ{?$De+AUOtW~C1&C5avKRaR7UKqE2 z&`O}BIh*ucx)9RI#gP>*5R7MBgno@W zy5%c^2Nc#E(Yxt$cW59ZJTTG5Lmap}Ak_?o{k#lXZ~i(MaMSRDs|C7GQ3>uVuH!(m z{%LI$jV)FvvoFW0D3dzbhD?X)WRHD>Bti%@F*@8iwG7qUJ?twEW!}TK!@N9kzUE+M zb~qZ?*UNJ=$2-9|Z1IuS9lMPuQ`q&{lR|;TDBKx%8+49hdkb^a4AL?B8yzw&@I531 zi#FTN2$%a@2X6=)wt?}%wrO!UL83jwV9N+fGzvbajJYxmdOgzVpmX9(D#d<=x5T&=85bd&YH2O zYw&4^oz}MH*~l{QH+eD>xXI#`IXJ~(aN$REj|98sg|>4MK;FYIIz1#)-!72F-P^tw zr_5KHRdu(7qvV`GN*kjh6ZLKh6T?G69#ZzcAQ#k5#TL$I1M4wrQDV+h<1%(Inp;<= zZn|PPZl;&8!5)=STZab-O%$E9M;=a#uwR9k7l|vCb~bpQTi~77sRIfua(GBF41S{C zFZn)ik-mxvR5tLPN#-H~9yzHZrV6VmxKVu-TUhAYw%>aJLS1=NeRubq+H6ld(-R|y z9o!Rthwz`t%{~$KXhg_W^JGr%Gnwzt5$W;=$67>RZoak786I&l`_ZiAW}= zBua!VFrl5^n0ffQ^&$JJE-d~KuEr}-96yX^KA`PaolQ05ct3TY{$8fTtlCSZ6$YVZ zU9)74H!U)rR0_+sNHPA3eZhPsH=HQauc#1QCUe_!%RmE7_Z=~~TK;?J>uw)5!?x2_ z2W%cA*X!794v+nxdX(l&)x|N)q%2no^(eXX@Hj6eymC0iR7ih0@}9qzKWID{SFSry zcVN%CXT50W(~6L;Ol77+4bW5u-hFrT5%b4)W!`zD6c2@zWPJk_5Cp~gcp&td@#r;CGejDpj8ORR@Ub~rT4a;!ait_@lH3=4BcaN*baU@zUnquF<8}FF#u!l z5yb<{?ZiVDdWr77G~Y86v)|<-D;2Zv(gy&IzT}t0ubL1h%dd(Y3Jt$M4(HWjM3f+y z&eC?(UwZo3;70;qmy?qqKsbU2=8~Ckpb>t|iw7pG|4h>75ef3tt%l)6|XV@JC9YhM;=Ti@e;jn12YsTSWUqJmJac4@951BJN{V2p5sh^1r5GMCSZVuZ=_H^9#G=-CLIj&1m_v3(V+7R|bs?*Z1;p z9JXtcHSv!V?q6XrpG^pMR(>22@-Ff5+$&`+*DGv{t<^i6Qyr>IJOupJm6DK6vKPn9 z>B&BUX-d;VX?CNqf71Jk0>up4 z(2Dt>`N?>QLzjW`J6!6wrsV2j4WO;t3+`(eu4T@vY%lR zkgnA7VCO;amHHADs#ICqrw#?Jsq{8rL?MCsUBLgs6f*0K<^ES$@HUbHln7{;x;YFkS4TsaxWS%9pHGhb|8KZTVOB z{j@H6{^#HR1ChM)%8Q4^d(waC3)$zW7%()dTL4$niy5d_YJed(u-~yGNuzYGhP0|* zu31N}zg<~q=SDWpHz84==U>GcV z1G?iMabg?JUED*t^5t~yWRWvTO0|+CRHs@rU9`0qin^ah9BY+&8+t|0sphy@YDw^8 z<)VeRKE#WMVBFDULRi8=ax2Q%N2egL^2ptpPh8#G@2c^5oyu*F7o6GNx6XePy1jSi z1}p?Z_+cyW*YqS@o*7rfK}F#w%h0{MJB+BUapgZ0vFG@4MEmC8H)D)}>BLH)-W|e0-Qh^-r)TQJN^M4aJ|I_=BfBVE%j zy{UIt^?x?^l9?dQ@U`a%<4^vth{~pvc-b$l5TaPAW`tkOs@cD+`A+5(wiBG{=Q>N# zGvIW#={HFKLFZovn>mIb)k44UVV{B<+CA8go1xsyB>b4IzD@vCH@nwTY2W`BD@~YD zsi=rnV|`!kHpLeqMZahep4QL`H`I&rJQUcwyg25!g^4y5@vSRiXU?rrb#4Ny<{gPPF+TwZ1ZC=RWOG0T*DjbNp=*iNg<{#oeAk$c}MdDP*e zTmIQ)*Xy%wCY1%1!(7%TJ*i3`pSxRoDiYocIOB1!fFvwZnMGbEb6nf{@^geGDIXorfAdy7TO}dV<5%gKGb3v96!o(&&W~QOJ zM_MKDdYI<+2T1?D|MU&e3*m)JpHraBc>lM{yEMUvuQ2eh0rIfFO7b5>+gCa>tGo=J z9g7^-g+pgP!6x7*w{L;U;^FbHiTqFVe_U%JDaTf70y7e7!Gp^fRH6uKHeTFOXDPQpH!|jmIrw&j59urnIMc7Zc4F?i%dys{6s~p6(9+C zoGQ4o_lbz`*H_fejacuJ?t;O_gfcadoJDeit%#@A^$+8|4RFRUcdWh>BIc;{CV1yt zP_^WcQY4b})B3~NB=?h5z4^HdD$RW29d$;FlI=Qe5C)d%c!%E&4#GCLb<{=M=}X(? zo`!NQ6B?r`A%hI#y04g*^9gs0-|ypraCzAwlS~s^OCEyGYQltbKQ)=En9n#-5EPeT z9B2ImTF1Qx-OUli&TQk~Rm@2t>_5_Ydq5ld9p(~t48FB?-~UbA(<50iN-I<5VX5S$ zg%C~m@s3@aeIGYj(7y<$dZyb2dcSxtbbU}e9Io09v!0x(gRZ9(F>w%9Z9C38zOE={ zS~>C0%IbXZ3fcT1SD)^dCr&jV5!z6u^Lk||M+>4foR(`9UCjh82R8WyEe$e_S?_oBLa ze=T=)zn6b4fACwsrt6%;|Ly52|Mq#E*TSyp9Rooo8#d;P0nVe~i?YQuy&Fujfy>Hq zgGl7JC-)+%yxS0j60t4gi15zD%2$No8-L50VMx-D1d>MOQ4k0Tz@5EJ%M z0GRxP_kBU226}WF)crR=dg0|!7=IhsK@V&xeqL;2=1;{FIwK4z1~hVVU=q&C=mSl( zCmv9Fsda~Tjg^fC^b-Fo(Eeqr<@|$|OO3*jH&ABJ;eo?(*gTeD!<0i_KwXPT@y9bv zMO(Cz#T2^vO7w*|I--epFC6j|-m18kmij6dcx@@A?b0Wt=J-Az_Ia4vQc7vWyM}VeBn^a#W1Be%&$n9`m=BD=0_kx zIvv>hFZ$lMdC^T<8ZZETTX&c03KKh@C1vQ___m)-HCF`ROiY_hHTza>Pl$dgb(p3g z*-BUlS&vdxDx#)JM;02$m))0=V%IPOUk>8-?UL*oD5A2m-7?m zM=sRciFJM0dXfnf*}T5aziH%_M~@D-^fAe@;$;lpFAj%Qxu+k45u4yby$joU0CQM_ z?t#IMV8k+bE;e7V1TD$NbZ(x$u3~x}46dtz&8lIdDkx$sHGC^DpStM!jc)vS%Z)02 z3IDeh<>3&Cdji$a(Qw$_rr8mA)Wp8Y!#g*#F=d5=ZNj%O=@?zsiP~Op^iF~11N7+A z?+sHP%%`8e7D@zfLx+bSd7?cHK#x7T7_@D;z!!OxQJZC;sdQ*|h||RJM6KJvgwerR zFK{37+xx!)yYllHjhAs#Bd}%M8V=kC;eqd3*gEh9++OS`Xe`Bn3N{nXXx7y@`zHpg z^NPd%y=49gLqDK4lt-8WJg^47|KH8~&DJh?qH{iH*V~FWwb8B&Dd$|BVnryKXSd>1 zZo+6wX=G-mH?!(*mTZwALCw?dl0TtbU|ga#qcIBFA$62Apy>+ydlbF7wv%j?;Aww8 zB4T!5viDfl{c3i3)eS+HF^QGp#h+RhwPCTuS%5>c1 zVg08^u{X(cE?JMdgz5yhtxGQ;fdynz(xG}9VpOv>&c;L&7EMTw+xTW*=S<-Llzuta znB{tVrY(~Zl?t%1sDhr_c23!KJxU5%R;i}8uc>lAyS(*rT-bY6Q20l0eyh*y;x}j& zrGWF6LnE$sHMTNx+A3dacFSF<^i6id?E}X{d#L5-58z_6q1FH_+3@5C;1E_19ho3I-qiux6Nx_QM%kbx+g(zJeL2wPM?7*XtCbi+tSrs{J| zoQKT~lcdI4dnxmVB-5|uPv0JAt(pqQ*^SBTtGncJa*BEOjN2uQFLmZCIt+q#CA)&~ zn57hw-A2z`6_VqsGog`qKWhiuP9xa+k%9GN0oh!`>k|HGfi5Rn=iSuLev-1Rj*s+| zqTE@2d^0CM|A7`E475rjR0u1*)(o{!F|hi#mW3H=@i|rYdosD>u|I4+98zR)StN_2gzB9mD-x-C=fs$*w zd0E39+IIGGqI}9Q_ltCq`g(FIk11V$oW%NPog_IA6*HPib}Ze*7)8Rc#%a3skXA<>&1(CK=V56tDr5$85C`93S?1c4 zP1hNTRa?vV#}qwxY0YJ(yxD}zCG6An;aFWjPOOi~%HYxUSxIG2Pz`XjS-iWRDa}yDIqS`jy1R?_*Ajr) zh=}mvn+-83YhTk!ZOj@&U=%+u;dqAa_f7bT605XH=e3(}TJ+I9BRJrqU4w47r_;iJ zvR=XwD}sjDFl!K4-DiJxYn`r7)B;o~;(m7f62?RB6W5hdy5ZBxUt-BSFLk#!KW)EE zL$1{PI<}i$Grcr{Wo^3Fs@Fn9LPJ&CIkvLc&tIJtfVEun1&!1XzGg?Xpo`#=GDg_y zyWK1z}h6m_42u2n4 z-X#(fuX_-Jb4iO%*1r)+kNicmKK# zdXuf!0HNvf5@NtXIAIP5K*va8pcFN?)tc-c)Ks42XD>b=x&C0f5K!wJZz`3Tm`+zw z<55Bqb(-(UHx_Y6_fwPr(OW!kdaM4L%@%Id4*m@X1IrE!$mm>okUJb79Z^dt2;EkGv19T+`;m{U(kGV($hV3giQ;5$@g&GM z$s#+uY{nw=`Uf@}B$LC6xzDg44lN;u9)dIx6t(L*R?PgKKpX^Ae=RL7GAt2-&t5Tv z{Ps(3d@*hA$bZ6;H9L8v%ddi%7EZ@o=)gHx3r&WaG%fZ<9XU>+s+Wl}9!Sls_Mki9 zAvXFljoS-NtTUVL1RGf#PG-QkO$%FKmRLgwv^)sD=b_`0&_w>#VHWw0@Pf2Rn6xN7 z<|aw%wG>k3vp;Ey>4FQ-JJJx(t|UMT;yp!;V<%qt)gH{MMfHVTSV!hk#2sQcspjEM zlJn_&Pru|IH%IOHIwyyTK&@SeEJ>6_t5{)JjudI~UG=LI2PMK|w(WS;&v}VGM9++D z|J8_|Ar3-C*<@T)eH+kGAsIl_byqJr)_D_W?_MkCpW4w7Lu!{d4+G~cEo-w1t99*7 z2+B8^v^rl*9>!lxuMFSIkM~|bRo96Bb7GgH(^Y6wkt;hFct)jeP#;m##V(EkCP~es ztP1s$_h>J37K+ICu7Bdk2Dw_W+pc(tT3EuIdIQE-8!p7Q=MgH$J0L2Q0{b)UoyTAEPV zs?()QRpxt{bWx#>Ed%|@V%H;dVrP!6$bW9?0-?SFb!DueT~?NJGnjHF$$KB`xv-agO;d)B!T!$?bR z?SdGw*hMaxH@NM}fghbtL_U7Lzk#hNCH-=eY8&g@B~@qlY}_t|4qsx|%mO&@hm?n4 zTc}&1Sti7)Ko8>Jpf{j;1WKK8@B1`9&-}GXNPZ*2+k0h$=1D+|Bm?(fKf&=w^6Bzo zu{W%1>6V=u;6UINpPXTs@z&yOh-_2sa_nzmlRHiod41dPpydN*p zw8T&4-4>tYuPvs)ePG+!a@yQU%NCzhsSP!*&NqlG?jIVG)fw~KZrS@+dYwsqttOU} z_qF(n{s zax$}wIq9Gh27F~==Lx`!cnlXWtj_!0W-4W!PRu6#0_g|08<_3VhxIex3g6?xhoHH) zWO6gCa_5uhIZ*3IF%;x{lljib)QLR<+bkaHI30DDWTam?IzK8YheKP~X37;M#uNnz zdmV|pIkhN8E3=V7(ra_ier@46!=7$bm)6#6(|0|<#{Iz{{gEF`+fHd0#8gczgQ;P*}|?pvZYv+&0T+ zPDzM%ckuMPe;T^urTm@W7{;ge4@N6>&vC4^-sja-@=C{G7s|rER8UxK2TE4FOrL&v zjmGCjFO!lloLsL^^lF^i5Zf46_bccdcU{bQ<;%^hu?GQ~p%c*f)1YNoV;pJ)=T*Yh z0$K_`4zBBj7~ROvMC65i55dAOzAPM=k_%C-$g`ags|j6w6b=F5N;sGhZ{7mnUEqDT zkJ*v6ILhJ}aFr1CId*Xx`jha1!r^R`ApEa>J97Reu2HIqR4vz z%SSHFw5Z5wVUD7#aMSzH%?mdXJX5S_iWJ<-1lxq#(g_sw>OOn zt8`o+a+ss+!fP9E*|}Py4&WVljog_ZI3qzf`s_?b0~+cf8N?IMg2~dr)!l15#+CR+ z%=j`xIfLOeo4*bhk6RsKTb@}@nN>C2k=^Lc**sbUYL+AvWxM01?#jw9lL{5iYzT-P zx9DjUk$>(vmn?tQ&oXT+u(OlF|0IyRen_!G@m6UXLTVgUOZ9#WyCfFnxdtRe4N!K; z)m{=x#dFVwp1x4*HlvuA#X$TCMs?J0hCcNK+wDdJf8%%~G?SHT)- zDdbrL%k_!0>79cM{D6aQk3zXwxh=~DT}^FR=zMc4vAc)~K0#Gb2Erd&H+q*x#|?}U zig&4m_Iyy=k$HS9&iqP4-wENV`a=!UUhP}h<>>TSNuRZ(xEe*Mfd#y2&pXH(^tU@~ z$eODubbWlndtCWdB=kVhi;sSJYkOfrFlt!tv40-Ea+bH%B5#}dc=D?b`_`#>>z|=~ z<4E)J(gd`#$+^U&eGgIn9OuRBftiNqla8Y=2-k;CJ~4-W%1rcBj#5*}t!8 z8`x+Bz>y6S@2+1R)V}*5>6f=>d>b81&4QGEbc`^{Yd=-0a7S^6&C_8ckW8i}!cr7HB3?sy|T9xoxoX}%gEpwq+ z5Z}ik`>nl2;-lb1Q50R~ZnnojkO;9@RWr-miCnRU4&>=h=5Xc3A_rDpmw6B$6!+(( zhS);#@Li~+h{hLy<3x+su~G(-xiOuw2y!<0&}MM%+%$*#fJsgvg*-AHx6lnN4h!sv z2CQ#ewXq_B2mmOA;b#%;X=X*0PWL%Db%`W}NR^P`O?6=>S)OBR==TfdQdAXRaUH2F zZ-f>@WMe?)!5#P#TrD9Qo`jRfU{}>~@QQ}=lkn!?WQclH0NviXIZ7*4S2Vwj+5gwz zT{B7kmvOaAG)_A}6tY_oTwYQF$C@c!)JCUT2r~Xej1!I3J zTS8m}x3jY8C|Ww*`)FpF9>w;u`C%n&f2y#gbl2F=FiBMcH7fpitR2;;{<8I?d*1Z| zBjg7LL0vBiEm7}diZZOJ);#tX4B;MzI;Cc$M*-k^i65n4y(^aHy-48X>$gBPv{@wM zu&U*svwSrjNFXp}I{4kS*q*RfRda-Jo5n`FflXLGO(y^9B>je1u}80M6NZjG#SxgT zO3f-~#$=ppg$j#F_u2+0cX;vI_M?>jru-Tjq;B!vcz;|c-qU!^p$HvwAQf)7xK`OF zV82m)i0gLWw5d1mF1S4Ei<=)0-B&TqPw&MS+*NsZwWKO9aFRS4G8SgQ@`G`$4sazw zEaA~!rTsXlNo&I-d-HqaR|CgfbT?|Bju3r7&{h4?S@xkU?|;tCQNCprkd&11epW55 zudP*(-ito>_NM{cz0>ag?-nhO(?JECBY%7)R@1ez9{!vnoQ7Gjf6hh1V!xO!nvk?P z*_^Nc(V%(vHsuEouO82leSB@ZpqtN2rIQ4*z*uNaF zMkoGXM;%s5mGV!Sfm8{=5PHO`y_OKOV~#^KyQ#nf_B4}DJCi_k{M8oU*yMT1-&b5T z^d$^AxN`57-Q%)TbnkW+FM#x8389ZL`5LeM5C8rjEcmRGX6#kB_0TbWNt|B2e0Vg5 zm~r6rnKc3Y8}&29-G%=^+_Qx$`Fqd zHEu;_obIr1vrF~D+nVFEwZFdYWv4>qY^jjKZ4f?#KPCpsxhm(SsY%R3JywY}}XRnHk z$Hk%hO@kY1GOa-%LS}U1H6+=R&!kim^e{E^Q=kF-745Td9ma@5-&pUL-td3(Kl%Rz GsN)}+q2aRt literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/_screenshots/ui-home.png b/SystemKonkursow/4.2.1/_screenshots/ui-home.png new file mode 100644 index 0000000000000000000000000000000000000000..b4f394048b4f186e49648eb34b329785099fe106 GIT binary patch literal 160697 zcmd>l^;=Y3)b`Lrr*t<+hlofwNHe6gbSd3KBT6?zr!+`Pmk3CAhe!`0In>O2zVGuq z??3VVa;{TrU;C`J_kHel@3mvKHI?yksBr)Q0KTe5Sm{}kgv>{1hNlB!LisPY2oEB=2%8VLY_@1$Xk(mgMlQWhx zzfeKpV=M(pxE~S5GgSqFVx{}~*T#YMxP}bPgt?xR;s^h85Gxx!e?b4g%eGPfr}O`=G=k}o694uM8KUYA)3UgOLRa~X&3oZ#XFFRrl`sE^=z8kJORqz{gUH%y4tSw`8`$Aw zo#w>%y(R%*_uE*s=JIEw{JMa(y9H0N8J(SXy}x=+o3yY8J)zGLRe=+UV_)nScsH8d zk6POj+#f8VH_FXhouyLnIT~a_(6A_rvecBDKlCu>EWhjOb?{v|=@NH{3Z1ExnAzh} zUcKZ{Aa9QQ531N4v{V{oLC`|8jqle-DPf<7FG~;3xt_m9?jL{O!s7BD^He4C|8bHV zw-bYi*Zt$*NoYWO$nWCGOt%HL?JL5H&5ML@!%Z&_;DZOg%2VC`B!qYEHd2jOA%W|+ zd5`407)dGRFnZ)pLGU3dWcKqEd`uXDAb^e@&rA|X5Yk@DM|X=kx7O$a&%2ItkB{{NbM^&N>5*+* zea)x81rOfuHcnEweGLkrz9!;3FH9w)oy(HT|FWCWrC!u5Z3Rr_dN6 z{]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⋙sC_W>qps3+~Qi?NJ<%+~aX%h2mH5ls-0q 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

t7-a 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 literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/_screenshots/ui-login.png b/SystemKonkursow/4.2.1/_screenshots/ui-login.png new file mode 100644 index 0000000000000000000000000000000000000000..1530042aaed99893fa831f51281cb205957c945b GIT binary patch literal 31870 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�Zc*2MSI46lIOop*n`{9@w*u79Mm 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 R1sxB@;OXk;vd$@?2>|}sYAOH# literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/.editorconfig b/SystemKonkursow/4.2.1/angular/.editorconfig new file mode 100644 index 0000000..8143244 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/.editorconfig @@ -0,0 +1,12 @@ +# Editor configuration, see http://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +max_line_length = off +trim_trailing_whitespace = false diff --git a/SystemKonkursow/4.2.1/angular/.gitignore b/SystemKonkursow/4.2.1/angular/.gitignore new file mode 100644 index 0000000..213af88 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/.gitignore @@ -0,0 +1,43 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. + +# compiled output +/dist +/tmp + +# dependencies +/node_modules + +# IDEs and editors +/.idea +.project +.classpath +.c9/ +*.launch +.settings/ +.vs/ +[Oo]bj/ +bin/ + +# IDE - VSCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json + +# misc +/.sass-cache +/connect.lock +/coverage/* +/libpeerconnection.log +npm-debug.log +testem.log +/typings + +# e2e +/e2e/*.js +/e2e/*.map + +#System Files +.DS_Store +Thumbs.db diff --git a/SystemKonkursow/4.2.1/angular/Dockerfile b/SystemKonkursow/4.2.1/angular/Dockerfile new file mode 100644 index 0000000..cc66541 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/Dockerfile @@ -0,0 +1,3 @@ +FROM nginx + +COPY . /usr/share/nginx/html \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/Properties/launchSettings.json b/SystemKonkursow/4.2.1/angular/Properties/launchSettings.json new file mode 100644 index 0000000..28c81a0 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/Properties/launchSettings.json @@ -0,0 +1,27 @@ +{ + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "http://localhost:14424/", + "sslPort": 0 + } + }, + "profiles": { + "IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + "SystemKonkursow.AngularUI": { + "commandName": "Project", + "launchBrowser": true, + "launchUrl": "http://localhost:5000", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + } + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/README.md b/SystemKonkursow/4.2.1/angular/README.md new file mode 100644 index 0000000..858a9d3 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/README.md @@ -0,0 +1,27 @@ +# SystemKonkursowTemplate + +This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 1.0.0-beta.31. + +## Development server +Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. + +## Code scaffolding + +Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive/pipe/service/class/module`. + +## Build + +Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `-prod` flag for a production build. + +## Running unit tests + +Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). + +## Running end-to-end tests + +Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). +Before running the tests make sure you are serving the app via `ng serve`. + +## Further help + +To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). diff --git a/SystemKonkursow/4.2.1/angular/SystemKonkursow.AngularUI.csproj b/SystemKonkursow/4.2.1/angular/SystemKonkursow.AngularUI.csproj new file mode 100644 index 0000000..b542c3b --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/SystemKonkursow.AngularUI.csproj @@ -0,0 +1,24 @@ + + + netcoreapp2.1 + angular + angular + + + + + + + + + + + PreserveNewest + + + + + Always + + + \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/SystemKonkursow.AngularUI.sln b/SystemKonkursow/4.2.1/angular/SystemKonkursow.AngularUI.sln new file mode 100644 index 0000000..1177ba5 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/SystemKonkursow.AngularUI.sln @@ -0,0 +1,33 @@ +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26228.4 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SystemKonkursow.AngularUI", "SystemKonkursow.AngularUI.csproj", "{11BD8782-23F0-45A0-9A00-A213373B0F5D}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Debug|x64.ActiveCfg = Debug|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Debug|x64.Build.0 = Debug|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Debug|x86.ActiveCfg = Debug|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Debug|x86.Build.0 = Debug|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Release|Any CPU.Build.0 = Release|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Release|x64.ActiveCfg = Release|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Release|x64.Build.0 = Release|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Release|x86.ActiveCfg = Release|Any CPU + {11BD8782-23F0-45A0-9A00-A213373B0F5D}.Release|x86.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/SystemKonkursow/4.2.1/angular/angular.json b/SystemKonkursow/4.2.1/angular/angular.json new file mode 100644 index 0000000..1ed6ded --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/angular.json @@ -0,0 +1,249 @@ +{ + "$schema": "./node_modules/@angular/cli/lib/config/schema.json", + "version": 1, + "newProjectRoot": "projects", + "projects": { + "SystemKonkursow": { + "root": "", + "sourceRoot": "src", + "projectType": "application", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist", + "index": "src/index.html", + "main": "src/main.ts", + "tsConfig": "src/tsconfig.json", + "polyfills": "src/polyfills.ts", + "assets": [ + "src/assets", + "src/favicon.ico", + { + "glob": "abp.signalr.js", + "input": "node_modules/abp-web-resources/Abp/Framework/scripts/libs", + "output": "/assets/abp" + }, + { + "glob": "abp.signalr-client.js", + "input": "node_modules/abp-web-resources/Abp/Framework/scripts/libs", + "output": "/assets/abp" + } + ], + "styles": [ + "src/assets/fonts/roboto/roboto.css", + "node_modules/bootstrap/dist/css/bootstrap.min.css", + "node_modules/simple-line-icons/css/simple-line-icons.css", + "node_modules/font-awesome/css/font-awesome.css", + "node_modules/famfamfam-flags/dist/sprite/famfamfam-flags.css", + "node_modules/toastr/build/toastr.css", + "node_modules/node-waves/dist/waves.css", + "src/bsb-theme/css/materialize.css", + "src/bsb-theme/css/style.css", + "src/bsb-theme/css/themes/all-themes.css", + "src/shared/core.less" + ], + "scripts": [ + "node_modules/jquery/dist/jquery.min.js", + "node_modules/jquery-migrate/dist/jquery-migrate.min.js", + "node_modules/js-cookie/src/js.cookie.js", + "node_modules/bootstrap/dist/js/bootstrap.js", + "node_modules/lodash/lodash.min.js", + "node_modules/moment/min/moment.min.js", + "node_modules/@aspnet/signalr/dist/browser/signalr.min.js", + "node_modules/toastr/toastr.js", + "node_modules/sweetalert/dist/sweetalert.min.js", + "node_modules/block-ui/jquery.blockUI.js", + "node_modules/spin.js/spin.min.js", + "node_modules/spin.js/jquery.spin.js", + "node_modules/push.js/bin/push.min.js", + "node_modules/jquery-slimscroll/jquery.slimscroll.min.js", + "node_modules/node-waves/dist/waves.min.js", + "node_modules/jquery-countto/jquery.countTo.js", + "node_modules/raphael/raphael.min.js", + "node_modules/morris.js/morris.min.js", + "node_modules/chart.js/dist/Chart.bundle.min.js", + "node_modules/flot/jquery.flot.js", + "node_modules/flot/jquery.flot.resize.js", + "node_modules/flot/jquery.flot.pie.js", + "node_modules/flot/jquery.flot.categories.js", + "node_modules/flot/jquery.flot.time.js", + "node_modules/jquery-sparkline/jquery.sparkline.min.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/abp.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.jquery.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.toastr.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.blockUI.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.spin.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.sweet-alert.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.moment.js", + "src/bsb-theme/js/admin.js", + "src/bsb-theme/js/demo.js", + "src/bsb-theme/js/jquery.validate.js" + ] + }, + "configurations": { + "production": { + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "extractCss": true, + "namedChunks": false, + "aot": true, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true, + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.prod.ts" + } + ] + }, + "hmr": { + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.hmr.ts" + } + ] + } + } + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "options": { + "browserTarget": "SystemKonkursow:build" + }, + "configurations": { + "production": { + "browserTarget": "SystemKonkursow:build:production" + }, + "hmr": { + "browserTarget": "SystemKonkursow:build:hmr" + } + } + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "SystemKonkursow:build" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "src/test.ts", + "karmaConfig": "./karma.conf.js", + "polyfills": "src/polyfills.ts", + "scripts": [ + "node_modules/jquery/dist/jquery.min.js", + "node_modules/jquery-migrate/dist/jquery-migrate.min.js", + "node_modules/js-cookie/src/js.cookie.js", + "node_modules/bootstrap/dist/js/bootstrap.js", + "node_modules/lodash/lodash.min.js", + "node_modules/moment/min/moment.min.js", + "node_modules/@aspnet/signalr/dist/browser/signalr.min.js", + "node_modules/toastr/toastr.js", + "node_modules/sweetalert/dist/sweetalert.min.js", + "node_modules/block-ui/jquery.blockUI.js", + "node_modules/spin.js/spin.min.js", + "node_modules/spin.js/jquery.spin.js", + "node_modules/push.js/bin/push.min.js", + "node_modules/jquery-slimscroll/jquery.slimscroll.min.js", + "node_modules/node-waves/dist/waves.min.js", + "node_modules/jquery-countto/jquery.countTo.js", + "node_modules/raphael/raphael.min.js", + "node_modules/morris.js/morris.min.js", + "node_modules/chart.js/dist/Chart.bundle.min.js", + "node_modules/flot/jquery.flot.js", + "node_modules/flot/jquery.flot.resize.js", + "node_modules/flot/jquery.flot.pie.js", + "node_modules/flot/jquery.flot.categories.js", + "node_modules/flot/jquery.flot.time.js", + "node_modules/jquery-sparkline/jquery.sparkline.min.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/abp.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.jquery.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.toastr.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.blockUI.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.spin.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.sweet-alert.js", + "node_modules/abp-web-resources/Abp/Framework/scripts/libs/abp.moment.js", + "src/bsb-theme/js/admin.js", + "src/bsb-theme/js/demo.js", + "src/bsb-theme/js/jquery.validate.js" + ], + "styles": [ + "src/assets/fonts/roboto/roboto.css", + "node_modules/bootstrap/dist/css/bootstrap.min.css", + "node_modules/simple-line-icons/css/simple-line-icons.css", + "node_modules/font-awesome/css/font-awesome.css", + "node_modules/famfamfam-flags/dist/sprite/famfamfam-flags.css", + "node_modules/toastr/build/toastr.css", + "node_modules/node-waves/dist/waves.css", + "src/bsb-theme/css/materialize.css", + "src/bsb-theme/css/style.css", + "src/bsb-theme/css/themes/all-themes.css", + "src/shared/core.less" + ], + "assets": [ + "src/assets", + "src/favicon.ico", + { + "glob": "abp.signalr.js", + "input": "node_modules/abp-web-resources/Abp/Framework/scripts/libs", + "output": "/assets/abp" + }, + { + "glob": "abp.signalr-client.js", + "input": "node_modules/abp-web-resources/Abp/Framework/scripts/libs", + "output": "/assets/abp" + } + ] + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "src/tsconfig.json" + ], + "exclude": [] + } + } + } + }, + "SystemKonkursow-e2e": { + "root": "", + "sourceRoot": "", + "projectType": "application", + "architect": { + "e2e": { + "builder": "@angular-devkit/build-angular:protractor", + "options": { + "protractorConfig": "./protractor.conf.js", + "devServerTarget": "SystemKonkursow:serve" + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "e2e/tsconfig.json" + ], + "exclude": [] + } + } + } + } + }, + "defaultProject": "SystemKonkursow", + "schematics": { + "@schematics/angular:component": { + "prefix": "app", + "styleext": "css" + }, + "@schematics/angular:directive": { + "prefix": "app" + } + } +} diff --git a/SystemKonkursow/4.2.1/angular/app.config b/SystemKonkursow/4.2.1/angular/app.config new file mode 100644 index 0000000..49aadfa --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/app.config @@ -0,0 +1,5 @@ + + + + + diff --git a/SystemKonkursow/4.2.1/angular/e2e/app.e2e-spec.ts b/SystemKonkursow/4.2.1/angular/e2e/app.e2e-spec.ts new file mode 100644 index 0000000..0bf9492 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/e2e/app.e2e-spec.ts @@ -0,0 +1,14 @@ +import { SystemKonkursowTemplatePage } from './app.po'; + +describe('SystemKonkursow App', function() { + let page: SystemKonkursowTemplatePage; + + beforeEach(() => { + page = new SystemKonkursowTemplatePage(); + }); + + it('should display message saying app works', () => { + page.navigateTo(); + expect(page.getParagraphText()).toEqual('app works!'); + }); +}); diff --git a/SystemKonkursow/4.2.1/angular/e2e/app.po.ts b/SystemKonkursow/4.2.1/angular/e2e/app.po.ts new file mode 100644 index 0000000..51affd9 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/e2e/app.po.ts @@ -0,0 +1,11 @@ +import { browser, element, by } from 'protractor'; + +export class SystemKonkursowTemplatePage { + navigateTo() { + return browser.get('/'); + } + + getParagraphText() { + return element(by.css('app-root h1')).getText(); + } +} diff --git a/SystemKonkursow/4.2.1/angular/e2e/tsconfig.json b/SystemKonkursow/4.2.1/angular/e2e/tsconfig.json new file mode 100644 index 0000000..94da47a --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/e2e/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compileOnSave": false, + "compilerOptions": { + "declaration": false, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "lib": [ + "es2016" + ], + "module": "commonjs", + "moduleResolution": "node", + "outDir": "../dist/out-tsc-e2e", + "sourceMap": true, + "target": "es6", + "typeRoots": [ + "../node_modules/@types" + ] + } +} diff --git a/SystemKonkursow/4.2.1/angular/karma.conf.js b/SystemKonkursow/4.2.1/angular/karma.conf.js new file mode 100644 index 0000000..1a4c021 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/karma.conf.js @@ -0,0 +1,41 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/0.13/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-coverage-istanbul-reporter'), + require('@angular-devkit/build-angular/plugins/karma') + ], + files: [ + + ], + preprocessors: { + + }, + mime: { + 'text/x-typescript': ['ts','tsx'] + }, + coverageIstanbulReporter: { + dir: require('path').join(__dirname, 'coverage'), reports: [ 'html', 'lcovonly' ], + fixWebpackSourcePaths: true + }, + angularCli: { + config: './.angular-cli.json', + environment: 'dev' + }, + reporters: config.angularCli && config.angularCli.codeCoverage + ? ['progress', 'coverage-istanbul'] + : ['progress'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false + }); +}; diff --git a/SystemKonkursow/4.2.1/angular/nswag/refresh.bat b/SystemKonkursow/4.2.1/angular/nswag/refresh.bat new file mode 100644 index 0000000..02d2a59 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/nswag/refresh.bat @@ -0,0 +1 @@ +"..\node_modules\.bin\nswag" run \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/nswag/service.config.nswag b/SystemKonkursow/4.2.1/angular/nswag/service.config.nswag new file mode 100644 index 0000000..695f62b --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/nswag/service.config.nswag @@ -0,0 +1,139 @@ +{ + "runtime": "Default", + "swaggerGenerator": { + "fromSwagger": { + "url": "http://localhost:21021/swagger/v1/swagger.json", + "output": null + } + }, + "codeGenerators": { + "swaggerToTypeScriptClient": { + "className": "{controller}ServiceProxy", + "moduleName": "", + "namespace": "", + "typeScriptVersion": 2.0, + "template": "Angular", + "promiseType": "Promise", + "httpClass": "HttpClient", + "useSingletonProvider": false, + "injectionTokenType": "InjectionToken", + "rxJsVersion": 6.0, + "dateTimeType": "MomentJS", + "nullValue": "Undefined", + "generateClientClasses": true, + "generateClientInterfaces": false, + "generateOptionalParameters": false, + "wrapDtoExceptions": false, + "wrapResponses": false, + "generateResponseClasses": true, + "responseClass": "SwaggerResponse", + "useTransformOptionsMethod": false, + "useTransformResultMethod": false, + "generateDtoTypes": true, + "operationGenerationMode": "MultipleClientsFromPathSegments", + "markOptionalProperties": false, + "generateCloneMethod": true, + "typeStyle": "Class", + "generateDefaultValues": true, + "excludedTypeNames": [], + "handleReferences": false, + "generateConstructorInterface": true, + "convertConstructorInterfaceData": false, + "importRequiredTypes": true, + "useGetBaseUrlMethod": false, + "baseUrlTokenName": "API_BASE_URL", + "queryNullValue": "", + "output": "../src/shared/service-proxies/service-proxies.ts" + }, + "swaggerToCSharpClient": { + "generateClientClasses": true, + "generateClientInterfaces": false, + "generateDtoTypes": true, + "injectHttpClient": false, + "disposeHttpClient": true, + "generateExceptionClasses": true, + "exceptionClass": "SwaggerException", + "wrapDtoExceptions": true, + "useHttpClientCreationMethod": false, + "httpClientType": "System.Net.Http.HttpClient", + "useHttpRequestMessageCreationMethod": false, + "useBaseUrl": true, + "generateBaseUrlProperty": true, + "generateSyncMethods": false, + "exposeJsonSerializerSettings": false, + "clientClassAccessModifier": "public", + "typeAccessModifier": "public", + "generateContractsOutput": false, + "parameterDateTimeFormat": "s", + "generateUpdateJsonSerializerSettingsMethod": true, + "serializeTypeInformation": false, + "queryNullValue": "", + "className": "{controller}Client", + "operationGenerationMode": "MultipleClientsFromOperationId", + "generateOptionalParameters": false, + "generateJsonMethods": true, + "parameterArrayType": "System.Collections.Generic.IEnumerable", + "parameterDictionaryType": "System.Collections.Generic.IDictionary", + "responseArrayType": "System.Collections.ObjectModel.ObservableCollection", + "responseDictionaryType": "System.Collections.Generic.Dictionary", + "wrapResponses": false, + "generateResponseClasses": true, + "responseClass": "SwaggerResponse", + "namespace": "MyNamespace", + "requiredPropertiesMustBeDefined": true, + "dateType": "System.DateTime", + "dateTimeType": "System.DateTime", + "timeType": "System.TimeSpan", + "timeSpanType": "System.TimeSpan", + "arrayType": "System.Collections.ObjectModel.ObservableCollection", + "dictionaryType": "System.Collections.Generic.Dictionary", + "arrayBaseType": "System.Collections.ObjectModel.ObservableCollection", + "dictionaryBaseType": "System.Collections.Generic.Dictionary", + "classStyle": "Inpc", + "generateDefaultValues": true, + "generateDataAnnotations": true, + "excludedTypeNames": [], + "handleReferences": false, + "generateImmutableArrayProperties": false, + "generateImmutableDictionaryProperties": false, + "output": null + }, + "swaggerToCSharpController": { + "controllerStyle": "Partial", + "useCancellationToken": false, + "aspNetNamespace": "System.Web.Http", + "className": "{controller}", + "operationGenerationMode": "MultipleClientsFromOperationId", + "additionalNamespaceUsages": [ + "System.Web.Http" + ], + "generateOptionalParameters": false, + "generateJsonMethods": true, + "parameterArrayType": "System.Collections.Generic.IEnumerable", + "parameterDictionaryType": "System.Collections.Generic.IDictionary", + "responseArrayType": "System.Collections.ObjectModel.ObservableCollection", + "responseDictionaryType": "System.Collections.Generic.Dictionary", + "wrapResponses": false, + "generateResponseClasses": true, + "responseClass": "SwaggerResponse", + "namespace": "MyNamespace", + "requiredPropertiesMustBeDefined": true, + "dateType": "System.DateTime", + "dateTimeType": "System.DateTime", + "timeType": "System.TimeSpan", + "timeSpanType": "System.TimeSpan", + "arrayType": "System.Collections.Generic.IEnumerable", + "dictionaryType": "System.Collections.Generic.Dictionary", + "arrayBaseType": "System.Collections.ObjectModel.ObservableCollection", + "dictionaryBaseType": "System.Collections.Generic.Dictionary", + "classStyle": "Inpc", + "generateDefaultValues": true, + "generateDataAnnotations": true, + "excludedTypeNames": [], + "handleReferences": false, + "generateImmutableArrayProperties": false, + "generateImmutableDictionaryProperties": false, + "output": null + } + } +} diff --git a/SystemKonkursow/4.2.1/angular/package-lock.json b/SystemKonkursow/4.2.1/angular/package-lock.json new file mode 100644 index 0000000..855a4da --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/package-lock.json @@ -0,0 +1,10842 @@ +{ + "name": "SystemKonkursow", + "version": "0.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@angular-devkit/architect": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.6.8.tgz", + "integrity": "sha512-ZKTm/zC61iY9IBHOEAKoMSzZpvhkmv+1O/HHzpHEuR551jCzu6vSyCmMY9Z7GBcccscCV+hjeSMwgFrFRcqlkw==", + "dev": true, + "requires": { + "@angular-devkit/core": "0.6.8", + "rxjs": "6.2.1" + } + }, + "@angular-devkit/build-angular": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.6.8.tgz", + "integrity": "sha512-VGqYAk8jpISraz2UHfsDre270NOUmV0CTSZw2p9sm5g/XIr5m+IHetFZz3gpoAr9+If2aFTs8Rt3sGdCRzwBqA==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.6.8", + "@angular-devkit/build-optimizer": "0.6.8", + "@angular-devkit/core": "0.6.8", + "@ngtools/webpack": "6.0.8", + "ajv": "6.4.0", + "autoprefixer": "8.6.5", + "cache-loader": "1.2.2", + "chalk": "2.2.2", + "circular-dependency-plugin": "5.0.2", + "clean-css": "4.2.1", + "copy-webpack-plugin": "4.5.2", + "file-loader": "1.1.11", + "glob": "7.1.3", + "html-webpack-plugin": "3.2.0", + "istanbul": "0.4.5", + "istanbul-instrumenter-loader": "3.0.1", + "karma-source-map-support": "1.3.0", + "less": "3.8.1", + "less-loader": "4.1.0", + "license-webpack-plugin": "1.5.0", + "lodash": "4.17.10", + "memory-fs": "0.4.1", + "mini-css-extract-plugin": "0.4.3", + "minimatch": "3.0.4", + "node-sass": "4.9.3", + "opn": "5.4.0", + "parse5": "4.0.0", + "portfinder": "1.0.17", + "postcss": "6.0.23", + "postcss-import": "11.1.0", + "postcss-loader": "2.1.6", + "postcss-url": "7.3.2", + "raw-loader": "0.5.1", + "resolve": "1.8.1", + "rxjs": "6.2.1", + "sass-loader": "7.1.0", + "silent-error": "1.1.0", + "source-map-support": "0.5.9", + "stats-webpack-plugin": "0.6.2", + "style-loader": "0.21.0", + "stylus": "0.54.5", + "stylus-loader": "3.0.2", + "tree-kill": "1.2.0", + "uglifyjs-webpack-plugin": "1.3.0", + "url-loader": "1.1.1", + "webpack": "4.8.3", + "webpack-dev-middleware": "3.4.0", + "webpack-dev-server": "3.1.9", + "webpack-merge": "4.1.4", + "webpack-sources": "1.3.0", + "webpack-subresource-integrity": "1.1.0-rc.6" + } + }, + "@angular-devkit/build-optimizer": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.6.8.tgz", + "integrity": "sha512-of5syQbv3uNPp4AQkfRecfnp8AE8kvffbfYi+FFPZ6OGr7e59T1fGwk6+Zgb2qQFQg8HO2tzWI/uygtLIqmbmw==", + "dev": true, + "requires": { + "loader-utils": "1.1.0", + "source-map": "0.5.7", + "typescript": "2.9.2", + "webpack-sources": "1.3.0" + }, + "dependencies": { + "typescript": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz", + "integrity": "sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==", + "dev": true + } + } + }, + "@angular-devkit/core": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.6.8.tgz", + "integrity": "sha512-rkIa1OSVWTt4g9leLSK/PsqOj3HZbDKHbZjqlslyfVa3AyCeiumFoOgViOVXlYgPX3HHDbE5uH24nyUWSD8uww==", + "dev": true, + "requires": { + "ajv": "6.4.0", + "chokidar": "2.0.4", + "rxjs": "6.2.1", + "source-map": "0.5.7" + } + }, + "@angular-devkit/schematics": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-0.6.8.tgz", + "integrity": "sha512-R4YqAUdo62wtrhX/5HSRGSKXNTWqfQb66ZE6m8jj6GEJNFKdNXMdxOchxr07LCiKTxfh1w6G3nGzxIsu/+D4KA==", + "dev": true, + "requires": { + "@angular-devkit/core": "0.6.8", + "rxjs": "6.2.1" + } + }, + "@angular/animations": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-6.0.5.tgz", + "integrity": "sha512-zW/qX3CvsuRDOcTNFFSf7uXktvq1jRrfKR8LdGQ/DER1GU3o8pR3z3H8gHy8lAFc3PESfETtzXinKUNzvTDfpA==", + "requires": { + "tslib": "1.9.2" + } + }, + "@angular/cli": { + "version": "6.0.8", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-6.0.8.tgz", + "integrity": "sha512-DhH1Zq5Yonthw6zh6W07fhf+9XrAZbD1fcQ0MrmbxlieCfLlTAdBqyK2LavFCKwSZkUMLF6UHM3+jiNRVZSSIg==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.6.8", + "@angular-devkit/core": "0.6.8", + "@angular-devkit/schematics": "0.6.8", + "@schematics/angular": "0.6.8", + "@schematics/update": "0.6.8", + "opn": "5.3.0", + "resolve": "1.8.1", + "rxjs": "6.2.1", + "semver": "5.5.1", + "silent-error": "1.1.0", + "symbol-observable": "1.2.0", + "yargs-parser": "10.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "opn": { + "version": "5.3.0", + "resolved": "http://registry.npmjs.org/opn/-/opn-5.3.0.tgz", + "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", + "dev": true, + "requires": { + "is-wsl": "1.1.0" + } + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "4.1.0" + } + } + } + }, + "@angular/common": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-6.0.5.tgz", + "integrity": "sha512-xL4Aq+uGQcmHYs90WSKsS9vBC1XO042hM5lSVz+zyYtYzYHdt/Qg1CIuR3zkP+8DG+mf1QZqbg5YtQx5XykmgA==", + "requires": { + "tslib": "1.9.2" + } + }, + "@angular/compiler": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-6.0.5.tgz", + "integrity": "sha512-Oe0VRCyKfHLatalRuXjCdgaY6hhiMXEL/ueknMJFC0+xA73mEchmLYXj64/1ed753cjnLOM2qbVVwqhc26tmEg==", + "requires": { + "tslib": "1.9.2" + } + }, + "@angular/compiler-cli": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-6.0.5.tgz", + "integrity": "sha512-onRlVLWo1mTdyxLMRtW4iPntTUglJl9T0hacRlscKKlAUT8jaSfqIyknCF3jEXJrTnfKdypen053U7g2ajifrA==", + "dev": true, + "requires": { + "chokidar": "1.7.0", + "minimist": "1.2.0", + "reflect-metadata": "0.1.12", + "tsickle": "0.29.0" + }, + "dependencies": { + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "requires": { + "micromatch": "2.3.11", + "normalize-path": "2.1.1" + } + }, + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "1.1.0" + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.3" + } + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true, + "requires": { + "anymatch": "1.3.2", + "async-each": "1.0.1", + "fsevents": "1.2.4", + "glob-parent": "2.0.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "2.0.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.2.1" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "0.1.1" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "2.0.1" + } + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.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.6" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.2", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.4" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "@angular/core": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-6.0.5.tgz", + "integrity": "sha512-yG4Qz5wHWgFYOCtX62F8MmJ1wZwZA1ALbyQC+WAZfi7Y8Asx8TShJ+3QKUDYwO1jj530pqNbfauDTCmPzzPvaQ==", + "requires": { + "tslib": "1.9.2" + } + }, + "@angular/forms": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-6.0.5.tgz", + "integrity": "sha512-d1SdhAQ/W1n3vtm1lp5y16EaUylcZ2wftLUj6MSne3bH/2MJ6JsxJKwX+MfPcQCo+DCfG5bF0UMCa1KAwUQthQ==", + "requires": { + "tslib": "1.9.2" + } + }, + "@angular/http": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@angular/http/-/http-6.0.5.tgz", + "integrity": "sha512-N9lx1s1h4wki1ob4qne3FdyAWG3TcCAGnUAjDmZ1+c/hhxtcv0iEJ22nBrGkPIsUxIPXg0JgsD1hKhu5DGEbWg==", + "requires": { + "tslib": "1.9.2" + } + }, + "@angular/platform-browser": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-6.0.5.tgz", + "integrity": "sha512-FSsA9C3cJa7S4SPUAhypKlTQf4uA4hiqx/h65v7frDiyRVHv22oWKX7aKmyyb9oP5FHN/TDeQiRn4m8XNqG6AQ==", + "requires": { + "tslib": "1.9.2" + } + }, + "@angular/platform-browser-dynamic": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-6.0.5.tgz", + "integrity": "sha512-TTSLOMVrgRXI29xmBWsnSp8187vbWnbj0YEehuyup2FmltUl+H5Vms7poWV9/6fI3RnW3Yg9Ziv3T5iKqsiADQ==", + "requires": { + "tslib": "1.9.2" + } + }, + "@angular/router": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-6.0.5.tgz", + "integrity": "sha512-M3cb5CDX+WvkM2xmFeP64zPwLJ6by6cyzl5OCfEQjoTGKOFY7N2B4kHAOw5KJN3nIEd0PersSBgf11Y9g7GPwA==", + "requires": { + "tslib": "1.9.2" + } + }, + "@angularclass/hmr": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@angularclass/hmr/-/hmr-2.1.3.tgz", + "integrity": "sha1-NOZY7T2jfyOwogDi2lqJvpK7IJ8=", + "dev": true + }, + "@aspnet/signalr": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@aspnet/signalr/-/signalr-1.0.0.tgz", + "integrity": "sha512-7fXNdSTnp2y7a3i7BnvBpQpDEoG71DNq1J/Caowr+3v/nzGivnJApRg40VgBp6FlyeJqoBEQO/QuDPE0kTpczg==" + }, + "@ngtools/webpack": { + "version": "6.0.8", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-6.0.8.tgz", + "integrity": "sha512-jorGpTd82ILbyUwg4JQekovHFaYwSMlZan4f7x+sd3+2WgyL3Z1+ZbVSGKvXZWKS/mAVx7eLkRikzJkuC4FgHw==", + "dev": true, + "requires": { + "@angular-devkit/core": "0.6.8", + "tree-kill": "1.2.0", + "webpack-sources": "1.3.0" + } + }, + "@schematics/angular": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-0.6.8.tgz", + "integrity": "sha512-9kRphqTYG5Df/I8fvnT1zMsw0YNDPO9tl18tQZXj4am4raT7l9UCr+WkwJdlBoA5pwG6baWE9sL0iGWV/bzF/g==", + "dev": true, + "requires": { + "@angular-devkit/core": "0.6.8", + "@angular-devkit/schematics": "0.6.8", + "typescript": "2.7.2" + } + }, + "@schematics/update": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.6.8.tgz", + "integrity": "sha512-1Uq7LYnwL2wBwGVCgNz76QAR13ghAk+2vDDHOi+VX5+usHManxydrpoMGeX66OBPd+y5D3D2MFb+8mYHE7mygg==", + "dev": true, + "requires": { + "@angular-devkit/core": "0.6.8", + "@angular-devkit/schematics": "0.6.8", + "npm-registry-client": "8.6.0", + "rxjs": "6.2.1", + "semver": "5.5.1", + "semver-intersect": "1.4.0" + } + }, + "@types/bootstrap": { + "version": "3.3.39", + "resolved": "https://registry.npmjs.org/@types/bootstrap/-/bootstrap-3.3.39.tgz", + "integrity": "sha512-UGvzSQFkv0Oh2vjj30AfZructi7XvY0aRa1Y/vrgFq+tfrTMxtqQ9+s5liCYLJnrISc9LinEtOY5N8Ibrhj2Tg==", + "requires": { + "@types/jquery": "3.3.2" + } + }, + "@types/jasmine": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.8.tgz", + "integrity": "sha512-OJSUxLaxXsjjhob2DBzqzgrkLmukM3+JMpRp0r0E4HTdT1nwDCWhaswjYxazPij6uOdzHCJfNbDjmQ1/rnNbCg==", + "dev": true + }, + "@types/jquery": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.3.2.tgz", + "integrity": "sha512-ByZwKSEqteAta4VrIalqGJZmMq9lWPD3H3f5Xs6RR8B7zQRDPGUtjoKBYNtKTz/7LgBEQMdlxVbbjQfUaEIItA==" + }, + "@types/jquery.blockui": { + "version": "0.0.28", + "resolved": "https://registry.npmjs.org/@types/jquery.blockui/-/jquery.blockui-0.0.28.tgz", + "integrity": "sha512-6zkA/rYkXjd4H1diYZWxeusFsJ49R+0Q6Gv000TkQ4PCxIAAon7R9kc+OKyXo2oV6IV+i5l4usfwk9TEasbsPw==", + "requires": { + "@types/jquery": "3.3.2" + } + }, + "@types/jquery.validation": { + "version": "1.16.4", + "resolved": "https://registry.npmjs.org/@types/jquery.validation/-/jquery.validation-1.16.4.tgz", + "integrity": "sha512-PFrM2r+3bJ2y4VqY+Z68TBZJ+e/cHE7Cfdv1LFcZl0kk2z3au1fuCzxcSH5wAFxq3t4/5SVpXIEM+xysR8Qoxg==", + "requires": { + "@types/jquery": "3.3.2" + } + }, + "@types/lodash": { + "version": "4.14.109", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.109.tgz", + "integrity": "sha512-hop8SdPUEzbcJm6aTsmuwjIYQo1tqLseKCM+s2bBqTU2gErwI4fE+aqUVOlscPSQbKHKgtMMPoC+h4AIGOJYvw==" + }, + "@types/moment": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/@types/moment/-/moment-2.13.0.tgz", + "integrity": "sha1-YE69GJvDvDShVIaJQE5hoqSqyJY=", + "requires": { + "moment": "2.22.2" + } + }, + "@types/moment-timezone": { + "version": "0.2.35", + "resolved": "https://registry.npmjs.org/@types/moment-timezone/-/moment-timezone-0.2.35.tgz", + "integrity": "sha512-HG4pUK/fTrGY3FerMlINxK74MxdAxkCRYrp5AM+oJ2jLcK0jWUi64ZV15JKwDR4TYLIxrT3y9SVnEWcLPbC/YA==", + "requires": { + "moment": "2.22.2" + } + }, + "@types/node": { + "version": "8.10.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.20.tgz", + "integrity": "sha512-M7x8+5D1k/CuA6jhiwuSCmE8sbUWJF0wYsjcig9WrXvwUI5ArEoUBdOXpV4JcEMrLp02/QbDjw+kI+vQeKyQgg==", + "dev": true + }, + "@types/q": { + "version": "0.0.32", + "resolved": "http://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", + "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=", + "dev": true + }, + "@types/selenium-webdriver": { + "version": "2.53.43", + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-2.53.43.tgz", + "integrity": "sha512-UBYHWph6P3tutkbXpW6XYg9ZPbTKjw/YC2hGG1/GEvWwTbvezBUv3h+mmUFw79T3RFPnmedpiXdOBbXX+4l0jg==", + "dev": true + }, + "@types/toastr": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/@types/toastr/-/toastr-2.1.35.tgz", + "integrity": "sha512-NSPsNyBRxopghpNQLPqMLGK4oDIey5prT6RTkExljOfRrid0bkTr5v9NXYntBOwhEMmHjrmdsxY/g2/eKAJZpg==", + "requires": { + "@types/jquery": "3.3.2" + } + }, + "@webassemblyjs/ast": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.4.3.tgz", + "integrity": "sha512-S6npYhPcTHDYe9nlsKa9CyWByFi8Vj8HovcAgtmMAQZUOczOZbQ8CnwMYKYC5HEZzxEE+oY0jfQk4cVlI3J59Q==", + "dev": true, + "requires": { + "@webassemblyjs/helper-wasm-bytecode": "1.4.3", + "@webassemblyjs/wast-parser": "1.4.3", + "debug": "3.2.5", + "webassemblyjs": "1.4.3" + }, + "dependencies": { + "debug": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "dev": true, + "requires": { + "ms": "2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.4.3.tgz", + "integrity": "sha512-3zTkSFswwZOPNHnzkP9ONq4bjJSeKVMcuahGXubrlLmZP8fmTIJ58dW7h/zOVWiFSuG2em3/HH3BlCN7wyu9Rw==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.4.3.tgz", + "integrity": "sha512-e8+KZHh+RV8MUvoSRtuT1sFXskFnWG9vbDy47Oa166xX+l0dD5sERJ21g5/tcH8Yo95e9IN3u7Jc3NbhnUcSkw==", + "dev": true, + "requires": { + "debug": "3.2.5" + }, + "dependencies": { + "debug": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "dev": true, + "requires": { + "ms": "2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.4.3.tgz", + "integrity": "sha512-9FgHEtNsZQYaKrGCtsjswBil48Qp1agrzRcPzCbQloCoaTbOXLJ9IRmqT+uEZbenpULLRNFugz3I4uw18hJM8w==", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.4.3" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.4.3.tgz", + "integrity": "sha512-JINY76U+702IRf7ePukOt037RwmtH59JHvcdWbTTyHi18ixmQ+uOuNhcdCcQHTquDAH35/QgFlp3Y9KqtyJsCQ==", + "dev": true + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.4.3.tgz", + "integrity": "sha512-I7bS+HaO0K07Io89qhJv+z1QipTpuramGwUSDkwEaficbSvCcL92CUZEtgykfNtk5wb0CoLQwWlmXTwGbNZUeQ==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.4.3.tgz", + "integrity": "sha512-p0yeeO/h2r30PyjnJX9xXSR6EDcvJd/jC6xa/Pxg4lpfcNi7JUswOpqDToZQ55HMMVhXDih/yqkaywHWGLxqyQ==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/helper-buffer": "1.4.3", + "@webassemblyjs/helper-wasm-bytecode": "1.4.3", + "@webassemblyjs/wasm-gen": "1.4.3", + "debug": "3.2.5" + }, + "dependencies": { + "debug": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "dev": true, + "requires": { + "ms": "2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/leb128": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.4.3.tgz", + "integrity": "sha512-4u0LJLSPzuRDWHwdqsrThYn+WqMFVqbI2ltNrHvZZkzFPO8XOZ0HFQ5eVc4jY/TNHgXcnwrHjONhPGYuuf//KQ==", + "dev": true, + "requires": { + "leb": "0.3.0" + } + }, + "@webassemblyjs/validation": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/validation/-/validation-1.4.3.tgz", + "integrity": "sha512-R+rRMKfhd9mq0rj2mhU9A9NKI2l/Rw65vIYzz4lui7eTKPcCu1l7iZNi4b9Gen8D42Sqh/KGiaQNk/x5Tn/iBQ==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3" + } + }, + "@webassemblyjs/wasm-edit": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.4.3.tgz", + "integrity": "sha512-qzuwUn771PV6/LilqkXcS0ozJYAeY/OKbXIWU3a8gexuqb6De2p4ya/baBeH5JQ2WJdfhWhSvSbu86Vienttpw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/helper-buffer": "1.4.3", + "@webassemblyjs/helper-wasm-bytecode": "1.4.3", + "@webassemblyjs/helper-wasm-section": "1.4.3", + "@webassemblyjs/wasm-gen": "1.4.3", + "@webassemblyjs/wasm-opt": "1.4.3", + "@webassemblyjs/wasm-parser": "1.4.3", + "@webassemblyjs/wast-printer": "1.4.3", + "debug": "3.2.5" + }, + "dependencies": { + "debug": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "dev": true, + "requires": { + "ms": "2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.4.3.tgz", + "integrity": "sha512-eR394T8dHZfpLJ7U/Z5pFSvxl1L63JdREebpv9gYc55zLhzzdJPAuxjBYT4XqevUdW67qU2s0nNA3kBuNJHbaQ==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/helper-wasm-bytecode": "1.4.3", + "@webassemblyjs/leb128": "1.4.3" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.4.3.tgz", + "integrity": "sha512-7Gp+nschuKiDuAL1xmp4Xz0rgEbxioFXw4nCFYEmy+ytynhBnTeGc9W9cB1XRu1w8pqRU2lbj2VBBA4cL5Z2Kw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/helper-buffer": "1.4.3", + "@webassemblyjs/wasm-gen": "1.4.3", + "@webassemblyjs/wasm-parser": "1.4.3", + "debug": "3.2.5" + }, + "dependencies": { + "debug": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "dev": true, + "requires": { + "ms": "2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.4.3.tgz", + "integrity": "sha512-KXBjtlwA3BVukR/yWHC9GF+SCzBcgj0a7lm92kTOaa4cbjaTaa47bCjXw6cX4SGQpkncB9PU2hHGYVyyI7wFRg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/helper-wasm-bytecode": "1.4.3", + "@webassemblyjs/leb128": "1.4.3", + "@webassemblyjs/wasm-parser": "1.4.3", + "webassemblyjs": "1.4.3" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.4.3.tgz", + "integrity": "sha512-QhCsQzqV0CpsEkRYyTzQDilCNUZ+5j92f+g35bHHNqS22FppNTywNFfHPq8ZWZfYCgbectc+PoghD+xfzVFh1Q==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/floating-point-hex-parser": "1.4.3", + "@webassemblyjs/helper-code-frame": "1.4.3", + "@webassemblyjs/helper-fsm": "1.4.3", + "long": "3.2.0", + "webassemblyjs": "1.4.3" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.4.3.tgz", + "integrity": "sha512-EgXk4anf8jKmuZJsqD8qy5bz2frEQhBvZruv+bqwNoLWUItjNSFygk8ywL3JTEz9KtxTlAmqTXNrdD1d9gNDtg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/wast-parser": "1.4.3", + "long": "3.2.0" + } + }, + "abbrev": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", + "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", + "dev": true + }, + "abp-ng2-module": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/abp-ng2-module/-/abp-ng2-module-3.2.2.tgz", + "integrity": "sha512-NqyH3LPQuTmXMPBn3sO+1CjC0XIgGXtSnwQsq8H9v/biHj8i6r4aLeJ0ZrN/KbaOSb4asUWSXK3F031XW6IMpw==" + }, + "abp-web-resources": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/abp-web-resources/-/abp-web-resources-3.8.2.tgz", + "integrity": "sha512-3GOfWVMw0oDMIuEwv1Az9SKgDhhtGtjcJ18kreWrfRvLXy/xiXqg4la9yuJciKotksNwFB9Nwd2x9giFp1mi7g==" + }, + "accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "dev": true, + "requires": { + "mime-types": "2.1.20", + "negotiator": "0.6.1" + } + }, + "acorn": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "dev": true + }, + "acorn-dynamic-import": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz", + "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", + "dev": true, + "requires": { + "acorn": "5.7.3" + } + }, + "adm-zip": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.4.tgz", + "integrity": "sha1-ph7VrmkFw66lizplfSUDMJEFJzY=", + "dev": true + }, + "after": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", + "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", + "dev": true + }, + "agent-base": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", + "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", + "dev": true, + "requires": { + "es6-promisify": "5.0.0" + } + }, + "ajv": { + "version": "6.4.0", + "resolved": "http://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", + "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", + "dev": true, + "requires": { + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1", + "uri-js": "3.0.2" + } + }, + "ajv-errors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.0.tgz", + "integrity": "sha1-7PAh+hCP0X37Xms4Py3SM+Mf/Fk=", + "dev": true + }, + "ajv-keywords": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", + "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=", + "dev": true + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "animate.css": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/animate.css/-/animate.css-3.6.1.tgz", + "integrity": "sha512-xEIzzKyQvQSIldgrtC2d/qptAEQLVlMb6xQrjQ6HU6NyGhF7LAIivRZVmhSAg4EICRASNiS+A1G+wvAKTCoC7A==" + }, + "ansi-colors": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.1.0.tgz", + "integrity": "sha512-hTv1qPdi+sVEk3jYsdjox5nQI0C9HTbjKShbCdYLKb1LOfNbb7wsF4d7OEKIZoxIHx02tSp3m94jcPW2EfMjmA==", + "dev": true + }, + "ansi-html": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", + "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", + "dev": true + }, + "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.3" + } + }, + "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.10", + "normalize-path": "2.1.1" + } + }, + "app-root-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.1.0.tgz", + "integrity": "sha1-mL9lmTJ+zqGZMJhm6BQDaP0uZGo=", + "dev": true + }, + "append-transform": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-0.4.0.tgz", + "integrity": "sha1-126/jKlNJ24keja61EpLdKthGZE=", + "dev": true, + "requires": { + "default-require-extensions": "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 + }, + "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.3.6" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "1.0.3" + } + }, + "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-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-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-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, + "optional": true + }, + "array-flatten": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.1.tgz", + "integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=", + "dev": true + }, + "array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "1.0.3" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "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 + }, + "arraybuffer.slice": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz", + "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=", + "dev": true + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "dev": true, + "optional": 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.2" + } + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1" + } + }, + "assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "dev": true, + "requires": { + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "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": "1.5.2", + "resolved": "http://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "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, + "optional": true + }, + "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 + }, + "autoprefixer": { + "version": "8.6.5", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-8.6.5.tgz", + "integrity": "sha512-PLWJN3Xo/rycNkx+mp8iBDMTm3FeWe4VmYaZDSqL5QQB9sLsQkG5k8n+LNDFnhh9kdq2K+egL/icpctOmDHwig==", + "dev": true, + "requires": { + "browserslist": "3.2.8", + "caniuse-lite": "1.0.30000889", + "normalize-range": "0.1.2", + "num2fraction": "1.2.2", + "postcss": "6.0.23", + "postcss-value-parser": "3.3.0" + } + }, + "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.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.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": "http://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.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "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 + } + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "requires": { + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "detect-indent": "4.0.0", + "jsesc": "1.3.0", + "lodash": "4.17.10", + "source-map": "0.5.7", + "trim-right": "1.0.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "2.5.7", + "regenerator-runtime": "0.11.1" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.10" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.4", + "lodash": "4.17.10" + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.10", + "to-fast-properties": "1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "backo2": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", + "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", + "dev": true + }, + "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.6", + "component-emitter": "1.2.1", + "define-property": "1.0.0", + "isobject": "3.0.1", + "mixin-deep": "1.3.1", + "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.2" + } + }, + "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.2" + } + }, + "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.2" + } + }, + "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" + } + } + } + }, + "base64-arraybuffer": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", + "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", + "dev": true + }, + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true + }, + "base64id": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", + "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=", + "dev": true + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "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, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "better-assert": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", + "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", + "dev": true, + "requires": { + "callsite": "1.0.0" + } + }, + "big.js": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", + "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", + "dev": true + }, + "binary-extensions": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz", + "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg==", + "dev": true + }, + "blob": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", + "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=", + "dev": true + }, + "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, + "optional": true, + "requires": { + "inherits": "2.0.3" + } + }, + "block-ui": { + "version": "2.70.1", + "resolved": "https://registry.npmjs.org/block-ui/-/block-ui-2.70.1.tgz", + "integrity": "sha1-yGLWTuYoj7eBIzd8ZoC8erJiED8=", + "requires": { + "jquery": "3.3.1" + } + }, + "blocking-proxy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/blocking-proxy/-/blocking-proxy-1.0.1.tgz", + "integrity": "sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA==", + "dev": true, + "requires": { + "minimist": "1.2.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "bluebird": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.2.tgz", + "integrity": "sha512-dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg==", + "dev": true + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, + "body-parser": { + "version": "1.18.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", + "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "dev": true, + "requires": { + "bytes": "3.0.0", + "content-type": "1.0.4", + "debug": "2.6.9", + "depd": "1.1.2", + "http-errors": "1.6.3", + "iconv-lite": "0.4.19", + "on-finished": "2.3.0", + "qs": "6.5.1", + "raw-body": "2.3.2", + "type-is": "1.6.16" + }, + "dependencies": { + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", + "dev": true + } + } + }, + "bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "requires": { + "array-flatten": "2.1.1", + "deep-equal": "1.0.1", + "dns-equal": "1.0.0", + "dns-txt": "2.0.2", + "multicast-dns": "6.2.3", + "multicast-dns-service-types": "1.1.0" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "bootstrap": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.7.tgz", + "integrity": "sha1-WjiTlFSfIzMIdaOxUGVldPip63E=" + }, + "bootstrap-select": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/bootstrap-select/-/bootstrap-select-1.13.1.tgz", + "integrity": "sha1-9ZwCkm+1rGNWudHNvFOEwvAT2bo=" + }, + "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": "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.3", + "snapdragon": "0.8.2", + "snapdragon-node": "2.1.1", + "split-string": "3.1.0", + "to-regex": "3.0.2" + }, + "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.1" + } + } + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "1.0.3", + "cipher-base": "1.0.4", + "create-hash": "1.2.0", + "evp_bytestokey": "1.0.3", + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "1.2.0", + "browserify-des": "1.0.2", + "evp_bytestokey": "1.0.3" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "1.0.4", + "des.js": "1.0.0", + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "randombytes": "2.0.6" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.2.0", + "create-hmac": "1.1.7", + "elliptic": "6.4.1", + "inherits": "2.0.3", + "parse-asn1": "5.1.1" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "1.0.6" + } + }, + "browserslist": { + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", + "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", + "dev": true, + "requires": { + "caniuse-lite": "1.0.30000889", + "electron-to-chromium": "1.3.73" + } + }, + "buffer": { + "version": "4.9.1", + "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "dev": true, + "requires": { + "base64-js": "1.3.0", + "ieee754": "1.1.12", + "isarray": "1.0.0" + } + }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dev": true, + "requires": { + "buffer-alloc-unsafe": "1.1.0", + "buffer-fill": "1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "dev": true + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "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 + }, + "buffer-indexof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", + "dev": true + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true + }, + "cacache": { + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", + "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", + "dev": true, + "requires": { + "bluebird": "3.5.2", + "chownr": "1.1.1", + "glob": "7.1.3", + "graceful-fs": "4.1.11", + "lru-cache": "4.1.3", + "mississippi": "2.0.0", + "mkdirp": "0.5.1", + "move-concurrently": "1.0.1", + "promise-inflight": "1.0.1", + "rimraf": "2.6.2", + "ssri": "5.3.0", + "unique-filename": "1.1.1", + "y18n": "4.0.0" + }, + "dependencies": { + "ssri": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + } + } + }, + "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" + } + }, + "cache-loader": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cache-loader/-/cache-loader-1.2.2.tgz", + "integrity": "sha512-rsGh4SIYyB9glU+d0OcHwiXHXBoUgDhHZaQ1KAbiXqfz1CDPxtTboh1gPbJ0q2qdO8a9lfcjgC5CJ2Ms32y5bw==", + "dev": true, + "requires": { + "loader-utils": "1.1.0", + "mkdirp": "0.5.1", + "neo-async": "2.5.2", + "schema-utils": "0.4.7" + } + }, + "callsite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", + "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", + "dev": true + }, + "camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "dev": true, + "requires": { + "no-case": "2.3.2", + "upper-case": "1.1.3" + } + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true, + "optional": 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, + "optional": true, + "requires": { + "camelcase": "2.1.1", + "map-obj": "1.0.1" + } + }, + "caniuse-lite": { + "version": "1.0.30000889", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000889.tgz", + "integrity": "sha512-MFxcQ6x/LEEoaIhO7Zdb7Eg8YyNONN+WBnS5ERJ0li2yRw51+i4xXUNxnLaveTb/4ZoJqsWKEmlomhG2pYzlQA==", + "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.2.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.2.2.tgz", + "integrity": "sha512-LvixLAQ4MYhbf7hgL4o5PeK32gJKvVzDRiSNIApDofQvyhl8adgG2lJVXn4+ekQoK7HL9RF8lqxwerpe0x2pCw==", + "dev": true, + "requires": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + }, + "dependencies": { + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } + } + }, + "chart.js": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-2.7.2.tgz", + "integrity": "sha512-90wl3V9xRZ8tnMvMlpcW+0Yg13BelsGS9P9t0ClaDxv/hdypHDr/YAGf+728m11P5ljwyB0ZHfPKCapZFqSqYA==", + "requires": { + "chartjs-color": "2.2.0", + "moment": "2.22.2" + } + }, + "chartjs-color": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/chartjs-color/-/chartjs-color-2.2.0.tgz", + "integrity": "sha1-hKL7dVeH7YXDndbdjHsdiEKbrq4=", + "requires": { + "chartjs-color-string": "0.5.0", + "color-convert": "0.5.3" + }, + "dependencies": { + "color-convert": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-0.5.3.tgz", + "integrity": "sha1-vbbGnOZg+t/+CwAHzER+G59ygr0=" + } + } + }, + "chartjs-color-string": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/chartjs-color-string/-/chartjs-color-string-0.5.0.tgz", + "integrity": "sha512-amWNvCOXlOUYxZVDSa0YOab5K/lmEhbFNKI55PWc4mlv28BDzA7zaoQTGxSBgJMHIW+hGX8YUrvw/FH4LyhwSQ==", + "requires": { + "color-name": "1.1.1" + } + }, + "chokidar": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz", + "integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==", + "dev": true, + "requires": { + "anymatch": "2.0.0", + "async-each": "1.0.1", + "braces": "2.3.2", + "fsevents": "1.2.4", + "glob-parent": "3.1.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "4.0.0", + "lodash.debounce": "4.0.8", + "normalize-path": "2.1.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.2.1", + "upath": "1.1.0" + } + }, + "chownr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true + }, + "chrome-trace-event": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz", + "integrity": "sha512-sjndyZHrrWiu4RY7AkHgjn80GfAM2ZSzUkZLV/Js59Ldmh6JDThf0SUmOHU53rFu2rVxxfCzJ30Ukcfch3Gb/A==", + "dev": true + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "circular-dependency-plugin": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.0.2.tgz", + "integrity": "sha512-oC7/DVAyfcY3UWKm0sN/oVoDedQDQiw/vIiAnuTWTpE5s0zWf7l3WY417Xw/Fbi/QbAjctAkxgMiS9P0s3zkmA==", + "dev": true + }, + "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.1", + "static-extend": "0.1.2" + }, + "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.6" + } + } + } + }, + "clean-css": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", + "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", + "dev": true, + "requires": { + "source-map": "0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "optional": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true + }, + "clone-deep": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz", + "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==", + "dev": true, + "requires": { + "for-own": "1.0.0", + "is-plain-object": "2.0.4", + "kind-of": "6.0.2", + "shallow-clone": "1.0.0" + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "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 + }, + "codelyzer": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-4.3.0.tgz", + "integrity": "sha512-RLMrtLwrBS0dfo2/KTP+2NHofCpzcuh0bEp/A/naqvQonbUL4AW/qWQdbpn8dMNudtpmzEx9eS8KEpGdVPg1BA==", + "dev": true, + "requires": { + "app-root-path": "2.1.0", + "css-selector-tokenizer": "0.7.0", + "cssauron": "1.4.0", + "semver-dsl": "1.0.1", + "source-map": "0.5.7", + "sprintf-js": "1.0.3" + } + }, + "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.1" + } + }, + "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" + }, + "dependencies": { + "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-name": { + "version": "1.1.1", + "resolved": "http://registry.npmjs.org/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha1-SxQVMEz1ACjqgWQ2Q72C6gWANok=" + }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true + }, + "combine-lists": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz", + "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=", + "dev": true, + "requires": { + "lodash": "4.17.10" + } + }, + "combined-stream": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", + "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "dev": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-bind": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", + "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", + "dev": true + }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, + "component-inherit": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", + "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", + "dev": true + }, + "compressible": { + "version": "2.0.15", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.15.tgz", + "integrity": "sha512-4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw==", + "dev": true, + "requires": { + "mime-db": "1.36.0" + } + }, + "compression": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz", + "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", + "dev": true, + "requires": { + "accepts": "1.3.5", + "bytes": "3.0.0", + "compressible": "2.0.15", + "debug": "2.6.9", + "on-headers": "1.0.1", + "safe-buffer": "5.1.2", + "vary": "1.1.2" + } + }, + "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.1.1", + "inherits": "2.0.3", + "readable-stream": "2.3.6", + "typedarray": "0.0.6" + } + }, + "connect": { + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", + "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=", + "dev": true, + "requires": { + "debug": "2.6.9", + "finalhandler": "1.1.0", + "parseurl": "1.3.2", + "utils-merge": "1.0.1" + }, + "dependencies": { + "finalhandler": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "statuses": "1.3.1", + "unpipe": "1.0.0" + } + }, + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", + "dev": true + } + } + }, + "connect-history-api-fallback": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", + "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=", + "dev": true + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "0.1.4" + } + }, + "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 + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", + "dev": true + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true + }, + "convert-source-map": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", + "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "1.2.0", + "fs-write-stream-atomic": "1.0.10", + "iferr": "0.1.5", + "mkdirp": "0.5.1", + "rimraf": "2.6.2", + "run-queue": "1.0.3" + } + }, + "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-webpack-plugin": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.5.2.tgz", + "integrity": "sha512-zmC33E8FFSq3AbflTvqvPvBo621H36Afsxlui91d+QyZxPIuXghfnTsa1CuqiAaCPgJoSUWfTFbKJnadZpKEbQ==", + "dev": true, + "requires": { + "cacache": "10.0.4", + "find-cache-dir": "1.0.0", + "globby": "7.1.1", + "is-glob": "4.0.0", + "loader-utils": "1.1.0", + "minimatch": "3.0.4", + "p-limit": "1.3.0", + "serialize-javascript": "1.5.0" + } + }, + "core-js": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", + "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==" + }, + "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 + }, + "cosmiconfig": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-4.0.0.tgz", + "integrity": "sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==", + "dev": true, + "requires": { + "is-directory": "0.3.1", + "js-yaml": "3.12.0", + "parse-json": "4.0.0", + "require-from-string": "2.0.2" + }, + "dependencies": { + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "1.3.2", + "json-parse-better-errors": "1.0.2" + } + } + } + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "elliptic": "6.4.1" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "1.0.4", + "inherits": "2.0.3", + "md5.js": "1.3.5", + "ripemd160": "2.0.2", + "sha.js": "2.4.11" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "1.0.4", + "create-hash": "1.2.0", + "inherits": "2.0.3", + "ripemd160": "2.0.2", + "safe-buffer": "5.1.2", + "sha.js": "2.4.11" + } + }, + "cross-spawn": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", + "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", + "dev": true, + "optional": true, + "requires": { + "lru-cache": "4.1.3", + "which": "1.3.1" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "1.0.1", + "browserify-sign": "4.0.4", + "create-ecdh": "4.0.3", + "create-hash": "1.2.0", + "create-hmac": "1.1.7", + "diffie-hellman": "5.0.3", + "inherits": "2.0.3", + "pbkdf2": "3.0.17", + "public-encrypt": "4.0.3", + "randombytes": "2.0.6", + "randomfill": "1.0.4" + } + }, + "css-parse": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", + "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", + "dev": true + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "1.0.0", + "css-what": "2.1.0", + "domutils": "1.5.1", + "nth-check": "1.0.1" + } + }, + "css-selector-tokenizer": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz", + "integrity": "sha1-5piEdK6MlTR3v15+/s/OzNnPTIY=", + "dev": true, + "requires": { + "cssesc": "0.1.0", + "fastparse": "1.1.1", + "regexpu-core": "1.0.0" + } + }, + "css-what": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz", + "integrity": "sha1-lGfQMsOM+u+58teVASUwYvh/ob0=", + "dev": true + }, + "cssauron": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz", + "integrity": "sha1-pmAt/34EqDBtwNuaVR6S6LVmKtg=", + "dev": true, + "requires": { + "through": "2.3.8" + } + }, + "cssesc": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", + "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", + "dev": true + }, + "cuint": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", + "integrity": "sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs=", + "dev": true + }, + "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, + "optional": true, + "requires": { + "array-find-index": "1.0.2" + } + }, + "custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", + "dev": true + }, + "cyclist": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", + "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", + "dev": true + }, + "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" + } + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, + "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 + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "default-gateway": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-2.7.2.tgz", + "integrity": "sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ==", + "dev": true, + "requires": { + "execa": "0.10.0", + "ip-regex": "2.1.0" + } + }, + "default-require-extensions": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-1.0.0.tgz", + "integrity": "sha1-836hXT4T/9m0N9M+GnW1+5eHTLg=", + "dev": true, + "requires": { + "strip-bom": "2.0.0" + } + }, + "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.2" + } + }, + "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.2" + } + }, + "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": "3.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", + "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", + "dev": true, + "requires": { + "globby": "6.1.0", + "is-path-cwd": "1.0.0", + "is-path-in-cwd": "1.0.1", + "p-map": "1.2.0", + "pify": "3.0.0", + "rimraf": "2.6.2" + }, + "dependencies": { + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "1.0.2", + "glob": "7.1.3", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + } + } + }, + "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 + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1" + } + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "2.0.1" + } + }, + "detect-node": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", + "dev": true + }, + "di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", + "dev": true + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "miller-rabin": "4.0.1", + "randombytes": "2.0.6" + } + }, + "dir-glob": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", + "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "dev": true, + "requires": { + "arrify": "1.0.1", + "path-type": "3.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true + }, + "dns-packet": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", + "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", + "dev": true, + "requires": { + "ip": "1.1.5", + "safe-buffer": "5.1.2" + } + }, + "dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", + "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "dev": true, + "requires": { + "buffer-indexof": "1.1.1" + } + }, + "dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "dev": true, + "requires": { + "utila": "0.4.0" + } + }, + "dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", + "dev": true, + "requires": { + "custom-event": "1.0.1", + "ent": "2.2.0", + "extend": "3.0.2", + "void-elements": "2.0.1" + } + }, + "dom-serializer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", + "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", + "dev": true, + "requires": { + "domelementtype": "1.1.3", + "entities": "1.1.1" + }, + "dependencies": { + "domelementtype": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", + "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", + "dev": true + } + } + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, + "domelementtype": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz", + "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=", + "dev": true + }, + "domhandler": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.1.0.tgz", + "integrity": "sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ=", + "dev": true, + "requires": { + "domelementtype": "1.3.0" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0.1.0", + "domelementtype": "1.3.0" + } + }, + "duplexify": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz", + "integrity": "sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==", + "dev": true, + "requires": { + "end-of-stream": "1.4.1", + "inherits": "2.0.3", + "readable-stream": "2.3.6", + "stream-shift": "1.0.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, + "optional": true, + "requires": { + "jsbn": "0.1.1", + "safer-buffer": "2.1.2" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "ejs": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.6.1.tgz", + "integrity": "sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.73", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.73.tgz", + "integrity": "sha512-6PIg7v9zRoVGh6EheRF8h6Plti+3Yo/qtHobS4/Htyt53DNHmKKGFqSae1AIk0k1S4gCQvt7I2WgpbuZNcDY+g==", + "dev": true + }, + "elliptic": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "brorand": "1.1.0", + "hash.js": "1.1.5", + "hmac-drbg": "1.0.1", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1", + "minimalistic-crypto-utils": "1.0.1" + } + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "1.4.0" + } + }, + "engine.io": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.8.3.tgz", + "integrity": "sha1-jef5eJXSDTm4X4ju7nd7K9QrE9Q=", + "dev": true, + "requires": { + "accepts": "1.3.3", + "base64id": "1.0.0", + "cookie": "0.3.1", + "debug": "2.3.3", + "engine.io-parser": "1.3.2", + "ws": "1.1.2" + }, + "dependencies": { + "accepts": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz", + "integrity": "sha1-w8p0NJOGSMPg2cHjKN1otiLChMo=", + "dev": true, + "requires": { + "mime-types": "2.1.20", + "negotiator": "0.6.1" + } + }, + "debug": { + "version": "2.3.3", + "resolved": "http://registry.npmjs.org/debug/-/debug-2.3.3.tgz", + "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=", + "dev": true, + "requires": { + "ms": "0.7.2" + } + }, + "ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=", + "dev": true + } + } + }, + "engine.io-client": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.3.tgz", + "integrity": "sha1-F5jtk0USRkU9TG9jXXogH+lA1as=", + "dev": true, + "requires": { + "component-emitter": "1.2.1", + "component-inherit": "0.0.3", + "debug": "2.3.3", + "engine.io-parser": "1.3.2", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "parsejson": "0.0.3", + "parseqs": "0.0.5", + "parseuri": "0.0.5", + "ws": "1.1.2", + "xmlhttprequest-ssl": "1.5.3", + "yeast": "0.1.2" + }, + "dependencies": { + "debug": { + "version": "2.3.3", + "resolved": "http://registry.npmjs.org/debug/-/debug-2.3.3.tgz", + "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=", + "dev": true, + "requires": { + "ms": "0.7.2" + } + }, + "ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=", + "dev": true + } + } + }, + "engine.io-parser": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.2.tgz", + "integrity": "sha1-k3sHnwAH0Ik+xW1GyyILjLQ1Igo=", + "dev": true, + "requires": { + "after": "0.8.2", + "arraybuffer.slice": "0.0.6", + "base64-arraybuffer": "0.1.5", + "blob": "0.0.4", + "has-binary": "0.1.7", + "wtf-8": "1.0.0" + } + }, + "enhanced-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "memory-fs": "0.4.1", + "tapable": "1.1.0" + } + }, + "ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", + "dev": true + }, + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", + "dev": true + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "1.0.1" + } + }, + "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" + } + }, + "es-abstract": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", + "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", + "dev": true, + "requires": { + "es-to-primitive": "1.2.0", + "function-bind": "1.1.1", + "has": "1.0.3", + "is-callable": "1.1.4", + "is-regex": "1.0.4" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "dev": true, + "requires": { + "is-callable": "1.1.4", + "is-date-object": "1.0.1", + "is-symbol": "1.0.2" + } + }, + "es6-object-assign": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", + "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=" + }, + "es6-promise": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.5.tgz", + "integrity": "sha512-n6wvpdE43VFtJq+lUDYDBFUwV8TZbuGXLV4D6wKafg13ldznKsyEvatubnmUe31zcvelSzOHF+XbaT+Bl9ObDg==", + "dev": true + }, + "es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "dev": true, + "requires": { + "es6-promise": "4.2.5" + } + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "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 + }, + "escodegen": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", + "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", + "dev": true, + "requires": { + "esprima": "2.7.3", + "estraverse": "1.9.3", + "esutils": "2.0.2", + "optionator": "0.8.2", + "source-map": "0.2.0" + }, + "dependencies": { + "source-map": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", + "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", + "dev": true, + "optional": true, + "requires": { + "amdefine": "1.0.1" + } + } + } + }, + "eslint-scope": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz", + "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==", + "dev": true, + "requires": { + "esrecurse": "4.2.1", + "estraverse": "4.2.0" + }, + "dependencies": { + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "dev": true + } + } + }, + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "requires": { + "estraverse": "4.2.0" + }, + "dependencies": { + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "dev": true + } + } + }, + "estraverse": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", + "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "eve-raphael": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/eve-raphael/-/eve-raphael-0.5.0.tgz", + "integrity": "sha1-F8dUt5K+7z+maE15z1pHxjxM2jA=" + }, + "eventemitter3": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz", + "integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA==", + "dev": true + }, + "events": { + "version": "1.1.1", + "resolved": "http://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", + "dev": true + }, + "eventsource": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-0.1.6.tgz", + "integrity": "sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI=", + "dev": true, + "requires": { + "original": "1.0.2" + } + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "1.3.5", + "safe-buffer": "5.1.2" + } + }, + "execa": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", + "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", + "dev": true, + "requires": { + "cross-spawn": "6.0.5", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "1.0.5", + "path-key": "2.0.1", + "semver": "5.5.1", + "shebang-command": "1.2.0", + "which": "1.3.1" + } + } + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "expand-braces": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz", + "integrity": "sha1-SIsdHSRRyz06axks/AMPRMWFX+o=", + "dev": true, + "requires": { + "array-slice": "0.2.3", + "array-unique": "0.2.1", + "braces": "0.1.5" + }, + "dependencies": { + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz", + "integrity": "sha1-wIVxEIUpHYt1/ddOqw+FlygHEeY=", + "dev": true, + "requires": { + "expand-range": "0.1.1" + } + }, + "expand-range": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz", + "integrity": "sha1-TLjtoJk8pW+k9B/ELzy7TMrf8EQ=", + "dev": true, + "requires": { + "is-number": "0.1.1", + "repeat-string": "0.2.2" + } + }, + "is-number": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz", + "integrity": "sha1-aaevEWlj1HIG7JvZtIoUIW8eOAY=", + "dev": true + }, + "repeat-string": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz", + "integrity": "sha1-x6jTI2BoNiBZp+RlH8aITosftK4=", + "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.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "posix-character-classes": "0.1.1", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "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.6" + } + }, + "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.1" + } + } + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "requires": { + "fill-range": "2.2.4" + }, + "dependencies": { + "fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "3.1.0", + "repeat-element": "1.1.3", + "repeat-string": "1.6.1" + } + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "3.2.2" + } + }, + "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" + } + }, + "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.6" + } + } + } + }, + "express": { + "version": "4.16.3", + "resolved": "http://registry.npmjs.org/express/-/express-4.16.3.tgz", + "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", + "dev": true, + "requires": { + "accepts": "1.3.5", + "array-flatten": "1.1.1", + "body-parser": "1.18.2", + "content-disposition": "0.5.2", + "content-type": "1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "1.1.2", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "finalhandler": "1.1.1", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "1.1.2", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "2.0.4", + "qs": "6.5.1", + "range-parser": "1.2.0", + "safe-buffer": "5.1.1", + "send": "0.16.2", + "serve-static": "1.13.2", + "setprototypeof": "1.1.0", + "statuses": "1.4.0", + "type-is": "1.6.16", + "utils-merge": "1.0.1", + "vary": "1.1.2" + }, + "dependencies": { + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", + "dev": true + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "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.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "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.2" + } + }, + "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.1" + } + }, + "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.2" + } + }, + "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.2" + } + }, + "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 + }, + "famfamfam-flags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/famfamfam-flags/-/famfamfam-flags-1.0.0.tgz", + "integrity": "sha1-zXj3dhc6LFlicTMQ3XDBsUHREDw=" + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fastparse": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz", + "integrity": "sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg=", + "dev": true + }, + "faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "dev": true, + "requires": { + "websocket-driver": "0.7.0" + } + }, + "file-loader": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz", + "integrity": "sha512-TGR4HU7HUsGg6GCOPJnFk06RhWgEWFLAGWiT6rcD+GRC2keU3s9RGJ+b3Z6/U73jwwNb2gKLJ7YCrp+jvU4ALg==", + "dev": true, + "requires": { + "loader-utils": "1.1.0", + "schema-utils": "0.4.7" + } + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "fileset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", + "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", + "dev": true, + "requires": { + "glob": "7.1.3", + "minimatch": "3.0.4" + } + }, + "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.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.1" + } + } + } + }, + "finalhandler": { + "version": "1.1.1", + "resolved": "http://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", + "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "statuses": "1.4.0", + "unpipe": "1.0.0" + } + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "1.0.1", + "make-dir": "1.3.0", + "pkg-dir": "2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "2.0.0" + } + }, + "flot": { + "version": "0.8.0-alpha", + "resolved": "https://registry.npmjs.org/flot/-/flot-0.8.0-alpha.tgz", + "integrity": "sha1-nLvHFHwQpH0lSduQvSmH7BunhLo=" + }, + "flush-write-stream": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz", + "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.6" + } + }, + "follow-redirects": { + "version": "1.5.8", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.8.tgz", + "integrity": "sha512-sy1mXPmv7kLAMKW/8XofG7o9T+6gAjzdZK4AJF6ryqQYUa/hnzgiypoeUecZ53x7XiqKNEpNqLtS97MshW2nxg==", + "dev": true, + "requires": { + "debug": "3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "font-awesome": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", + "integrity": "sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM=" + }, + "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.2" + } + }, + "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.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", + "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "dev": true, + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.6", + "mime-types": "2.1.20" + }, + "dependencies": { + "combined-stream": { + "version": "1.0.6", + "resolved": "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", + "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", + "dev": true, + "requires": { + "delayed-stream": "1.0.0" + } + } + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "dev": true + }, + "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" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.6" + } + }, + "fs-access": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz", + "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=", + "dev": true, + "requires": { + "null-check": "1.0.0" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "iferr": "0.1.5", + "imurmurhash": "0.1.4", + "readable-stream": "2.3.6" + } + }, + "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.4", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", + "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", + "dev": true, + "optional": true, + "requires": { + "nan": "2.11.1", + "node-pre-gyp": "0.10.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": 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" + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "dev": true, + "optional": 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" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.21", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": "^2.1.0" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "minipass": { + "version": "2.2.4", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "^5.1.1", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.2.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.10.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.1.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.1.10", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": 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", + "bundled": true, + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": 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" + } + }, + "rimraf": { + "version": "2.6.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.0.5" + } + }, + "safe-buffer": { + "version": "5.1.1", + "bundled": true, + "dev": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.5.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "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", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.2.4", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.1", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "3.0.2", + "bundled": true, + "dev": true + } + } + }, + "fstream": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", + "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.6.2" + } + }, + "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.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.3" + } + }, + "gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "dev": true, + "optional": true, + "requires": { + "globule": "1.2.1" + } + }, + "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-stream": { + "version": "3.0.0", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "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.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + }, + "dependencies": { + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "2.0.1" + } + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.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.2" + }, + "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.1" + } + } + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "globby": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", + "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "dev": true, + "requires": { + "array-union": "1.0.2", + "dir-glob": "2.0.0", + "glob": "7.1.3", + "ignore": "3.3.10", + "pify": "3.0.0", + "slash": "1.0.0" + } + }, + "globule": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", + "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", + "dev": true, + "optional": true, + "requires": { + "glob": "7.1.3", + "lodash": "4.17.10", + "minimatch": "3.0.4" + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, + "handle-thing": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz", + "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=", + "dev": true + }, + "handlebars": { + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.12.tgz", + "integrity": "sha512-RhmTekP+FZL+XNhwS1Wf+bTTZpdLougwt5pcgA1tuz6Jcx0fpH/7z0qd71RKnZHBCxIRBHfBOnio4gViPemNzA==", + "dev": true, + "requires": { + "async": "2.6.1", + "optimist": "0.6.1", + "source-map": "0.6.1", + "uglify-js": "3.4.9" + }, + "dependencies": { + "async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "dev": true, + "requires": { + "lodash": "4.17.10" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "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.0", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.0.tgz", + "integrity": "sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==", + "dev": true, + "requires": { + "ajv": "5.5.2", + "har-schema": "2.0.0" + }, + "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + } + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "1.1.1" + } + }, + "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.1.1" + } + }, + "has-binary": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-binary/-/has-binary-0.1.7.tgz", + "integrity": "sha1-aOYesWIQyVRaClzOBqhzkS/h5ow=", + "dev": true, + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, + "has-cors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", + "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", + "dev": true + }, + "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.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "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.1" + } + }, + "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": { + "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.6" + } + } + } + }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "hash.js": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.5.tgz", + "integrity": "sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1" + } + }, + "he": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", + "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "dev": true + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "1.1.5", + "minimalistic-assert": "1.0.1", + "minimalistic-crypto-utils": "1.0.1" + } + }, + "homedir-polyfill": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", + "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", + "dev": true, + "requires": { + "parse-passwd": "1.0.0" + } + }, + "hosted-git-info": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", + "dev": true + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "obuf": "1.1.2", + "readable-stream": "2.3.6", + "wbuf": "1.7.3" + } + }, + "html-entities": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", + "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", + "dev": true + }, + "html-minifier": { + "version": "3.5.20", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.20.tgz", + "integrity": "sha512-ZmgNLaTp54+HFKkONyLFEfs5dd/ZOtlquKaTnqIWFmx3Av5zG6ZPcV2d0o9XM2fXOTxxIf6eDcwzFFotke/5zA==", + "dev": true, + "requires": { + "camel-case": "3.0.0", + "clean-css": "4.2.1", + "commander": "2.17.1", + "he": "1.1.1", + "param-case": "2.1.1", + "relateurl": "0.2.7", + "uglify-js": "3.4.9" + } + }, + "html-webpack-plugin": { + "version": "3.2.0", + "resolved": "http://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", + "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", + "dev": true, + "requires": { + "html-minifier": "3.5.20", + "loader-utils": "0.2.17", + "lodash": "4.17.10", + "pretty-error": "2.1.1", + "tapable": "1.1.0", + "toposort": "1.0.7", + "util.promisify": "1.0.0" + }, + "dependencies": { + "loader-utils": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", + "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", + "dev": true, + "requires": { + "big.js": "3.2.0", + "emojis-list": "2.1.0", + "json5": "0.5.1", + "object-assign": "4.1.1" + } + } + } + }, + "htmlparser2": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", + "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", + "dev": true, + "requires": { + "domelementtype": "1.3.0", + "domhandler": "2.1.0", + "domutils": "1.1.6", + "readable-stream": "1.0.34" + }, + "dependencies": { + "domutils": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.1.6.tgz", + "integrity": "sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU=", + "dev": true, + "requires": { + "domelementtype": "1.3.0" + } + }, + "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": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "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 + } + } + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true + }, + "http-errors": { + "version": "1.6.3", + "resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": "1.4.0" + } + }, + "http-parser-js": { + "version": "0.4.13", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz", + "integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc=", + "dev": true + }, + "http-proxy": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz", + "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", + "dev": true, + "requires": { + "eventemitter3": "3.1.0", + "follow-redirects": "1.5.8", + "requires-port": "1.0.0" + } + }, + "http-proxy-middleware": { + "version": "0.18.0", + "resolved": "http://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz", + "integrity": "sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q==", + "dev": true, + "requires": { + "http-proxy": "1.17.0", + "is-glob": "4.0.0", + "lodash": "4.17.10", + "micromatch": "3.1.10" + } + }, + "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.4.1", + "sshpk": "1.14.2" + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "https-proxy-agent": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", + "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", + "dev": true, + "requires": { + "agent-base": "4.2.1", + "debug": "3.2.5" + }, + "dependencies": { + "debug": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "dev": true, + "requires": { + "ms": "2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", + "dev": true + }, + "ieee754": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", + "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "dev": true + }, + "image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "dev": true, + "optional": true + }, + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "dev": true + }, + "import-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", + "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "dev": true, + "requires": { + "import-from": "2.1.0" + } + }, + "import-from": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", + "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "dev": true, + "requires": { + "resolve-from": "3.0.0" + } + }, + "import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "dev": true, + "requires": { + "pkg-dir": "3.0.0", + "resolve-cwd": "2.0.0" + }, + "dependencies": { + "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" + } + }, + "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" + } + }, + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", + "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-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "3.0.0" + } + } + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "in-publish": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz", + "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=", + "dev": true, + "optional": true + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "optional": true, + "requires": { + "repeating": "2.0.1" + } + }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "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.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "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 + }, + "internal-ip": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-3.0.1.tgz", + "integrity": "sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q==", + "dev": true, + "requires": { + "default-gateway": "2.7.2", + "ipaddr.js": "1.8.0" + } + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "1.4.0" + } + }, + "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, + "optional": true + }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true + }, + "ipaddr.js": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", + "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=", + "dev": true + }, + "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.2.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.6" + } + } + } + }, + "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.12.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-builtin-module": { + "version": "1.0.0", + "resolved": "http://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "dev": true, + "requires": { + "builtin-modules": "1.1.1" + } + }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "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.2.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.6" + } + } + } + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "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.1.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-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "dev": true + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "requires": { + "is-primitive": "2.0.0" + } + }, + "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.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "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.1" + } + }, + "is-glob": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", + "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", + "dev": true, + "requires": { + "is-extglob": "2.1.1" + } + }, + "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.2.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.6" + } + } + } + }, + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "dev": true + }, + "is-path-in-cwd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", + "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", + "dev": true, + "requires": { + "is-path-inside": "1.0.1" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "1.0.2" + } + }, + "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-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "1.0.3" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "dev": true, + "requires": { + "has-symbols": "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-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "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 + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isbinaryfile": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz", + "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", + "dev": true, + "requires": { + "buffer-alloc": "1.2.0" + } + }, + "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 + }, + "istanbul": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", + "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", + "dev": true, + "requires": { + "abbrev": "1.0.9", + "async": "1.5.2", + "escodegen": "1.8.1", + "esprima": "2.7.3", + "glob": "5.0.15", + "handlebars": "4.0.12", + "js-yaml": "3.12.0", + "mkdirp": "0.5.1", + "nopt": "3.0.6", + "once": "1.4.0", + "resolve": "1.1.7", + "supports-color": "3.2.3", + "which": "1.3.1", + "wordwrap": "1.0.0" + }, + "dependencies": { + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "istanbul-api": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-1.3.7.tgz", + "integrity": "sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA==", + "dev": true, + "requires": { + "async": "2.6.1", + "fileset": "2.0.3", + "istanbul-lib-coverage": "1.2.1", + "istanbul-lib-hook": "1.2.2", + "istanbul-lib-instrument": "1.10.2", + "istanbul-lib-report": "1.1.5", + "istanbul-lib-source-maps": "1.2.6", + "istanbul-reports": "1.5.1", + "js-yaml": "3.12.0", + "mkdirp": "0.5.1", + "once": "1.4.0" + }, + "dependencies": { + "async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "dev": true, + "requires": { + "lodash": "4.17.10" + } + } + } + }, + "istanbul-instrumenter-loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-instrumenter-loader/-/istanbul-instrumenter-loader-3.0.1.tgz", + "integrity": "sha512-a5SPObZgS0jB/ixaKSMdn6n/gXSrK2S6q/UfRJBT3e6gQmVjwZROTODQsYW5ZNwOu78hG62Y3fWlebaVOL0C+w==", + "dev": true, + "requires": { + "convert-source-map": "1.6.0", + "istanbul-lib-instrument": "1.10.2", + "loader-utils": "1.1.0", + "schema-utils": "0.3.0" + }, + "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, + "schema-utils": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.3.0.tgz", + "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", + "dev": true, + "requires": { + "ajv": "5.5.2" + } + } + } + }, + "istanbul-lib-coverage": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz", + "integrity": "sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==", + "dev": true + }, + "istanbul-lib-hook": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz", + "integrity": "sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw==", + "dev": true, + "requires": { + "append-transform": "0.4.0" + } + }, + "istanbul-lib-instrument": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz", + "integrity": "sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A==", + "dev": true, + "requires": { + "babel-generator": "6.26.1", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "istanbul-lib-coverage": "1.2.1", + "semver": "5.5.1" + } + }, + "istanbul-lib-report": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz", + "integrity": "sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "1.2.1", + "mkdirp": "0.5.1", + "path-parse": "1.0.6", + "supports-color": "3.2.3" + }, + "dependencies": { + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz", + "integrity": "sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg==", + "dev": true, + "requires": { + "debug": "3.2.5", + "istanbul-lib-coverage": "1.2.1", + "mkdirp": "0.5.1", + "rimraf": "2.6.2", + "source-map": "0.5.7" + }, + "dependencies": { + "debug": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "dev": true, + "requires": { + "ms": "2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "istanbul-reports": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-1.5.1.tgz", + "integrity": "sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw==", + "dev": true, + "requires": { + "handlebars": "4.0.12" + } + }, + "jasmine": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", + "integrity": "sha1-awicChFXax8W3xG4AUbZHU6Lij4=", + "dev": true, + "requires": { + "exit": "0.1.2", + "glob": "7.1.3", + "jasmine-core": "2.8.0" + }, + "dependencies": { + "jasmine-core": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.8.0.tgz", + "integrity": "sha1-vMl5rh+f0FcB5F5S5l06XWPxok4=", + "dev": true + } + } + }, + "jasmine-core": { + "version": "2.99.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.99.1.tgz", + "integrity": "sha1-5kAN8ea1bhMLYcS80JPap/boyhU=", + "dev": true + }, + "jasmine-spec-reporter": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz", + "integrity": "sha512-FZBoZu7VE5nR7Nilzy+Np8KuVIOxF4oXDPDknehCYBDE080EnlPu0afdZNmpGDBRCUBv3mj5qgqCRmk6W/K8vg==", + "dev": true, + "requires": { + "colors": "1.1.2" + } + }, + "jasminewd2": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/jasminewd2/-/jasminewd2-2.2.0.tgz", + "integrity": "sha1-43zwsX8ZnM4jvqcbIDk5Uka07E4=", + "dev": true + }, + "jquery": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", + "integrity": "sha512-Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg==" + }, + "jquery-countto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/jquery-countto/-/jquery-countto-1.2.0.tgz", + "integrity": "sha1-SfF/yySnRqFouEMh5Q6bd1GBlmA=" + }, + "jquery-migrate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jquery-migrate/-/jquery-migrate-3.0.1.tgz", + "integrity": "sha512-NYlhcFnRh4Bv9jvadPlcAKQdVGRE0+TSgFYxQ+ZnCxUUHbwd+SjbOg+Xvu1Oea9mpQJ+2VB1eCfcBORWNQsHaA==" + }, + "jquery-slimscroll": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/jquery-slimscroll/-/jquery-slimscroll-1.3.8.tgz", + "integrity": "sha1-hIHETnpHaHZTkIoo9/cK7WTITjY=", + "requires": { + "jquery": "3.3.1" + } + }, + "jquery-sparkline": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jquery-sparkline/-/jquery-sparkline-2.4.0.tgz", + "integrity": "sha1-G+i3twTdOFcVJwiu+x1KSzpp+zM=" + }, + "js-base64": { + "version": "2.4.9", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.9.tgz", + "integrity": "sha512-xcinL3AuDJk7VSzsHgb9DvvIXayBbadtMZ4HFPx8rUszbW1MuNMlwYVC4zzCZ6e1sqZpnNS5ZFYOhXqA39T7LQ==", + "dev": true, + "optional": true + }, + "js-cookie": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.0.tgz", + "integrity": "sha1-Gywnmm7s44ChIWi5JIUmWzWx7/s=" + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "js-yaml": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", + "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", + "dev": true, + "requires": { + "argparse": "1.0.10", + "esprima": "4.0.1" + }, + "dependencies": { + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + } + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true, + "optional": true + }, + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "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.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "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 + }, + "json3": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", + "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", + "dev": true + }, + "json5": { + "version": "0.5.1", + "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "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" + } + }, + "jszip": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.1.5.tgz", + "integrity": "sha512-5W8NUaFRFRqTOL7ZDDrx5qWHJyBXy6velVudIzQUSoqAAYqzSh2Z7/m0Rf1QbmQJccegD0r+YZxBjzqoBiEeJQ==", + "dev": true, + "requires": { + "core-js": "2.3.0", + "es6-promise": "3.0.2", + "lie": "3.1.1", + "pako": "1.0.6", + "readable-stream": "2.0.6" + }, + "dependencies": { + "core-js": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.3.0.tgz", + "integrity": "sha1-+rg/uwstjchfpjbEudNMdUIMbWU=", + "dev": true + }, + "es6-promise": { + "version": "3.0.2", + "resolved": "http://registry.npmjs.org/es6-promise/-/es6-promise-3.0.2.tgz", + "integrity": "sha1-AQ1YWEI6XxGJeWZfRkhqlcbuK7Y=", + "dev": true + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true + }, + "readable-stream": { + "version": "2.0.6", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "0.10.31", + "util-deprecate": "1.0.2" + } + }, + "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 + } + } + }, + "karma": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/karma/-/karma-1.7.1.tgz", + "integrity": "sha512-k5pBjHDhmkdaUccnC7gE3mBzZjcxyxYsYVaqiL2G5AqlfLyBO5nw2VdNK+O16cveEPd/gIOWULH7gkiYYwVNHg==", + "dev": true, + "requires": { + "bluebird": "3.5.2", + "body-parser": "1.18.2", + "chokidar": "1.7.0", + "colors": "1.1.2", + "combine-lists": "1.0.1", + "connect": "3.6.6", + "core-js": "2.5.7", + "di": "0.0.1", + "dom-serialize": "2.2.1", + "expand-braces": "0.1.2", + "glob": "7.1.3", + "graceful-fs": "4.1.11", + "http-proxy": "1.17.0", + "isbinaryfile": "3.0.3", + "lodash": "3.10.1", + "log4js": "0.6.38", + "mime": "1.6.0", + "minimatch": "3.0.4", + "optimist": "0.6.1", + "qjobs": "1.2.0", + "range-parser": "1.2.0", + "rimraf": "2.6.2", + "safe-buffer": "5.1.2", + "socket.io": "1.7.3", + "source-map": "0.5.7", + "tmp": "0.0.31", + "useragent": "2.3.0" + }, + "dependencies": { + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "requires": { + "micromatch": "2.3.11", + "normalize-path": "2.1.1" + } + }, + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "1.1.0" + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.3" + } + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true, + "requires": { + "anymatch": "1.3.2", + "async-each": "1.0.1", + "fsevents": "1.2.4", + "glob-parent": "2.0.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "2.0.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.2.1" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "0.1.1" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "2.0.1" + } + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.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.6" + } + }, + "lodash": { + "version": "3.10.1", + "resolved": "http://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", + "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", + "dev": true + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.2", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.4" + } + } + } + }, + "karma-chrome-launcher": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-2.2.0.tgz", + "integrity": "sha512-uf/ZVpAabDBPvdPdveyk1EPgbnloPvFFGgmRhYLTDH7gEB4nZdSBk8yTU47w1g/drLSx5uMOkjKk7IWKfWg/+w==", + "dev": true, + "requires": { + "fs-access": "1.0.1", + "which": "1.3.1" + } + }, + "karma-cli": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/karma-cli/-/karma-cli-1.0.1.tgz", + "integrity": "sha1-rmw8WKMTodALRRZMRVubhs4X+WA=", + "dev": true, + "requires": { + "resolve": "1.8.1" + } + }, + "karma-coverage-istanbul-reporter": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-1.4.3.tgz", + "integrity": "sha1-O13/RmT6W41RlrmInj9hwforgNk=", + "dev": true, + "requires": { + "istanbul-api": "1.3.7", + "minimatch": "3.0.4" + } + }, + "karma-jasmine": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-1.1.2.tgz", + "integrity": "sha1-OU8rJf+0pkS5rabyLUQ+L9CIhsM=", + "dev": true + }, + "karma-jasmine-html-reporter": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-0.2.2.tgz", + "integrity": "sha1-SKjl7xiAdhfuK14zwRlMNbQ5Ukw=", + "dev": true, + "requires": { + "karma-jasmine": "1.1.2" + } + }, + "karma-source-map-support": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.3.0.tgz", + "integrity": "sha512-HcPqdAusNez/ywa+biN4EphGz62MmQyPggUsDfsHqa7tSe4jdsxgvTKuDfIazjL+IOxpVWyT7Pr4dhAV+sxX5Q==", + "dev": true, + "requires": { + "source-map-support": "0.5.9" + } + }, + "killable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", + "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "optional": true, + "requires": { + "invert-kv": "1.0.0" + } + }, + "leb": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/leb/-/leb-0.3.0.tgz", + "integrity": "sha1-Mr7p+tFoMo1q6oUi2DP0GA7tHaM=", + "dev": true + }, + "less": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/less/-/less-3.8.1.tgz", + "integrity": "sha512-8HFGuWmL3FhQR0aH89escFNBQH/nEiYPP2ltDFdQw2chE28Yx2E3lhAIq9Y2saYwLSwa699s4dBVEfCY8Drf7Q==", + "dev": true, + "requires": { + "clone": "2.1.2", + "errno": "0.1.7", + "graceful-fs": "4.1.11", + "image-size": "0.5.5", + "mime": "1.6.0", + "mkdirp": "0.5.1", + "promise": "7.3.1", + "request": "2.88.0", + "source-map": "0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, + "less-loader": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-4.1.0.tgz", + "integrity": "sha512-KNTsgCE9tMOM70+ddxp9yyt9iHqgmSs0yTZc5XH5Wo+g80RWRIYNqE58QJKm/yMud5wZEvz50ugRDuzVIkyahg==", + "dev": true, + "requires": { + "clone": "2.1.2", + "loader-utils": "1.1.0", + "pify": "3.0.0" + } + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "1.1.2", + "type-check": "0.3.2" + } + }, + "license-webpack-plugin": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-1.5.0.tgz", + "integrity": "sha512-Of/H79rZqm2aeg4RnP9SMSh19qkKemoLT5VaJV58uH5AxeYWEcBgGFs753JEJ/Hm6BPvQVfIlrrjoBwYj8p7Tw==", + "dev": true, + "requires": { + "ejs": "2.6.1" + } + }, + "lie": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", + "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=", + "dev": true, + "requires": { + "immediate": "3.0.6" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "loader-runner": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.1.tgz", + "integrity": "sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw==", + "dev": true + }, + "loader-utils": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", + "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", + "dev": true, + "requires": { + "big.js": "3.2.0", + "emojis-list": "2.1.0", + "json5": "0.5.1" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "2.0.0", + "path-exists": "3.0.0" + } + }, + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==" + }, + "lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", + "dev": true, + "optional": true + }, + "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.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "lodash.mergewith": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz", + "integrity": "sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ==", + "dev": true, + "optional": true + }, + "lodash.tail": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.tail/-/lodash.tail-4.1.1.tgz", + "integrity": "sha1-0jM6NtnncXyK0vfKyv7HwytERmQ=", + "dev": true + }, + "log4js": { + "version": "0.6.38", + "resolved": "http://registry.npmjs.org/log4js/-/log4js-0.6.38.tgz", + "integrity": "sha1-LElBFmldb7JUgJQ9P8hy5mKlIv0=", + "dev": true, + "requires": { + "readable-stream": "1.0.34", + "semver": "4.3.6" + }, + "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": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "semver": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", + "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=", + "dev": true + }, + "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 + } + } + }, + "loglevel": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.1.tgz", + "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=", + "dev": true + }, + "long": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz", + "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "3.0.2" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "optional": true, + "requires": { + "currently-unhandled": "0.4.1", + "signal-exit": "3.0.2" + } + }, + "lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", + "dev": true + }, + "lru-cache": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", + "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", + "dev": true, + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "3.0.0" + } + }, + "make-error": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz", + "integrity": "sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==", + "dev": true + }, + "map-age-cleaner": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz", + "integrity": "sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ==", + "dev": true, + "requires": { + "p-defer": "1.0.0" + } + }, + "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.1" + } + }, + "math-random": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", + "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", + "dev": true + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "requires": { + "hash-base": "3.0.4", + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true + }, + "mem": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz", + "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==", + "dev": true, + "requires": { + "map-age-cleaner": "0.1.2", + "mimic-fn": "1.2.0", + "p-is-promise": "1.1.0" + } + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "0.1.7", + "readable-stream": "2.3.6" + } + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "optional": true, + "requires": { + "camelcase-keys": "2.1.0", + "decamelize": "1.2.0", + "loud-rejection": "1.6.0", + "map-obj": "1.0.1", + "minimist": "1.2.0", + "normalize-package-data": "2.4.0", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "redent": "1.0.0", + "trim-newlines": "1.0.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true, + "optional": true + } + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "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.2", + "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.13", + "object.pick": "1.3.0", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "brorand": "1.1.0" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "mime-db": { + "version": "1.36.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz", + "integrity": "sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==", + "dev": true + }, + "mime-types": { + "version": "2.1.20", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz", + "integrity": "sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==", + "dev": true, + "requires": { + "mime-db": "1.36.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "mini-css-extract-plugin": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.3.tgz", + "integrity": "sha512-Mxs0nxzF1kxPv4TRi2NimewgXlJqh0rGE30vviCU2WHrpbta6wklnUV9dr9FUtoAHmB3p3LeXEC+ZjgHvB0Dzg==", + "dev": true, + "requires": { + "loader-utils": "1.1.0", + "schema-utils": "1.0.0", + "webpack-sources": "1.3.0" + }, + "dependencies": { + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "6.4.0", + "ajv-errors": "1.0.0", + "ajv-keywords": "3.2.0" + } + } + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "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.11" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mississippi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", + "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", + "dev": true, + "requires": { + "concat-stream": "1.6.2", + "duplexify": "3.6.0", + "end-of-stream": "1.4.1", + "flush-write-stream": "1.0.3", + "from2": "2.3.0", + "parallel-transform": "1.1.0", + "pump": "2.0.1", + "pumpify": "1.5.1", + "stream-each": "1.2.3", + "through2": "2.0.3" + } + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "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" + } + } + } + }, + "mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "dev": true, + "requires": { + "for-in": "0.1.8", + "is-extendable": "0.1.1" + }, + "dependencies": { + "for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "dev": true + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "moment": { + "version": "2.22.2", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz", + "integrity": "sha1-PCV/mDn8DpP/UxSWMiOeuQeD/2Y=" + }, + "moment-timezone": { + "version": "0.5.17", + "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.17.tgz", + "integrity": "sha512-Y/JpVEWIOA9Gho4vO15MTnW1FCmHi3ypprrkUaxsZ1TKg3uqC8q/qMBjTddkHoiwwZN3qvZSr4zJP7x9V3LpXA==", + "requires": { + "moment": "2.22.2" + } + }, + "morris.js": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/morris.js/-/morris.js-0.5.0.tgz", + "integrity": "sha1-cldnE1z64Fmq51mZuyzmocXRtEs=" + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "1.2.0", + "copy-concurrently": "1.0.5", + "fs-write-stream-atomic": "1.0.10", + "mkdirp": "0.5.1", + "rimraf": "2.6.2", + "run-queue": "1.0.3" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "multicast-dns": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", + "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "dev": true, + "requires": { + "dns-packet": "1.3.1", + "thunky": "1.0.2" + } + }, + "multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "dev": true + }, + "nan": { + "version": "2.11.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.11.1.tgz", + "integrity": "sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA==", + "dev": true, + "optional": 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.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + } + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "dev": true + }, + "neo-async": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.2.tgz", + "integrity": "sha512-vdqTKI9GBIYcAEbFAcpKPErKINfPF5zIuz3/niBfq8WUZjpT2tytLlFVrBgWdOtqI4uaA/Rb6No0hux39XXDuw==", + "dev": true + }, + "ngx-bootstrap": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ngx-bootstrap/-/ngx-bootstrap-3.0.0.tgz", + "integrity": "sha512-Zu3m5Nwp6ISaqjrFeb1evFoaMn8EDR//RHoKeuLelvFOJjKHaCsbOdkWrAAtpTSapdc892mfZfWdTmSuaN2t5A==" + }, + "ngx-pagination": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/ngx-pagination/-/ngx-pagination-3.1.1.tgz", + "integrity": "sha512-ORJ1ZgLEbCg83Zel9oeAZ/8onyh8wzTYVqZ3uq5QSKB6Ez6MmnR1hk+BnqVSMnDTa8fSrn6gciGC4l2FI6FI8Q==" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dev": true, + "requires": { + "lower-case": "1.1.4" + } + }, + "node-forge": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz", + "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==", + "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, + "optional": true, + "requires": { + "fstream": "1.0.11", + "glob": "7.1.3", + "graceful-fs": "4.1.11", + "mkdirp": "0.5.1", + "nopt": "3.0.6", + "npmlog": "4.1.2", + "osenv": "0.1.5", + "request": "2.88.0", + "rimraf": "2.6.2", + "semver": "5.3.0", + "tar": "2.2.1", + "which": "1.3.1" + }, + "dependencies": { + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", + "dev": true, + "optional": true + } + } + }, + "node-libs-browser": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", + "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", + "dev": true, + "requires": { + "assert": "1.4.1", + "browserify-zlib": "0.2.0", + "buffer": "4.9.1", + "console-browserify": "1.1.0", + "constants-browserify": "1.0.0", + "crypto-browserify": "3.12.0", + "domain-browser": "1.2.0", + "events": "1.1.1", + "https-browserify": "1.0.0", + "os-browserify": "0.3.0", + "path-browserify": "0.0.0", + "process": "0.11.10", + "punycode": "1.4.1", + "querystring-es3": "0.2.1", + "readable-stream": "2.3.6", + "stream-browserify": "2.0.1", + "stream-http": "2.8.3", + "string_decoder": "1.1.1", + "timers-browserify": "2.0.10", + "tty-browserify": "0.0.0", + "url": "0.11.0", + "util": "0.10.4", + "vm-browserify": "0.0.4" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "node-sass": { + "version": "4.9.3", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.9.3.tgz", + "integrity": "sha512-XzXyGjO+84wxyH7fV6IwBOTrEBe2f0a6SBze9QWWYR/cL74AcQUks2AsqcCZenl/Fp/JVbuEaLpgrLtocwBUww==", + "dev": true, + "optional": true, + "requires": { + "async-foreach": "0.1.3", + "chalk": "1.1.3", + "cross-spawn": "3.0.1", + "gaze": "1.1.3", + "get-stdin": "4.0.1", + "glob": "7.1.3", + "in-publish": "2.0.0", + "lodash.assign": "4.2.0", + "lodash.clonedeep": "4.5.0", + "lodash.mergewith": "4.6.1", + "meow": "3.7.0", + "mkdirp": "0.5.1", + "nan": "2.11.1", + "node-gyp": "3.8.0", + "npmlog": "4.1.2", + "request": "2.87.0", + "sass-graph": "2.2.4", + "stdout-stream": "1.4.1", + "true-case-path": "1.0.3" + }, + "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "optional": true, + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true, + "optional": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "optional": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "dev": true, + "optional": true, + "requires": { + "ajv": "5.5.2", + "har-schema": "2.0.0" + } + }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "dev": true, + "optional": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true, + "optional": true + }, + "request": { + "version": "2.87.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", + "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", + "dev": true, + "optional": true, + "requires": { + "aws-sign2": "0.7.0", + "aws4": "1.8.0", + "caseless": "0.12.0", + "combined-stream": "1.0.7", + "extend": "3.0.2", + "forever-agent": "0.6.1", + "form-data": "2.3.2", + "har-validator": "5.0.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.20", + "oauth-sign": "0.8.2", + "performance-now": "2.1.0", + "qs": "6.5.2", + "safe-buffer": "5.1.2", + "tough-cookie": "2.3.4", + "tunnel-agent": "0.6.0", + "uuid": "3.3.2" + } + }, + "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, + "optional": true + }, + "tough-cookie": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", + "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", + "dev": true, + "optional": true, + "requires": { + "punycode": "1.4.1" + } + } + } + }, + "node-waves": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/node-waves/-/node-waves-0.7.6.tgz", + "integrity": "sha1-8EiQlhkl6Nqrh12ql9FUc053Nf8=" + }, + "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.0.9" + } + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "dev": true, + "requires": { + "hosted-git-info": "2.7.1", + "is-builtin-module": "1.0.0", + "semver": "5.5.1", + "validate-npm-package-license": "3.0.4" + } + }, + "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.1.0" + } + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "npm-package-arg": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.0.tgz", + "integrity": "sha512-zYbhP2k9DbJhA0Z3HKUePUgdB1x7MfIfKssC+WLPFMKTBZKpZh5m13PgexJjCq6KW7j17r0jHWcCpxEqnnncSA==", + "dev": true, + "requires": { + "hosted-git-info": "2.7.1", + "osenv": "0.1.5", + "semver": "5.5.1", + "validate-npm-package-name": "3.0.0" + } + }, + "npm-registry-client": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-8.6.0.tgz", + "integrity": "sha512-Qs6P6nnopig+Y8gbzpeN/dkt+n7IyVd8f45NTMotGk6Qo7GfBmzwYx6jRLoOOgKiMnaQfYxsuyQlD8Mc3guBhg==", + "dev": true, + "requires": { + "concat-stream": "1.6.2", + "graceful-fs": "4.1.11", + "normalize-package-data": "2.4.0", + "npm-package-arg": "6.1.0", + "npmlog": "4.1.2", + "once": "1.4.0", + "request": "2.88.0", + "retry": "0.10.1", + "safe-buffer": "5.1.2", + "semver": "5.5.1", + "slide": "1.1.6", + "ssri": "5.3.0" + }, + "dependencies": { + "ssri": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + } + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "2.0.1" + } + }, + "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.5", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "nswag": { + "version": "11.17.14", + "resolved": "https://registry.npmjs.org/nswag/-/nswag-11.17.14.tgz", + "integrity": "sha1-grR/hCvigyx/wWQjACqqLkmDGgQ=", + "dev": true + }, + "nth-check": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz", + "integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=", + "dev": true, + "requires": { + "boolbase": "1.0.0" + } + }, + "null-check": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz", + "integrity": "sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=", + "dev": true + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "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-component": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", + "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", + "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.1", + "define-property": "0.2.5", + "kind-of": "3.2.2" + }, + "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.6" + } + }, + "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.6" + } + } + } + }, + "object-keys": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", + "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", + "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.1" + } + }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "requires": { + "define-properties": "1.1.3", + "es-abstract": "1.12.0" + } + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + }, + "dependencies": { + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "1.0.2" + } + } + } + }, + "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" + } + }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", + "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "opn": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", + "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", + "dev": true, + "requires": { + "is-wsl": "1.1.0" + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "0.0.8", + "wordwrap": "0.0.3" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + } + } + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dev": true, + "requires": { + "deep-is": "0.1.3", + "fast-levenshtein": "2.0.6", + "levn": "0.3.0", + "prelude-ls": "1.1.2", + "type-check": "0.3.2", + "wordwrap": "1.0.0" + } + }, + "options": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", + "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=", + "dev": true + }, + "original": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", + "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", + "dev": true, + "requires": { + "url-parse": "1.4.3" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "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": "http://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "optional": 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.2", + "os-tmpdir": "1.0.2" + } + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "1.1.0", + "resolved": "http://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", + "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", + "dev": true + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "1.3.0" + } + }, + "p-map": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", + "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", + "dev": true + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "pako": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", + "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==", + "dev": true + }, + "parallel-transform": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", + "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "dev": true, + "requires": { + "cyclist": "0.2.2", + "inherits": "2.0.3", + "readable-stream": "2.3.6" + } + }, + "param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "dev": true, + "requires": { + "no-case": "2.3.2" + } + }, + "parse-asn1": { + "version": "5.1.1", + "resolved": "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", + "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", + "dev": true, + "requires": { + "asn1.js": "4.10.1", + "browserify-aes": "1.2.0", + "create-hash": "1.2.0", + "evp_bytestokey": "1.0.3", + "pbkdf2": "3.0.17" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.3", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "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.3.2" + } + }, + "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 + }, + "parse5": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "dev": true + }, + "parsejson": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/parsejson/-/parsejson-0.0.3.tgz", + "integrity": "sha1-q343WfIJ7OmUN5c/fQ8fZK4OZKs=", + "dev": true, + "requires": { + "better-assert": "1.0.2" + } + }, + "parseqs": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", + "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", + "dev": true, + "requires": { + "better-assert": "1.0.2" + } + }, + "parseuri": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", + "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", + "dev": true, + "requires": { + "better-assert": "1.0.2" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", + "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-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", + "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": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "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-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "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-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "3.0.0" + } + }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "dev": true, + "requires": { + "create-hash": "1.2.0", + "create-hmac": "1.1.7", + "ripemd160": "2.0.2", + "safe-buffer": "5.1.2", + "sha.js": "2.4.11" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "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.4" + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "2.1.0" + } + }, + "portfinder": { + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.17.tgz", + "integrity": "sha512-syFcRIRzVI1BoEFOCaAiizwDolh1S1YXSodsVhncbhjzjZQulhczNRbqnUl9N31Q4dKGOXsNDqxC2BWBgSMqeQ==", + "dev": true, + "requires": { + "async": "1.5.2", + "debug": "2.6.9", + "mkdirp": "0.5.1" + } + }, + "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 + }, + "postcss": { + "version": "6.0.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", + "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", + "dev": true, + "requires": { + "chalk": "2.4.1", + "source-map": "0.6.1", + "supports-color": "5.5.0" + }, + "dependencies": { + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dev": true, + "requires": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.5.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "postcss-import": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-11.1.0.tgz", + "integrity": "sha512-5l327iI75POonjxkXgdRCUS+AlzAdBx4pOvMEhTKTCjb1p8IEeVR9yx3cPbmN7LIWJLbfnIXxAhoB4jpD0c/Cw==", + "dev": true, + "requires": { + "postcss": "6.0.23", + "postcss-value-parser": "3.3.0", + "read-cache": "1.0.0", + "resolve": "1.8.1" + } + }, + "postcss-load-config": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.0.0.tgz", + "integrity": "sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ==", + "dev": true, + "requires": { + "cosmiconfig": "4.0.0", + "import-cwd": "2.1.0" + } + }, + "postcss-loader": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.1.6.tgz", + "integrity": "sha512-hgiWSc13xVQAq25cVw80CH0l49ZKlAnU1hKPOdRrNj89bokRr/bZF2nT+hebPPF9c9xs8c3gw3Fr2nxtmXYnNg==", + "dev": true, + "requires": { + "loader-utils": "1.1.0", + "postcss": "6.0.23", + "postcss-load-config": "2.0.0", + "schema-utils": "0.4.7" + } + }, + "postcss-url": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-7.3.2.tgz", + "integrity": "sha512-QMV5mA+pCYZQcUEPQkmor9vcPQ2MT+Ipuu8qdi1gVxbNiIiErEGft+eny1ak19qALoBkccS5AHaCaCDzh7b9MA==", + "dev": true, + "requires": { + "mime": "1.6.0", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "postcss": "6.0.23", + "xxhashjs": "0.2.2" + } + }, + "postcss-value-parser": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz", + "integrity": "sha1-h/OPnxj3dKSrTIojL1xc6IcqnRU=", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, + "pretty-error": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", + "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", + "dev": true, + "requires": { + "renderkid": "2.0.2", + "utila": "0.4.0" + } + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dev": true, + "optional": true, + "requires": { + "asap": "2.0.6" + } + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "promise-polyfill": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-6.1.0.tgz", + "integrity": "sha1-36lpQ+qcEh/KTem1hoyznTRy4Fc=" + }, + "protractor": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.3.2.tgz", + "integrity": "sha512-pw4uwwiy5lHZjIguxNpkEwJJa7hVz+bJsvaTI+IbXlfn2qXwzbF8eghW/RmrZwE2sGx82I8etb8lVjQ+JrjejA==", + "dev": true, + "requires": { + "@types/node": "6.0.118", + "@types/q": "0.0.32", + "@types/selenium-webdriver": "2.53.43", + "blocking-proxy": "1.0.1", + "chalk": "1.1.3", + "glob": "7.1.3", + "jasmine": "2.8.0", + "jasminewd2": "2.2.0", + "optimist": "0.6.1", + "q": "1.4.1", + "saucelabs": "1.5.0", + "selenium-webdriver": "3.6.0", + "source-map-support": "0.4.18", + "webdriver-js-extender": "1.0.0", + "webdriver-manager": "12.1.0" + }, + "dependencies": { + "@types/node": { + "version": "6.0.118", + "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.118.tgz", + "integrity": "sha512-N33cKXGSqhOYaPiT4xUGsYlPPDwFtQM/6QxJxuMXA/7BcySW+lkn2yigWP7vfs4daiL/7NJNU6DMCqg5N4B+xQ==", + "dev": true + }, + "adm-zip": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz", + "integrity": "sha512-L8vcjDTCOIJk7wFvmlEUN7AsSb8T+2JrdP7KINBjzr24TJ5Mwj590sLu3BC7zNZowvJWa/JtPmD8eJCzdtDWjA==", + "dev": true + }, + "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": "http://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.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "del": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", + "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", + "dev": true, + "requires": { + "globby": "5.0.0", + "is-path-cwd": "1.0.0", + "is-path-in-cwd": "1.0.1", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "rimraf": "2.6.2" + } + }, + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "dev": true, + "requires": { + "array-union": "1.0.2", + "arrify": "1.0.1", + "glob": "7.1.3", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "0.5.7" + } + }, + "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 + }, + "webdriver-manager": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.0.tgz", + "integrity": "sha512-oEc5fmkpz6Yh6udhwir5m0eN5mgRPq9P/NU5YWuT3Up5slt6Zz+znhLU7q4+8rwCZz/Qq3Fgpr/4oao7NPCm2A==", + "dev": true, + "requires": { + "adm-zip": "0.4.11", + "chalk": "1.1.3", + "del": "2.2.2", + "glob": "7.1.3", + "ini": "1.3.5", + "minimist": "1.2.0", + "q": "1.4.1", + "request": "2.88.0", + "rimraf": "2.6.2", + "semver": "5.5.1", + "xml2js": "0.4.19" + } + } + } + }, + "proxy-addr": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", + "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", + "dev": true, + "requires": { + "forwarded": "0.1.2", + "ipaddr.js": "1.8.0" + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "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.1.29", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz", + "integrity": "sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==", + "dev": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.2.0", + "parse-asn1": "5.1.1", + "randombytes": "2.0.6", + "safe-buffer": "5.1.2" + } + }, + "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.4.1", + "once": "1.4.0" + } + }, + "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.1" + } + }, + "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 + }, + "push.js": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/push.js/-/push.js-1.0.4.tgz", + "integrity": "sha512-aj/KIuPGdsH46Qit5Bj25cP098effzG0lwygMktZmgthfJ7s7hIThjR+3WbUPwZN4Syigo51sN9KsBo/ZHhkZA==" + }, + "q": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", + "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=", + "dev": true + }, + "qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "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 + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "querystringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.0.0.tgz", + "integrity": "sha512-eTPo5t/4bgaMNZxyjWx6N2a6AuE0mq51KWvpc7nU/MAqixcI6v6KrGUKES0HaomdnolQBBXU/++X6/QQ9KL4tw==", + "dev": true + }, + "randomatic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.0.tgz", + "integrity": "sha512-KnGPVE0lo2WoXxIZ7cPR8YBpiol4gsSuOwDSg410oHh80ZMp5EiypNqL2K4Z77vJn6lB5rap7IkAmcUlalcnBQ==", + "dev": true, + "requires": { + "is-number": "4.0.0", + "kind-of": "6.0.2", + "math-random": "1.0.1" + }, + "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 + } + } + }, + "randombytes": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", + "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "2.0.6", + "safe-buffer": "5.1.2" + } + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "dev": true + }, + "raphael": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/raphael/-/raphael-2.2.7.tgz", + "integrity": "sha1-IxsZFB+NCGmG2PrOtm+LVi7iyBA=", + "requires": { + "eve-raphael": "0.5.0" + } + }, + "raw-body": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", + "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "dev": true, + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "unpipe": "1.0.0" + }, + "dependencies": { + "depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=", + "dev": true + }, + "http-errors": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", + "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "dev": true, + "requires": { + "depd": "1.1.1", + "inherits": "2.0.3", + "setprototypeof": "1.0.3", + "statuses": "1.4.0" + } + }, + "setprototypeof": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=", + "dev": true + } + } + }, + "raw-loader": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-0.5.1.tgz", + "integrity": "sha1-DD0L6u2KAclm2Xh793goElKpeao=", + "dev": true + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", + "dev": true, + "requires": { + "pify": "2.3.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "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.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.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.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "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.1.2", + "read-pkg": "1.1.0" + }, + "dependencies": { + "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.1.0", + "pinkie-promise": "2.0.1" + } + }, + "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.1" + } + } + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "2.0.0", + "safe-buffer": "5.1.2", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + } + }, + "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.3.6" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "optional": true, + "requires": { + "indent-string": "2.1.0", + "strip-indent": "1.0.1" + } + }, + "reflect-metadata": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.12.tgz", + "integrity": "sha512-n+IyV+nGz3+0q3/Yf1ra12KpCyi001bi4XFxSjbiWWjfqb52iTTtpGXmCCAOWWIAn9KEuFZKGqBERHmrtScZ3A==", + "dev": true + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "0.1.3" + } + }, + "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" + } + }, + "regexpu-core": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", + "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", + "dev": true, + "requires": { + "regenerate": "1.4.0", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "dev": true + }, + "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 + }, + "renderkid": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.2.tgz", + "integrity": "sha512-FsygIxevi1jSiPY9h7vZmBFUbAOcbYm9UwyiLNdVsLRs/5We9Ob5NMPbGYUTWiLq5L+ezlVdE0A8bbME5CWTpg==", + "dev": true, + "requires": { + "css-select": "1.2.0", + "dom-converter": "0.2.0", + "htmlparser2": "3.3.0", + "strip-ansi": "3.0.1", + "utila": "0.4.0" + } + }, + "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.2" + } + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "0.7.0", + "aws4": "1.8.0", + "caseless": "0.12.0", + "combined-stream": "1.0.7", + "extend": "3.0.2", + "forever-agent": "0.6.1", + "form-data": "2.3.2", + "har-validator": "5.1.0", + "http-signature": "1.2.0", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.20", + "oauth-sign": "0.9.0", + "performance-now": "2.1.0", + "qs": "6.5.2", + "safe-buffer": "5.1.2", + "tough-cookie": "2.4.3", + "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-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "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 + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "resolve": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", + "dev": true, + "requires": { + "path-parse": "1.0.6" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "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 + }, + "retry": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", + "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", + "dev": true + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "dev": true, + "requires": { + "glob": "7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "3.0.4", + "inherits": "2.0.3" + } + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "1.2.0" + } + }, + "rxjs": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.1.tgz", + "integrity": "sha512-OwMxHxmnmHTUpgO+V7dZChf3Tixf4ih95cmXjzzadULziVl/FKhHScGLj4goEw9weePVOH2Q0+GcCBUhKCZc/g==", + "requires": { + "tslib": "1.9.2" + } + }, + "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.15" + } + }, + "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.4", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", + "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", + "dev": true, + "optional": true, + "requires": { + "glob": "7.1.3", + "lodash": "4.17.10", + "scss-tokenizer": "0.2.3", + "yargs": "7.1.0" + } + }, + "sass-loader": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz", + "integrity": "sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w==", + "dev": true, + "requires": { + "clone-deep": "2.0.2", + "loader-utils": "1.1.0", + "lodash.tail": "4.1.1", + "neo-async": "2.5.2", + "pify": "3.0.0", + "semver": "5.5.1" + } + }, + "saucelabs": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.5.0.tgz", + "integrity": "sha512-jlX3FGdWvYf4Q3LFfFWS1QvPg3IGCGWxIc8QBFdPTbpTJnt/v17FHXYVAn7C8sHf1yUXo2c7yIM0isDryfYtHQ==", + "dev": true, + "requires": { + "https-proxy-agent": "2.2.1" + } + }, + "sax": { + "version": "0.5.8", + "resolved": "http://registry.npmjs.org/sax/-/sax-0.5.8.tgz", + "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=", + "dev": true + }, + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "6.4.0", + "ajv-keywords": "3.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, + "optional": true, + "requires": { + "js-base64": "2.4.9", + "source-map": "0.4.4" + }, + "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, + "optional": true, + "requires": { + "amdefine": "1.0.1" + } + } + } + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "dev": true + }, + "selenium-webdriver": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-3.6.0.tgz", + "integrity": "sha512-WH7Aldse+2P5bbFBO4Gle/nuQOdVwpHMTL6raL3uuBj/vPG07k6uzt3aiahu352ONBr5xXh0hDlM3LhtXPOC4Q==", + "dev": true, + "requires": { + "jszip": "3.1.5", + "rimraf": "2.6.2", + "tmp": "0.0.30", + "xml2js": "0.4.19" + }, + "dependencies": { + "tmp": { + "version": "0.0.30", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.30.tgz", + "integrity": "sha1-ckGdSovn1s51FI/YsyTlk6cRwu0=", + "dev": true, + "requires": { + "os-tmpdir": "1.0.2" + } + } + } + }, + "selfsigned": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.3.tgz", + "integrity": "sha512-vmZenZ+8Al3NLHkWnhBQ0x6BkML1eCP2xEi3JE+f3D9wW9fipD9NNJHYtE9XJM4TsPaHGZJIamrSI6MTg1dU2Q==", + "dev": true, + "requires": { + "node-forge": "0.7.5" + } + }, + "semver": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", + "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", + "dev": true + }, + "semver-dsl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/semver-dsl/-/semver-dsl-1.0.1.tgz", + "integrity": "sha1-02eN5VVeimH2Ke7QJTZq5fJzQKA=", + "dev": true, + "requires": { + "semver": "5.5.1" + } + }, + "semver-intersect": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz", + "integrity": "sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==", + "dev": true, + "requires": { + "semver": "5.5.1" + } + }, + "send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "1.1.2", + "destroy": "1.0.4", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.6.3", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "2.3.0", + "range-parser": "1.2.0", + "statuses": "1.4.0" + }, + "dependencies": { + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true + } + } + }, + "serialize-javascript": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.5.0.tgz", + "integrity": "sha512-Ga8c8NjAAp46Br4+0oZ2WxJCwIzwP60Gq1YPgU+39PiTVxyed/iKE/zyZI6+UlVYH5Q4PaQdHhcegIFPZTUfoQ==", + "dev": true + }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "requires": { + "accepts": "1.3.5", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "1.0.3", + "http-errors": "1.6.3", + "mime-types": "2.1.20", + "parseurl": "1.3.2" + } + }, + "serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "dev": true, + "requires": { + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "parseurl": "1.3.2", + "send": "0.16.2" + } + }, + "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.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "dev": true, + "requires": { + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "split-string": "3.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.1" + } + } + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "shallow-clone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz", + "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", + "dev": true, + "requires": { + "is-extendable": "0.1.1", + "kind-of": "5.1.0", + "mixin-object": "2.0.1" + }, + "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 + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "silent-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/silent-error/-/silent-error-1.1.0.tgz", + "integrity": "sha1-IglwbxyFCp8dENDYQJGLRvJuG8k=", + "dev": true, + "requires": { + "debug": "2.6.9" + } + }, + "simple-line-icons": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/simple-line-icons/-/simple-line-icons-2.4.1.tgz", + "integrity": "sha1-t1vFoNh+UwkowszaVzUnS7JW8jQ=" + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "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.2", + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "map-cache": "0.2.2", + "source-map": "0.5.7", + "source-map-resolve": "0.5.2", + "use": "3.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.6" + } + }, + "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.1" + } + } + } + }, + "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.1", + "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.2" + } + }, + "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.2" + } + }, + "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.2" + } + }, + "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.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.6" + } + } + } + }, + "socket.io": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-1.7.3.tgz", + "integrity": "sha1-uK+cq6AJSeVo42nxMn6pvp6iRhs=", + "dev": true, + "requires": { + "debug": "2.3.3", + "engine.io": "1.8.3", + "has-binary": "0.1.7", + "object-assign": "4.1.0", + "socket.io-adapter": "0.5.0", + "socket.io-client": "1.7.3", + "socket.io-parser": "2.3.1" + }, + "dependencies": { + "debug": { + "version": "2.3.3", + "resolved": "http://registry.npmjs.org/debug/-/debug-2.3.3.tgz", + "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=", + "dev": true, + "requires": { + "ms": "0.7.2" + } + }, + "ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=", + "dev": true + }, + "object-assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", + "integrity": "sha1-ejs9DpgGPUP0wD8uiubNUahog6A=", + "dev": true + } + } + }, + "socket.io-adapter": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-0.5.0.tgz", + "integrity": "sha1-y21LuL7IHhB4uZZ3+c7QBGBmu4s=", + "dev": true, + "requires": { + "debug": "2.3.3", + "socket.io-parser": "2.3.1" + }, + "dependencies": { + "debug": { + "version": "2.3.3", + "resolved": "http://registry.npmjs.org/debug/-/debug-2.3.3.tgz", + "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=", + "dev": true, + "requires": { + "ms": "0.7.2" + } + }, + "ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=", + "dev": true + } + } + }, + "socket.io-client": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-1.7.3.tgz", + "integrity": "sha1-sw6GqhDV7zVGYBwJzeR2Xjgdo3c=", + "dev": true, + "requires": { + "backo2": "1.0.2", + "component-bind": "1.0.0", + "component-emitter": "1.2.1", + "debug": "2.3.3", + "engine.io-client": "1.8.3", + "has-binary": "0.1.7", + "indexof": "0.0.1", + "object-component": "0.0.3", + "parseuri": "0.0.5", + "socket.io-parser": "2.3.1", + "to-array": "0.1.4" + }, + "dependencies": { + "debug": { + "version": "2.3.3", + "resolved": "http://registry.npmjs.org/debug/-/debug-2.3.3.tgz", + "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=", + "dev": true, + "requires": { + "ms": "0.7.2" + } + }, + "ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=", + "dev": true + } + } + }, + "socket.io-parser": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-2.3.1.tgz", + "integrity": "sha1-3VMgJRA85Clpcya+/WQAX8/ltKA=", + "dev": true, + "requires": { + "component-emitter": "1.1.2", + "debug": "2.2.0", + "isarray": "0.0.1", + "json3": "3.3.2" + }, + "dependencies": { + "component-emitter": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz", + "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=", + "dev": true + }, + "debug": { + "version": "2.2.0", + "resolved": "http://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "dev": true, + "requires": { + "ms": "0.7.1" + } + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", + "dev": true + } + } + }, + "sockjs": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", + "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", + "dev": true, + "requires": { + "faye-websocket": "0.10.0", + "uuid": "3.3.2" + } + }, + "sockjs-client": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.1.5.tgz", + "integrity": "sha1-G7fA9yIsQPQq3xT0RCy9Eml3GoM=", + "dev": true, + "requires": { + "debug": "2.6.9", + "eventsource": "0.1.6", + "faye-websocket": "0.11.1", + "inherits": "2.0.3", + "json3": "3.3.2", + "url-parse": "1.4.3" + }, + "dependencies": { + "faye-websocket": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz", + "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", + "dev": true, + "requires": { + "websocket-driver": "0.7.0" + } + } + } + }, + "source-list-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz", + "integrity": "sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==", + "dev": true + }, + "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.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "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-support": { + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.9.tgz", + "integrity": "sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA==", + "dev": true, + "requires": { + "buffer-from": "1.1.1", + "source-map": "0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "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 + }, + "spdx-correct": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.1.tgz", + "integrity": "sha512-hxSPZbRZvSDuOvADntOElzJpenIR7wXJkuoUcUtS0erbgt2fgeaoPIYretfKpslMhfFDY4k0MZ2F5CUzhBsSvQ==", + "dev": true, + "requires": { + "spdx-expression-parse": "3.0.0", + "spdx-license-ids": "3.0.1" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "2.2.0", + "spdx-license-ids": "3.0.1" + } + }, + "spdx-license-ids": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.1.tgz", + "integrity": "sha512-TfOfPcYGBB5sDuPn3deByxPhmfegAhpDYKSOXZQN81Oyrrif8ZCodOLzK3AesELnCx03kikhyDwh0pfvvQvF8w==", + "dev": true + }, + "spdy": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-3.4.7.tgz", + "integrity": "sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=", + "dev": true, + "requires": { + "debug": "2.6.9", + "handle-thing": "1.2.5", + "http-deceiver": "1.2.7", + "safe-buffer": "5.1.2", + "select-hose": "2.0.0", + "spdy-transport": "2.1.0" + } + }, + "spdy-transport": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.1.0.tgz", + "integrity": "sha512-bpUeGpZcmZ692rrTiqf9/2EUakI6/kXX1Rpe0ib/DyOzbiexVfXkw6GnvI9hVGvIwVaUhkaBojjCZwLNRGQg1g==", + "dev": true, + "requires": { + "debug": "2.6.9", + "detect-node": "2.0.4", + "hpack.js": "2.1.6", + "obuf": "1.1.2", + "readable-stream": "2.3.6", + "safe-buffer": "5.1.2", + "wbuf": "1.7.3" + } + }, + "spin.js": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/spin.js/-/spin.js-2.3.2.tgz", + "integrity": "sha1-bKpW1SBnNFD9XPvGlx5tB3LDeho=" + }, + "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.2" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", + "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", + "dev": true, + "requires": { + "asn1": "0.2.4", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.2", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.2", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "safer-buffer": "2.1.2", + "tweetnacl": "0.14.5" + } + }, + "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.6" + } + } + } + }, + "stats-webpack-plugin": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/stats-webpack-plugin/-/stats-webpack-plugin-0.6.2.tgz", + "integrity": "sha1-LFlJtTHgf4eojm6k3PrFOqjHWis=", + "dev": true, + "requires": { + "lodash": "4.17.10" + } + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", + "dev": true + }, + "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, + "optional": true, + "requires": { + "readable-stream": "2.3.6" + } + }, + "stream-browserify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", + "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.6" + } + }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "requires": { + "end-of-stream": "1.4.1", + "stream-shift": "1.0.0" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "3.0.0", + "inherits": "2.0.3", + "readable-stream": "2.3.6", + "to-arraybuffer": "1.0.1", + "xtend": "4.0.1" + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "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.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "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.2" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "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.1" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "optional": true, + "requires": { + "get-stdin": "4.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "style-loader": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.21.0.tgz", + "integrity": "sha512-T+UNsAcl3Yg+BsPKs1vd22Fr8sVT+CJMtzqc6LEw9bbJZb43lm9GoeIfUcDEefBSWC0BhYbcdupV1GtI4DGzxg==", + "dev": true, + "requires": { + "loader-utils": "1.1.0", + "schema-utils": "0.4.7" + } + }, + "stylus": { + "version": "0.54.5", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", + "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", + "dev": true, + "requires": { + "css-parse": "1.7.0", + "debug": "2.6.9", + "glob": "7.0.6", + "mkdirp": "0.5.1", + "sax": "0.5.8", + "source-map": "0.1.43" + }, + "dependencies": { + "glob": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", + "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "dev": true, + "requires": { + "amdefine": "1.0.1" + } + } + } + }, + "stylus-loader": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-3.0.2.tgz", + "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", + "dev": true, + "requires": { + "loader-utils": "1.1.0", + "lodash.clonedeep": "4.5.0", + "when": "3.6.4" + } + }, + "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" + } + }, + "sweetalert": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sweetalert/-/sweetalert-2.1.0.tgz", + "integrity": "sha512-9YKj0SvjKyBfRWco50UOsIbXVeifYbxzT9Qda7EsqC01eafHGCSG0IR7g942ufjzt7lnwO8ZZBwr6emXv2fQrg==", + "requires": { + "es6-object-assign": "1.1.0", + "promise-polyfill": "6.1.0" + } + }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "dev": true + }, + "tapable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.0.tgz", + "integrity": "sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA==", + "dev": true + }, + "tar": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", + "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", + "dev": true, + "optional": true, + "requires": { + "block-stream": "0.0.9", + "fstream": "1.0.11", + "inherits": "2.0.3" + } + }, + "through": { + "version": "2.3.8", + "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, + "requires": { + "readable-stream": "2.3.6", + "xtend": "4.0.1" + } + }, + "thunky": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.2.tgz", + "integrity": "sha1-qGLgGOP7HqLsP85dVWBc9X8kc3E=", + "dev": true + }, + "timers-browserify": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", + "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", + "dev": true, + "requires": { + "setimmediate": "1.0.5" + } + }, + "tmp": { + "version": "0.0.31", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz", + "integrity": "sha1-jzirlDjhcxXl29izZX6L+yd65Kc=", + "dev": true, + "requires": { + "os-tmpdir": "1.0.2" + } + }, + "to-array": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", + "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", + "dev": true + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "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.2.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.6" + } + } + } + }, + "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": "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" + } + }, + "toastr": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/toastr/-/toastr-2.1.4.tgz", + "integrity": "sha1-i0O+ZPudDEFIcURvLbjoyk6V8YE=", + "requires": { + "jquery": "3.3.1" + } + }, + "toposort": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz", + "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", + "dev": true + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "1.1.29", + "punycode": "1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "tree-kill": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.0.tgz", + "integrity": "sha512-DlX6dR0lOIRDFxI0mjL9IYg6OTncLm/Zt+JiBhE5OlFcAR8yc9S7FFXU9so0oda47frdM/JFsk7UjNt9vscKcg==", + "dev": true + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true, + "optional": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "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, + "optional": true, + "requires": { + "glob": "7.1.3" + } + }, + "ts-helpers": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/ts-helpers/-/ts-helpers-1.1.2.tgz", + "integrity": "sha1-/Gm+nx87rtAfsaDvjUz+dIgU2DU=" + }, + "ts-node": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-3.3.0.tgz", + "integrity": "sha1-wTxqMCTjC+EYDdUwOPwgkonUv2k=", + "dev": true, + "requires": { + "arrify": "1.0.1", + "chalk": "2.2.2", + "diff": "3.5.0", + "make-error": "1.3.5", + "minimist": "1.2.0", + "mkdirp": "0.5.1", + "source-map-support": "0.4.18", + "tsconfig": "6.0.0", + "v8flags": "3.1.1", + "yn": "2.0.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "0.5.7" + } + } + } + }, + "tsconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/tsconfig/-/tsconfig-6.0.0.tgz", + "integrity": "sha1-aw6DdgA9evGGT434+J3QBZ/80DI=", + "dev": true, + "requires": { + "strip-bom": "3.0.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + } + } + }, + "tsickle": { + "version": "0.29.0", + "resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.29.0.tgz", + "integrity": "sha512-JpID0Lv8/irRtPmqJJxb5fCwfZhjZeKmav9Zna7UjqVuJoSbI49Wue/c2PPybX1SbRrjl7bbI/JsCl0dSUJygA==", + "dev": true, + "requires": { + "minimist": "1.2.0", + "mkdirp": "0.5.1", + "source-map": "0.6.1", + "source-map-support": "0.5.9" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "tslib": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.2.tgz", + "integrity": "sha512-AVP5Xol3WivEr7hnssHDsaM+lVrVXWUvd1cfXTRkTj80b//6g2wIFEH6hZG0muGZRnHGrfttpdzRk3YlBkWjKw==" + }, + "tslint": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.10.0.tgz", + "integrity": "sha1-EeJrzLiK+gLdDZlWyuPUVAtfVMM=", + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "builtin-modules": "1.1.1", + "chalk": "2.4.1", + "commander": "2.17.1", + "diff": "3.5.0", + "glob": "7.1.3", + "js-yaml": "3.12.0", + "minimatch": "3.0.4", + "resolve": "1.8.1", + "semver": "5.5.1", + "tslib": "1.9.2", + "tsutils": "2.29.0" + }, + "dependencies": { + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dev": true, + "requires": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.5.0" + } + } + } + }, + "tsutils": { + "version": "2.29.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", + "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", + "dev": true, + "requires": { + "tslib": "1.9.2" + } + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, + "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.1.2" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true, + "optional": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "1.1.2" + } + }, + "type-is": { + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", + "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "2.1.20" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "typescript": { + "version": "2.7.2", + "resolved": "http://registry.npmjs.org/typescript/-/typescript-2.7.2.tgz", + "integrity": "sha512-p5TCYZDAO0m4G344hD+wx/LATebLWZNkkh2asWUFqSsD2OrDNhbAHuSjobrmsUmdzjJjEeZVU9g1h3O6vpstnw==", + "dev": true + }, + "uglify-js": { + "version": "3.4.9", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz", + "integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==", + "dev": true, + "requires": { + "commander": "2.17.1", + "source-map": "0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "uglifyjs-webpack-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", + "dev": true, + "requires": { + "cacache": "10.0.4", + "find-cache-dir": "1.0.0", + "schema-utils": "0.4.7", + "serialize-javascript": "1.5.0", + "source-map": "0.6.1", + "uglify-es": "3.3.9", + "webpack-sources": "1.3.0", + "worker-farm": "1.6.0" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "dev": true, + "requires": { + "commander": "2.13.0", + "source-map": "0.6.1" + } + } + } + }, + "ultron": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", + "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=", + "dev": true + }, + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "dev": true, + "requires": { + "arr-union": "3.1.0", + "get-value": "2.0.6", + "is-extendable": "0.1.1", + "set-value": "0.4.3" + }, + "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.1" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "dev": true, + "requires": { + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "to-object-path": "0.3.0" + } + } + } + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "2.0.1" + } + }, + "unique-slug": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz", + "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==", + "dev": true, + "requires": { + "imurmurhash": "0.1.4" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true + }, + "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.1" + }, + "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.6", + "has-values": "0.1.4", + "isobject": "2.1.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.1.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", + "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", + "dev": true + }, + "upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", + "dev": true + }, + "uri-js": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-3.0.2.tgz", + "integrity": "sha1-+QuFhQf4HepNz7s8TD2/orVX+qo=", + "dev": true, + "requires": { + "punycode": "2.1.1" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "url-loader": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.1.1.tgz", + "integrity": "sha512-vugEeXjyYFBCUOpX+ZuaunbK3QXMKaQ3zUnRfIpRBlGkY7QizCnzyyn2ASfcxsvyU3ef+CJppVywnl3Kgf13Gg==", + "dev": true, + "requires": { + "loader-utils": "1.1.0", + "mime": "2.3.1", + "schema-utils": "1.0.0" + }, + "dependencies": { + "mime": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", + "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==", + "dev": true + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "6.4.0", + "ajv-errors": "1.0.0", + "ajv-keywords": "3.2.0" + } + } + } + }, + "url-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.3.tgz", + "integrity": "sha512-rh+KuAW36YKo0vClhQzLLveoj8FwPJNu65xLb7Mrt+eZht0IPT0IXgSv8gcMegZ6NvjJUALf6Mf25POlMwD1Fw==", + "dev": true, + "requires": { + "querystringify": "2.0.0", + "requires-port": "1.0.0" + } + }, + "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 + }, + "useragent": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz", + "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==", + "dev": true, + "requires": { + "lru-cache": "4.1.3", + "tmp": "0.0.31" + } + }, + "util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "requires": { + "define-properties": "1.1.3", + "object.getownpropertydescriptors": "2.0.3" + } + }, + "utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", + "dev": true + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true + }, + "v8flags": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.1.tgz", + "integrity": "sha512-iw/1ViSEaff8NJ3HLyEjawk/8hjJib3E7pvG4pddVXfUg1983s3VGsiClDjhK64MQVDGqc1Q8r18S4VKQZS9EQ==", + "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.1", + "spdx-expression-parse": "3.0.0" + } + }, + "validate-npm-package-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", + "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "dev": true, + "requires": { + "builtins": "1.0.3" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "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.3.0" + } + }, + "vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "dev": true, + "requires": { + "indexof": "0.0.1" + } + }, + "void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "dev": true + }, + "watchpack": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", + "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "dev": true, + "requires": { + "chokidar": "2.0.4", + "graceful-fs": "4.1.11", + "neo-async": "2.5.2" + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "requires": { + "minimalistic-assert": "1.0.1" + } + }, + "web-animations-js": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/web-animations-js/-/web-animations-js-2.3.1.tgz", + "integrity": "sha1-Om2bwVGWN3qQ+OKAP6UmIWWwRRA=" + }, + "webassemblyjs": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webassemblyjs/-/webassemblyjs-1.4.3.tgz", + "integrity": "sha512-4lOV1Lv6olz0PJkDGQEp82HempAn147e6BXijWDzz9g7/2nSebVP9GVg62Fz5ZAs55mxq13GA0XLyvY8XkyDjg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/validation": "1.4.3", + "@webassemblyjs/wasm-parser": "1.4.3", + "@webassemblyjs/wast-parser": "1.4.3", + "long": "3.2.0" + } + }, + "webdriver-js-extender": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-1.0.0.tgz", + "integrity": "sha1-gcUzqeM9W/tZe05j4s2yW1R3dRU=", + "dev": true, + "requires": { + "@types/selenium-webdriver": "2.53.43", + "selenium-webdriver": "2.53.3" + }, + "dependencies": { + "sax": { + "version": "0.6.1", + "resolved": "http://registry.npmjs.org/sax/-/sax-0.6.1.tgz", + "integrity": "sha1-VjsZx8HeiS4Jv8Ty/DDjwn8JUrk=", + "dev": true + }, + "selenium-webdriver": { + "version": "2.53.3", + "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-2.53.3.tgz", + "integrity": "sha1-0p/1qVff8aG0ncRXdW5OS/vc4IU=", + "dev": true, + "requires": { + "adm-zip": "0.4.4", + "rimraf": "2.6.2", + "tmp": "0.0.24", + "ws": "1.1.2", + "xml2js": "0.4.4" + } + }, + "tmp": { + "version": "0.0.24", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.24.tgz", + "integrity": "sha1-1qXhmNFKmDXMby18PZ4wJCjIzxI=", + "dev": true + }, + "xml2js": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.4.tgz", + "integrity": "sha1-MREBAAMAiuGSQOuhdJe1fHKcVV0=", + "dev": true, + "requires": { + "sax": "0.6.1", + "xmlbuilder": "9.0.7" + } + } + } + }, + "webpack": { + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.8.3.tgz", + "integrity": "sha512-/hfAjBISycdK597lxONjKEFX7dSIU1PsYwC3XlXUXoykWBlv9QV5HnO+ql3HvrrgfBJ7WXdnjO9iGPR2aAc5sw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/wasm-edit": "1.4.3", + "@webassemblyjs/wasm-parser": "1.4.3", + "acorn": "5.7.3", + "acorn-dynamic-import": "3.0.0", + "ajv": "6.4.0", + "ajv-keywords": "3.2.0", + "chrome-trace-event": "0.1.3", + "enhanced-resolve": "4.1.0", + "eslint-scope": "3.7.3", + "loader-runner": "2.3.1", + "loader-utils": "1.1.0", + "memory-fs": "0.4.1", + "micromatch": "3.1.10", + "mkdirp": "0.5.1", + "neo-async": "2.5.2", + "node-libs-browser": "2.1.0", + "schema-utils": "0.4.7", + "tapable": "1.1.0", + "uglifyjs-webpack-plugin": "1.3.0", + "watchpack": "1.6.0", + "webpack-sources": "1.3.0" + } + }, + "webpack-core": { + "version": "0.6.9", + "resolved": "https://registry.npmjs.org/webpack-core/-/webpack-core-0.6.9.tgz", + "integrity": "sha1-/FcViMhVjad76e+23r3Fo7FyvcI=", + "dev": true, + "requires": { + "source-list-map": "0.1.8", + "source-map": "0.4.4" + }, + "dependencies": { + "source-list-map": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-0.1.8.tgz", + "integrity": "sha1-xVCyq1Qn9rPyH1r+rYjE9Vh7IQY=", + "dev": true + }, + "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": "1.0.1" + } + } + } + }, + "webpack-dev-middleware": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz", + "integrity": "sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA==", + "dev": true, + "requires": { + "memory-fs": "0.4.1", + "mime": "2.3.1", + "range-parser": "1.2.0", + "webpack-log": "2.0.0" + }, + "dependencies": { + "mime": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", + "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==", + "dev": true + } + } + }, + "webpack-dev-server": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.1.9.tgz", + "integrity": "sha512-fqPkuNalLuc/hRC2QMkVYJkgNmRvxZQo7ykA2e1XRg/tMJm3qY7ZaD6d89/Fqjxtj9bOrn5wZzLD2n84lJdvWg==", + "dev": true, + "requires": { + "ansi-html": "0.0.7", + "bonjour": "3.5.0", + "chokidar": "2.0.4", + "compression": "1.7.3", + "connect-history-api-fallback": "1.5.0", + "debug": "3.2.5", + "del": "3.0.0", + "express": "4.16.3", + "html-entities": "1.2.1", + "http-proxy-middleware": "0.18.0", + "import-local": "2.0.0", + "internal-ip": "3.0.1", + "ip": "1.1.5", + "killable": "1.0.1", + "loglevel": "1.6.1", + "opn": "5.4.0", + "portfinder": "1.0.17", + "schema-utils": "1.0.0", + "selfsigned": "1.10.3", + "serve-index": "1.9.1", + "sockjs": "0.3.19", + "sockjs-client": "1.1.5", + "spdy": "3.4.7", + "strip-ansi": "3.0.1", + "supports-color": "5.5.0", + "webpack-dev-middleware": "3.4.0", + "webpack-log": "2.0.0", + "yargs": "12.0.2" + }, + "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 + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "2.1.1", + "strip-ansi": "4.0.0", + "wrap-ansi": "2.1.0" + }, + "dependencies": { + "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" + } + } + } + }, + "debug": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.5.tgz", + "integrity": "sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg==", + "dev": true, + "requires": { + "ms": "2.1.1" + } + }, + "decamelize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "requires": { + "xregexp": "4.0.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" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "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 + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "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" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "os-locale": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz", + "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==", + "dev": true, + "requires": { + "execa": "0.10.0", + "lcid": "2.0.0", + "mem": "4.0.0" + } + }, + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", + "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-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "6.4.0", + "ajv-errors": "1.0.0", + "ajv-keywords": "3.2.0" + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + }, + "dependencies": { + "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" + } + } + } + }, + "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 + }, + "yargs": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", + "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", + "dev": true, + "requires": { + "cliui": "4.1.0", + "decamelize": "2.0.0", + "find-up": "3.0.0", + "get-caller-file": "1.0.3", + "os-locale": "3.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "4.0.0", + "yargs-parser": "10.1.0" + } + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "4.1.0" + } + } + } + }, + "webpack-log": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", + "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", + "dev": true, + "requires": { + "ansi-colors": "3.1.0", + "uuid": "3.3.2" + } + }, + "webpack-merge": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.1.4.tgz", + "integrity": "sha512-TmSe1HZKeOPey3oy1Ov2iS3guIZjWvMT2BBJDzzT5jScHTjVC3mpjJofgueEzaEd6ibhxRDD6MIblDr8tzh8iQ==", + "dev": true, + "requires": { + "lodash": "4.17.10" + } + }, + "webpack-sources": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", + "dev": true, + "requires": { + "source-list-map": "2.0.0", + "source-map": "0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "webpack-subresource-integrity": { + "version": "1.1.0-rc.6", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.1.0-rc.6.tgz", + "integrity": "sha512-Az7y8xTniNhaA0620AV1KPwWOqawurVVDzQSpPAeR5RwNbL91GoBSJAAo9cfd+GiFHwsS5bbHepBw1e6Hzxy4w==", + "dev": true, + "requires": { + "webpack-core": "0.6.9" + } + }, + "websocket-driver": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", + "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", + "dev": true, + "requires": { + "http-parser-js": "0.4.13", + "websocket-extensions": "0.1.3" + } + }, + "websocket-extensions": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", + "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", + "dev": true + }, + "when": { + "version": "3.6.4", + "resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz", + "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=", + "dev": true + }, + "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, + "optional": 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" + } + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, + "worker-farm": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.6.0.tgz", + "integrity": "sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==", + "dev": true, + "requires": { + "errno": "0.1.7" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "1.0.2", + "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 + }, + "ws": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.2.tgz", + "integrity": "sha1-iiRPoFJAHgjJiGz0SoUYnh/UBn8=", + "dev": true, + "requires": { + "options": "0.0.6", + "ultron": "1.0.2" + } + }, + "wtf-8": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wtf-8/-/wtf-8-1.0.0.tgz", + "integrity": "sha1-OS2LotDxw00e4tYw8V0O+2jhBIo=", + "dev": true + }, + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "dev": true, + "requires": { + "sax": "1.2.4", + "xmlbuilder": "9.0.7" + }, + "dependencies": { + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + } + } + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", + "dev": true + }, + "xmlhttprequest-ssl": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.3.tgz", + "integrity": "sha1-GFqIjATspGw+QHDZn3tJ3jUomS0=", + "dev": true + }, + "xregexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "dev": true + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "xxhashjs": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", + "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", + "dev": true, + "requires": { + "cuint": "0.2.2" + } + }, + "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 + }, + "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.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", + "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "dev": true, + "optional": true, + "requires": { + "camelcase": "3.0.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.3", + "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" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true, + "optional": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true, + "optional": true + } + } + }, + "yargs-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", + "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", + "dev": true, + "optional": true, + "requires": { + "camelcase": "3.0.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true, + "optional": true + } + } + }, + "yeast": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", + "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", + "dev": true + }, + "yn": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", + "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", + "dev": true + }, + "zone.js": { + "version": "0.8.26", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.8.26.tgz", + "integrity": "sha512-W9Nj+UmBJG251wkCacIkETgra4QgBo/vgoEkb4a2uoLzpQG7qF9nzwoLXWU5xj3Fg2mxGvEDh47mg24vXccYjA==" + } + } +} diff --git a/SystemKonkursow/4.2.1/angular/package.json b/SystemKonkursow/4.2.1/angular/package.json new file mode 100644 index 0000000..43b5f80 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/package.json @@ -0,0 +1,91 @@ +{ + "name": "SystemKonkursow", + "version": "0.0.0", + "license": "MIT", + "angular-cli": {}, + "scripts": { + "ng": "ng", + "start": "ng serve --host 0.0.0.0 --port 4200", + "hmr": "ng serve --host 0.0.0.0 --port 4200 --hmr", + "test": "ng test", + "pree2e": "webdriver-manager update --standalone false --gecko false", + "e2e": "protractor" + }, + "private": true, + "dependencies": { + "@angular/animations": "^6.0.5", + "@angular/common": "^6.0.5", + "@angular/compiler": "^6.0.5", + "@angular/core": "^6.0.5", + "@angular/forms": "^6.0.5", + "@angular/http": "^6.0.5", + "@angular/platform-browser": "^6.0.5", + "@angular/platform-browser-dynamic": "^6.0.5", + "@angular/router": "^6.0.5", + "@aspnet/signalr": "^1.0.0", + "@types/bootstrap": "^3.3.33", + "@types/jquery": "^3.2.12", + "@types/jquery.blockui": "0.0.28", + "@types/jquery.validation": "^1.16.3", + "@types/lodash": "^4.14.62", + "@types/moment": "^2.13.0", + "@types/moment-timezone": "^0.2.34", + "@types/toastr": "^2.1.33", + "abp-ng2-module": "^3.2.2", + "abp-web-resources": "^3.8.2", + "animate.css": "^3.5.2", + "block-ui": "^2.70.1", + "bootstrap": "^3.3.7", + "bootstrap-select": "^1.12.2", + "chart.js": "^2.6.0", + "core-js": "^2.4.1", + "famfamfam-flags": "^1.0.0", + "flot": "^0.8.0-alpha", + "font-awesome": "^4.7.0", + "jquery": "^3.1.1", + "jquery-countto": "^1.2.0", + "jquery-migrate": "^3.0.0", + "jquery-slimscroll": "^1.3.8", + "jquery-sparkline": "^2.4.0", + "js-cookie": "^2.1.4", + "lodash": "^4.17.4", + "moment": "^2.18.1", + "moment-timezone": "^0.5.13", + "morris.js": "^0.5.0", + "ngx-bootstrap": "^3.0.0", + "ngx-pagination": "^3.0.3", + "node-waves": "^0.7.5", + "push.js": "1.0.4", + "raphael": "^2.2.7", + "rxjs": "^6.2.0", + "simple-line-icons": "^2.4.1", + "spin.js": "^2.3.2", + "sweetalert": "^2.0.8", + "toastr": "^2.1.2", + "ts-helpers": "^1.1.2", + "web-animations-js": "^2.3.1", + "zone.js": "0.8.26" + }, + "devDependencies": { + "@angular/cli": "^6.0.8", + "@angular/compiler-cli": "^6.0.5", + "@angularclass/hmr": "^2.1.3", + "@types/jasmine": "^2.5.38", + "@types/node": "^8.0.27", + "codelyzer": "^4.0.1", + "jasmine-core": "^2.5.2", + "jasmine-spec-reporter": "^4.2.1", + "karma": "^1.4.1", + "karma-chrome-launcher": "^2.0.0", + "karma-cli": "^1.0.1", + "karma-coverage-istanbul-reporter": "^1.3.0", + "karma-jasmine": "^1.1.0", + "karma-jasmine-html-reporter": "^0.2.2", + "nswag": "^11.17.10", + "protractor": "^5.1.1", + "ts-node": "^3.3.0", + "tslint": "^5.7.0", + "typescript": "2.7.2", + "@angular-devkit/build-angular": "~0.6.8" + } +} diff --git a/SystemKonkursow/4.2.1/angular/protractor.conf.js b/SystemKonkursow/4.2.1/angular/protractor.conf.js new file mode 100644 index 0000000..ffded70 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/protractor.conf.js @@ -0,0 +1,32 @@ +// Protractor configuration file, see link for more information +// https://github.com/angular/protractor/blob/master/lib/config.ts + +/*global jasmine */ +var SpecReporter = require('jasmine-spec-reporter'); + +exports.config = { + allScriptsTimeout: 11000, + specs: [ + './e2e/**/*.e2e-spec.ts' + ], + capabilities: { + 'browserName': 'chrome' + }, + directConnect: true, + baseUrl: 'http://localhost:4200/', + framework: 'jasmine', + jasmineNodeOpts: { + showColors: true, + defaultTimeoutInterval: 30000, + print: function() {} + }, + useAllAngular2AppRoots: true, + beforeLaunch: function() { + require('ts-node').register({ + project: 'e2e' + }); + }, + onPrepare: function() { + jasmine.getEnv().addReporter(new SpecReporter()); + } +}; diff --git a/SystemKonkursow/4.2.1/angular/src/AppPreBootstrap.ts b/SystemKonkursow/4.2.1/angular/src/AppPreBootstrap.ts new file mode 100644 index 0000000..b503477 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/AppPreBootstrap.ts @@ -0,0 +1,70 @@ +import * as moment from 'moment'; +import { AppConsts } from '@shared/AppConsts'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; +import { Type, CompilerOptions, NgModuleRef } from '@angular/core'; +import { environment } from './environments/environment'; + +export class AppPreBootstrap { + + static run(appRootUrl: string, callback: () => void): void { + AppPreBootstrap.getApplicationConfig(appRootUrl, () => { + AppPreBootstrap.getUserConfiguration(callback); + }); + } + + static bootstrap(moduleType: Type, compilerOptions?: CompilerOptions | CompilerOptions[]): Promise> { + return platformBrowserDynamic().bootstrapModule(moduleType, compilerOptions); + } + + private static getApplicationConfig(appRootUrl: string, callback: () => void) { + return abp.ajax({ + url: appRootUrl + 'assets/' + environment.appConfig, + method: 'GET', + headers: { + 'Abp.TenantId': abp.multiTenancy.getTenantIdCookie() + } + }).done(result => { + AppConsts.appBaseUrl = result.appBaseUrl; + AppConsts.remoteServiceBaseUrl = result.remoteServiceBaseUrl; + AppConsts.localeMappings = result.localeMappings; + + callback(); + }); + } + + private static getCurrentClockProvider(currentProviderName: string): abp.timing.IClockProvider { + if (currentProviderName === "unspecifiedClockProvider") { + return abp.timing.unspecifiedClockProvider; + } + + if (currentProviderName === "utcClockProvider") { + return abp.timing.utcClockProvider; + } + + return abp.timing.localClockProvider; + } + + private static getUserConfiguration(callback: () => void): JQueryPromise { + return abp.ajax({ + url: AppConsts.remoteServiceBaseUrl + '/AbpUserConfiguration/GetAll', + method: 'GET', + headers: { + Authorization: 'Bearer ' + abp.auth.getToken(), + '.AspNetCore.Culture': abp.utils.getCookieValue("Abp.Localization.CultureName"), + 'Abp.TenantId': abp.multiTenancy.getTenantIdCookie() + } + }).done(result => { + $.extend(true, abp, result); + + abp.clock.provider = this.getCurrentClockProvider(result.clock.provider); + + moment.locale(abp.localization.currentLanguage.name); + + if (abp.clock.provider.supportsMultipleTimezone) { + moment.tz.setDefault(abp.timing.timeZoneInfo.iana.timeZoneId); + } + + callback(); + }); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/account/account-routing.module.ts b/SystemKonkursow/4.2.1/angular/src/account/account-routing.module.ts new file mode 100644 index 0000000..8405ade --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/account-routing.module.ts @@ -0,0 +1,24 @@ +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { LoginComponent } from './login/login.component'; +import { RegisterComponent } from './register/register.component'; +import { AccountComponent } from './account.component'; + +@NgModule({ + imports: [ + RouterModule.forChild([ + { + path: '', + component: AccountComponent, + children: [ + { path: 'login', component: LoginComponent }, + { path: 'register', component: RegisterComponent } + ] + } + ]) + ], + exports: [ + RouterModule + ] +}) +export class AccountRoutingModule { } \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/account/account.component.html b/SystemKonkursow/4.2.1/angular/src/account/account.component.html new file mode 100644 index 0000000..4cc42c0 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/account.component.html @@ -0,0 +1,20 @@ +

\ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/account/account.component.less b/SystemKonkursow/4.2.1/angular/src/account/account.component.less new file mode 100644 index 0000000..25732c5 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/account.component.less @@ -0,0 +1,13 @@ +.content.account-forms { + margin-top: 10px; +} + +.content.tenant-change-box { + padding: 16px 16px 0px 16px; + margin: 120px auto 0px auto; + max-width: 400px; + + a { + cursor: pointer; + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/account/account.component.ts b/SystemKonkursow/4.2.1/angular/src/account/account.component.ts new file mode 100644 index 0000000..71e494f --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/account.component.ts @@ -0,0 +1,36 @@ +import { Component, ViewContainerRef, OnInit, ViewEncapsulation, Injector } from '@angular/core'; +import { LoginService } from './login/login.service'; +import { AppComponentBase } from '@shared/app-component-base'; + +@Component({ + templateUrl: './account.component.html', + styleUrls: [ + './account.component.less' + ], + encapsulation: ViewEncapsulation.None +}) +export class AccountComponent extends AppComponentBase implements OnInit { + + private viewContainerRef: ViewContainerRef; + + versionText: string; + currentYear: number; + + public constructor( + injector: Injector, + private _loginService: LoginService + ) { + super(injector); + + this.currentYear = new Date().getFullYear(); + this.versionText = this.appSession.application.version + ' [' + this.appSession.application.releaseDate.format('YYYYDDMM') + ']'; + } + + showTenantChange(): boolean { + return abp.multiTenancy.isEnabled; + } + + ngOnInit(): void { + $('body').attr('class', 'login-page'); + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/account/account.module.ts b/SystemKonkursow/4.2.1/angular/src/account/account.module.ts new file mode 100644 index 0000000..06edefc --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/account.module.ts @@ -0,0 +1,52 @@ +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { FormsModule } from '@angular/forms'; +import { JsonpModule } from '@angular/http'; +import { HttpClientModule } from '@angular/common/http'; + +import { ModalModule } from 'ngx-bootstrap'; + +import { AbpModule } from '@abp/abp.module'; + +import { AccountRoutingModule } from './account-routing.module'; + +import { ServiceProxyModule } from '@shared/service-proxies/service-proxy.module'; + +import { SharedModule } from '@shared/shared.module'; + +import { AccountComponent } from './account.component'; +import { TenantChangeComponent } from './tenant/tenant-change.component'; +import { TenantChangeModalComponent } from './tenant/tenant-change-modal.component'; +import { LoginComponent } from './login/login.component'; +import { RegisterComponent } from './register/register.component'; +import { AccountLanguagesComponent } from './layout/account-languages.component'; + +import { LoginService } from './login/login.service'; + +@NgModule({ + imports: [ + CommonModule, + FormsModule, + HttpClientModule, + JsonpModule, + AbpModule, + SharedModule, + ServiceProxyModule, + AccountRoutingModule, + ModalModule.forRoot() + ], + declarations: [ + AccountComponent, + TenantChangeComponent, + TenantChangeModalComponent, + LoginComponent, + RegisterComponent, + AccountLanguagesComponent + ], + providers: [ + LoginService + ] +}) +export class AccountModule { + +} diff --git a/SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.html b/SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.html new file mode 100644 index 0000000..825d289 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.html @@ -0,0 +1,5 @@ + diff --git a/SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.less b/SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.less new file mode 100644 index 0000000..7064ef1 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.less @@ -0,0 +1,11 @@ +.account-language-switch-list { + list-style: none; + margin: 0px; + padding: 10px; + + > li { + display: inline; + margin: 0px; + padding: 0px; + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.ts b/SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.ts new file mode 100644 index 0000000..1d2884c --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/layout/account-languages.component.ts @@ -0,0 +1,39 @@ +import { Component, OnInit, Injector } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; + +import * as _ from 'lodash'; + +@Component({ + selector: 'account-languages', + templateUrl: './account-languages.component.html', + styleUrls: [ + './account-languages.component.less' + ] +}) +export class AccountLanguagesComponent extends AppComponentBase implements OnInit { + + languages: abp.localization.ILanguageInfo[]; + currentLanguage: abp.localization.ILanguageInfo; + + constructor( + injector: Injector + ) { + super(injector); + } + + ngOnInit() { + this.languages = _.filter(this.localization.languages, l => !l.isDisabled); + this.currentLanguage = this.localization.currentLanguage; + } + + changeLanguage(languageName: string): void { + abp.utils.setCookieValue( + "Abp.Localization.CultureName", + languageName, + new Date(new Date().getTime() + 5 * 365 * 86400000), //5 year + abp.appPath + ); + + location.reload(); + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/account/login/login.component.html b/SystemKonkursow/4.2.1/angular/src/account/login/login.component.html new file mode 100644 index 0000000..aea9527 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/login/login.component.html @@ -0,0 +1,40 @@ +
+
+
+

{{l("Logowanie")}}

+ +
+ + person + +
+ +
+
+ +
+ + lock + +
+ +
+
+
+
+ + +
+
+ +
+
+ + +
+
+
diff --git a/SystemKonkursow/4.2.1/angular/src/account/login/login.component.less b/SystemKonkursow/4.2.1/angular/src/account/login/login.component.less new file mode 100644 index 0000000..e917405 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/login/login.component.less @@ -0,0 +1,12 @@ +.social-icons { + padding-left: 0px; + + li { + display: inline-block; + margin-right: 5px; + + a { + width: 40px; + } + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/account/login/login.component.ts b/SystemKonkursow/4.2.1/angular/src/account/login/login.component.ts new file mode 100644 index 0000000..3fa07ee --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/login/login.component.ts @@ -0,0 +1,52 @@ +import { Component, Injector, ElementRef, ViewChild } from '@angular/core'; +import { Router } from '@angular/router'; +import { AppComponentBase } from '@shared/app-component-base'; +import { LoginService } from './login.service'; +import { accountModuleAnimation } from '@shared/animations/routerTransition'; +import { AbpSessionService } from '@abp/session/abp-session.service'; + +@Component({ + templateUrl: './login.component.html', + styleUrls: [ + './login.component.less' + ], + animations: [accountModuleAnimation()] +}) +export class LoginComponent extends AppComponentBase { + + @ViewChild('cardBody') cardBody: ElementRef; + + submitting: boolean = false; + + constructor( + injector: Injector, + public loginService: LoginService, + private _router: Router, + private _sessionService: AbpSessionService + ) { + super(injector); + } + + ngAfterViewInit(): void { + $(this.cardBody.nativeElement).find('input:first').focus(); + } + + get multiTenancySideIsTeanant(): boolean { + return this._sessionService.tenantId > 0; + } + + get isSelfRegistrationAllowed(): boolean { + if (!this._sessionService.tenantId) { + return false; + } + + return true; + } + + login(): void { + this.submitting = true; + this.loginService.authenticate( + () => this.submitting = false + ); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/account/login/login.service.ts b/SystemKonkursow/4.2.1/angular/src/account/login/login.service.ts new file mode 100644 index 0000000..da8e5ae --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/login/login.service.ts @@ -0,0 +1,90 @@ +import { Injectable } from '@angular/core'; +import { Router } from '@angular/router'; +import { TokenAuthServiceProxy, AuthenticateModel, AuthenticateResultModel, ExternalLoginProviderInfoModel, ExternalAuthenticateModel, ExternalAuthenticateResultModel } from '@shared/service-proxies/service-proxies'; +import { UrlHelper } from '@shared/helpers/UrlHelper'; +import { AppConsts } from '@shared/AppConsts'; + +import { MessageService } from '@abp/message/message.service'; +import { LogService } from '@abp/log/log.service'; +import { TokenService } from '@abp/auth/token.service'; +import { UtilsService } from '@abp/utils/utils.service'; +import { finalize } from 'rxjs/operators'; + +@Injectable() +export class LoginService { + + static readonly twoFactorRememberClientTokenName = 'TwoFactorRememberClientToken'; + + authenticateModel: AuthenticateModel; + authenticateResult: AuthenticateResultModel; + + rememberMe: boolean; + + constructor( + private _tokenAuthService: TokenAuthServiceProxy, + private _router: Router, + private _utilsService: UtilsService, + private _messageService: MessageService, + private _tokenService: TokenService, + private _logService: LogService + ) { + this.clear(); + } + + authenticate(finallyCallback?: () => void): void { + finallyCallback = finallyCallback || (() => { }); + + this._tokenAuthService + .authenticate(this.authenticateModel) + .pipe(finalize(() => { finallyCallback() })) + .subscribe((result: AuthenticateResultModel) => { + this.processAuthenticateResult(result); + }); + } + + private processAuthenticateResult(authenticateResult: AuthenticateResultModel) { + this.authenticateResult = authenticateResult; + + if (authenticateResult.accessToken) { + //Successfully logged in + this.login(authenticateResult.accessToken, authenticateResult.encryptedAccessToken, authenticateResult.expireInSeconds, this.rememberMe); + + } else { + //Unexpected result! + + this._logService.warn('Unexpected authenticateResult!'); + this._router.navigate(['account/login']); + } + } + + private login(accessToken: string, encryptedAccessToken: string, expireInSeconds: number, rememberMe?: boolean): void { + + var tokenExpireDate = rememberMe ? (new Date(new Date().getTime() + 1000 * expireInSeconds)) : undefined; + + this._tokenService.setToken( + accessToken, + tokenExpireDate + ); + + this._utilsService.setCookieValue( + AppConsts.authorization.encrptedAuthTokenName, + encryptedAccessToken, + tokenExpireDate, + abp.appPath + ); + + var initialUrl = UrlHelper.initialUrl; + if (initialUrl.indexOf('/login') > 0) { + initialUrl = AppConsts.appBaseUrl; + } + + location.href = initialUrl; + } + + private clear(): void { + this.authenticateModel = new AuthenticateModel(); + this.authenticateModel.rememberClient = false; + this.authenticateResult = null; + this.rememberMe = false; + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/account/register/register.component.html b/SystemKonkursow/4.2.1/angular/src/account/register/register.component.html new file mode 100644 index 0000000..4a3b89c --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/register/register.component.html @@ -0,0 +1,48 @@ +
+
+
+

{{l("Rejestracja")}}

+ +
+
+ + +
+
+ +
+
+ + +
+
+ +
+
+ + +
+
+ +
+
+ + +
+
+ +
+
+ + +
+
+ +
+ + +
+ +
+
+
diff --git a/SystemKonkursow/4.2.1/angular/src/account/register/register.component.ts b/SystemKonkursow/4.2.1/angular/src/account/register/register.component.ts new file mode 100644 index 0000000..673b009 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/register/register.component.ts @@ -0,0 +1,56 @@ +import { Component, Injector, ElementRef, AfterViewInit, ViewChild } from '@angular/core'; +import { Router } from '@angular/router'; +import { AccountServiceProxy, RegisterInput, RegisterOutput } from '@shared/service-proxies/service-proxies' +import { AppComponentBase } from '@shared/app-component-base'; +import { LoginService } from '../login/login.service'; +import { accountModuleAnimation } from '@shared/animations/routerTransition'; +import { finalize } from 'rxjs/operators'; + +@Component({ + templateUrl: './register.component.html', + animations: [accountModuleAnimation()] +}) +export class RegisterComponent extends AppComponentBase implements AfterViewInit { + + @ViewChild('cardBody') cardBody: ElementRef; + + model: RegisterInput = new RegisterInput(); + + saving: boolean = false; + + constructor( + injector: Injector, + private _accountService: AccountServiceProxy, + private _router: Router, + private readonly _loginService: LoginService + ) { + super(injector); + } + + ngAfterViewInit(): void { + $(this.cardBody.nativeElement).find('input:first').focus(); + } + + back(): void { + this._router.navigate(['/login']); + } + + save(): void { + this.saving = true; + this._accountService.register(this.model) + .pipe(finalize(() => { this.saving = false; })) + .subscribe((result:RegisterOutput) => { + if (!result.canLogin) { + this.notify.success(this.l('SuccessfullyRegistered')); + this._router.navigate(['/login']); + return; + } + + //Autheticate + this.saving = true; + this._loginService.authenticateModel.userNameOrEmailAddress = this.model.userName; + this._loginService.authenticateModel.password = this.model.password; + this._loginService.authenticate(() => { this.saving = false; }); + }); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change-modal.component.html b/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change-modal.component.html new file mode 100644 index 0000000..579f9aa --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change-modal.component.html @@ -0,0 +1,36 @@ + diff --git a/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change-modal.component.ts b/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change-modal.component.ts new file mode 100644 index 0000000..acf2eb2 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change-modal.component.ts @@ -0,0 +1,76 @@ +import { Component, OnInit, ViewChild, Injector, ElementRef } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; +import { AccountServiceProxy } from '@shared/service-proxies/service-proxies'; +import { IsTenantAvailableInput, IsTenantAvailableOutput } from '@shared/service-proxies/service-proxies'; +import { AppTenantAvailabilityState } from '@shared/AppEnums'; +import { ModalDirective } from 'ngx-bootstrap'; +import { finalize } from 'rxjs/operators'; + +@Component({ + selector: 'tenantChangeModal', + templateUrl: './tenant-change-modal.component.html' +}) +export class TenantChangeModalComponent extends AppComponentBase { + + @ViewChild('tenantChangeModal') modal: ModalDirective; + @ViewChild('tenancyNameInput') tenancyNameInput: ElementRef; + @ViewChild('modalContent') modalContent: ElementRef; + + tenancyName: string = ''; + active: boolean = false; + saving: boolean = false; + + constructor( + private _accountService: AccountServiceProxy, + injector: Injector + ) { + super(injector); + } + + show(tenancyName: string): void { + this.tenancyName = tenancyName; + this.active = true; + this.modal.show(); + } + + onShown(): void { + $(this.tenancyNameInput.nativeElement).focus().select(); + } + + save(): void { + + if (!this.tenancyName) { + abp.multiTenancy.setTenantIdCookie(undefined);; + this.close(); + location.reload(); + return; + } + + var input = new IsTenantAvailableInput(); + input.tenancyName = this.tenancyName; + + this.saving = true; + this._accountService.isTenantAvailable(input) + .pipe(finalize(() => { this.saving = false; })) + .subscribe((result: IsTenantAvailableOutput) => { + switch (result.state) { + case AppTenantAvailabilityState.Available: + abp.multiTenancy.setTenantIdCookie(result.tenantId); + this.close(); + location.reload(); + return; + case AppTenantAvailabilityState.InActive: + this.message.warn(this.l('TenantIsNotActive', this.tenancyName)); + break; + case AppTenantAvailabilityState.NotFound: //NotFound + this.message.warn(this.l('ThereIsNoTenantDefinedWithName{0}', this.tenancyName)); + break; + } + }); + } + + close(): void { + this.active = false; + this.modal.hide(); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change.component.html b/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change.component.html new file mode 100644 index 0000000..407dbf9 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change.component.html @@ -0,0 +1,8 @@ +
+
+ + {{l("CurrentTenant")}}: {{tenancyName}} {{l("NotSelected")}} ({{l("Change")}}) + + +
+
\ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change.component.ts b/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change.component.ts new file mode 100644 index 0000000..e39f5d2 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/account/tenant/tenant-change.component.ts @@ -0,0 +1,39 @@ +import { Component, OnInit, Injector, ViewChild } from '@angular/core'; +import { AccountServiceProxy } from '@shared/service-proxies/service-proxies' +import { TenantChangeModalComponent } from './tenant-change-modal.component' +import { AppComponentBase } from '@shared/app-component-base'; + +@Component({ + selector: 'tenant-change', + templateUrl: './tenant-change.component.html' +}) +export class TenantChangeComponent extends AppComponentBase implements OnInit { + + @ViewChild('tenantChangeModal') tenantChangeModal: TenantChangeModalComponent; + + tenancyName: string; + name: string; + + constructor( + injector: Injector, + private _accountService: AccountServiceProxy + ) { + super(injector); + } + + ngOnInit() { + + if (this.appSession.tenant) { + this.tenancyName = this.appSession.tenant.tenancyName; + this.name = this.appSession.tenant.name; + } + } + + get isMultiTenancyEnabled(): boolean { + return abp.multiTenancy.isEnabled; + } + + showChangeModal(): void{ + this.tenantChangeModal.show(this.tenancyName); + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/about/about.component.html b/SystemKonkursow/4.2.1/angular/src/app/about/about.component.html new file mode 100644 index 0000000..5e962bf --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/about/about.component.html @@ -0,0 +1,84 @@ +
+
+
+
+

+ About This Template +

+
+
+

+ This is a simple startup template based on ASP.NET Boilerplate framework and Module Zero. + If you need an enterprise startup project, check ASP.NET ZERO. +

+ +

What is ASP.NET Boilerplate?

+ +

+ ASP.NET Boilerplate is an application framework built on latest ASP.NET Core framework. + It makes easy to use authorization, dependency injection, validation, exception handling, localization, logging, caching, background jobs and so on. + It's built on already familiar tools like Entity Framework, AutoMapper, Castle Windsor... +

+ +

+ ASP.NET Boilerplate implements NLayer architecture (Domain, Application, Infrastructure and Presentation Layers) + and Domain Driven Design (Entities, Repositories, Domain/Application Services, DTO's...). + Also implements and provides a good infrastructure to implement common software development best practices. +

+ +

What is Module Zero?

+ +

+ ASP.NET Boilerplate framework is designed to be independent of any database + schema and to be as generic as possible. Therefore, It leaves some concepts + abstract and optional (like audit logging, permission and setting stores) + which requires some data store. +

+

+ Module Zero implements all fundamental concepts of ASP.NET + Boilerplate framework such as tenant management (multi-tenancy), + + role management + , user management, + authorization ( + permission management + ), + setting management, + language management + , audit logging + and so on. +

+

+ Module-Zero defines entities and implements domain logic + (domain layer) and leaves application and presentation layers to you. +

+ +

Based on Microsoft ASP.NET Core Identity

+ +

+ Module Zero is based on Microsoft's + ASP.NET Core Identity library. + It extends user and role managers and implements user and role stores using generic repositories. +

+ +

Documentation

+ + + +

Source code

+ +

+ This template is developed open source on Github. You can contribute to the template. + https://github.com/aspnetboilerplate/module-zero-core-template +

+
+
+
+
\ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/about/about.component.ts b/SystemKonkursow/4.2.1/angular/src/app/about/about.component.ts new file mode 100644 index 0000000..0e94e1e --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/about/about.component.ts @@ -0,0 +1,16 @@ +import { Component, Injector, AfterViewInit } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; +import { appModuleAnimation } from '@shared/animations/routerTransition'; + +@Component({ + templateUrl: './about.component.html', + animations: [appModuleAnimation()] +}) +export class AboutComponent extends AppComponentBase { + + constructor( + injector: Injector + ) { + super(injector); + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/app-routing.module.ts b/SystemKonkursow/4.2.1/angular/src/app/app-routing.module.ts new file mode 100644 index 0000000..f30a4e7 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/app-routing.module.ts @@ -0,0 +1,29 @@ +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { AppComponent } from './app.component'; +import { AppRouteGuard } from '@shared/auth/auth-route-guard'; +import { HomeComponent } from './home/home.component'; +import { AboutComponent } from './about/about.component'; +import { UsersComponent } from './users/users.component'; +import { TenantsComponent } from './tenants/tenants.component'; +import { RolesComponent } from 'app/roles/roles.component'; + +@NgModule({ + imports: [ + RouterModule.forChild([ + { + path: '', + component: AppComponent, + children: [ + { path: 'home', component: HomeComponent, canActivate: [AppRouteGuard] }, + { path: 'users', component: UsersComponent, data: { permission: 'Pages.Users' }, canActivate: [AppRouteGuard] }, + { path: 'roles', component: RolesComponent, data: { permission: 'Pages.Roles' }, canActivate: [AppRouteGuard] }, + { path: 'tenants', component: TenantsComponent, data: { permission: 'Pages.Tenants' }, canActivate: [AppRouteGuard] }, + { path: 'about', component: AboutComponent } + ] + } + ]) + ], + exports: [RouterModule] +}) +export class AppRoutingModule { } diff --git a/SystemKonkursow/4.2.1/angular/src/app/app.component.html b/SystemKonkursow/4.2.1/angular/src/app/app.component.html new file mode 100644 index 0000000..1ab7e20 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/app.component.html @@ -0,0 +1,19 @@ +
+ + + +
+ + + +
+ +
+
+ +
+
diff --git a/SystemKonkursow/4.2.1/angular/src/app/app.component.spec.ts b/SystemKonkursow/4.2.1/angular/src/app/app.component.spec.ts new file mode 100644 index 0000000..5be2cb3 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/app.component.spec.ts @@ -0,0 +1,34 @@ +/* tslint:disable:no-unused-variable */ + +import { TestBed, async } from '@angular/core/testing'; +import { AppComponent } from './app.component'; + +describe('AppComponent', () => { + beforeEach(() => { + TestBed.configureTestingModule({ + declarations: [ + AppComponent + ], + }); + TestBed.compileComponents(); + }); + + it('should create the app', async(() => { + const fixture = TestBed.createComponent(AppComponent); + const app = fixture.debugElement.componentInstance; + expect(app).toBeTruthy(); + })); + + it(`should have as title 'app works!'`, async(() => { + const fixture = TestBed.createComponent(AppComponent); + const app = fixture.debugElement.componentInstance; + expect(app.title).toEqual('app works!'); + })); + + it('should render title in a h1 tag', async(() => { + const fixture = TestBed.createComponent(AppComponent); + fixture.detectChanges(); + const compiled = fixture.debugElement.nativeElement; + expect(compiled.querySelector('h1').textContent).toContain('app works!'); + })); +}); diff --git a/SystemKonkursow/4.2.1/angular/src/app/app.component.ts b/SystemKonkursow/4.2.1/angular/src/app/app.component.ts new file mode 100644 index 0000000..c7b9285 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/app.component.ts @@ -0,0 +1,53 @@ +import { Component, ViewContainerRef, Injector, OnInit, AfterViewInit, ChangeDetectorRef } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; + +import { SignalRAspNetCoreHelper } from '@shared/helpers/SignalRAspNetCoreHelper'; + +@Component({ + templateUrl: './app.component.html' +}) +export class AppComponent extends AppComponentBase implements OnInit, AfterViewInit { + + private viewContainerRef: ViewContainerRef; + + constructor( + injector: Injector + ) { + super(injector); + } + + ngOnInit(): void { + + SignalRAspNetCoreHelper.initSignalR(); + + abp.event.on('abp.notifications.received', userNotification => { + abp.notifications.showUiNotifyForUserNotification(userNotification); + + //Desktop notification + Push.create("AbpZeroTemplate", { + body: userNotification.notification.data.message, + icon: abp.appPath + 'assets/app-logo-small.png', + timeout: 6000, + onClick: function () { + window.focus(); + this.close(); + } + }); + }); + } + + ngAfterViewInit(): void { + $.AdminBSB.activateAll(); + $.AdminBSB.activateDemo(); + } + + onResize(event) { + // exported from $.AdminBSB.activateAll + $.AdminBSB.leftSideBar.setMenuHeight(); + $.AdminBSB.leftSideBar.checkStatuForResize(false); + + // exported from $.AdminBSB.activateDemo + $.AdminBSB.demo.setSkinListHeightAndScroll(); + $.AdminBSB.demo.setSettingListHeightAndScroll(); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/app.module.ts b/SystemKonkursow/4.2.1/angular/src/app/app.module.ts new file mode 100644 index 0000000..aa4d055 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/app.module.ts @@ -0,0 +1,74 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { FormsModule } from '@angular/forms'; +import { JsonpModule } from '@angular/http'; +import { HttpClientModule, HttpResponse } from '@angular/common/http'; + +import { ModalModule } from 'ngx-bootstrap'; +import { NgxPaginationModule } from 'ngx-pagination'; + +import { AppRoutingModule } from './app-routing.module'; +import { AppComponent } from './app.component'; + +import { AbpModule } from '@abp/abp.module'; + +import { ServiceProxyModule } from '@shared/service-proxies/service-proxy.module'; +import { SharedModule } from '@shared/shared.module'; + +import { HomeComponent } from '@app/home/home.component'; +import { AboutComponent } from '@app/about/about.component'; +import { UsersComponent } from '@app/users/users.component'; +import { CreateUserComponent } from '@app/users/create-user/create-user.component'; +import { EditUserComponent } from './users/edit-user/edit-user.component'; +import { RolesComponent } from '@app/roles/roles.component'; +import { CreateRoleComponent } from '@app/roles/create-role/create-role.component'; +import { EditRoleComponent } from './roles/edit-role/edit-role.component'; +import { TenantsComponent } from '@app/tenants/tenants.component'; +import { CreateTenantComponent } from './tenants/create-tenant/create-tenant.component'; +import { EditTenantComponent } from './tenants/edit-tenant/edit-tenant.component'; +import { TopBarComponent } from '@app/layout/topbar.component'; +import { TopBarLanguageSwitchComponent } from '@app/layout/topbar-languageswitch.component'; +import { SideBarUserAreaComponent } from '@app/layout/sidebar-user-area.component'; +import { SideBarNavComponent } from '@app/layout/sidebar-nav.component'; +import { SideBarFooterComponent } from '@app/layout/sidebar-footer.component'; +import { RightSideBarComponent } from '@app/layout/right-sidebar.component'; + +@NgModule({ + declarations: [ + AppComponent, + HomeComponent, + AboutComponent, + TenantsComponent, + CreateTenantComponent, + EditTenantComponent, + UsersComponent, + CreateUserComponent, + EditUserComponent, + RolesComponent, + CreateRoleComponent, + EditRoleComponent, + TopBarComponent, + TopBarLanguageSwitchComponent, + SideBarUserAreaComponent, + SideBarNavComponent, + SideBarFooterComponent, + RightSideBarComponent + + ], + imports: [ + CommonModule, + FormsModule, + HttpClientModule, + JsonpModule, + ModalModule.forRoot(), + AbpModule, + AppRoutingModule, + ServiceProxyModule, + SharedModule, + NgxPaginationModule + ], + providers: [ + + ] +}) +export class AppModule { } diff --git a/SystemKonkursow/4.2.1/angular/src/app/home/home.component.html b/SystemKonkursow/4.2.1/angular/src/app/home/home.component.html new file mode 100644 index 0000000..32e2cf4 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/home/home.component.html @@ -0,0 +1,310 @@ +
+ +
+

SAMPLE DASHBOARD

+
+ + +
+
+
+
+ playlist_add_check +
+
+
NEW TASKS
+
+
+
+
+
+
+
+ help +
+
+
NEW TICKETS
+
+
+
+
+
+
+
+ forum +
+
+
NEW COMMENTS
+
+
+
+
+
+
+
+ person_add +
+
+
NEW VISITORS
+
+
+
+
+
+ + +
+
+
+
+
+
+

CPU USAGE (%)

+
+
+
+ REAL TIME + +
+
+
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+ 12,10,9,6,5,6,10,5,7,5,12,13,7,12,11 +
+
    +
  • + TODAY + 1 200 USERS +
  • +
  • + YESTERDAY + 3 872 USERS +
  • +
  • + LAST WEEK + 26 582 USERS +
  • +
+
+
+
+ + +
+
+
+
LATEST SOCIAL TRENDS
+
    +
  • + #socialtrends + + trending_up + +
  • +
  • + #materialdesign + + trending_up + +
  • +
  • #adminbsb
  • +
  • #freeadmintemplate
  • +
  • #bootstraptemplate
  • +
  • + #freehtmltemplate + + trending_up + +
  • +
+
+
+
+ + +
+
+
+
ANSWERED TICKETS
+
    +
  • + TODAY + 12 TICKETS +
  • +
  • + YESTERDAY + 15 TICKETS +
  • +
  • + LAST WEEK + 90 TICKETS +
  • +
  • + LAST MONTH + 342 TICKETS +
  • +
  • + LAST YEAR + 4 225 TICKETS +
  • +
  • + ALL + 8 752 TICKETS +
  • +
+
+
+
+ +
+
+ +
+
+
+

TASK INFOS

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
#TaskStatusManagerProgress
1Task ADoingJohn Doe +
+
+
+
2Task BTo DoJohn Doe +
+
+
+
3Task COn HoldJohn Doe +
+
+
+
4Task DWait ApprovelJohn Doe +
+
+
+
5Task E + Suspended + John Doe +
+
+
+
+
+
+
+
+ + +
+
+
+

BROWSER USAGE

+ +
+
+
+
+
+
+ +
+ +
\ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/home/home.component.ts b/SystemKonkursow/4.2.1/angular/src/app/home/home.component.ts new file mode 100644 index 0000000..09bac73 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/home/home.component.ts @@ -0,0 +1,135 @@ +import { Component, Injector, AfterViewInit } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; +import { appModuleAnimation } from '@shared/animations/routerTransition'; + +@Component({ + templateUrl: './home.component.html', + animations: [appModuleAnimation()] +}) +export class HomeComponent extends AppComponentBase implements AfterViewInit { + + constructor( + injector: Injector + ) { + super(injector); + } + + ngAfterViewInit(): void { + + $(function () { + //Widgets count + $('.count-to').countTo(); + + //Sales count to + $('.sales-count-to').countTo({ + formatter: function (value, options) { + return '$' + value.toFixed(2).replace(/(\d)(?=(\d\d\d)+(?!\d))/g, ' ').replace('.', ','); + } + }); + + initRealTimeChart(); + initDonutChart(); + initSparkline(); + }); + + var realtime = 'on'; + function initRealTimeChart() { + //Real time ========================================================================================== + var plot = ($ as any).plot('#real_time_chart', [getRandomData()], { + series: { + shadowSize: 0, + color: 'rgb(0, 188, 212)' + }, + grid: { + borderColor: '#f3f3f3', + borderWidth: 1, + tickColor: '#f3f3f3' + }, + lines: { + fill: true + }, + yaxis: { + min: 0, + max: 100 + }, + xaxis: { + min: 0, + max: 100 + } + }); + + function updateRealTime() { + plot.setData([getRandomData()]); + plot.draw(); + + var timeout; + if (realtime === 'on') { + timeout = setTimeout(updateRealTime, 320); + } else { + clearTimeout(timeout); + } + } + + updateRealTime(); + + $('#realtime').on('change', function () { + realtime = (this as any).checked ? 'on' : 'off'; + updateRealTime(); + }); + //==================================================================================================== + } + + function initSparkline() { + $(".sparkline").each(function () { + var $this = $(this); + $this.sparkline('html', $this.data()); + }); + } + + function initDonutChart() { + ((window as any).Morris).Donut({ + element: 'donut_chart', + data: [{ + label: 'Chrome', + value: 37 + }, { + label: 'Firefox', + value: 30 + }, { + label: 'Safari', + value: 18 + }, { + label: 'Opera', + value: 12 + }, + { + label: 'Other', + value: 3 + }], + colors: ['rgb(233, 30, 99)', 'rgb(0, 188, 212)', 'rgb(255, 152, 0)', 'rgb(0, 150, 136)', 'rgb(96, 125, 139)'], + formatter: function (y) { + return y + '%' + } + }); + } + + var data = [], totalPoints = 110; + function getRandomData() { + if (data.length > 0) data = data.slice(1); + + while (data.length < totalPoints) { + var prev = data.length > 0 ? data[data.length - 1] : 50, y = prev + Math.random() * 10 - 5; + if (y < 0) { y = 0; } else if (y > 100) { y = 100; } + + data.push(y); + } + + var res = []; + for (var i = 0; i < data.length; ++i) { + res.push([i, data[i]]); + } + + return res; + } + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/right-sidebar.component.html b/SystemKonkursow/4.2.1/angular/src/app/layout/right-sidebar.component.html new file mode 100644 index 0000000..9e7b74b --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/right-sidebar.component.html @@ -0,0 +1,65 @@ + \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/right-sidebar.component.ts b/SystemKonkursow/4.2.1/angular/src/app/layout/right-sidebar.component.ts new file mode 100644 index 0000000..c5287d9 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/right-sidebar.component.ts @@ -0,0 +1,70 @@ +import { Component, Injector, ViewEncapsulation, OnInit } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; +import { ConfigurationServiceProxy, ChangeUiThemeInput } from '@shared/service-proxies/service-proxies'; + +@Component({ + templateUrl: './right-sidebar.component.html', + selector: 'right-sidebar', + encapsulation: ViewEncapsulation.None +}) +export class RightSideBarComponent extends AppComponentBase implements OnInit { + + themes: UiThemeInfo[] = [ + new UiThemeInfo("Red", "red"), + new UiThemeInfo("Pink", "pink"), + new UiThemeInfo("Purple", "purple"), + new UiThemeInfo("Deep Purple", "deep-purple"), + new UiThemeInfo("Indigo", "indigo"), + new UiThemeInfo("Blue", "blue"), + new UiThemeInfo("Light Blue", "light-blue"), + new UiThemeInfo("Cyan", "cyan"), + new UiThemeInfo("Teal", "teal"), + new UiThemeInfo("Green", "green"), + new UiThemeInfo("Light Green", "light-green"), + new UiThemeInfo("Lime", "lime"), + new UiThemeInfo("Yellow", "yellow"), + new UiThemeInfo("Amber", "amber"), + new UiThemeInfo("Orange", "orange"), + new UiThemeInfo("Deep Orange", "deep-orange"), + new UiThemeInfo("Brown", "brown"), + new UiThemeInfo("Grey", "grey"), + new UiThemeInfo("Blue Grey", "blue-grey"), + new UiThemeInfo("Black", "black") + ]; + + selectedThemeCssClass: string = "red"; + + constructor( + injector: Injector, + private _configurationService: ConfigurationServiceProxy + ) { + super(injector); + } + + ngOnInit(): void { + this.selectedThemeCssClass = this.setting.get('App.UiTheme'); + $('body').addClass('theme-' + this.selectedThemeCssClass); + } + + setTheme(theme: UiThemeInfo): void { + const input = new ChangeUiThemeInput(); + input.theme = theme.cssClass; + this._configurationService.changeUiTheme(input).subscribe(() => { + const $body = $('body'); + + $('.right-sidebar .demo-choose-skin li').removeClass('active'); + $body.removeClass('theme-' + this.selectedThemeCssClass); + $('.right-sidebar .demo-choose-skin li div.' + theme.cssClass).closest('li').addClass('active'); + $body.addClass('theme-' + theme.cssClass); + + this.selectedThemeCssClass = theme.cssClass; + }); + } +} + +class UiThemeInfo { + constructor( + public name: string, + public cssClass: string + ) { } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-footer.component.html b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-footer.component.html new file mode 100644 index 0000000..a32b1dc --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-footer.component.html @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-footer.component.ts b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-footer.component.ts new file mode 100644 index 0000000..993abee --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-footer.component.ts @@ -0,0 +1,22 @@ +import { Component, Injector, ViewEncapsulation } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; + +@Component({ + templateUrl: './sidebar-footer.component.html', + selector: 'sidebar-footer', + encapsulation: ViewEncapsulation.None +}) +export class SideBarFooterComponent extends AppComponentBase { + + versionText: string; + currentYear: number; + + constructor( + injector: Injector + ) { + super(injector); + + this.currentYear = new Date().getFullYear(); + this.versionText = this.appSession.application.version + ' [' + this.appSession.application.releaseDate.format('YYYYDDMM') + ']'; + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-nav.component.html b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-nav.component.html new file mode 100644 index 0000000..1e0c971 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-nav.component.html @@ -0,0 +1,60 @@ + diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-nav.component.ts b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-nav.component.ts new file mode 100644 index 0000000..e88a758 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-nav.component.ts @@ -0,0 +1,51 @@ +import { Component, Injector, ViewEncapsulation } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; +import { MenuItem } from '@shared/layout/menu-item'; + +@Component({ + templateUrl: './sidebar-nav.component.html', + selector: 'sidebar-nav', + encapsulation: ViewEncapsulation.None +}) +export class SideBarNavComponent extends AppComponentBase { + + menuItems: MenuItem[] = [ + new MenuItem(this.l("HomePage"), "", "home", "/app/home"), + + new MenuItem(this.l("Tenants"), "Pages.Tenants", "business", "/app/tenants"), + new MenuItem(this.l("Users"), "Pages.Users", "people", "/app/users"), + new MenuItem(this.l("Roles"), "Pages.Roles", "local_offer", "/app/roles"), + new MenuItem(this.l("About"), "", "info", "/app/about"), + + new MenuItem(this.l("MultiLevelMenu"), "", "menu", "", [ + new MenuItem("ASP.NET Boilerplate", "", "", "", [ + new MenuItem("Home", "", "", "https://aspnetboilerplate.com/?ref=abptmpl"), + new MenuItem("Templates", "", "", "https://aspnetboilerplate.com/Templates?ref=abptmpl"), + new MenuItem("Samples", "", "", "https://aspnetboilerplate.com/Samples?ref=abptmpl"), + new MenuItem("Documents", "", "", "https://aspnetboilerplate.com/Pages/Documents?ref=abptmpl") + ]), + new MenuItem("ASP.NET Zero", "", "", "", [ + new MenuItem("Home", "", "", "https://aspnetzero.com?ref=abptmpl"), + new MenuItem("Description", "", "", "https://aspnetzero.com/?ref=abptmpl#description"), + new MenuItem("Features", "", "", "https://aspnetzero.com/?ref=abptmpl#features"), + new MenuItem("Pricing", "", "", "https://aspnetzero.com/?ref=abptmpl#pricing"), + new MenuItem("Faq", "", "", "https://aspnetzero.com/Faq?ref=abptmpl"), + new MenuItem("Documents", "", "", "https://aspnetzero.com/Documents?ref=abptmpl") + ]) + ]) + ]; + + constructor( + injector: Injector + ) { + super(injector); + } + + showMenuItem(menuItem): boolean { + if (menuItem.permissionName) { + return this.permission.isGranted(menuItem.permissionName); + } + + return true; + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-user-area.component.html b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-user-area.component.html new file mode 100644 index 0000000..edb3372 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-user-area.component.html @@ -0,0 +1,15 @@ + diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-user-area.component.ts b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-user-area.component.ts new file mode 100644 index 0000000..b52b27a --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/sidebar-user-area.component.ts @@ -0,0 +1,28 @@ +import { Component, OnInit, Injector, ViewEncapsulation } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; +import { AppAuthService } from '@shared/auth/app-auth.service'; + +@Component({ + templateUrl: './sidebar-user-area.component.html', + selector: 'sidebar-user-area', + encapsulation: ViewEncapsulation.None +}) +export class SideBarUserAreaComponent extends AppComponentBase implements OnInit { + + shownLoginName: string = ""; + + constructor( + injector: Injector, + private _authService: AppAuthService + ) { + super(injector); + } + + ngOnInit() { + this.shownLoginName = this.appSession.getShownLoginName(); + } + + logout(): void { + this._authService.logout(); + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/topbar-languageswitch.component.html b/SystemKonkursow/4.2.1/angular/src/app/layout/topbar-languageswitch.component.html new file mode 100644 index 0000000..50b0c3c --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/topbar-languageswitch.component.html @@ -0,0 +1,12 @@ + diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/topbar-languageswitch.component.ts b/SystemKonkursow/4.2.1/angular/src/app/layout/topbar-languageswitch.component.ts new file mode 100644 index 0000000..bbce67c --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/topbar-languageswitch.component.ts @@ -0,0 +1,44 @@ +import { Component, OnInit, Injector, ViewEncapsulation } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; +import { UserServiceProxy, ChangeUserLanguageDto } from '@shared/service-proxies/service-proxies'; + +import * as _ from 'lodash'; + +@Component({ + templateUrl: './topbar-languageswitch.component.html', + selector: 'topbar-languageswitch', + encapsulation: ViewEncapsulation.None +}) +export class TopBarLanguageSwitchComponent extends AppComponentBase implements OnInit { + + languages: abp.localization.ILanguageInfo[]; + currentLanguage: abp.localization.ILanguageInfo; + + constructor( + injector: Injector, + private _userService: UserServiceProxy + ) { + super(injector); + } + + ngOnInit() { + this.languages = _.filter(this.localization.languages, l => !l.isDisabled); + this.currentLanguage = this.localization.currentLanguage; + } + + changeLanguage(languageName: string): void { + const input = new ChangeUserLanguageDto(); + input.languageName = languageName; + + this._userService.changeLanguage(input).subscribe(() => { + abp.utils.setCookieValue( + 'Abp.Localization.CultureName', + languageName, + new Date(new Date().getTime() + 5 * 365 * 86400000), //5 year + abp.appPath + ); + + window.location.reload(); + }); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/topbar.component.html b/SystemKonkursow/4.2.1/angular/src/app/layout/topbar.component.html new file mode 100644 index 0000000..53d035b --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/topbar.component.html @@ -0,0 +1,27 @@ + + + + diff --git a/SystemKonkursow/4.2.1/angular/src/app/layout/topbar.component.ts b/SystemKonkursow/4.2.1/angular/src/app/layout/topbar.component.ts new file mode 100644 index 0000000..f22d095 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/layout/topbar.component.ts @@ -0,0 +1,16 @@ +import { Component, Injector, ViewEncapsulation } from '@angular/core'; +import { AppComponentBase } from '@shared/app-component-base'; + +@Component({ + templateUrl: './topbar.component.html', + selector: 'top-bar', + encapsulation: ViewEncapsulation.None +}) +export class TopBarComponent extends AppComponentBase { + + constructor( + injector: Injector + ) { + super(injector); + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/roles/create-role/create-role.component.html b/SystemKonkursow/4.2.1/angular/src/app/roles/create-role/create-role.component.html new file mode 100644 index 0000000..bc304aa --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/roles/create-role/create-role.component.html @@ -0,0 +1,75 @@ + \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/roles/create-role/create-role.component.ts b/SystemKonkursow/4.2.1/angular/src/app/roles/create-role/create-role.component.ts new file mode 100644 index 0000000..d9d828b --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/roles/create-role/create-role.component.ts @@ -0,0 +1,74 @@ +import { Component, ViewChild, Injector, Output, EventEmitter, ElementRef, OnInit } from '@angular/core'; +import { ModalDirective } from 'ngx-bootstrap'; +import { RoleServiceProxy, CreateRoleDto, ListResultDtoOfPermissionDto } from '@shared/service-proxies/service-proxies'; +import { AppComponentBase } from '@shared/app-component-base'; +import { finalize } from 'rxjs/operators'; + +@Component({ + selector: 'create-role-modal', + templateUrl: './create-role.component.html' +}) +export class CreateRoleComponent extends AppComponentBase implements OnInit { + @ViewChild('createRoleModal') modal: ModalDirective; + @ViewChild('modalContent') modalContent: ElementRef; + + active: boolean = false; + saving: boolean = false; + + permissions: ListResultDtoOfPermissionDto = null; + role: CreateRoleDto = null; + + @Output() modalSave: EventEmitter = new EventEmitter(); + constructor( + injector: Injector, + private _roleService: RoleServiceProxy + ) { + super(injector); + } + + ngOnInit(): void { + this._roleService.getAllPermissions() + .subscribe((permissions: ListResultDtoOfPermissionDto) => { + this.permissions = permissions; + }); + } + + show(): void { + this.active = true; + this.role = new CreateRoleDto(); + this.role.init({ isStatic: false }); + + this.modal.show(); + } + + onShown(): void { + $.AdminBSB.input.activate($(this.modalContent.nativeElement)); + } + + save(): void { + var permissions = []; + $(this.modalContent.nativeElement).find("[name=permission]").each( + (index: number, elem: Element) => { + if ($(elem).is(":checked")) { + permissions.push(elem.getAttribute("value").valueOf()); + } + } + ); + + this.role.permissions = permissions; + + this.saving = true; + this._roleService.create(this.role) + .pipe(finalize(() => { this.saving = false; })) + .subscribe(() => { + this.notify.info(this.l('SavedSuccessfully')); + this.close(); + this.modalSave.emit(null); + }); + } + + close(): void { + this.active = false; + this.modal.hide(); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/roles/edit-role/edit-role.component.html b/SystemKonkursow/4.2.1/angular/src/app/roles/edit-role/edit-role.component.html new file mode 100644 index 0000000..f38a9b6 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/roles/edit-role/edit-role.component.html @@ -0,0 +1,77 @@ + diff --git a/SystemKonkursow/4.2.1/angular/src/app/roles/edit-role/edit-role.component.ts b/SystemKonkursow/4.2.1/angular/src/app/roles/edit-role/edit-role.component.ts new file mode 100644 index 0000000..5b61ce2 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/roles/edit-role/edit-role.component.ts @@ -0,0 +1,88 @@ +import { Component, ViewChild, Injector, Output, EventEmitter, ElementRef } from '@angular/core'; +import { ModalDirective } from 'ngx-bootstrap'; +import { RoleServiceProxy, GetRoleForEditOutput, RoleDto } from '@shared/service-proxies/service-proxies'; +import { AppComponentBase } from '@shared/app-component-base'; +import { finalize } from 'rxjs/operators'; + +@Component({ + selector: 'edit-role-modal', + templateUrl: './edit-role.component.html' +}) +export class EditRoleComponent extends AppComponentBase { + @ViewChild('editRoleModal') modal: ModalDirective; + @ViewChild('modalContent') modalContent: ElementRef; + + active: boolean = false; + saving: boolean = false; + + model: GetRoleForEditOutput = null; + + @Output() modalSave: EventEmitter = new EventEmitter(); + constructor( + injector: Injector, + private _roleService: RoleServiceProxy + ) { + super(injector); + } + + show(id: number): void { + this._roleService.getRoleForEdit(id) + .pipe(finalize(() => { + this.active = true; + this.modal.show(); + })) + .subscribe((result: GetRoleForEditOutput) => { + this.model = result; + }); + } + + onShown(): void { + $.AdminBSB.input.activate($(this.modalContent.nativeElement)); + } + + checkPermission(permissionName: string): string { + if (this.model.grantedPermissionNames.indexOf(permissionName) != -1) { + return "checked"; + } + else { + return ""; + } + } + + save(): void { + const role = this.model.role; + + var permissions = []; + $(this.modalContent.nativeElement).find("[name=permission]").each( + function (index: number, elem: Element) { + if ($(elem).is(":checked") == true) { + permissions.push(elem.getAttribute("value").valueOf()); + } + } + ) + + this.saving = true; + var input = new RoleDto(); + + input.name = role.name; + input.displayName = role.displayName; + input.description = role.description; + input.id = role.id; + input.isStatic = role.isStatic; + input.permissions = permissions; + + + this._roleService.update(input) + .pipe(finalize(() => { this.saving = false; })) + .subscribe(() => { + this.notify.info(this.l('SavedSuccessfully')); + this.close(); + this.modalSave.emit(null); + }); + } + + close(): void { + this.active = false; + this.modal.hide(); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/roles/roles.component.html b/SystemKonkursow/4.2.1/angular/src/app/roles/roles.component.html new file mode 100644 index 0000000..2f7de96 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/roles/roles.component.html @@ -0,0 +1,59 @@ +
+
+
+
+

+ {{l('Roles')}} +

+ +
+
+ + + + + + + + + + + + + + + + +
{{l('RoleName')}}{{l('DisplayName')}}{{l('Actions')}}
{{role.name}}{{role.displayName}}
+ +
+ +
+ +
+
+
+
+ + + \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/roles/roles.component.ts b/SystemKonkursow/4.2.1/angular/src/app/roles/roles.component.ts new file mode 100644 index 0000000..82311ac --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/roles/roles.component.ts @@ -0,0 +1,62 @@ +import { Component, Injector, ViewChild } from '@angular/core'; +import { PagedListingComponentBase, PagedRequestDto } from 'shared/paged-listing-component-base'; +import { RoleServiceProxy, RoleDto, PagedResultDtoOfRoleDto } from 'shared/service-proxies/service-proxies'; +import { appModuleAnimation } from '@shared/animations/routerTransition'; +import { CreateRoleComponent } from 'app/roles/create-role/create-role.component'; +import { EditRoleComponent } from 'app/roles/edit-role/edit-role.component'; +import { finalize } from 'rxjs/operators'; + +@Component({ + templateUrl: './roles.component.html', + animations: [appModuleAnimation()] +}) +export class RolesComponent extends PagedListingComponentBase { + + @ViewChild('createRoleModal') createRoleModal: CreateRoleComponent; + @ViewChild('editRoleModal') editRoleModal: EditRoleComponent; + + roles: RoleDto[] = []; + + constructor( + private injector:Injector, + private rolesService: RoleServiceProxy + ) { + super(injector); + } + + list(request: PagedRequestDto, pageNumber: number, finishedCallback: Function): void { + this.rolesService.getAll(request.skipCount, request.maxResultCount) + .pipe(finalize(() => { finishedCallback() })) + .subscribe((result: PagedResultDtoOfRoleDto)=>{ + this.roles = result.items; + this.showPaging(result, pageNumber); + }); + } + + delete(role: RoleDto): void { + abp.message.confirm( + "Remove Users from Role and delete Role '"+ role.displayName +"'?", + "Permanently delete this Role", + (result:boolean) =>{ + if(result) + { + this.rolesService.delete(role.id) + .pipe(finalize(() => { + abp.notify.info("Deleted Role: " + role.displayName); + this.refresh(); + })) + .subscribe(() => { }); + } + } + ); + } + + // Show Modals + createRole(): void { + this.createRoleModal.show(); + } + + editRole(role:RoleDto): void { + this.editRoleModal.show(role.id); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/tenants/create-tenant/create-tenant.component.html b/SystemKonkursow/4.2.1/angular/src/app/tenants/create-tenant/create-tenant.component.html new file mode 100644 index 0000000..d51c731 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/tenants/create-tenant/create-tenant.component.html @@ -0,0 +1,60 @@ + diff --git a/SystemKonkursow/4.2.1/angular/src/app/tenants/create-tenant/create-tenant.component.ts b/SystemKonkursow/4.2.1/angular/src/app/tenants/create-tenant/create-tenant.component.ts new file mode 100644 index 0000000..a8906e5 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/tenants/create-tenant/create-tenant.component.ts @@ -0,0 +1,55 @@ +import { Component, ViewChild, Injector, Output, EventEmitter, ElementRef } from '@angular/core'; +import { ModalDirective } from 'ngx-bootstrap'; +import { TenantServiceProxy, CreateTenantDto } from '@shared/service-proxies/service-proxies'; +import { AppComponentBase } from '@shared/app-component-base'; +import { finalize } from 'rxjs/operators'; + +@Component({ + selector: 'create-tenant-modal', + templateUrl: './create-tenant.component.html' +}) +export class CreateTenantComponent extends AppComponentBase { + + @ViewChild('createTenantModal') modal: ModalDirective; + @ViewChild('modalContent') modalContent: ElementRef; + + @Output() modalSave: EventEmitter = new EventEmitter(); + + active: boolean = false; + saving: boolean = false; + tenant: CreateTenantDto = null; + + constructor( + injector: Injector, + private _tenantService: TenantServiceProxy + ) { + super(injector); + } + + show(): void { + this.active = true; + this.modal.show(); + this.tenant = new CreateTenantDto(); + this.tenant.init({isActive:true}); + } + + onShown(): void { + $.AdminBSB.input.activate($(this.modalContent.nativeElement)); + } + + save(): void { + this.saving = true; + this._tenantService.create(this.tenant) + .pipe(finalize(() => { this.saving = false; })) + .subscribe(() => { + this.notify.info(this.l('SavedSuccessfully')); + this.close(); + this.modalSave.emit(null); + }); + } + + close(): void { + this.active = false; + this.modal.hide(); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/tenants/edit-tenant/edit-tenant.component.html b/SystemKonkursow/4.2.1/angular/src/app/tenants/edit-tenant/edit-tenant.component.html new file mode 100644 index 0000000..2d16eea --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/tenants/edit-tenant/edit-tenant.component.html @@ -0,0 +1,47 @@ + \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/tenants/edit-tenant/edit-tenant.component.ts b/SystemKonkursow/4.2.1/angular/src/app/tenants/edit-tenant/edit-tenant.component.ts new file mode 100644 index 0000000..cbc5359 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/tenants/edit-tenant/edit-tenant.component.ts @@ -0,0 +1,59 @@ +import { Component, ViewChild, Injector, Output, EventEmitter, ElementRef} from '@angular/core'; +import { ModalDirective } from 'ngx-bootstrap'; +import { TenantServiceProxy, TenantDto } from '@shared/service-proxies/service-proxies'; +import { AppComponentBase } from '@shared/app-component-base'; +import { finalize } from 'rxjs/operators'; + +@Component({ + selector: 'edit-tenant-modal', + templateUrl: './edit-tenant.component.html' +}) +export class EditTenantComponent extends AppComponentBase{ + + @ViewChild('editTenantModal') modal: ModalDirective; + @ViewChild('modalContent') modalContent: ElementRef; + + @Output() modalSave: EventEmitter = new EventEmitter(); + + active: boolean = false; + saving: boolean = false; + tenant: TenantDto = null; + + constructor( + injector: Injector, + private _tenantService: TenantServiceProxy + ) { + super(injector); + } + + show(id:number): void { + this._tenantService.get(id) + .pipe(finalize(() => { + this.active = true; + this.modal.show(); + })) + .subscribe((result: TenantDto)=>{ + this.tenant = result; + }); + } + + onShown(): void { + $.AdminBSB.input.activate($(this.modalContent.nativeElement)); + } + + save(): void { + this.saving = true; + this._tenantService.update(this.tenant) + .pipe(finalize(() => { this.saving = false; })) + .subscribe(() => { + this.notify.info(this.l('SavedSuccessfully')); + this.close(); + this.modalSave.emit(null); + }); + } + + close(): void { + this.active = false; + this.modal.hide(); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/tenants/tenants.component.html b/SystemKonkursow/4.2.1/angular/src/app/tenants/tenants.component.html new file mode 100644 index 0000000..0b4ac75 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/tenants/tenants.component.html @@ -0,0 +1,66 @@ +
+
+
+
+

+ {{l("Tenants")}} +

+ +
+
+ + + + + + + + + + + + + + + + + + +
{{l("TenancyName")}}{{l("Name")}} +
{{l('IsActive')}}
+
{{l('Actions')}}
{{tenant.tenancyName}}{{tenant.name}} + check_box + indeterminate_check_box +
+ +
+ +
+ +
+
+
+
+ + + diff --git a/SystemKonkursow/4.2.1/angular/src/app/tenants/tenants.component.ts b/SystemKonkursow/4.2.1/angular/src/app/tenants/tenants.component.ts new file mode 100644 index 0000000..ffb0312 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/tenants/tenants.component.ts @@ -0,0 +1,61 @@ +import { Component, Injector, ViewChild } from '@angular/core'; +import { appModuleAnimation } from '@shared/animations/routerTransition'; +import { TenantServiceProxy, TenantDto, PagedResultDtoOfTenantDto } from '@shared/service-proxies/service-proxies'; + +import { PagedListingComponentBase, PagedRequestDto } from 'shared/paged-listing-component-base'; +import { EditTenantComponent } from 'app/tenants/edit-tenant/edit-tenant.component'; +import { CreateTenantComponent } from 'app/tenants/create-tenant/create-tenant.component'; +import { finalize } from 'rxjs/operators'; + +@Component({ + templateUrl: './tenants.component.html', + animations: [appModuleAnimation()] +}) +export class TenantsComponent extends PagedListingComponentBase { + + @ViewChild('createTenantModal') createTenantModal: CreateTenantComponent; + @ViewChild('editTenantModal') editTenantModal: EditTenantComponent; + + tenants: TenantDto[] = []; + + constructor( + injector: Injector, + private _tenantService: TenantServiceProxy + ) { + super(injector); + } + + list(request:PagedRequestDto, pageNumber:number, finishedCallback: Function): void { + this._tenantService.getAll(request.skipCount, request.maxResultCount) + .pipe(finalize(() => { finishedCallback() })) + .subscribe((result:PagedResultDtoOfTenantDto)=>{ + this.tenants = result.items; + this.showPaging(result, pageNumber); + }); + } + + delete(tenant: TenantDto): void { + abp.message.confirm( + "Delete tenant '"+ tenant.name +"'?", + (result:boolean) => { + if(result) { + this._tenantService.delete(tenant.id) + .pipe(finalize(() => { + abp.notify.info("Deleted tenant: " + tenant.name); + this.refresh(); + })) + .subscribe(() => { }); + } + } + ); + } + + // Show modals + createTenant(): void { + this.createTenantModal.show(); + } + + editTenant(tenant:TenantDto): void{ + this.editTenantModal.show(tenant.id); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/users/create-user/create-user.component.html b/SystemKonkursow/4.2.1/angular/src/app/users/create-user/create-user.component.html new file mode 100644 index 0000000..73cd56d --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/users/create-user/create-user.component.html @@ -0,0 +1,126 @@ + diff --git a/SystemKonkursow/4.2.1/angular/src/app/users/create-user/create-user.component.ts b/SystemKonkursow/4.2.1/angular/src/app/users/create-user/create-user.component.ts new file mode 100644 index 0000000..6f165c6 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/users/create-user/create-user.component.ts @@ -0,0 +1,72 @@ +import { Component, ViewChild, Injector, Output, EventEmitter, ElementRef, OnInit } from '@angular/core'; +import { ModalDirective } from 'ngx-bootstrap'; +import { UserServiceProxy, CreateUserDto, RoleDto } from '@shared/service-proxies/service-proxies'; +import { AppComponentBase } from '@shared/app-component-base'; +import { finalize } from 'rxjs/operators'; + +@Component({ + selector: 'create-user-modal', + templateUrl: './create-user.component.html' +}) +export class CreateUserComponent extends AppComponentBase implements OnInit { + + @ViewChild('createUserModal') modal: ModalDirective; + @ViewChild('modalContent') modalContent: ElementRef; + + @Output() modalSave: EventEmitter = new EventEmitter(); + + active: boolean = false; + saving: boolean = false; + user: CreateUserDto = null; + roles: RoleDto[] = null; + + constructor( + injector: Injector, + private _userService: UserServiceProxy, + ) { + super(injector); + } + + ngOnInit(): void { + this._userService.getRoles() + .subscribe((result) => { + this.roles = result.items; + }); + } + + show(): void { + this.active = true; + this.modal.show(); + this.user = new CreateUserDto(); + this.user.init({ isActive: true }); + } + + onShown(): void { + $.AdminBSB.input.activate($(this.modalContent.nativeElement)); + } + + save(): void { + //TODO: Refactor this, don't use jQuery style code + var roles = []; + $(this.modalContent.nativeElement).find("[name=role]").each((ind:number, elem:Element) => { + if($(elem).is(":checked") == true){ + roles.push(elem.getAttribute("value").valueOf()); + } + }); + + this.user.roleNames = roles; + this.saving = true; + this._userService.create(this.user) + .pipe(finalize(() => { this.saving = false; })) + .subscribe(() => { + this.notify.info(this.l('SavedSuccessfully')); + this.close(); + this.modalSave.emit(null); + }); + } + + close(): void { + this.active = false; + this.modal.hide(); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/users/edit-user/edit-user.component.html b/SystemKonkursow/4.2.1/angular/src/app/users/edit-user/edit-user.component.html new file mode 100644 index 0000000..0c21acf --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/users/edit-user/edit-user.component.html @@ -0,0 +1,102 @@ + diff --git a/SystemKonkursow/4.2.1/angular/src/app/users/edit-user/edit-user.component.ts b/SystemKonkursow/4.2.1/angular/src/app/users/edit-user/edit-user.component.ts new file mode 100644 index 0000000..c1526c8 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/users/edit-user/edit-user.component.ts @@ -0,0 +1,84 @@ +import { Component, ViewChild, Injector, Output, EventEmitter, ElementRef } from '@angular/core'; +import { ModalDirective } from 'ngx-bootstrap'; +import { UserServiceProxy, UserDto, RoleDto } from '@shared/service-proxies/service-proxies'; +import { AppComponentBase } from '@shared/app-component-base'; +import { finalize } from 'rxjs/operators'; + +@Component({ + selector: 'edit-user-modal', + templateUrl: './edit-user.component.html' +}) +export class EditUserComponent extends AppComponentBase { + + @ViewChild('editUserModal') modal: ModalDirective; + @ViewChild('modalContent') modalContent: ElementRef; + + @Output() modalSave: EventEmitter = new EventEmitter(); + + active: boolean = false; + saving: boolean = false; + + user: UserDto = null; + roles: RoleDto[] = null; + + constructor( + injector: Injector, + private _userService: UserServiceProxy + ) { + super(injector); + } + + userInRole(role: RoleDto, user: UserDto): string { + if (user.roleNames.indexOf(role.normalizedName) !== -1) { + return "checked"; + } + else { + return ""; + } + } + + show(id: number): void { + this._userService.getRoles() + .subscribe((result) => { + this.roles = result.items; + }); + + this._userService.get(id) + .subscribe( + (result) => { + this.user = result; + this.active = true; + this.modal.show(); + } + ); + } + + onShown(): void { + $.AdminBSB.input.activate($(this.modalContent.nativeElement)); + } + + save(): void { + var roles = []; + $(this.modalContent.nativeElement).find("[name=role]").each(function (ind: number, elem: Element) { + if ($(elem).is(":checked")) { + roles.push(elem.getAttribute("value").valueOf()); + } + }); + + this.user.roleNames = roles; + + this.saving = true; + this._userService.update(this.user) + .pipe(finalize(() => { this.saving = false; })) + .subscribe(() => { + this.notify.info(this.l('SavedSuccessfully')); + this.close(); + this.modalSave.emit(null); + }); + } + + close(): void { + this.active = false; + this.modal.hide(); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/app/users/users.component.html b/SystemKonkursow/4.2.1/angular/src/app/users/users.component.html new file mode 100644 index 0000000..d222b7c --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/users/users.component.html @@ -0,0 +1,70 @@ +
+
+
+
+

+ {{l('Users')}} +

+ +
+
+ + + + + + + + + + + + + + + + + + + + + +
{{l('UserName')}}{{l('FullName')}}{{l('EmailAddress')}} +
{{l('IsActive')}}
+
{{l('Actions')}}
{{user.userName}}{{user.fullName}}{{user.emailAddress}} + check_box + indeterminate_check_box +
+ + +
+ +
+ +
+
+
+
+ + + \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/app/users/users.component.ts b/SystemKonkursow/4.2.1/angular/src/app/users/users.component.ts new file mode 100644 index 0000000..4cbc440 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/app/users/users.component.ts @@ -0,0 +1,62 @@ +import { Component, Injector, ViewChild } from '@angular/core'; +import { appModuleAnimation } from '@shared/animations/routerTransition'; +import { UserServiceProxy, UserDto, PagedResultDtoOfUserDto } from '@shared/service-proxies/service-proxies'; +import { PagedListingComponentBase, PagedRequestDto } from 'shared/paged-listing-component-base'; +import { CreateUserComponent } from 'app/users/create-user/create-user.component'; +import { EditUserComponent } from 'app/users/edit-user/edit-user.component'; +import { finalize } from 'rxjs/operators'; + +@Component({ + templateUrl: './users.component.html', + animations: [appModuleAnimation()] +}) +export class UsersComponent extends PagedListingComponentBase { + + @ViewChild('createUserModal') createUserModal: CreateUserComponent; + @ViewChild('editUserModal') editUserModal: EditUserComponent; + + active: boolean = false; + users: UserDto[] = []; + + constructor( + injector: Injector, + private _userService: UserServiceProxy + ) { + super(injector); + } + + protected list(request: PagedRequestDto, pageNumber: number, finishedCallback: Function): void { + this._userService.getAll(request.skipCount, request.maxResultCount) + .pipe(finalize(() => { + finishedCallback() + })) + .subscribe((result: PagedResultDtoOfUserDto) => { + this.users = result.items; + this.showPaging(result, pageNumber); + }); + } + + protected delete(user: UserDto): void { + abp.message.confirm( + "Delete user '" + user.fullName + "'?", + (result: boolean) => { + if (result) { + this._userService.delete(user.id) + .subscribe(() => { + abp.notify.info("Deleted User: " + user.fullName); + this.refresh(); + }); + } + } + ); + } + + // Show Modals + createUser(): void { + this.createUserModal.show(); + } + + editUser(user: UserDto): void { + this.editUserModal.show(user.id); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/assets/.gitkeep b/SystemKonkursow/4.2.1/angular/src/assets/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/app-logo-small.png b/SystemKonkursow/4.2.1/angular/src/assets/app-logo-small.png new file mode 100644 index 0000000000000000000000000000000000000000..5e21058c9cccd17f633d3c97ca0edbbec196f429 GIT binary patch literal 731 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM3?#3wJbQ|Pfl)cYC&U%VWvKl>itvQMJ^N+S zz)(sk3GxeOU}R!uVP)swEalo5xllPJ^YY^fUA1vjTK!tHn56{Dt~M1I_0%dn@h;2^8f$v z9lJLOS=N2BnE!51by?c97w1#g>{&Eb{#F0s_H)&FDJ#1^Kk2u5xw(?FGq~PV!))*0 z6)hLsHcN{#L=+bB9kTi}>B-6P*8H%EioITwC?@LJGL&J_-AM z*0xJC=RNQ7sSalqf>sEBZL!(cUYKztWcrRDVlRKQE9JgzF263!lb&oDov`ZHPF=Oh z^Kw7!6L^-9vz0MD-QjO+{5{#Xi#F!9zL@`-JM6Q2lGl%uMxa#c>FVdQ&MBb@0DM$W A<^TWy literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/appconfig.json b/SystemKonkursow/4.2.1/angular/src/assets/appconfig.json new file mode 100644 index 0000000..a649b69 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/assets/appconfig.json @@ -0,0 +1,18 @@ +{ + "remoteServiceBaseUrl": "http://localhost:21021", + "appBaseUrl": "http://localhost:4200", + "localeMappings": [ + { + "from": "pt-BR", + "to": "pt" + }, + { + "from": "zh-CN", + "to": "zh" + }, + { + "from": "he-IL", + "to": "he" + } + ] +} diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/-2n2p-_Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/-2n2p-_Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..870072d8bb0d57bdf83b37cafd8a5479bada0180 GIT binary patch literal 1468 zcmV;t1w;CGPew8T0RR9100q1N5&!@I014m#00mzF0RR9100000000000000000000 z0000QCL3@ZECyfzSO`=JgFF!o3WI2aN(&GG5)=V80we<*1Rw>13I`wzf=L^E2*{4a zbbEum6oe`BBY2*F&+pehIf=_FWgvI#c0@k&^Eo$9)Gyuswf5Wliiq4IdV-1EqT-D% z{t#v&QON&(i|dtTq>RQ@tWJD*)v&oeAoq z>)x+JP$U6>N(2i*5EKvq0Rjl%(Vd~_QDfrLkkRtarW$0lx~a4p8Eq(RsY6C+fPdt` z`jt&}NCCVq8U^+aigL8BmX% z3NYu)jxkGURgl`S&XxU4BV6-j}dbb&jIDdCFrPCLIdOLft2f6 z(k4)D8Bif>WUNb)*2h=?5uGQ3o0LBg>Y~C!@_#Zq(a`LQ7cXK#n2-*y3!gPkQ+seF{Z=esdfsUf^C=(7Odw< zS*^Fy;GtlrEC&&DHn(O9kW)Ph=gu`+mKct}uJDCX2&CFlqkg)tA2c4N^ zZl=BQy`^9bt!4@ko_Q!uSN>ot!9+Q0XUM$#K?g?F4MK;|DEJm6C>&I&L<#^KfF$4o zLxD9-4D@eeLIu?Fv^M9_v* zuRmta@lW*Vqgf1m40G($x%;z~$$P7O-k&||UD`i~89isLT!5r@=Gf?6KmP7-Z#Afe zXC&9yI&JB;4=x^RuSa*f8<+K$yS49JI^4Vc&U?I#i*xTkA>ud7AAR7ha`n6Z-**}x ze&p4p`fpH;&dT=Tw-sLuF5u*i`D)+Pv?!m0MUS?kEqV;d#{B1OSXNeMQq9)np|lsoDBz_%5QPdQ6xs7 zG@6q-*S*JKm{2EBqZX~xG@2^}JjXo#toyAH>AF+Byl&+4k^LBo8U&=}YebrZE}4%t zcABpq|L1@Jfop3}mbL)|P_42%S6?}4vHIZOof-!LJoi(kD+1n^8NdBg_y7BDcc&SI zivmEv-cSs{9sf^Vae~_&!F8~W3s}K7%fDbAVV4oI*?ghc69H^4rjl7m5de~)P_3~h z?B^jyw2OhSGAoh42)S4~o$(@vB7CEF)Pf-Ld68)@F%4wyBLYl~+lqQ;~ zq@FrxdeW61^r9bw5W64lxAiC%%N4W)`UZUHrr7;+97}1SkYXw*g<~^Kl*6-uN{T6^ zj%G?}hG!Ddgc42ysf5E`{YTv~0HCyv63m%V;26<~STvNQ9A+fB!&zpaleMu1ays## zL=EDwPPy(uC5-d36U;~%>1M6Rblzk?M?+?Mbha>5XIA6F2p3~!FYaF8W67Mp)k)q) z%uO5ZVWY#mwk5G1ragan#grv1_=?XhAIuUuX%$6_CH;EZnrO0AP;YxvomzTY@PiHz zXMK66h~IVX;jmh&IbIyoVdy5b#8YWAT}<~-37Uk~co;3F!{wBjY?CSd2u(suyqGSg WH>m`}gw}X-t6NAl7nP7|1^@so$)`vF literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/77FXFjRbGzN4aCrSFhlh3hJtnKITppOI_IvcXXDNrsc.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/77FXFjRbGzN4aCrSFhlh3hJtnKITppOI_IvcXXDNrsc.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e1202e23f4cc741b686f2ec47b31bc0bd4431b16 GIT binary patch literal 14876 zcmV+%I^)H6Pew8T0RR9106H815&!@I0EyH906Dn;0RR9100000000000000000000 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 OOvI6?D#^l75+(s>5Z>JY literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/97uahxiqZRoncBaCEI3aWxJtnKITppOI_IvcXXDNrsc.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/97uahxiqZRoncBaCEI3aWxJtnKITppOI_IvcXXDNrsc.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..ee2737ad70ba8d712e0ff8f6d8a7033b5bbf881e GIT binary patch literal 11728 zcmV;>Eick{Pew8T0RR9104>k}5&!@I0C30v04;0)0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/CWB0XYA8bzo0kSThX0UTuA.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/CWB0XYA8bzo0kSThX0UTuA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e44dd20d0f93c2c4abc818f918e9b2aea842c710 GIT binary patch literal 14600 zcmV+jIrqkQPew8T0RR91067Q%5&!@I0EBb^063%o0RR9100000000000000000000 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 yOe2RZ2!+f5|0B|6 literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/Fcx7Wwv8OzT71A3E1XOAjvesZW2xOQ-xsNqO47m55DA.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/Fcx7Wwv8OzT71A3E1XOAjvesZW2xOQ-xsNqO47m55DA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..719f8102afe81f4e2a3db0dd1000c7db4814f88d GIT binary patch literal 11788 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 literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/NdF9MtnOpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/NdF9MtnOpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..8857742844aab5f0250ecc136cc874ccc4443ca9 GIT binary patch literal 5208 zcmV-e6sPNVPew8T0RR9102EjN5&!@I05V(v02BBC0RR9100000000000000000000 z0000QC>w=L94rQ40D&k7R0)GT5ey2*Ou{h>f(if35Ck9vf(i#941!4; z0WBi~!NvgukiKxTzdEpk;o}XF00P3gPDI3ohYx+iYDLtkDAgyfq#o>e6Xy*$jv)eE z8X?InJP^+L?~=PqTXdpD3d~esVr3@An5gG>3KRQk%tXi#ZtKPd{W`0Mk$_oPndnDi zRo{2@;hN@JzAG9xp(fNSTwsj0bSCNCr$WuBscEK%5$f^acl+0^mq6f&N9iGl6mY}? z-ZoW}UYYpZj@tpFz4r6N=c?mtN}^8e{9 z+y7@Id%WZuIXNWnbGYbCLF&?_X{0g8(pgzAke0Lv=iLxkJ|M1=D^umA+6@49;i4rd zx>QtlX*;N+s!ncFzyZ*^&8D8LjIkWfj9_7e5i?2KU#B842xang*&!jwOBuq{0>LUE z;EVB43_Gw|b-aUteAiWl*+9N$VM-Q|@0U=N3*^B7J|qw5+r2Os&_L@(VvGz|XIvCN z0inhBc<`_(&Bz?*F7?h6MbaGSozrHC<+4AW7tW?lNhZHCpDFc$M@z_&YkMbUUD`$N1Uh51~NjzA}>Jz3F?wu!X)F7&27lzwiHaZW1Ui}N_^jF zBouC}^M=D)F3}cvYyuMsCn?=>saVW$VQ&U6s87D#jswDo+7R_R>aF(koZMe? zZk4??`^H5C8y*a0jhHHhmVwF0>x}gGHY3+#3UK?0Ydd9G=NQ^ zhLG;xW+Q^kYkL&=Kiw`@`p%8|J8_}l_z0H_XNbfXh6cwLx-nd6a(u23)uQCp?<=J?q9_4rxiSby{9?muZ57t}-6JBbxKP@lSgy7$>WR#k zX{N@N{uZ_sr{VObX0z~sa42;4!fLf>BAZRPzyr-za3I6ZRIbwew61kshAdOCa$1+O zuGE>9D#Pa<+P<}#qsE4lRKG$}T-#-o(?{GPz%YXEKvbi)t`#;jW`wn=fNE5AE<&N4 z)|m_4oQ6T+F3t*Un#hG7j-9VIK@jHu(t2C@!7 zl>-=GA^bS1Ker0RF?rRu1%WLIh+_ObI|HADh)*i-)VfcDLTg)gt8uQ2Zr$r@J*7#r zm>12|6qE|9TR7^D+jH68l8{#f;5`zp_?vUt5&35%~o2tu<ijYS1qVroC) zpoWIYZ`~!Pc_ec4`DdsL2~cl3O~rd|rn5`|sUOASrJ)Waqz!!Mi1i)8S@5j1K( z+Fd6B7JGvdVT{gu`Y}*!jhA9@9`6j?3hgeieHNXWa$S9YqKnb^G$Gn${JIF;917Ls zdg}aHQpmJmS#2}JMlA2NMAJA*<2xyxT!6DvJLEI8%#pF6+U#YPTDFH9u$t2p+ybii zCLjw#tTAie-G9mh7&s)meVASt7ukHh*BJ3nt)K7DMic2c3yCoYSGqW^OZA!`V}G!B zsHWLJ1aiFiup_<-X=J3lwstL0_Ts_I|Br0G;sDA%9oejP=Gy!!)|5R@pI&4k&i4Ly zVRg^0Jxh$~`TVq#0{tuVvBMWK8(;f=`8O&h^>nE5wPJ$_c#l6&SHfamcm;Cn=E=+J z_AZW$%`XhzuH5a)*vprrySAvDj&3I0DPCTdpNb3>1FQ=Mgub1X-jekjQy*eV+?cT!ppIQ%1SR1SH z^GT6YCvzv8q@da55)7z1cKm6{k4N>6<>zPE{%b$BSTSGSb+Jbyi94BmpJF$T`FeHU zUn(6Dm_fAp4m*e&F0Y%SKZOr6rb*vZ;Cvg*834Kf|$ zW>D^>aS6MuQX`v|mixu#=u=Beb9huN(XA#;gVRLQ8x(%67WBb0%-4 zgdf^*b54@{?I$#tfLDij5@)pyU9$f^6EuY%-*4C_RiX)R>=#B8*G}hcKOP|lp6vQQ1s`LlDEat_HI!B}cgECg zz@jEqgw?n9aM;EaL}u3Fuey`-X6o6yRs1myW;w3fN-;{_;`VU~eBCuJnkqJmRr&ZT z<8H3pe6&X*XTpx%P%yQ8xUgfZX?#sg``(pri+1a25OxXBqSu0Ec1w! ztI16(jxRk&`c?EMyk%K~Va#AU=sQvN%r$z<@xcB1tSJJ$1TZgnTFJsNijc zQ*6}7VNt|9uJQHyISR&bTvVPD(~laA<%ICgiS7T)hA*mPQ`(*2X+iSRHxAc4L*zEBYgs7Fkk$ z0FNc2W$Vo;W$zS$kiw2K!eNz{X5l)n@wUT8K_896YL2hX&tMF#!edTM2Wl{uHlZ~q zw&OD+?zvZ7iR*ANB|UE!jyn4!NS$asrL;tt$v#MuJ*FojW?)&QnFZYv)wmA~i`x3A ztc=qEi8@c=!d=E`gG}X5MKK8{U1TbMDXL01=^<13D-kK-q^CsHo>Nx>NDrABcrD6N zSqYbV(E%#8ER(n^id)jSX^Q!VL88eGgE$|IP%KeB7$MsUU*+YoC_SR__QggC$tYcx z=6%iwi-!Ci$YM0WqEYjgqK+j7yn=8`hA+P&YFM(+k>sTLhC!nC4TJbU7@<(nA{ZfC zov*9B+!A$$HQwGIMk)3+&PPZAuL7A)cT3{)l%msBrqk`RIC$zy%iAZY_*`!c2G%UA z!)3~1#Blp59@abE03e)=?*{< zS~sX9kr~xRcBb!Rz z>txn()>*2{1C_0#!>PKFx>12M&iAw?;I^K&wbX|IuL{UcP?uTd=4n9pz*@_2+ftRh zRW6s5n0mu%6Vv9bR?d}>Ek|yP3R6#|W952~ z#AE6rOJ7x^NvOh+3kaiUmAe%rYq~ORY1LNcT~@i0RNsJlgTMZedo(aBfk3@p{|T)P z)(2Em`?9esu(x6GwqU-ze?A~%Z0r=t)u%d9C>e@V*o8I_0yGYQ6DONj>`|Pr7rl-k zZKEVocO#FeiRLKd7XUV9VB_P*;l;(<1L_WWcvLZk4V_M;QoKwf{i7j?`6K8sOj#>l zWIY7q7NeuHAQG>#*lbVv1ft5Y*MCxE>C|ZNuq#xk_QEMg2p&MQWmDWk8OSn0VG2u8 z*e3%`GDHEa&urGR0|>l>w_WBoj>AK7+1y{1TknQ&swLd)zNxNUTZF9Lf+M_%&ny!;8+5=2+ftr+R7F?a$ZK}Ct$bSKfGcje*$MC4Y%#RB45 zx3a}rAYM`ZWYo6%TmQ|Cz=05081+a&HQJrmZWJ8}v<%3j@}C7xa2>9(R<9~yzk(na zlv|WS6#5D>a>w1!e`HrlBgVbP+Wn9SF&2}3cymWLhfxLu4`A{nR5fa{;Y(_Fwxws= zu{THLlxtl1U}n)69Yys&c4mtMI2-)An<0lEt?{o~_fRLl0)Bubo0KI_ljk#krbG5uaMCm_)<$d>7-0C= zxg)oY2{YE*8)v-nn}Nm(7zos7HnrZg7*n7+RBPtsa7$6lq8mH{?-nUkW76iJg|XLm z*qmkm2ijw>=(gZ28*&X&f3t%CsD&oG_Hn7U>3wPo7vhL8KtRJhMFR-VaF3QcTi%x` zQ9v1LC#P&mVv1yzBN8~PISL#U8=E$~dlOs=lLSF2Grm3uoDeWd2 z=ekWXv|Xy*hNs=abyQXi` zzfsx)P@DvW0}dO58WJQ}kyUPF+k21P$dCM^fg|KiUGhXF$>%iMh^-nXn4BtXXlc^W z4gFBH=-j54+KKuxe9jE>@TGeuoaHP0lUEb}KNtR$oACZo&5=0`#rzJI*#Ifr_*AHal(gfc!fAtTlv6ZFIoGB&+cr& z#F|0kw_+H_K928k-0rkDTG0|>B<~YyqQe3rLH`1JlB>xw?2LvQU4ECf270R#rW3|7 z#c>m(;4zNt7;8MoxZ4Y9-@;DF3EzXnAgKs0e~XU5FW8C_jj&jf$8i~2`@T#VFyHlTeBZ@KLG*(e~<_SXc-K&B?{de ztuBB7X1OU646O{Ul{A%-hJvGY_P^%=Qn0&QHTt+|j zgD3rAmEO5>xB$TSFEbPY0MbN@x1Z;4Y3^b!0RT4!00OLj>A~Qxf5Fll903Hpz%;X- zZoY=%3#f7^%6fJhT(&DABlcp{%X5U8YmmlhEM+7)F%^GQCT6^1u56}#^rqT8Nmiqj zvEwtV)p}B55$*Q{B+JjtGLNv+%%sFT##rE6C&0IIW+(H_@$Jm-88F{CzcQ5G^KE9V zhcO6yoT)s7E8$vDr}cF>@8l@xq@{F+=|=EFfN9KMEFc*9=^zvgj9gI0uV&E>ijZyu!LV3m z5K8c-rfE|Ns}y;VU!{qFKT|02q6Ny6SV577nNy@GmMuY{P(4^kAmi}mauFE8!w_T4 zu?95Q+&t};xML&zK-Gi!tk5s$3WFDo{AeUyTrvfZJcZI`&Xyrbid+IIczJ!id2r&w zR}dFm*WCu7tZvWgL$VjOgY|3*vPs~Ep4gN@G;d;ih6)B63OJw@WV>*$$YV>6la3hS z^(?dpA!cAr6AkGQ8Qa)KPcB566;hQG4bcT1U5yk%td@}-tkgnW>wEfJ%7?gvYny3G zhIp1IdYLKp1eJAbk|ZSfW*{l4Qb>qoIE$`BLTyTDDT;-J@k{9_Nw$VJb71rUHf0Q= z7PR@-T>d8eoQNP0cOV-;UnvUskv!5wmdJllQHlfhB#vxo7F8DC1d#WjqQZ;=(nQXa S|6s4e%mYW?hX@AShX?@IDg7t_ literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/PwZc-YbIL414wB9rB1IAPRJtnKITppOI_IvcXXDNrsc.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/PwZc-YbIL414wB9rB1IAPRJtnKITppOI_IvcXXDNrsc.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..95629d218ef3f932b3d5249504cdf886504f4444 GIT binary patch literal 5124 zcmV+f6#MIUPew8T0RR9102BlO5&!@I05Pxt028AC0RR9100000000000000000000 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 meifX%tiulgibdu-1016bB#-f+-t62vJmU zg2_G-W9QLhsvrr)8sj#2pm($0OeS%vMz&q0)K6J4w;ZSbXX@bFPt^e|Fn7w(k7))E z)_3NTGDlGXDI6Q&XXZjyLVEmuv)&yZAvD#{K7>qYl=9w3ePWidP!{57ZKR1>_t4`M z%S#U$toME#0!a!0kb}TLAP`8v13UyE0EcQ?pxSll){la*i|0(EVB(zdQz@7>dfp5Q zPyqi()70^EW?+Fgib4u&3rQAAT|lW?Kt^1dGi3OxKpPVwP6TM`qI?7$^dov5h;UY? zz03p&L=v!-kgAS7dv?SRcNh0GNWcX1h{Q*n1W++Oz{f`e%om{{C_36^D11~P#=_l` zNzwkJ2N3{xz|uJYro+*HfkA|?IY)vXj1o0m<5^x~85KZQViZ~OD85z?SH;Lu+ey;{ zvWz^k#RbxhCrB|qL;}=+Qdii$G#28=5|Mm{>Wb4ybfEuA#QnmR0X zikO;3z^@rG#p z40`a4HhvhonZBm|f*;+5pPtsl@J(X4)~nAa_rH0tZNbg^?=8H3v<)wJdh>I;5t=nhTuw z;$BM{YA4fzl=rG@;wtP5Q01(bc1BO`p+dDm;HBM_B?6~>P`$Sbe*-8%VRdy4fm;=r zFNI8l05RmI1v)9{RsFkz06g1NAPr^WeXK0Ya2Gy3VPtBv->rNLfMi=K2H(GNM*hl~bn9~v-*jqeh;?@=jd?!=e#yDPCBtYN504>Z={kcRg0x;Q04n5Ej z0HlCK)?&bV2pU4!=!Gkz#KJRbebaXU>LSiSo8ZHkJaNz5bA<#YWZ`rrqnRbA$1;iW^!a8o zhlx}%jmeBFXRSn`2!Tru#<1ImdDSC(_XsA(L| zNx>?=U$%=y{fr`~b#2t{g~MWHHu{25U2iM4F&c#P(p?*~&25pA3>zy}RhpODZ{HS$ zjWe`sERt{K{`>r?IqjQ>d#+g?@DtX=t5d|>c#sxDFU`F8Dws7qKi)EnCP#u+LX~D- zyeG}1oph6u5ax?T&`4TYNX=Ulp9x+Ui{y`haL>H>NJ=~DMM@@HE>Tq#Bxgcd<+E;& GFXjS#X?lDB literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/d-6IYplOFocCacKzxwXSOFtXRa8TVwTICgirnJhmVJw.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/d-6IYplOFocCacKzxwXSOFtXRa8TVwTICgirnJhmVJw.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..ec60976fead067a4dc4366fa2f9876d517263021 GIT binary patch literal 14680 zcmV-eIj6>VPew8T0RR9106ACy5&!@I0E2J<066pj0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/ek4gzZ-GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/ek4gzZ-GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e7d54f24fe95f4f0f0ec7001692ccc0fdb806a03 GIT binary patch literal 15516 zcmV;NJY&OmPew8T0RR9106d%k5&!@I0FN9106aJV0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/roboto.css b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/roboto.css new file mode 100644 index 0000000..355f489 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/roboto.css @@ -0,0 +1,112 @@ +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + src: local('Roboto'), local('Roboto-Regular'), url(ek4gzZ-GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2) format('woff2'); + unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + src: local('Roboto'), local('Roboto-Regular'), url(mErvLBYg_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'); + unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + src: local('Roboto'), local('Roboto-Regular'), url(-2n2p-_Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + src: local('Roboto'), local('Roboto-Regular'), url(u0TOpm082MNkS5K0Q4rhqvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'); + unicode-range: U+0370-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + src: local('Roboto'), local('Roboto-Regular'), url(NdF9MtnOpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'); + unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + src: local('Roboto'), local('Roboto-Regular'), url(Fcx7Wwv8OzT71A3E1XOAjvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'); + unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + src: local('Roboto'), local('Roboto-Regular'), url(CWB0XYA8bzo0kSThX0UTuA.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + src: local('Roboto Bold'), local('Roboto-Bold'), url(77FXFjRbGzN4aCrSFhlh3hJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'); + unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + src: local('Roboto Bold'), local('Roboto-Bold'), url(isZ-wbCXNKAbnjo6_TwHThJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'); + unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + src: local('Roboto Bold'), local('Roboto-Bold'), url(UX6i4JxQDm3fVTc1CPuwqhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + src: local('Roboto Bold'), local('Roboto-Bold'), url(jSN2CGVDbcVyCnfJfjSdfBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'); + unicode-range: U+0370-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + src: local('Roboto Bold'), local('Roboto-Bold'), url(PwZc-YbIL414wB9rB1IAPRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'); + unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + src: local('Roboto Bold'), local('Roboto-Bold'), url(97uahxiqZRoncBaCEI3aWxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'); + unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + src: local('Roboto Bold'), local('Roboto-Bold'), url(d-6IYplOFocCacKzxwXSOFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215; +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/u0TOpm082MNkS5K0Q4rhqvesZW2xOQ-xsNqO47m55DA.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/u0TOpm082MNkS5K0Q4rhqvesZW2xOQ-xsNqO47m55DA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e1b700ccc1c7bfc5b1fce9755cb9d18d23cd2852 GIT binary patch literal 7236 zcmV-K9J}LpPew8T0RR91031XB5&!@I06N3~02|~00RR9100000000000000000000 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 SbV3K`Iuv(^Xr}cOO6H54j-}0yg0`l z>=;+DqlvJdd0$MB0*yz>A? zR<(^Ob>pirPG-Y2Q$kDEdzb>f`Jy~`i1O}+q~aq;YrlrL;zMwf?_xmcR$6u*KsOP_ zG~e<*ZQ4dtdC>Krgtqq(3=^p~apP10cjbmpV#Zd zF_nD;V`=*_TW}K6-V{2%o_sslG43#{IF5Odsajr#qWV5kT-K9<`MeX5bS6MOlnF(D zI@W7KuvByghUsD$CJQl|vKI?Qry-+ED~B?`Z;i!J;*a1r$B;2NDR)Cq`j!K)5^4@q z&99Q;`tbs2$MRvADn>)b83_9`=~Xe!6qA{sD?CN|_`Mlu$~+4r1*RR#gMOlb^a~1K zrN-nr_A+Of%V6x|fzmK|dV1pYo{t&*%Vqvps|zDPAOGP4k~3Nv!N^fhD<^)>+*|PHh$fI<=%Epw{XnXhplpp&V zl_$PIZ~Re+du$J~alV?2;Vb|mJ!gzu4X*hbJyQ$=cij2^nbQduvEG&l{bbSAnkTvB zGomG@0}vBS4KY}4iiK(<_lo9~BRM43`Wd}=c^3dkSg@!?V0UCc{wFceRt=*{=okR@+%VE( zg7C@PuffO57ytgZJ3Kx8aQ^(?3}b)(@dtS0Ewp+5L@VjLxNU5lhlhtZ8N=7x51+pC z8ZzTTs2Zc&2cQzO(NL0w!#{k9hwi z1&#j3$VpDkx~^Jx-F6!y&mMt6Ap`-iZj+avd6ERLSD$?LHEnENAVXp|7oIs6%zI`V zk=(-pM<}QB-h1y8yK27q; li > a { + padding: 7px 7px 2px 7px; + margin-top: 17px; + margin-left: 5px; } + +.navbar-nav .dropdown-menu { + margin-top: -40px !important; } + +.label-count { + position: absolute; + top: 2px; + right: 6px; + font-size: 10px; + line-height: 15px; + background-color: #000; + padding: 0 4px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + -ms-border-radius: 3px; + border-radius: 3px; } + +.col-red .navbar .navbar-brand, +.col-red .navbar .navbar-brand:hover, +.col-red .navbar .navbar-brand:active, +.col-red .navbar .navbar-brand:focus { + color: #fff; } + +.col-red .navbar .nav > li > a:hover, +.col-red .navbar .nav > li > a:focus, +.col-red .navbar .nav .open > a, +.col-red .navbar .nav .open > a:hover, +.col-red .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-red .navbar .nav > li > a { + color: #fff; } + +.col-red .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-red .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-pink .navbar .navbar-brand, +.col-pink .navbar .navbar-brand:hover, +.col-pink .navbar .navbar-brand:active, +.col-pink .navbar .navbar-brand:focus { + color: #fff; } + +.col-pink .navbar .nav > li > a:hover, +.col-pink .navbar .nav > li > a:focus, +.col-pink .navbar .nav .open > a, +.col-pink .navbar .nav .open > a:hover, +.col-pink .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-pink .navbar .nav > li > a { + color: #fff; } + +.col-pink .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-pink .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-purple .navbar .navbar-brand, +.col-purple .navbar .navbar-brand:hover, +.col-purple .navbar .navbar-brand:active, +.col-purple .navbar .navbar-brand:focus { + color: #fff; } + +.col-purple .navbar .nav > li > a:hover, +.col-purple .navbar .nav > li > a:focus, +.col-purple .navbar .nav .open > a, +.col-purple .navbar .nav .open > a:hover, +.col-purple .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-purple .navbar .nav > li > a { + color: #fff; } + +.col-purple .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-purple .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-deep-purple .navbar .navbar-brand, +.col-deep-purple .navbar .navbar-brand:hover, +.col-deep-purple .navbar .navbar-brand:active, +.col-deep-purple .navbar .navbar-brand:focus { + color: #fff; } + +.col-deep-purple .navbar .nav > li > a:hover, +.col-deep-purple .navbar .nav > li > a:focus, +.col-deep-purple .navbar .nav .open > a, +.col-deep-purple .navbar .nav .open > a:hover, +.col-deep-purple .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-deep-purple .navbar .nav > li > a { + color: #fff; } + +.col-deep-purple .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-deep-purple .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-indigo .navbar .navbar-brand, +.col-indigo .navbar .navbar-brand:hover, +.col-indigo .navbar .navbar-brand:active, +.col-indigo .navbar .navbar-brand:focus { + color: #fff; } + +.col-indigo .navbar .nav > li > a:hover, +.col-indigo .navbar .nav > li > a:focus, +.col-indigo .navbar .nav .open > a, +.col-indigo .navbar .nav .open > a:hover, +.col-indigo .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-indigo .navbar .nav > li > a { + color: #fff; } + +.col-indigo .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-indigo .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-blue .navbar .navbar-brand, +.col-blue .navbar .navbar-brand:hover, +.col-blue .navbar .navbar-brand:active, +.col-blue .navbar .navbar-brand:focus { + color: #fff; } + +.col-blue .navbar .nav > li > a:hover, +.col-blue .navbar .nav > li > a:focus, +.col-blue .navbar .nav .open > a, +.col-blue .navbar .nav .open > a:hover, +.col-blue .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-blue .navbar .nav > li > a { + color: #fff; } + +.col-blue .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-blue .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-light-blue .navbar .navbar-brand, +.col-light-blue .navbar .navbar-brand:hover, +.col-light-blue .navbar .navbar-brand:active, +.col-light-blue .navbar .navbar-brand:focus { + color: #fff; } + +.col-light-blue .navbar .nav > li > a:hover, +.col-light-blue .navbar .nav > li > a:focus, +.col-light-blue .navbar .nav .open > a, +.col-light-blue .navbar .nav .open > a:hover, +.col-light-blue .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-light-blue .navbar .nav > li > a { + color: #fff; } + +.col-light-blue .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-light-blue .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-cyan .navbar .navbar-brand, +.col-cyan .navbar .navbar-brand:hover, +.col-cyan .navbar .navbar-brand:active, +.col-cyan .navbar .navbar-brand:focus { + color: #fff; } + +.col-cyan .navbar .nav > li > a:hover, +.col-cyan .navbar .nav > li > a:focus, +.col-cyan .navbar .nav .open > a, +.col-cyan .navbar .nav .open > a:hover, +.col-cyan .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-cyan .navbar .nav > li > a { + color: #fff; } + +.col-cyan .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-cyan .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-teal .navbar .navbar-brand, +.col-teal .navbar .navbar-brand:hover, +.col-teal .navbar .navbar-brand:active, +.col-teal .navbar .navbar-brand:focus { + color: #fff; } + +.col-teal .navbar .nav > li > a:hover, +.col-teal .navbar .nav > li > a:focus, +.col-teal .navbar .nav .open > a, +.col-teal .navbar .nav .open > a:hover, +.col-teal .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-teal .navbar .nav > li > a { + color: #fff; } + +.col-teal .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-teal .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-green .navbar .navbar-brand, +.col-green .navbar .navbar-brand:hover, +.col-green .navbar .navbar-brand:active, +.col-green .navbar .navbar-brand:focus { + color: #fff; } + +.col-green .navbar .nav > li > a:hover, +.col-green .navbar .nav > li > a:focus, +.col-green .navbar .nav .open > a, +.col-green .navbar .nav .open > a:hover, +.col-green .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-green .navbar .nav > li > a { + color: #fff; } + +.col-green .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-green .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-light-green .navbar .navbar-brand, +.col-light-green .navbar .navbar-brand:hover, +.col-light-green .navbar .navbar-brand:active, +.col-light-green .navbar .navbar-brand:focus { + color: #fff; } + +.col-light-green .navbar .nav > li > a:hover, +.col-light-green .navbar .nav > li > a:focus, +.col-light-green .navbar .nav .open > a, +.col-light-green .navbar .nav .open > a:hover, +.col-light-green .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-light-green .navbar .nav > li > a { + color: #fff; } + +.col-light-green .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-light-green .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-lime .navbar .navbar-brand, +.col-lime .navbar .navbar-brand:hover, +.col-lime .navbar .navbar-brand:active, +.col-lime .navbar .navbar-brand:focus { + color: #fff; } + +.col-lime .navbar .nav > li > a:hover, +.col-lime .navbar .nav > li > a:focus, +.col-lime .navbar .nav .open > a, +.col-lime .navbar .nav .open > a:hover, +.col-lime .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-lime .navbar .nav > li > a { + color: #fff; } + +.col-lime .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-lime .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-yellow .navbar .navbar-brand, +.col-yellow .navbar .navbar-brand:hover, +.col-yellow .navbar .navbar-brand:active, +.col-yellow .navbar .navbar-brand:focus { + color: #fff; } + +.col-yellow .navbar .nav > li > a:hover, +.col-yellow .navbar .nav > li > a:focus, +.col-yellow .navbar .nav .open > a, +.col-yellow .navbar .nav .open > a:hover, +.col-yellow .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-yellow .navbar .nav > li > a { + color: #fff; } + +.col-yellow .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-yellow .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-amber .navbar .navbar-brand, +.col-amber .navbar .navbar-brand:hover, +.col-amber .navbar .navbar-brand:active, +.col-amber .navbar .navbar-brand:focus { + color: #fff; } + +.col-amber .navbar .nav > li > a:hover, +.col-amber .navbar .nav > li > a:focus, +.col-amber .navbar .nav .open > a, +.col-amber .navbar .nav .open > a:hover, +.col-amber .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-amber .navbar .nav > li > a { + color: #fff; } + +.col-amber .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-amber .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-orange .navbar .navbar-brand, +.col-orange .navbar .navbar-brand:hover, +.col-orange .navbar .navbar-brand:active, +.col-orange .navbar .navbar-brand:focus { + color: #fff; } + +.col-orange .navbar .nav > li > a:hover, +.col-orange .navbar .nav > li > a:focus, +.col-orange .navbar .nav .open > a, +.col-orange .navbar .nav .open > a:hover, +.col-orange .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-orange .navbar .nav > li > a { + color: #fff; } + +.col-orange .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-orange .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-deep-orange .navbar .navbar-brand, +.col-deep-orange .navbar .navbar-brand:hover, +.col-deep-orange .navbar .navbar-brand:active, +.col-deep-orange .navbar .navbar-brand:focus { + color: #fff; } + +.col-deep-orange .navbar .nav > li > a:hover, +.col-deep-orange .navbar .nav > li > a:focus, +.col-deep-orange .navbar .nav .open > a, +.col-deep-orange .navbar .nav .open > a:hover, +.col-deep-orange .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-deep-orange .navbar .nav > li > a { + color: #fff; } + +.col-deep-orange .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-deep-orange .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-brown .navbar .navbar-brand, +.col-brown .navbar .navbar-brand:hover, +.col-brown .navbar .navbar-brand:active, +.col-brown .navbar .navbar-brand:focus { + color: #fff; } + +.col-brown .navbar .nav > li > a:hover, +.col-brown .navbar .nav > li > a:focus, +.col-brown .navbar .nav .open > a, +.col-brown .navbar .nav .open > a:hover, +.col-brown .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-brown .navbar .nav > li > a { + color: #fff; } + +.col-brown .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-brown .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-grey .navbar .navbar-brand, +.col-grey .navbar .navbar-brand:hover, +.col-grey .navbar .navbar-brand:active, +.col-grey .navbar .navbar-brand:focus { + color: #fff; } + +.col-grey .navbar .nav > li > a:hover, +.col-grey .navbar .nav > li > a:focus, +.col-grey .navbar .nav .open > a, +.col-grey .navbar .nav .open > a:hover, +.col-grey .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-grey .navbar .nav > li > a { + color: #fff; } + +.col-grey .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-grey .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-blue-grey .navbar .navbar-brand, +.col-blue-grey .navbar .navbar-brand:hover, +.col-blue-grey .navbar .navbar-brand:active, +.col-blue-grey .navbar .navbar-brand:focus { + color: #fff; } + +.col-blue-grey .navbar .nav > li > a:hover, +.col-blue-grey .navbar .nav > li > a:focus, +.col-blue-grey .navbar .nav .open > a, +.col-blue-grey .navbar .nav .open > a:hover, +.col-blue-grey .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-blue-grey .navbar .nav > li > a { + color: #fff; } + +.col-blue-grey .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-blue-grey .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-black .navbar .navbar-brand, +.col-black .navbar .navbar-brand:hover, +.col-black .navbar .navbar-brand:active, +.col-black .navbar .navbar-brand:focus { + color: #fff; } + +.col-black .navbar .nav > li > a:hover, +.col-black .navbar .nav > li > a:focus, +.col-black .navbar .nav .open > a, +.col-black .navbar .nav .open > a:hover, +.col-black .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-black .navbar .nav > li > a { + color: #fff; } + +.col-black .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-black .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-white .navbar .navbar-brand, +.col-white .navbar .navbar-brand:hover, +.col-white .navbar .navbar-brand:active, +.col-white .navbar .navbar-brand:focus { + color: #fff; } + +.col-white .navbar .nav > li > a:hover, +.col-white .navbar .nav > li > a:focus, +.col-white .navbar .nav .open > a, +.col-white .navbar .nav .open > a:hover, +.col-white .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-white .navbar .nav > li > a { + color: #fff; } + +.col-white .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-white .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +/* Material Icons ============================== */ +.material-icons.md-18 { + font-size: 18px; } + +.material-icons.md-24 { + font-size: 24px; } + +.material-icons.md-26 { + font-size: 26px; } + +.material-icons.md-28 { + font-size: 28px; } + +.material-icons.md-30 { + font-size: 30px; } + +.material-icons.md-32 { + font-size: 32px; } + +.material-icons.md-36 { + font-size: 36px; } + +.material-icons.md-48 { + font-size: 48px; } + +/* Helpers ===================================== */ +.m-l--125 { + margin-left: -125px; } + +.m-t--125 { + margin-top: -125px; } + +.m-r--125 { + margin-right: -125px; } + +.m-b--125 { + margin-bottom: -125px; } + +.m-l--120 { + margin-left: -120px; } + +.m-t--120 { + margin-top: -120px; } + +.m-r--120 { + margin-right: -120px; } + +.m-b--120 { + margin-bottom: -120px; } + +.m-l--115 { + margin-left: -115px; } + +.m-t--115 { + margin-top: -115px; } + +.m-r--115 { + margin-right: -115px; } + +.m-b--115 { + margin-bottom: -115px; } + +.m-l--110 { + margin-left: -110px; } + +.m-t--110 { + margin-top: -110px; } + +.m-r--110 { + margin-right: -110px; } + +.m-b--110 { + margin-bottom: -110px; } + +.m-l--105 { + margin-left: -105px; } + +.m-t--105 { + margin-top: -105px; } + +.m-r--105 { + margin-right: -105px; } + +.m-b--105 { + margin-bottom: -105px; } + +.m-l--100 { + margin-left: -100px; } + +.m-t--100 { + margin-top: -100px; } + +.m-r--100 { + margin-right: -100px; } + +.m-b--100 { + margin-bottom: -100px; } + +.m-l--95 { + margin-left: -95px; } + +.m-t--95 { + margin-top: -95px; } + +.m-r--95 { + margin-right: -95px; } + +.m-b--95 { + margin-bottom: -95px; } + +.m-l--90 { + margin-left: -90px; } + +.m-t--90 { + margin-top: -90px; } + +.m-r--90 { + margin-right: -90px; } + +.m-b--90 { + margin-bottom: -90px; } + +.m-l--85 { + margin-left: -85px; } + +.m-t--85 { + margin-top: -85px; } + +.m-r--85 { + margin-right: -85px; } + +.m-b--85 { + margin-bottom: -85px; } + +.m-l--80 { + margin-left: -80px; } + +.m-t--80 { + margin-top: -80px; } + +.m-r--80 { + margin-right: -80px; } + +.m-b--80 { + margin-bottom: -80px; } + +.m-l--75 { + margin-left: -75px; } + +.m-t--75 { + margin-top: -75px; } + +.m-r--75 { + margin-right: -75px; } + +.m-b--75 { + margin-bottom: -75px; } + +.m-l--70 { + margin-left: -70px; } + +.m-t--70 { + margin-top: -70px; } + +.m-r--70 { + margin-right: -70px; } + +.m-b--70 { + margin-bottom: -70px; } + +.m-l--65 { + margin-left: -65px; } + +.m-t--65 { + margin-top: -65px; } + +.m-r--65 { + margin-right: -65px; } + +.m-b--65 { + margin-bottom: -65px; } + +.m-l--60 { + margin-left: -60px; } + +.m-t--60 { + margin-top: -60px; } + +.m-r--60 { + margin-right: -60px; } + +.m-b--60 { + margin-bottom: -60px; } + +.m-l--55 { + margin-left: -55px; } + +.m-t--55 { + margin-top: -55px; } + +.m-r--55 { + margin-right: -55px; } + +.m-b--55 { + margin-bottom: -55px; } + +.m-l--50 { + margin-left: -50px; } + +.m-t--50 { + margin-top: -50px; } + +.m-r--50 { + margin-right: -50px; } + +.m-b--50 { + margin-bottom: -50px; } + +.m-l--45 { + margin-left: -45px; } + +.m-t--45 { + margin-top: -45px; } + +.m-r--45 { + margin-right: -45px; } + +.m-b--45 { + margin-bottom: -45px; } + +.m-l--40 { + margin-left: -40px; } + +.m-t--40 { + margin-top: -40px; } + +.m-r--40 { + margin-right: -40px; } + +.m-b--40 { + margin-bottom: -40px; } + +.m-l--35 { + margin-left: -35px; } + +.m-t--35 { + margin-top: -35px; } + +.m-r--35 { + margin-right: -35px; } + +.m-b--35 { + margin-bottom: -35px; } + +.m-l--30 { + margin-left: -30px; } + +.m-t--30 { + margin-top: -30px; } + +.m-r--30 { + margin-right: -30px; } + +.m-b--30 { + margin-bottom: -30px; } + +.m-l--25 { + margin-left: -25px; } + +.m-t--25 { + margin-top: -25px; } + +.m-r--25 { + margin-right: -25px; } + +.m-b--25 { + margin-bottom: -25px; } + +.m-l--20 { + margin-left: -20px; } + +.m-t--20 { + margin-top: -20px; } + +.m-r--20 { + margin-right: -20px; } + +.m-b--20 { + margin-bottom: -20px; } + +.m-l--15 { + margin-left: -15px; } + +.m-t--15 { + margin-top: -15px; } + +.m-r--15 { + margin-right: -15px; } + +.m-b--15 { + margin-bottom: -15px; } + +.m-l--10 { + margin-left: -10px; } + +.m-t--10 { + margin-top: -10px; } + +.m-r--10 { + margin-right: -10px; } + +.m-b--10 { + margin-bottom: -10px; } + +.m-l--5 { + margin-left: -5px; } + +.m-t--5 { + margin-top: -5px; } + +.m-r--5 { + margin-right: -5px; } + +.m-b--5 { + margin-bottom: -5px; } + +.m-l-0 { + margin-left: 0px; } + +.m-t-0 { + margin-top: 0px; } + +.m-r-0 { + margin-right: 0px; } + +.m-b-0 { + margin-bottom: 0px; } + +.m-l-5 { + margin-left: 5px; } + +.m-t-5 { + margin-top: 5px; } + +.m-r-5 { + margin-right: 5px; } + +.m-b-5 { + margin-bottom: 5px; } + +.m-l-10 { + margin-left: 10px; } + +.m-t-10 { + margin-top: 10px; } + +.m-r-10 { + margin-right: 10px; } + +.m-b-10 { + margin-bottom: 10px; } + +.m-l-15 { + margin-left: 15px; } + +.m-t-15 { + margin-top: 15px; } + +.m-r-15 { + margin-right: 15px; } + +.m-b-15 { + margin-bottom: 15px; } + +.m-l-20 { + margin-left: 20px; } + +.m-t-20 { + margin-top: 20px; } + +.m-r-20 { + margin-right: 20px; } + +.m-b-20 { + margin-bottom: 20px; } + +.m-l-25 { + margin-left: 25px; } + +.m-t-25 { + margin-top: 25px; } + +.m-r-25 { + margin-right: 25px; } + +.m-b-25 { + margin-bottom: 25px; } + +.m-l-30 { + margin-left: 30px; } + +.m-t-30 { + margin-top: 30px; } + +.m-r-30 { + margin-right: 30px; } + +.m-b-30 { + margin-bottom: 30px; } + +.m-l-35 { + margin-left: 35px; } + +.m-t-35 { + margin-top: 35px; } + +.m-r-35 { + margin-right: 35px; } + +.m-b-35 { + margin-bottom: 35px; } + +.m-l-40 { + margin-left: 40px; } + +.m-t-40 { + margin-top: 40px; } + +.m-r-40 { + margin-right: 40px; } + +.m-b-40 { + margin-bottom: 40px; } + +.m-l-45 { + margin-left: 45px; } + +.m-t-45 { + margin-top: 45px; } + +.m-r-45 { + margin-right: 45px; } + +.m-b-45 { + margin-bottom: 45px; } + +.m-l-50 { + margin-left: 50px; } + +.m-t-50 { + margin-top: 50px; } + +.m-r-50 { + margin-right: 50px; } + +.m-b-50 { + margin-bottom: 50px; } + +.m-l-55 { + margin-left: 55px; } + +.m-t-55 { + margin-top: 55px; } + +.m-r-55 { + margin-right: 55px; } + +.m-b-55 { + margin-bottom: 55px; } + +.m-l-60 { + margin-left: 60px; } + +.m-t-60 { + margin-top: 60px; } + +.m-r-60 { + margin-right: 60px; } + +.m-b-60 { + margin-bottom: 60px; } + +.m-l-65 { + margin-left: 65px; } + +.m-t-65 { + margin-top: 65px; } + +.m-r-65 { + margin-right: 65px; } + +.m-b-65 { + margin-bottom: 65px; } + +.m-l-70 { + margin-left: 70px; } + +.m-t-70 { + margin-top: 70px; } + +.m-r-70 { + margin-right: 70px; } + +.m-b-70 { + margin-bottom: 70px; } + +.m-l-75 { + margin-left: 75px; } + +.m-t-75 { + margin-top: 75px; } + +.m-r-75 { + margin-right: 75px; } + +.m-b-75 { + margin-bottom: 75px; } + +.m-l-80 { + margin-left: 80px; } + +.m-t-80 { + margin-top: 80px; } + +.m-r-80 { + margin-right: 80px; } + +.m-b-80 { + margin-bottom: 80px; } + +.m-l-85 { + margin-left: 85px; } + +.m-t-85 { + margin-top: 85px; } + +.m-r-85 { + margin-right: 85px; } + +.m-b-85 { + margin-bottom: 85px; } + +.m-l-90 { + margin-left: 90px; } + +.m-t-90 { + margin-top: 90px; } + +.m-r-90 { + margin-right: 90px; } + +.m-b-90 { + margin-bottom: 90px; } + +.m-l-95 { + margin-left: 95px; } + +.m-t-95 { + margin-top: 95px; } + +.m-r-95 { + margin-right: 95px; } + +.m-b-95 { + margin-bottom: 95px; } + +.m-l-100 { + margin-left: 100px; } + +.m-t-100 { + margin-top: 100px; } + +.m-r-100 { + margin-right: 100px; } + +.m-b-100 { + margin-bottom: 100px; } + +.m-l-105 { + margin-left: 105px; } + +.m-t-105 { + margin-top: 105px; } + +.m-r-105 { + margin-right: 105px; } + +.m-b-105 { + margin-bottom: 105px; } + +.m-l-110 { + margin-left: 110px; } + +.m-t-110 { + margin-top: 110px; } + +.m-r-110 { + margin-right: 110px; } + +.m-b-110 { + margin-bottom: 110px; } + +.m-l-115 { + margin-left: 115px; } + +.m-t-115 { + margin-top: 115px; } + +.m-r-115 { + margin-right: 115px; } + +.m-b-115 { + margin-bottom: 115px; } + +.m-l-120 { + margin-left: 120px; } + +.m-t-120 { + margin-top: 120px; } + +.m-r-120 { + margin-right: 120px; } + +.m-b-120 { + margin-bottom: 120px; } + +.m-l-125 { + margin-left: 125px; } + +.m-t-125 { + margin-top: 125px; } + +.m-r-125 { + margin-right: 125px; } + +.m-b-125 { + margin-bottom: 125px; } + +.margin-0 { + margin: 0; } + +.p-l-0 { + padding-left: 0px; } + +.p-t-0 { + padding-top: 0px; } + +.p-r-0 { + padding-right: 0px; } + +.p-b-0 { + padding-bottom: 0px; } + +.p-l-5 { + padding-left: 5px; } + +.p-t-5 { + padding-top: 5px; } + +.p-r-5 { + padding-right: 5px; } + +.p-b-5 { + padding-bottom: 5px; } + +.p-l-10 { + padding-left: 10px; } + +.p-t-10 { + padding-top: 10px; } + +.p-r-10 { + padding-right: 10px; } + +.p-b-10 { + padding-bottom: 10px; } + +.p-l-15 { + padding-left: 15px; } + +.p-t-15 { + padding-top: 15px; } + +.p-r-15 { + padding-right: 15px; } + +.p-b-15 { + padding-bottom: 15px; } + +.p-l-20 { + padding-left: 20px; } + +.p-t-20 { + padding-top: 20px; } + +.p-r-20 { + padding-right: 20px; } + +.p-b-20 { + padding-bottom: 20px; } + +.p-l-25 { + padding-left: 25px; } + +.p-t-25 { + padding-top: 25px; } + +.p-r-25 { + padding-right: 25px; } + +.p-b-25 { + padding-bottom: 25px; } + +.p-l-30 { + padding-left: 30px; } + +.p-t-30 { + padding-top: 30px; } + +.p-r-30 { + padding-right: 30px; } + +.p-b-30 { + padding-bottom: 30px; } + +.p-l-35 { + padding-left: 35px; } + +.p-t-35 { + padding-top: 35px; } + +.p-r-35 { + padding-right: 35px; } + +.p-b-35 { + padding-bottom: 35px; } + +.p-l-40 { + padding-left: 40px; } + +.p-t-40 { + padding-top: 40px; } + +.p-r-40 { + padding-right: 40px; } + +.p-b-40 { + padding-bottom: 40px; } + +.p-l-45 { + padding-left: 45px; } + +.p-t-45 { + padding-top: 45px; } + +.p-r-45 { + padding-right: 45px; } + +.p-b-45 { + padding-bottom: 45px; } + +.p-l-50 { + padding-left: 50px; } + +.p-t-50 { + padding-top: 50px; } + +.p-r-50 { + padding-right: 50px; } + +.p-b-50 { + padding-bottom: 50px; } + +.p-l-55 { + padding-left: 55px; } + +.p-t-55 { + padding-top: 55px; } + +.p-r-55 { + padding-right: 55px; } + +.p-b-55 { + padding-bottom: 55px; } + +.p-l-60 { + padding-left: 60px; } + +.p-t-60 { + padding-top: 60px; } + +.p-r-60 { + padding-right: 60px; } + +.p-b-60 { + padding-bottom: 60px; } + +.p-l-65 { + padding-left: 65px; } + +.p-t-65 { + padding-top: 65px; } + +.p-r-65 { + padding-right: 65px; } + +.p-b-65 { + padding-bottom: 65px; } + +.p-l-70 { + padding-left: 70px; } + +.p-t-70 { + padding-top: 70px; } + +.p-r-70 { + padding-right: 70px; } + +.p-b-70 { + padding-bottom: 70px; } + +.p-l-75 { + padding-left: 75px; } + +.p-t-75 { + padding-top: 75px; } + +.p-r-75 { + padding-right: 75px; } + +.p-b-75 { + padding-bottom: 75px; } + +.p-l-80 { + padding-left: 80px; } + +.p-t-80 { + padding-top: 80px; } + +.p-r-80 { + padding-right: 80px; } + +.p-b-80 { + padding-bottom: 80px; } + +.p-l-85 { + padding-left: 85px; } + +.p-t-85 { + padding-top: 85px; } + +.p-r-85 { + padding-right: 85px; } + +.p-b-85 { + padding-bottom: 85px; } + +.p-l-90 { + padding-left: 90px; } + +.p-t-90 { + padding-top: 90px; } + +.p-r-90 { + padding-right: 90px; } + +.p-b-90 { + padding-bottom: 90px; } + +.p-l-95 { + padding-left: 95px; } + +.p-t-95 { + padding-top: 95px; } + +.p-r-95 { + padding-right: 95px; } + +.p-b-95 { + padding-bottom: 95px; } + +.p-l-100 { + padding-left: 100px; } + +.p-t-100 { + padding-top: 100px; } + +.p-r-100 { + padding-right: 100px; } + +.p-b-100 { + padding-bottom: 100px; } + +.p-l-105 { + padding-left: 105px; } + +.p-t-105 { + padding-top: 105px; } + +.p-r-105 { + padding-right: 105px; } + +.p-b-105 { + padding-bottom: 105px; } + +.p-l-110 { + padding-left: 110px; } + +.p-t-110 { + padding-top: 110px; } + +.p-r-110 { + padding-right: 110px; } + +.p-b-110 { + padding-bottom: 110px; } + +.p-l-115 { + padding-left: 115px; } + +.p-t-115 { + padding-top: 115px; } + +.p-r-115 { + padding-right: 115px; } + +.p-b-115 { + padding-bottom: 115px; } + +.p-l-120 { + padding-left: 120px; } + +.p-t-120 { + padding-top: 120px; } + +.p-r-120 { + padding-right: 120px; } + +.p-b-120 { + padding-bottom: 120px; } + +.p-l-125 { + padding-left: 125px; } + +.p-t-125 { + padding-top: 125px; } + +.p-r-125 { + padding-right: 125px; } + +.p-b-125 { + padding-bottom: 125px; } + +.padding-0 { + padding: 0; } + +.font-6 { + font-size: 6px; } + +.font-7 { + font-size: 7px; } + +.font-8 { + font-size: 8px; } + +.font-9 { + font-size: 9px; } + +.font-10 { + font-size: 10px; } + +.font-11 { + font-size: 11px; } + +.font-12 { + font-size: 12px; } + +.font-13 { + font-size: 13px; } + +.font-14 { + font-size: 14px; } + +.font-15 { + font-size: 15px; } + +.font-16 { + font-size: 16px; } + +.font-17 { + font-size: 17px; } + +.font-18 { + font-size: 18px; } + +.font-19 { + font-size: 19px; } + +.font-20 { + font-size: 20px; } + +.font-21 { + font-size: 21px; } + +.font-22 { + font-size: 22px; } + +.font-23 { + font-size: 23px; } + +.font-24 { + font-size: 24px; } + +.font-25 { + font-size: 25px; } + +.font-26 { + font-size: 26px; } + +.font-27 { + font-size: 27px; } + +.font-28 { + font-size: 28px; } + +.font-29 { + font-size: 29px; } + +.font-30 { + font-size: 30px; } + +.font-31 { + font-size: 31px; } + +.font-32 { + font-size: 32px; } + +.font-33 { + font-size: 33px; } + +.font-34 { + font-size: 34px; } + +.font-35 { + font-size: 35px; } + +.font-36 { + font-size: 36px; } + +.font-37 { + font-size: 37px; } + +.font-38 { + font-size: 38px; } + +.font-39 { + font-size: 39px; } + +.font-40 { + font-size: 40px; } + +.font-41 { + font-size: 41px; } + +.font-42 { + font-size: 42px; } + +.font-43 { + font-size: 43px; } + +.font-44 { + font-size: 44px; } + +.font-45 { + font-size: 45px; } + +.font-46 { + font-size: 46px; } + +.font-47 { + font-size: 47px; } + +.font-48 { + font-size: 48px; } + +.font-49 { + font-size: 49px; } + +.font-50 { + font-size: 50px; } + +.align-left { + text-align: left; } + +.align-center { + text-align: center; } + +.align-right { + text-align: right; } + +.align-justify { + text-align: justify; } + +.no-resize { + resize: none; } + +.font-bold { + font-weight: bold; } + +.font-italic { + font-style: italic; } + +.font-underline { + text-decoration: underline; } + +.font-line-through { + text-decoration: line-through; } + +.font-overline { + text-decoration: overline; } + +.block-header { + margin-bottom: 15px; } + .block-header h2 { + margin: 0 !important; + color: #666 !important; + font-weight: normal; + font-size: 16px; } + .block-header h2 small { + display: block; + font-size: 12px; + margin-top: 8px; + color: #888; } + .block-header h2 small a { + font-weight: bold; + color: #777; } + +.bg-red { + background-color: #F44336 !important; + color: #fff; } + .bg-red .content .text, + .bg-red .content .number { + color: #fff !important; } + +.bg-pink { + background-color: #E91E63 !important; + color: #fff; } + .bg-pink .content .text, + .bg-pink .content .number { + color: #fff !important; } + +.bg-purple { + background-color: #9C27B0 !important; + color: #fff; } + .bg-purple .content .text, + .bg-purple .content .number { + color: #fff !important; } + +.bg-deep-purple { + background-color: #673AB7 !important; + color: #fff; } + .bg-deep-purple .content .text, + .bg-deep-purple .content .number { + color: #fff !important; } + +.bg-indigo { + background-color: #3F51B5 !important; + color: #fff; } + .bg-indigo .content .text, + .bg-indigo .content .number { + color: #fff !important; } + +.bg-blue { + background-color: #2196F3 !important; + color: #fff; } + .bg-blue .content .text, + .bg-blue .content .number { + color: #fff !important; } + +.bg-light-blue { + background-color: #03A9F4 !important; + color: #fff; } + .bg-light-blue .content .text, + .bg-light-blue .content .number { + color: #fff !important; } + +.bg-cyan { + background-color: #00BCD4 !important; + color: #fff; } + .bg-cyan .content .text, + .bg-cyan .content .number { + color: #fff !important; } + +.bg-teal { + background-color: #009688 !important; + color: #fff; } + .bg-teal .content .text, + .bg-teal .content .number { + color: #fff !important; } + +.bg-green { + background-color: #4CAF50 !important; + color: #fff; } + .bg-green .content .text, + .bg-green .content .number { + color: #fff !important; } + +.bg-light-green { + background-color: #8BC34A !important; + color: #fff; } + .bg-light-green .content .text, + .bg-light-green .content .number { + color: #fff !important; } + +.bg-lime { + background-color: #CDDC39 !important; + color: #fff; } + .bg-lime .content .text, + .bg-lime .content .number { + color: #fff !important; } + +.bg-yellow { + background-color: #ffe821 !important; + color: #fff; } + .bg-yellow .content .text, + .bg-yellow .content .number { + color: #fff !important; } + +.bg-amber { + background-color: #FFC107 !important; + color: #fff; } + .bg-amber .content .text, + .bg-amber .content .number { + color: #fff !important; } + +.bg-orange { + background-color: #FF9800 !important; + color: #fff; } + .bg-orange .content .text, + .bg-orange .content .number { + color: #fff !important; } + +.bg-deep-orange { + background-color: #FF5722 !important; + color: #fff; } + .bg-deep-orange .content .text, + .bg-deep-orange .content .number { + color: #fff !important; } + +.bg-brown { + background-color: #795548 !important; + color: #fff; } + .bg-brown .content .text, + .bg-brown .content .number { + color: #fff !important; } + +.bg-grey { + background-color: #9E9E9E !important; + color: #fff; } + .bg-grey .content .text, + .bg-grey .content .number { + color: #fff !important; } + +.bg-blue-grey { + background-color: #607D8B !important; + color: #fff; } + .bg-blue-grey .content .text, + .bg-blue-grey .content .number { + color: #fff !important; } + +.bg-black { + background-color: #000000 !important; + color: #fff; } + .bg-black .content .text, + .bg-black .content .number { + color: #fff !important; } + +.bg-white { + background-color: #ffffff !important; + color: #fff; } + .bg-white .content .text, + .bg-white .content .number { + color: #fff !important; } + +.col-red { + color: #F44336 !important; } + +.col-pink { + color: #E91E63 !important; } + +.col-purple { + color: #9C27B0 !important; } + +.col-deep-purple { + color: #673AB7 !important; } + +.col-indigo { + color: #3F51B5 !important; } + +.col-blue { + color: #2196F3 !important; } + +.col-light-blue { + color: #03A9F4 !important; } + +.col-cyan { + color: #00BCD4 !important; } + +.col-teal { + color: #009688 !important; } + +.col-green { + color: #4CAF50 !important; } + +.col-light-green { + color: #8BC34A !important; } + +.col-lime { + color: #CDDC39 !important; } + +.col-yellow { + color: #ffe821 !important; } + +.col-amber { + color: #FFC107 !important; } + +.col-orange { + color: #FF9800 !important; } + +.col-deep-orange { + color: #FF5722 !important; } + +.col-brown { + color: #795548 !important; } + +.col-grey { + color: #9E9E9E !important; } + +.col-blue-grey { + color: #607D8B !important; } + +.col-black { + color: #000000 !important; } + +.col-white { + color: #ffffff !important; } + +/* Custom Animate ============================== */ +@-ms-keyframes spin { + from { + -ms-transform: rotate(0deg); + -moz-transform: rotate(0deg); + -o-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + to { + -ms-transform: rotate(360deg); + -moz-transform: rotate(360deg); + -o-transform: rotate(360deg); + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@-moz-keyframes spin { + from { + -moz-transform: rotate(0deg); + -ms-transform: rotate(0deg); + -o-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + to { + -moz-transform: rotate(360deg); + -ms-transform: rotate(360deg); + -o-transform: rotate(360deg); + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@-webkit-keyframes spin { + from { + -webkit-transform: rotate(0deg); + -moz-transform: rotate(0deg); + -ms-transform: rotate(0deg); + -o-transform: rotate(0deg); + transform: rotate(0deg); } + to { + -webkit-transform: rotate(360deg); + -moz-transform: rotate(360deg); + -ms-transform: rotate(360deg); + -o-transform: rotate(360deg); + transform: rotate(360deg); } } + +@keyframes spin { + from { + -moz-transform: rotate(0deg); + -ms-transform: rotate(0deg); + -o-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + to { + -moz-transform: rotate(360deg); + -ms-transform: rotate(360deg); + -o-transform: rotate(360deg); + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +/* Demo ======================================== */ +.demo-button-sizes .btn { + margin-bottom: 5px; } + +.icon-button-demo button { + margin-right: 5px; + margin-bottom: 12px; } + +.button-demo ul { + padding-left: 0; } + .button-demo ul li { + list-style: none; + padding-left: 0; + display: inline-block; + margin-right: 7px; } + .button-demo ul li .btn { + display: block; + min-width: 175px; } + +.button-demo .btn { + margin-right: 8px; + margin-bottom: 13px; + min-width: 120px; } + +.demo-button-groups .btn-group { + margin-right: 10px; } + +.demo-button-toolbar .btn-toolbar { + float: left; + margin-right: 25px; } + +.demo-button-nesting > .btn-group { + margin-right: 15px; } + +.demo-single-button-dropdowns > .btn-group { + margin-right: 10px; } + +.demo-splite-button-dropdowns > .btn-group { + margin-right: 10px; } + +.demo-dropup .dropup { + margin-right: 10px; } + +.demo-checkbox label, +.demo-radio-button label { + min-width: 150px; } + +.demo-knob-chart div { + margin-right: 15px; } + +.demo-switch .switch { + display: inline-block; + min-width: 170px; } + +.demo-switch .demo-switch-title { + min-width: 95px; + display: inline-block; } + +.demo-color-box { + padding: 15px 0; + text-align: center; + margin-bottom: 20px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + -ms-border-radius: 3px; + border-radius: 3px; } + .demo-color-box .color-name { + font-size: 16px; + margin-bottom: 5px; } + .demo-color-box .color-code, + .demo-color-box .color-class-name { + font-size: 13px; } + +.demo-image-copyright { + text-align: right; + font-style: italic; + font-size: 12px; + color: #777; + margin: 5px 0 10px 0; } + .demo-image-copyright a { + font-weight: bold; + color: #555 !important; } + +.demo-tagsinput-area { + margin-bottom: 50px !important; } + +.demo-icon-container .demo-google-material-icon { + margin-bottom: 5px; + text-align: left; } + .demo-icon-container .demo-google-material-icon .icon-name { + position: relative; + top: -8px; + left: 7px; } + .demo-icon-container .demo-google-material-icon .material-icons { + width: 24px; } + +.demo-preloader .preloader { + margin-right: 10px; } + +.irs-demo { + margin-bottom: 40px; } + .irs-demo .irs { + margin-top: 15px; } + +.right-sidebar .nav-tabs + .tab-content { + padding: 0; } + +.right-sidebar p { + margin: 20px 15px 15px 15px; + font-weight: bold; + text-align: center; } + +.right-sidebar #settings .setting-list { + list-style: none; + padding-left: 0; + margin-bottom: 20px; } + .right-sidebar #settings .setting-list li { + padding: 15px; + position: relative; + border-top: 1px solid #eee; } + .right-sidebar #settings .setting-list li .switch { + position: absolute; + top: 15px; + right: 5px; } + +.demo-choose-skin { + list-style: none; + padding-left: 0; + overflow-y: hidden; } + .demo-choose-skin li { + border-bottom: 1px solid #eee; + padding: 10px 10px 4px 10px; + position: relative; + cursor: pointer; } + .demo-choose-skin li.active { + background-color: #eee; } + .demo-choose-skin li.active:after { + font-family: 'Material Icons'; + position: absolute; + top: 10px; + right: 10px; + content: '\E876'; + font-size: 18px; + font-weight: bold; } + .demo-choose-skin li:hover { + background-color: #eee; } + .demo-choose-skin li div { + width: 24px; + height: 24px; + display: inline-block; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + -ms-border-radius: 3px; + border-radius: 3px; } + .demo-choose-skin li span { + position: relative; + bottom: 7px; + left: 5px; } + .demo-choose-skin .red { + background-color: #F44336; } + .demo-choose-skin .pink { + background-color: #E91E63; } + .demo-choose-skin .purple { + background-color: #9C27B0; } + .demo-choose-skin .deep-purple { + background-color: #673AB7; } + .demo-choose-skin .indigo { + background-color: #3F51B5; } + .demo-choose-skin .blue { + background-color: #2196F3; } + .demo-choose-skin .light-blue { + background-color: #03A9F4; } + .demo-choose-skin .cyan { + background-color: #00BCD4; } + .demo-choose-skin .teal { + background-color: #009688; } + .demo-choose-skin .green { + background-color: #4CAF50; } + .demo-choose-skin .light-green { + background-color: #8BC34A; } + .demo-choose-skin .lime { + background-color: #CDDC39; } + .demo-choose-skin .yellow { + background-color: #ffe821; } + .demo-choose-skin .amber { + background-color: #FFC107; } + .demo-choose-skin .orange { + background-color: #FF9800; } + .demo-choose-skin .deep-orange { + background-color: #FF5722; } + .demo-choose-skin .brown { + background-color: #795548; } + .demo-choose-skin .grey { + background-color: #9E9E9E; } + .demo-choose-skin .blue-grey { + background-color: #607D8B; } + .demo-choose-skin .black { + background-color: #000000; } + .demo-choose-skin .white { + background-color: #ffffff; } + +/* Materialize Css | Taken from www.materializecss.com */ +/* Media ======================================= */ +@media (max-width: 767px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: 35px; + width: 73%; } + .navbar .navbar-header { + display: inline-block; + margin-bottom: -6px; + width: calc(100% + 30px); } + .navbar .nav > li { + display: inline-block; } + .navbar .navbar-nav { + margin-top: -10px; + margin-bottom: 1px; + margin-left: -7px; } + .navbar .navbar-nav .open .dropdown-menu { + background-color: #fff; + position: absolute; } + .navbar .dropdown-menu { + margin-left: -50px; } + .navbar .js-right-sidebar { + margin-top: 15px; } + .dt-buttons { + float: none !important; + text-align: center; + margin-bottom: 15px; } + .panel-switch-btn { + top: 12px; + right: 0 !important; } } + +@media (min-width: 768px) and (max-width: 991px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: 20px; } } + +@media (min-width: 992px) and (max-width: 1169px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: 20px; } } + +/* General ===================================== */ +body { + background-color: #e9e9e9; + -moz-transition: all 0.5s; + -o-transition: all 0.5s; + -webkit-transition: all 0.5s; + transition: all 0.5s; + font-family: 'Roboto', Arial, Tahoma, sans-serif; } + +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: bold; } + +button, +input, +select, +a { + outline: none !important; } + +.no-animate { + -o-transition-property: none !important; + -moz-transition-property: none !important; + -ms-transition-property: none !important; + -webkit-transition-property: none !important; + transition-property: none !important; + -o-transform: none !important; + -moz-transform: none !important; + -ms-transform: none !important; + -webkit-transform: none !important; + transform: none !important; + -webkit-animation: none !important; + -moz-animation: none !important; + -o-animation: none !important; + -ms-animation: none !important; + animation: none !important; } + +section.content { + margin: 100px 15px 0 315px; + -moz-transition: 0.5s; + -o-transition: 0.5s; + -webkit-transition: 0.5s; + transition: 0.5s; } + +/* Dashboard =================================== */ +.dashboard-flot-chart { + height: 275px; } + +.dashboard-donut-chart { + height: 265px; } + +.dashboard-line-chart { + height: 250px; } + +.dashboard-stat-list { + list-style: none; + padding-left: 0; + margin-top: 40px; } + .dashboard-stat-list li { + padding: 16px 0 0 0; } + .dashboard-stat-list li small { + font-size: 8px; } + +.dashboard-task-infos .progress { + height: 10px; + margin-bottom: 0; + position: relative; + top: 6px; } + +/* Buttons ===================================== */ +.btn:focus { + outline: none !important; } + +.btn-circle { + border: none; + outline: none !important; + overflow: hidden; + width: 40px; + height: 40px; + -webkit-border-radius: 50%; + -moz-border-radius: 50%; + -ms-border-radius: 50%; + border-radius: 50%; } + .btn-circle i { + font-size: 18px; + position: relative; + left: -1px; } + +.btn-link { + font-weight: bold; + color: #333; + -moz-transition: 0.5s; + -o-transition: 0.5s; + -webkit-transition: 0.5s; + transition: 0.5s; } + .btn-link:active, .btn-link:focus { + text-decoration: none; + color: #333; } + .btn-link:hover { + text-decoration: none; + color: #333; + background-color: #ddd; } + +.btn-circle-lg { + border: none; + outline: none !important; + overflow: hidden; + width: 50px; + height: 50px; + -webkit-border-radius: 50% !important; + -moz-border-radius: 50% !important; + -ms-border-radius: 50% !important; + border-radius: 50% !important; } + .btn-circle-lg i { + font-size: 26px !important; + position: relative !important; + left: 0px !important; + top: 6px !important; } + +.btn:not(.btn-link):not(.btn-circle) { + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.16), 0 2px 10px rgba(0, 0, 0, 0.12); + -webkit-border-radius: 2px; + -moz-border-radius: 2px; + -ms-border-radius: 2px; + border-radius: 2px; + border: none; + font-size: 13px; + outline: none; } + .btn:not(.btn-link):not(.btn-circle):hover { + outline: none; } + .btn:not(.btn-link):not(.btn-circle) i { + font-size: 20px; + position: relative; + top: 3px; } + +.btn-warning, +.btn-warning:hover, +.btn-warning:active, +.btn-warning:focus { + background-color: #ff9600 !important; } + +.btn-danger, +.btn-danger:hover, +.btn-danger:active, +.btn-danger:focus { + background-color: #fb483a !important; } + +.btn-info, +.btn-info:hover, +.btn-info:active, +.btn-info:focus { + background-color: #00b0e4 !important; } + +.btn-success, +.btn-success:hover, +.btn-success:active, +.btn-success:focus { + background-color: #2b982b !important; } + +.btn-primary, +.btn-primary:hover, +.btn-primary:active, +.btn-primary:focus { + background-color: #1f91f3 !important; } + +.btn-default, +.btn-default:hover, +.btn-default:active, +.btn-default:focus { + background-color: #fff !important; } + +.btn-group, +.btn-group-vertical { + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.16), 0 2px 10px rgba(0, 0, 0, 0.12); } + .btn-group .btn, + .btn-group-vertical .btn { + box-shadow: none !important; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + .btn-group .btn .caret, + .btn-group-vertical .btn .caret { + position: relative; + bottom: 1px; } + .btn-group .btn-group, + .btn-group-vertical .btn-group { + box-shadow: none !important; } + .btn-group .btn + .dropdown-toggle, + .btn-group-vertical .btn + .dropdown-toggle { + border-left: 1px solid rgba(0, 0, 0, 0.08) !important; } + +/* Bootstrap Tags Input ======================== */ +.bootstrap-tagsinput { + -webkit-box-shadow: none !important; + -moz-box-shadow: none !important; + -ms-box-shadow: none !important; + box-shadow: none !important; + border: none !important; } + +/* noUISlider ================================== */ +.noUi-target { + -webkit-touch-callout: none; + -webkit-user-select: none; + -ms-touch-action: none; + touch-action: none; + -ms-user-select: none; + -moz-user-select: none; + user-select: none; + -moz-box-sizing: border-box; + box-sizing: border-box; + position: relative; + direction: ltr; } + .noUi-target * { + -webkit-touch-callout: none; + -webkit-user-select: none; + -ms-touch-action: none; + touch-action: none; + -ms-user-select: none; + -moz-user-select: none; + user-select: none; + -moz-box-sizing: border-box; + box-sizing: border-box; } + +.noUi-base { + width: 100%; + height: 100%; + position: relative; + z-index: 1; } + +.noUi-origin { + position: absolute; + right: 0; + top: 6px; + left: 0; + bottom: 0; } + +.noUi-handle { + position: relative; + z-index: 1; } + +.noUi-stacking .noUi-handle { + z-index: 10; } + +.noUi-state-tap .noUi-origin { + -webkit-transition: left 0.25s, top 0.25s; + transition: left 0.25s, top 0.25s; } + +.noUi-state-drag * { + cursor: inherit !important; } + +.noUi-base { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); } + +.noUi-horizontal { + height: 18px; } + .noUi-horizontal .noUi-handle { + width: 34px; + height: 28px; + left: -17px; + top: -6px; } + +.noUi-vertical { + width: 18px; } + .noUi-vertical .noUi-handle { + width: 28px; + height: 34px; + left: -6px; + top: -17px; } + +.noUi-background { + background: #FAFAFA; + box-shadow: inset 0 1px 1px #f0f0f0; } + +.noUi-connect { + background: #3FB8AF; + box-shadow: inset 0 0 3px rgba(51, 51, 51, 0.45); + -webkit-transition: background 450ms; + transition: background 450ms; } + +.noUi-origin { + border-radius: 2px; } + +.noUi-target { + border-radius: 4px; + border: 1px solid #D3D3D3; + box-shadow: inset 0 1px 1px #F0F0F0, 0 3px 6px -5px #BBB; } + .noUi-target.noUi-connect { + box-shadow: inset 0 0 3px rgba(51, 51, 51, 0.45), 0 3px 6px -5px #BBB; } + +.noUi-dragable { + cursor: w-resize; } + +.noUi-vertical .noUi-dragable { + cursor: n-resize; } + +.noUi-handle { + border: 1px solid #D9D9D9; + border-radius: 3px; + background: #FFF; + cursor: default; + box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #EBEBEB, 0 3px 6px -3px #BBB; } + +.noUi-active { + box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB; } + +.noUi-handle:before { + content: ""; + display: block; + position: absolute; + height: 14px; + width: 1px; + background: #E8E7E6; + left: 14px; + top: 6px; } + +.noUi-handle:after { + content: ""; + display: block; + position: absolute; + height: 14px; + width: 1px; + background: #E8E7E6; + left: 14px; + top: 6px; + left: 17px; } + +.noUi-vertical .noUi-handle:before { + width: 14px; + height: 1px; + left: 6px; + top: 14px; } + +.noUi-vertical .noUi-handle:after { + width: 14px; + height: 1px; + left: 6px; + top: 14px; + top: 17px; } + +[disabled].noUi-connect, [disabled] .noUi-connect { + background: #B8B8B8; } + +[disabled].noUi-origin, [disabled] .noUi-handle { + cursor: not-allowed; } + +.noUi-target { + box-shadow: none; + border: none; } + +.noUi-base { + height: 15px; + top: -6px; } + +.noUi-background { + height: 3px; + top: 6px; + background-color: #bfbfbf; + box-shadow: none; } + +.noUi-horizontal { + height: 3px; } + +.noUi-connect { + height: 3px; + top: 6px; + background-color: #26A69A; + box-shadow: none; } + +.noUi-horizontal .noUi-handle { + width: 15px; + height: 15px; + border-radius: 50%; + box-shadow: none; + background-color: #26A69A; + border: none; + left: -5px; + top: -6px; + transition: width 0.2s cubic-bezier(0.215, 0.61, 0.355, 1), height 0.2s cubic-bezier(0.215, 0.61, 0.355, 1), left 0.2s cubic-bezier(0.215, 0.61, 0.355, 1), top 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); } + +.noUi-handle:before, .noUi-handle:after { + content: none; } + +.noUi-target .noUi-active.noUi-handle { + -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.5); + -moz-box-shadow: 0 0 20px rgba(0, 0, 0, 0.5); + -ms-box-shadow: 0 0 20px rgba(0, 0, 0, 0.5); + box-shadow: 0 0 20px rgba(0, 0, 0, 0.5); } + +.noUi-target .range-label { + position: absolute; + height: 30px; + width: 30px; + top: -17px; + left: -2px; + background-color: #26A69A; + border-radius: 50%; + transition: border-radius 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); + transform: scale(0.5) rotate(-45deg); + transform-origin: 50% 100%; } + +.noUi-target .noUi-active .range-label { + border-radius: 15px 15px 15px 0; + transform: rotate(-45deg) translate(23px, -25px); } + +.range-label span { + width: 100%; + text-align: center; + color: #fff; + font-size: 12px; + transform: rotate(45deg); + opacity: 0; + position: absolute; + top: 7px; + left: -1px; + transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); } + +.noUi-active .range-label span { + opacity: 1; } + +/* Multi Select ================================ */ +.ms-container { + width: auto !important; } + .ms-container .ms-list { + -webkit-box-shadow: none !important; + -moz-box-shadow: none !important; + -ms-box-shadow: none !important; + box-shadow: none !important; + -webkit-border-radius: 0 !important; + -moz-border-radius: 0 !important; + -ms-border-radius: 0 !important; + border-radius: 0 !important; } + .ms-container .ms-list.ms-focus { + -webkit-box-shadow: none !important; + -moz-box-shadow: none !important; + -ms-box-shadow: none !important; + box-shadow: none !important; } + .ms-container .ms-selectable, + .ms-container .ms-selection { + min-width: 250px !important; } + .ms-container .ms-selectable li.ms-hover, + .ms-container .ms-selection li.ms-hover { + color: #000000 !important; + background-color: #e6e6e6 !important; } + .ms-container .ms-selectable li.ms-elem-selectable, + .ms-container .ms-selectable li.ms-elem-selection, + .ms-container .ms-selection li.ms-elem-selectable, + .ms-container .ms-selection li.ms-elem-selection { + padding: 9px 15px 6px 15px !important; } + .ms-container .ms-optgroup-label { + padding: 5px 0 0 8px !important; } + +/* Card ======================================== */ +.card { + background: #fff; + min-height: 50px; + box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); + position: relative; + margin-bottom: 30px; } + .card .card-inside-title { + margin-top: 25px; + margin-bottom: 15px; + display: block; + font-size: 15px; + color: #000; } + .card .card-inside-title small { + color: #999; + display: block; + font-size: 11px; + margin-top: 5px; } + .card .card-inside-title small a { + color: #777; + font-weight: bold; } + .card .card-inside-title:first-child { + margin-top: 0; } + .card .bg-red, + .card .bg-pink, + .card .bg-purple, + .card .bg-deep-purple, + .card .bg-indigo, + .card .bg-blue, + .card .bg-light-blue, + .card .bg-cyan, + .card .bg-teal, + .card .bg-green, + .card .bg-light-green, + .card .bg-lime, + .card .bg-yellow, + .card .bg-amber, + .card .bg-orange, + .card .bg-deep-orange, + .card .bg-brown, + .card .bg-grey, + .card .bg-blue-grey, + .card .bg-black { + border-bottom: none !important; + color: #fff !important; } + .card .bg-red h2, .card .bg-red small, .card .bg-red .material-icons, + .card .bg-pink h2, + .card .bg-pink small, + .card .bg-pink .material-icons, + .card .bg-purple h2, + .card .bg-purple small, + .card .bg-purple .material-icons, + .card .bg-deep-purple h2, + .card .bg-deep-purple small, + .card .bg-deep-purple .material-icons, + .card .bg-indigo h2, + .card .bg-indigo small, + .card .bg-indigo .material-icons, + .card .bg-blue h2, + .card .bg-blue small, + .card .bg-blue .material-icons, + .card .bg-light-blue h2, + .card .bg-light-blue small, + .card .bg-light-blue .material-icons, + .card .bg-cyan h2, + .card .bg-cyan small, + .card .bg-cyan .material-icons, + .card .bg-teal h2, + .card .bg-teal small, + .card .bg-teal .material-icons, + .card .bg-green h2, + .card .bg-green small, + .card .bg-green .material-icons, + .card .bg-light-green h2, + .card .bg-light-green small, + .card .bg-light-green .material-icons, + .card .bg-lime h2, + .card .bg-lime small, + .card .bg-lime .material-icons, + .card .bg-yellow h2, + .card .bg-yellow small, + .card .bg-yellow .material-icons, + .card .bg-amber h2, + .card .bg-amber small, + .card .bg-amber .material-icons, + .card .bg-orange h2, + .card .bg-orange small, + .card .bg-orange .material-icons, + .card .bg-deep-orange h2, + .card .bg-deep-orange small, + .card .bg-deep-orange .material-icons, + .card .bg-brown h2, + .card .bg-brown small, + .card .bg-brown .material-icons, + .card .bg-grey h2, + .card .bg-grey small, + .card .bg-grey .material-icons, + .card .bg-blue-grey h2, + .card .bg-blue-grey small, + .card .bg-blue-grey .material-icons, + .card .bg-black h2, + .card .bg-black small, + .card .bg-black .material-icons { + color: #fff !important; } + .card .bg-red .badge, + .card .bg-pink .badge, + .card .bg-purple .badge, + .card .bg-deep-purple .badge, + .card .bg-indigo .badge, + .card .bg-blue .badge, + .card .bg-light-blue .badge, + .card .bg-cyan .badge, + .card .bg-teal .badge, + .card .bg-green .badge, + .card .bg-light-green .badge, + .card .bg-lime .badge, + .card .bg-yellow .badge, + .card .bg-amber .badge, + .card .bg-orange .badge, + .card .bg-deep-orange .badge, + .card .bg-brown .badge, + .card .bg-grey .badge, + .card .bg-blue-grey .badge, + .card .bg-black .badge { + background-color: #fff; + color: #555; } + .card .header { + color: #555; + padding: 20px; + position: relative; + border-bottom: 1px solid rgba(204, 204, 204, 0.35); } + .card .header .header-dropdown { + position: absolute; + top: 20px; + right: 15px; + list-style: none; } + .card .header .header-dropdown .dropdown-menu li { + display: block !important; } + .card .header .header-dropdown li { + display: inline-block; } + .card .header .header-dropdown i { + font-size: 20px; + color: #999; + -moz-transition: all 0.5s; + -o-transition: all 0.5s; + -webkit-transition: all 0.5s; + transition: all 0.5s; } + .card .header .header-dropdown i:hover { + color: #000; } + .card .header h2 { + margin: 0; + font-size: 18px; + font-weight: normal; + color: #111; } + .card .header h2 small { + display: block; + font-size: 12px; + margin-top: 5px; + color: #999; + line-height: 15px; } + .card .header h2 small a { + font-weight: bold; + color: #777; } + .card .header .col-xs-12 h2 { + margin-top: 5px; } + .card .body { + font-size: 14px; + color: #555; + padding: 20px; } + .card .body .col-xs-1, + .card .body .col-sm-1, + .card .body .col-md-1, + .card .body .col-lg-1 { + margin-bottom: 20px; } + .card .body .col-xs-2, + .card .body .col-sm-2, + .card .body .col-md-2, + .card .body .col-lg-2 { + margin-bottom: 20px; } + .card .body .col-xs-3, + .card .body .col-sm-3, + .card .body .col-md-3, + .card .body .col-lg-3 { + margin-bottom: 20px; } + .card .body .col-xs-4, + .card .body .col-sm-4, + .card .body .col-md-4, + .card .body .col-lg-4 { + margin-bottom: 20px; } + .card .body .col-xs-5, + .card .body .col-sm-5, + .card .body .col-md-5, + .card .body .col-lg-5 { + margin-bottom: 20px; } + .card .body .col-xs-6, + .card .body .col-sm-6, + .card .body .col-md-6, + .card .body .col-lg-6 { + margin-bottom: 20px; } + .card .body .col-xs-7, + .card .body .col-sm-7, + .card .body .col-md-7, + .card .body .col-lg-7 { + margin-bottom: 20px; } + .card .body .col-xs-8, + .card .body .col-sm-8, + .card .body .col-md-8, + .card .body .col-lg-8 { + margin-bottom: 20px; } + .card .body .col-xs-9, + .card .body .col-sm-9, + .card .body .col-md-9, + .card .body .col-lg-9 { + margin-bottom: 20px; } + .card .body .col-xs-10, + .card .body .col-sm-10, + .card .body .col-md-10, + .card .body .col-lg-10 { + margin-bottom: 20px; } + .card .body .col-xs-11, + .card .body .col-sm-11, + .card .body .col-md-11, + .card .body .col-lg-11 { + margin-bottom: 20px; } + .card .body .col-xs-12, + .card .body .col-sm-12, + .card .body .col-md-12, + .card .body .col-lg-12 { + margin-bottom: 20px; } + +/* Infobox ===================================== */ +.info-box { + box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); + height: 80px; + display: flex; + cursor: default; + background-color: #fff; + position: relative; + overflow: hidden; + margin-bottom: 30px; } + .info-box .icon { + display: inline-block; + text-align: center; + background-color: rgba(0, 0, 0, 0.12); + width: 80px; } + .info-box .icon i { + color: #fff; + font-size: 50px; + line-height: 80px; } + .info-box .icon .chart.chart-bar { + height: 100%; + line-height: 100px; } + .info-box .icon .chart.chart-bar canvas { + vertical-align: baseline !important; } + .info-box .icon .chart.chart-pie { + height: 100%; + line-height: 123px; } + .info-box .icon .chart.chart-pie canvas { + vertical-align: baseline !important; } + .info-box .icon .chart.chart-line { + height: 100%; + line-height: 115px; } + .info-box .icon .chart.chart-line canvas { + vertical-align: baseline !important; } + .info-box .content { + display: inline-block; + padding: 7px 10px; } + .info-box .content .text { + font-size: 13px; + margin-top: 11px; + color: #555; } + .info-box .content .number { + font-weight: normal; + font-size: 26px; + margin-top: -4px; + color: #555; } + +.info-box.hover-zoom-effect .icon { + overflow: hidden; } + .info-box.hover-zoom-effect .icon i { + -moz-transition: all 0.3s ease; + -o-transition: all 0.3s ease; + -webkit-transition: all 0.3s ease; + transition: all 0.3s ease; } + +.info-box.hover-zoom-effect:hover .icon i { + opacity: 0.4; + -moz-transform: rotate(-32deg) scale(1.4); + -ms-transform: rotate(-32deg) scale(1.4); + -o-transform: rotate(-32deg) scale(1.4); + -webkit-transform: rotate(-32deg) scale(1.4); + transform: rotate(-32deg) scale(1.4); } + +.info-box.hover-expand-effect:after { + background-color: rgba(0, 0, 0, 0.05); + content: "."; + position: absolute; + left: 80px; + top: 0; + width: 0; + height: 100%; + color: transparent; + -moz-transition: all 0.95s; + -o-transition: all 0.95s; + -webkit-transition: all 0.95s; + transition: all 0.95s; } + +.info-box.hover-expand-effect:hover:after { + width: 100%; } + +.info-box-2 { + box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); + height: 80px; + display: flex; + cursor: default; + background-color: #fff; + position: relative; + overflow: hidden; + margin-bottom: 30px; } + .info-box-2 .icon { + display: inline-block; + text-align: center; + width: 80px; } + .info-box-2 .icon i { + color: #fff; + font-size: 50px; + line-height: 80px; } + .info-box-2 .chart.chart-bar { + height: 100%; + line-height: 105px; } + .info-box-2 .chart.chart-bar canvas { + vertical-align: baseline !important; } + .info-box-2 .chart.chart-pie { + height: 100%; + line-height: 123px; } + .info-box-2 .chart.chart-pie canvas { + vertical-align: baseline !important; } + .info-box-2 .chart.chart-line { + height: 100%; + line-height: 115px; } + .info-box-2 .chart.chart-line canvas { + vertical-align: baseline !important; } + .info-box-2 .content { + display: inline-block; + padding: 7px 10px; } + .info-box-2 .content .text { + font-size: 13px; + margin-top: 11px; + color: #555; } + .info-box-2 .content .number { + font-weight: normal; + font-size: 26px; + margin-top: -4px; + color: #555; } + +.info-box-2.hover-zoom-effect .icon { + overflow: hidden; } + .info-box-2.hover-zoom-effect .icon i { + -moz-transition: all 0.3s ease; + -o-transition: all 0.3s ease; + -webkit-transition: all 0.3s ease; + transition: all 0.3s ease; } + +.info-box-2.hover-zoom-effect:hover .icon i { + opacity: 0.4; + -moz-transform: rotate(-32deg) scale(1.4); + -ms-transform: rotate(-32deg) scale(1.4); + -o-transform: rotate(-32deg) scale(1.4); + -webkit-transform: rotate(-32deg) scale(1.4); + transform: rotate(-32deg) scale(1.4); } + +.info-box-2.hover-expand-effect:after { + background-color: rgba(0, 0, 0, 0.05); + content: "."; + position: absolute; + left: 0; + top: 0; + width: 0; + height: 100%; + color: transparent; + -moz-transition: all 0.95s; + -o-transition: all 0.95s; + -webkit-transition: all 0.95s; + transition: all 0.95s; } + +.info-box-2.hover-expand-effect:hover:after { + width: 100%; } + +.info-box-3 { + box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); + height: 80px; + display: flex; + cursor: default; + background-color: #fff; + position: relative; + overflow: hidden; + margin-bottom: 30px; } + .info-box-3 .icon { + position: absolute; + right: 10px; + bottom: 2px; + text-align: center; } + .info-box-3 .icon i { + color: rgba(0, 0, 0, 0.15); + font-size: 60px; } + .info-box-3 .chart { + margin-right: 5px; } + .info-box-3 .chart.chart-bar { + height: 100%; + line-height: 50px; } + .info-box-3 .chart.chart-bar canvas { + vertical-align: baseline !important; } + .info-box-3 .chart.chart-pie { + height: 100%; + line-height: 34px; } + .info-box-3 .chart.chart-pie canvas { + vertical-align: baseline !important; } + .info-box-3 .chart.chart-line { + height: 100%; + line-height: 40px; } + .info-box-3 .chart.chart-line canvas { + vertical-align: baseline !important; } + .info-box-3 .content { + display: inline-block; + padding: 7px 16px; } + .info-box-3 .content .text { + font-size: 13px; + margin-top: 11px; + color: #555; } + .info-box-3 .content .number { + font-weight: normal; + font-size: 26px; + margin-top: -4px; + color: #555; } + +.info-box-3.hover-zoom-effect .icon i { + -moz-transition: all 0.3s ease; + -o-transition: all 0.3s ease; + -webkit-transition: all 0.3s ease; + transition: all 0.3s ease; } + +.info-box-3.hover-zoom-effect:hover .icon i { + opacity: 0.4; + -moz-transform: rotate(-32deg) scale(1.4); + -ms-transform: rotate(-32deg) scale(1.4); + -o-transform: rotate(-32deg) scale(1.4); + -webkit-transform: rotate(-32deg) scale(1.4); + transform: rotate(-32deg) scale(1.4); } + +.info-box-3.hover-expand-effect:after { + background-color: rgba(0, 0, 0, 0.05); + content: "."; + position: absolute; + left: 0; + top: 0; + width: 0; + height: 100%; + color: transparent; + -moz-transition: all 0.95s; + -o-transition: all 0.95s; + -webkit-transition: all 0.95s; + transition: all 0.95s; } + +.info-box-3.hover-expand-effect:hover:after { + width: 100%; } + +.info-box-4 { + box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); + height: 80px; + display: flex; + cursor: default; + background-color: #fff; + position: relative; + overflow: hidden; + margin-bottom: 30px; } + .info-box-4 .icon { + position: absolute; + right: 10px; + bottom: 2px; + text-align: center; } + .info-box-4 .icon i { + color: rgba(0, 0, 0, 0.15); + font-size: 60px; } + .info-box-4 .chart { + margin-right: 5px; } + .info-box-4 .chart.chart-bar { + height: 100%; + line-height: 50px; } + .info-box-4 .chart.chart-bar canvas { + vertical-align: baseline !important; } + .info-box-4 .chart.chart-pie { + height: 100%; + line-height: 34px; } + .info-box-4 .chart.chart-pie canvas { + vertical-align: baseline !important; } + .info-box-4 .chart.chart-line { + height: 100%; + line-height: 40px; } + .info-box-4 .chart.chart-line canvas { + vertical-align: baseline !important; } + .info-box-4 .content { + display: inline-block; + padding: 7px 16px; } + .info-box-4 .content .text { + font-size: 13px; + margin-top: 11px; + color: #555; } + .info-box-4 .content .number { + font-weight: normal; + font-size: 26px; + margin-top: -4px; + color: #555; } + +.info-box-4.hover-zoom-effect .icon i { + -moz-transition: all 0.3s ease; + -o-transition: all 0.3s ease; + -webkit-transition: all 0.3s ease; + transition: all 0.3s ease; } + +.info-box-4.hover-zoom-effect:hover .icon i { + opacity: 0.4; + -moz-transform: rotate(-32deg) scale(1.4); + -ms-transform: rotate(-32deg) scale(1.4); + -o-transform: rotate(-32deg) scale(1.4); + -webkit-transform: rotate(-32deg) scale(1.4); + transform: rotate(-32deg) scale(1.4); } + +.info-box-4.hover-expand-effect:after { + background-color: rgba(0, 0, 0, 0.05); + content: "."; + position: absolute; + left: 0; + top: 0; + width: 0; + height: 100%; + color: transparent; + -moz-transition: all 0.95s; + -o-transition: all 0.95s; + -webkit-transition: all 0.95s; + transition: all 0.95s; } + +.info-box-4.hover-expand-effect:hover:after { + width: 100%; } + +/* Alerts ====================================== */ +.alert { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + -webkit-box-shadow: none; + -moz-box-shadow: none; + -ms-box-shadow: none; + box-shadow: none; + border: none; + color: #fff !important; } + .alert .alert-link { + color: #fff; + text-decoration: underline; + font-weight: bold; } + +.alert-success { + background-color: #2b982b; } + +.alert-info { + background-color: #00b0e4; } + +.alert-warning { + background-color: #ff9600 !important; } + +.alert-danger { + background-color: #fb483a !important; } + +.alert-dismissible .close { + color: #fff; + opacity: 1; + border: none; + text-shadow: none; } + +/* Dialogs (SweetAlert) ======================== */ +.sweet-alert { + -webkit-border-radius: 0 !important; + -moz-border-radius: 0 !important; + -ms-border-radius: 0 !important; + border-radius: 0 !important; } + .sweet-alert p { + font-size: 14px !important; } + .sweet-alert .sa-input-error { + top: 23px !important; + right: 13px !important; } + .sweet-alert h2 { + font-size: 18px !important; + margin: 0 0 5px 0 !important; } + .sweet-alert button { + font-size: 15px !important; + -webkit-border-radius: 0 !important; + -moz-border-radius: 0 !important; + -ms-border-radius: 0 !important; + border-radius: 0 !important; + padding: 5px 20px !important; } + +/* Checkbox & Radio ============================ */ +[type="checkbox"] + label { + padding-left: 26px; + height: 25px; + line-height: 21px; + font-size: 13px; + font-weight: normal; } + +[type="checkbox"]:checked + label:before { + top: -4px; + left: -2px; + width: 11px; + height: 19px; } + +[type="checkbox"]:checked.chk-col-red + label:before { + border-right: 2px solid #F44336; + border-bottom: 2px solid #F44336; } + +[type="checkbox"]:checked.chk-col-pink + label:before { + border-right: 2px solid #E91E63; + border-bottom: 2px solid #E91E63; } + +[type="checkbox"]:checked.chk-col-purple + label:before { + border-right: 2px solid #9C27B0; + border-bottom: 2px solid #9C27B0; } + +[type="checkbox"]:checked.chk-col-deep-purple + label:before { + border-right: 2px solid #673AB7; + border-bottom: 2px solid #673AB7; } + +[type="checkbox"]:checked.chk-col-indigo + label:before { + border-right: 2px solid #3F51B5; + border-bottom: 2px solid #3F51B5; } + +[type="checkbox"]:checked.chk-col-blue + label:before { + border-right: 2px solid #2196F3; + border-bottom: 2px solid #2196F3; } + +[type="checkbox"]:checked.chk-col-light-blue + label:before { + border-right: 2px solid #03A9F4; + border-bottom: 2px solid #03A9F4; } + +[type="checkbox"]:checked.chk-col-cyan + label:before { + border-right: 2px solid #00BCD4; + border-bottom: 2px solid #00BCD4; } + +[type="checkbox"]:checked.chk-col-teal + label:before { + border-right: 2px solid #009688; + border-bottom: 2px solid #009688; } + +[type="checkbox"]:checked.chk-col-green + label:before { + border-right: 2px solid #4CAF50; + border-bottom: 2px solid #4CAF50; } + +[type="checkbox"]:checked.chk-col-light-green + label:before { + border-right: 2px solid #8BC34A; + border-bottom: 2px solid #8BC34A; } + +[type="checkbox"]:checked.chk-col-lime + label:before { + border-right: 2px solid #CDDC39; + border-bottom: 2px solid #CDDC39; } + +[type="checkbox"]:checked.chk-col-yellow + label:before { + border-right: 2px solid #ffe821; + border-bottom: 2px solid #ffe821; } + +[type="checkbox"]:checked.chk-col-amber + label:before { + border-right: 2px solid #FFC107; + border-bottom: 2px solid #FFC107; } + +[type="checkbox"]:checked.chk-col-orange + label:before { + border-right: 2px solid #FF9800; + border-bottom: 2px solid #FF9800; } + +[type="checkbox"]:checked.chk-col-deep-orange + label:before { + border-right: 2px solid #FF5722; + border-bottom: 2px solid #FF5722; } + +[type="checkbox"]:checked.chk-col-brown + label:before { + border-right: 2px solid #795548; + border-bottom: 2px solid #795548; } + +[type="checkbox"]:checked.chk-col-grey + label:before { + border-right: 2px solid #9E9E9E; + border-bottom: 2px solid #9E9E9E; } + +[type="checkbox"]:checked.chk-col-blue-grey + label:before { + border-right: 2px solid #607D8B; + border-bottom: 2px solid #607D8B; } + +[type="checkbox"]:checked.chk-col-black + label:before { + border-right: 2px solid #000000; + border-bottom: 2px solid #000000; } + +[type="checkbox"]:checked.chk-col-white + label:before { + border-right: 2px solid #ffffff; + border-bottom: 2px solid #ffffff; } + +[type="checkbox"].filled-in:checked + label:after { + top: 0; + width: 20px; + height: 20px; + border: 2px solid #26a69a; + background-color: #26a69a; + z-index: 0; } + +[type="checkbox"].filled-in:checked + label:before { + border-right: 2px solid #fff !important; + border-bottom: 2px solid #fff !important; } + +[type="checkbox"].filled-in:checked.chk-col-red + label:after { + border: 2px solid #F44336; + background-color: #F44336; } + +[type="checkbox"].filled-in:checked.chk-col-pink + label:after { + border: 2px solid #E91E63; + background-color: #E91E63; } + +[type="checkbox"].filled-in:checked.chk-col-purple + label:after { + border: 2px solid #9C27B0; + background-color: #9C27B0; } + +[type="checkbox"].filled-in:checked.chk-col-deep-purple + label:after { + border: 2px solid #673AB7; + background-color: #673AB7; } + +[type="checkbox"].filled-in:checked.chk-col-indigo + label:after { + border: 2px solid #3F51B5; + background-color: #3F51B5; } + +[type="checkbox"].filled-in:checked.chk-col-blue + label:after { + border: 2px solid #2196F3; + background-color: #2196F3; } + +[type="checkbox"].filled-in:checked.chk-col-light-blue + label:after { + border: 2px solid #03A9F4; + background-color: #03A9F4; } + +[type="checkbox"].filled-in:checked.chk-col-cyan + label:after { + border: 2px solid #00BCD4; + background-color: #00BCD4; } + +[type="checkbox"].filled-in:checked.chk-col-teal + label:after { + border: 2px solid #009688; + background-color: #009688; } + +[type="checkbox"].filled-in:checked.chk-col-green + label:after { + border: 2px solid #4CAF50; + background-color: #4CAF50; } + +[type="checkbox"].filled-in:checked.chk-col-light-green + label:after { + border: 2px solid #8BC34A; + background-color: #8BC34A; } + +[type="checkbox"].filled-in:checked.chk-col-lime + label:after { + border: 2px solid #CDDC39; + background-color: #CDDC39; } + +[type="checkbox"].filled-in:checked.chk-col-yellow + label:after { + border: 2px solid #ffe821; + background-color: #ffe821; } + +[type="checkbox"].filled-in:checked.chk-col-amber + label:after { + border: 2px solid #FFC107; + background-color: #FFC107; } + +[type="checkbox"].filled-in:checked.chk-col-orange + label:after { + border: 2px solid #FF9800; + background-color: #FF9800; } + +[type="checkbox"].filled-in:checked.chk-col-deep-orange + label:after { + border: 2px solid #FF5722; + background-color: #FF5722; } + +[type="checkbox"].filled-in:checked.chk-col-brown + label:after { + border: 2px solid #795548; + background-color: #795548; } + +[type="checkbox"].filled-in:checked.chk-col-grey + label:after { + border: 2px solid #9E9E9E; + background-color: #9E9E9E; } + +[type="checkbox"].filled-in:checked.chk-col-blue-grey + label:after { + border: 2px solid #607D8B; + background-color: #607D8B; } + +[type="checkbox"].filled-in:checked.chk-col-black + label:after { + border: 2px solid #000000; + background-color: #000000; } + +[type="checkbox"].filled-in:checked.chk-col-white + label:after { + border: 2px solid #ffffff; + background-color: #ffffff; } + +[type="radio"]:not(:checked) + label { + padding-left: 26px; + height: 25px; + line-height: 25px; + font-size: 13px; + font-weight: normal; } + +[type="radio"]:checked + label { + padding-left: 26px; + height: 25px; + line-height: 25px; + font-size: 13px; + font-weight: normal; } + +[type="radio"].radio-col-red:checked + label:after { + background-color: #F44336; + border-color: #F44336; } + +[type="radio"].radio-col-pink:checked + label:after { + background-color: #E91E63; + border-color: #E91E63; } + +[type="radio"].radio-col-purple:checked + label:after { + background-color: #9C27B0; + border-color: #9C27B0; } + +[type="radio"].radio-col-deep-purple:checked + label:after { + background-color: #673AB7; + border-color: #673AB7; } + +[type="radio"].radio-col-indigo:checked + label:after { + background-color: #3F51B5; + border-color: #3F51B5; } + +[type="radio"].radio-col-blue:checked + label:after { + background-color: #2196F3; + border-color: #2196F3; } + +[type="radio"].radio-col-light-blue:checked + label:after { + background-color: #03A9F4; + border-color: #03A9F4; } + +[type="radio"].radio-col-cyan:checked + label:after { + background-color: #00BCD4; + border-color: #00BCD4; } + +[type="radio"].radio-col-teal:checked + label:after { + background-color: #009688; + border-color: #009688; } + +[type="radio"].radio-col-green:checked + label:after { + background-color: #4CAF50; + border-color: #4CAF50; } + +[type="radio"].radio-col-light-green:checked + label:after { + background-color: #8BC34A; + border-color: #8BC34A; } + +[type="radio"].radio-col-lime:checked + label:after { + background-color: #CDDC39; + border-color: #CDDC39; } + +[type="radio"].radio-col-yellow:checked + label:after { + background-color: #ffe821; + border-color: #ffe821; } + +[type="radio"].radio-col-amber:checked + label:after { + background-color: #FFC107; + border-color: #FFC107; } + +[type="radio"].radio-col-orange:checked + label:after { + background-color: #FF9800; + border-color: #FF9800; } + +[type="radio"].radio-col-deep-orange:checked + label:after { + background-color: #FF5722; + border-color: #FF5722; } + +[type="radio"].radio-col-brown:checked + label:after { + background-color: #795548; + border-color: #795548; } + +[type="radio"].radio-col-grey:checked + label:after { + background-color: #9E9E9E; + border-color: #9E9E9E; } + +[type="radio"].radio-col-blue-grey:checked + label:after { + background-color: #607D8B; + border-color: #607D8B; } + +[type="radio"].radio-col-black:checked + label:after { + background-color: #000000; + border-color: #000000; } + +[type="radio"].radio-col-white:checked + label:after { + background-color: #ffffff; + border-color: #ffffff; } + +[type="radio"].with-gap.radio-col-red:checked + label:before { + border: 2px solid #F44336; } + +[type="radio"].with-gap.radio-col-red:checked + label:after { + background-color: #F44336; + border: 2px solid #F44336; } + +[type="radio"].with-gap.radio-col-pink:checked + label:before { + border: 2px solid #E91E63; } + +[type="radio"].with-gap.radio-col-pink:checked + label:after { + background-color: #E91E63; + border: 2px solid #E91E63; } + +[type="radio"].with-gap.radio-col-purple:checked + label:before { + border: 2px solid #9C27B0; } + +[type="radio"].with-gap.radio-col-purple:checked + label:after { + background-color: #9C27B0; + border: 2px solid #9C27B0; } + +[type="radio"].with-gap.radio-col-deep-purple:checked + label:before { + border: 2px solid #673AB7; } + +[type="radio"].with-gap.radio-col-deep-purple:checked + label:after { + background-color: #673AB7; + border: 2px solid #673AB7; } + +[type="radio"].with-gap.radio-col-indigo:checked + label:before { + border: 2px solid #3F51B5; } + +[type="radio"].with-gap.radio-col-indigo:checked + label:after { + background-color: #3F51B5; + border: 2px solid #3F51B5; } + +[type="radio"].with-gap.radio-col-blue:checked + label:before { + border: 2px solid #2196F3; } + +[type="radio"].with-gap.radio-col-blue:checked + label:after { + background-color: #2196F3; + border: 2px solid #2196F3; } + +[type="radio"].with-gap.radio-col-light-blue:checked + label:before { + border: 2px solid #03A9F4; } + +[type="radio"].with-gap.radio-col-light-blue:checked + label:after { + background-color: #03A9F4; + border: 2px solid #03A9F4; } + +[type="radio"].with-gap.radio-col-cyan:checked + label:before { + border: 2px solid #00BCD4; } + +[type="radio"].with-gap.radio-col-cyan:checked + label:after { + background-color: #00BCD4; + border: 2px solid #00BCD4; } + +[type="radio"].with-gap.radio-col-teal:checked + label:before { + border: 2px solid #009688; } + +[type="radio"].with-gap.radio-col-teal:checked + label:after { + background-color: #009688; + border: 2px solid #009688; } + +[type="radio"].with-gap.radio-col-green:checked + label:before { + border: 2px solid #4CAF50; } + +[type="radio"].with-gap.radio-col-green:checked + label:after { + background-color: #4CAF50; + border: 2px solid #4CAF50; } + +[type="radio"].with-gap.radio-col-light-green:checked + label:before { + border: 2px solid #8BC34A; } + +[type="radio"].with-gap.radio-col-light-green:checked + label:after { + background-color: #8BC34A; + border: 2px solid #8BC34A; } + +[type="radio"].with-gap.radio-col-lime:checked + label:before { + border: 2px solid #CDDC39; } + +[type="radio"].with-gap.radio-col-lime:checked + label:after { + background-color: #CDDC39; + border: 2px solid #CDDC39; } + +[type="radio"].with-gap.radio-col-yellow:checked + label:before { + border: 2px solid #ffe821; } + +[type="radio"].with-gap.radio-col-yellow:checked + label:after { + background-color: #ffe821; + border: 2px solid #ffe821; } + +[type="radio"].with-gap.radio-col-amber:checked + label:before { + border: 2px solid #FFC107; } + +[type="radio"].with-gap.radio-col-amber:checked + label:after { + background-color: #FFC107; + border: 2px solid #FFC107; } + +[type="radio"].with-gap.radio-col-orange:checked + label:before { + border: 2px solid #FF9800; } + +[type="radio"].with-gap.radio-col-orange:checked + label:after { + background-color: #FF9800; + border: 2px solid #FF9800; } + +[type="radio"].with-gap.radio-col-deep-orange:checked + label:before { + border: 2px solid #FF5722; } + +[type="radio"].with-gap.radio-col-deep-orange:checked + label:after { + background-color: #FF5722; + border: 2px solid #FF5722; } + +[type="radio"].with-gap.radio-col-brown:checked + label:before { + border: 2px solid #795548; } + +[type="radio"].with-gap.radio-col-brown:checked + label:after { + background-color: #795548; + border: 2px solid #795548; } + +[type="radio"].with-gap.radio-col-grey:checked + label:before { + border: 2px solid #9E9E9E; } + +[type="radio"].with-gap.radio-col-grey:checked + label:after { + background-color: #9E9E9E; + border: 2px solid #9E9E9E; } + +[type="radio"].with-gap.radio-col-blue-grey:checked + label:before { + border: 2px solid #607D8B; } + +[type="radio"].with-gap.radio-col-blue-grey:checked + label:after { + background-color: #607D8B; + border: 2px solid #607D8B; } + +[type="radio"].with-gap.radio-col-black:checked + label:before { + border: 2px solid #000000; } + +[type="radio"].with-gap.radio-col-black:checked + label:after { + background-color: #000000; + border: 2px solid #000000; } + +[type="radio"].with-gap.radio-col-white:checked + label:before { + border: 2px solid #ffffff; } + +[type="radio"].with-gap.radio-col-white:checked + label:after { + background-color: #ffffff; + border: 2px solid #ffffff; } + +/* Switch ====================================== */ +.switch label { + font-weight: normal; + font-size: 13px; } + .switch label .lever { + margin: 0 14px; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-red:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(244, 67, 54, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-red { + background-color: rgba(244, 67, 54, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-red:after { + background-color: #F44336; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-pink:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(233, 30, 99, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-pink { + background-color: rgba(233, 30, 99, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-pink:after { + background-color: #E91E63; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-purple:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(156, 39, 176, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-purple { + background-color: rgba(156, 39, 176, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-purple:after { + background-color: #9C27B0; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-deep-purple:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(103, 58, 183, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-deep-purple { + background-color: rgba(103, 58, 183, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-deep-purple:after { + background-color: #673AB7; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-indigo:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(63, 81, 181, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-indigo { + background-color: rgba(63, 81, 181, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-indigo:after { + background-color: #3F51B5; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-blue:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(33, 150, 243, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-blue { + background-color: rgba(33, 150, 243, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-blue:after { + background-color: #2196F3; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-light-blue:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(3, 169, 244, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-light-blue { + background-color: rgba(3, 169, 244, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-light-blue:after { + background-color: #03A9F4; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-cyan:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 188, 212, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-cyan { + background-color: rgba(0, 188, 212, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-cyan:after { + background-color: #00BCD4; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-teal:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 150, 136, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-teal { + background-color: rgba(0, 150, 136, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-teal:after { + background-color: #009688; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-green:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(76, 175, 80, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-green { + background-color: rgba(76, 175, 80, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-green:after { + background-color: #4CAF50; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-light-green:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(139, 195, 74, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-light-green { + background-color: rgba(139, 195, 74, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-light-green:after { + background-color: #8BC34A; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-lime:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(205, 220, 57, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-lime { + background-color: rgba(205, 220, 57, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-lime:after { + background-color: #CDDC39; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-yellow:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(255, 232, 33, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-yellow { + background-color: rgba(255, 232, 33, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-yellow:after { + background-color: #ffe821; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-amber:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(255, 193, 7, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-amber { + background-color: rgba(255, 193, 7, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-amber:after { + background-color: #FFC107; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-orange:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(255, 152, 0, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-orange { + background-color: rgba(255, 152, 0, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-orange:after { + background-color: #FF9800; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-deep-orange:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(255, 87, 34, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-deep-orange { + background-color: rgba(255, 87, 34, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-deep-orange:after { + background-color: #FF5722; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-brown:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(121, 85, 72, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-brown { + background-color: rgba(121, 85, 72, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-brown:after { + background-color: #795548; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-grey:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(158, 158, 158, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-grey { + background-color: rgba(158, 158, 158, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-grey:after { + background-color: #9E9E9E; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-blue-grey:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(96, 125, 139, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-blue-grey { + background-color: rgba(96, 125, 139, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-blue-grey:after { + background-color: #607D8B; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-black:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 0, 0, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-black { + background-color: rgba(0, 0, 0, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-black:after { + background-color: #000000; } + .switch label input[type=checkbox]:checked:not(:disabled) ~ .lever.switch-col-white:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(255, 255, 255, 0.1); } + .switch label input[type=checkbox]:checked + .lever.switch-col-white { + background-color: rgba(255, 255, 255, 0.5); } + .switch label input[type=checkbox]:checked + .lever.switch-col-white:after { + background-color: #ffffff; } + +/* DateTime Picker ============================= */ +.dtp div.dtp-date, +.dtp div.dtp-time { + background: #007d72; } + +.dtp > .dtp-content > .dtp-date-view > header.dtp-header { + background: #009688; } + +.dtp .dtp-buttons .dtp-btn-ok { + margin-left: 10px; } + +.dtp .dtp-buttons .dtp-btn-clear { + margin-right: 10px !important; } + +.dtp .p10 > a { + color: #fff; } + +.dtp div.dtp-actual-year { + font-size: 1.5em; + color: #ffffff; } + +.dtp table.dtp-picker-days tr td a.selected { + background: #007d72; + color: #fff; } + +/* Bootstrap Select ============================ */ +.bootstrap-select { + box-shadow: none !important; + border-bottom: 1px solid #ddd !important; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + .bootstrap-select .dropdown-toggle:focus, .bootstrap-select .dropdown-toggle:active { + outline: none !important; } + .bootstrap-select .bs-searchbox, + .bootstrap-select .bs-actionsbox, + .bootstrap-select .bs-donebutton { + padding: 0 0 5px 0; + border-bottom: 1px solid #e9e9e9; } + .bootstrap-select .bs-searchbox .form-control, + .bootstrap-select .bs-actionsbox .form-control, + .bootstrap-select .bs-donebutton .form-control { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + -webkit-box-shadow: none !important; + -moz-box-shadow: none !important; + -ms-box-shadow: none !important; + box-shadow: none !important; + border: none; + margin-left: 30px; } + .bootstrap-select .bs-searchbox { + position: relative; } + .bootstrap-select .bs-searchbox:after { + content: '\E8B6'; + font-family: 'Material Icons'; + position: absolute; + top: 0; + left: 10px; + font-size: 25px; } + .bootstrap-select ul.dropdown-menu { + margin-top: 0 !important; } + .bootstrap-select .dropdown-menu li.selected a { + background-color: #eee !important; + color: #555 !important; } + .bootstrap-select .dropdown-menu .active a { + background-color: transparent; + color: #333 !important; } + .bootstrap-select .dropdown-menu .notify { + background-color: #F44336 !important; + color: #fff !important; + border: none !important; } + +.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark { + margin-top: 9px; } + +/* Tooltip & Popovers ========================== */ +.tooltip { + font-size: 13px; } + .tooltip .tooltip-inner { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + +.popover { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + border: 1px solid rgba(0, 0, 0, 0.08); } + .popover .popover-title { + font-weight: bold; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + background-color: #e9e9e9; + border-bottom: 1px solid #ddd; } + .popover .popover-content { + font-size: 13px; + color: #777; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + +/* Nav Tabs ==================================== */ +.nav-tabs { + border-bottom: 2px solid #eee; } + .nav-tabs > li { + position: relative; + top: 3px; + left: -2px; } + .nav-tabs > li > a { + border: none !important; + color: #999 !important; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + .nav-tabs > li > a:hover, .nav-tabs > li > a:active, .nav-tabs > li > a:focus { + background-color: transparent !important; } + .nav-tabs > li > a:before { + content: ''; + position: absolute; + left: 0; + width: 100%; + height: 0; + border-bottom: 2px solid #2196F3; + bottom: 2px; + -moz-transform: scaleX(0); + -ms-transform: scaleX(0); + -o-transform: scaleX(0); + -webkit-transform: scaleX(0); + transform: scaleX(0); + -moz-transition: 0.1s ease-in; + -o-transition: 0.1s ease-in; + -webkit-transition: 0.1s ease-in; + transition: 0.1s ease-in; } + .nav-tabs > li > a .material-icons { + position: relative; + top: 7px; + margin-bottom: 8px; } + .nav-tabs li.active a { + color: #222 !important; } + .nav-tabs li.active a:hover, .nav-tabs li.active a:active, .nav-tabs li.active a:focus { + background-color: transparent !important; } + .nav-tabs li.active a:before { + -moz-transform: scaleX(1); + -ms-transform: scaleX(1); + -o-transform: scaleX(1); + -webkit-transform: scaleX(1); + transform: scaleX(1); } + .nav-tabs + .tab-content { + padding: 15px 0; } + +.nav-tabs.tab-col-red > li > a:before { + border-bottom: 2px solid #F44336; } + +.nav-tabs.tab-col-pink > li > a:before { + border-bottom: 2px solid #E91E63; } + +.nav-tabs.tab-col-purple > li > a:before { + border-bottom: 2px solid #9C27B0; } + +.nav-tabs.tab-col-deep-purple > li > a:before { + border-bottom: 2px solid #673AB7; } + +.nav-tabs.tab-col-indigo > li > a:before { + border-bottom: 2px solid #3F51B5; } + +.nav-tabs.tab-col-blue > li > a:before { + border-bottom: 2px solid #2196F3; } + +.nav-tabs.tab-col-light-blue > li > a:before { + border-bottom: 2px solid #03A9F4; } + +.nav-tabs.tab-col-cyan > li > a:before { + border-bottom: 2px solid #00BCD4; } + +.nav-tabs.tab-col-teal > li > a:before { + border-bottom: 2px solid #009688; } + +.nav-tabs.tab-col-green > li > a:before { + border-bottom: 2px solid #4CAF50; } + +.nav-tabs.tab-col-light-green > li > a:before { + border-bottom: 2px solid #8BC34A; } + +.nav-tabs.tab-col-lime > li > a:before { + border-bottom: 2px solid #CDDC39; } + +.nav-tabs.tab-col-yellow > li > a:before { + border-bottom: 2px solid #ffe821; } + +.nav-tabs.tab-col-amber > li > a:before { + border-bottom: 2px solid #FFC107; } + +.nav-tabs.tab-col-orange > li > a:before { + border-bottom: 2px solid #FF9800; } + +.nav-tabs.tab-col-deep-orange > li > a:before { + border-bottom: 2px solid #FF5722; } + +.nav-tabs.tab-col-brown > li > a:before { + border-bottom: 2px solid #795548; } + +.nav-tabs.tab-col-grey > li > a:before { + border-bottom: 2px solid #9E9E9E; } + +.nav-tabs.tab-col-blue-grey > li > a:before { + border-bottom: 2px solid #607D8B; } + +.nav-tabs.tab-col-black > li > a:before { + border-bottom: 2px solid #000000; } + +.nav-tabs.tab-col-white > li > a:before { + border-bottom: 2px solid #ffffff; } + +/* Thumbnails ================================== */ +.thumbnail { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + .thumbnail p:not(button) { + color: #999999; + font-size: 14px; } + .thumbnail h3 { + font-weight: bold; + font-size: 17px; } + +/* Modals ====================================== */ +.modal .modal-header { + border: none; + padding: 25px 25px 5px 25px; } + .modal .modal-header .modal-title { + font-weight: bold; + font-size: 16px; } + +.modal .modal-content { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + box-shadow: 0 5px 20px rgba(0, 0, 0, 0.31) !important; + border: none; } + .modal .modal-content .modal-body { + color: #777; + padding: 15px 25px; } + +.modal .modal-footer { + border: none; } + +.modal-col-red { + background-color: #F44336; } + .modal-col-red .modal-body, + .modal-col-red .modal-title { + color: #fff !important; } + .modal-col-red .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-red .modal-footer .btn-link { + color: #fff !important; } + .modal-col-red .modal-footer .btn-link:hover, .modal-col-red .modal-footer .btn-link:active, .modal-col-red .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-pink { + background-color: #E91E63; } + .modal-col-pink .modal-body, + .modal-col-pink .modal-title { + color: #fff !important; } + .modal-col-pink .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-pink .modal-footer .btn-link { + color: #fff !important; } + .modal-col-pink .modal-footer .btn-link:hover, .modal-col-pink .modal-footer .btn-link:active, .modal-col-pink .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-purple { + background-color: #9C27B0; } + .modal-col-purple .modal-body, + .modal-col-purple .modal-title { + color: #fff !important; } + .modal-col-purple .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-purple .modal-footer .btn-link { + color: #fff !important; } + .modal-col-purple .modal-footer .btn-link:hover, .modal-col-purple .modal-footer .btn-link:active, .modal-col-purple .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-deep-purple { + background-color: #673AB7; } + .modal-col-deep-purple .modal-body, + .modal-col-deep-purple .modal-title { + color: #fff !important; } + .modal-col-deep-purple .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-deep-purple .modal-footer .btn-link { + color: #fff !important; } + .modal-col-deep-purple .modal-footer .btn-link:hover, .modal-col-deep-purple .modal-footer .btn-link:active, .modal-col-deep-purple .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-indigo { + background-color: #3F51B5; } + .modal-col-indigo .modal-body, + .modal-col-indigo .modal-title { + color: #fff !important; } + .modal-col-indigo .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-indigo .modal-footer .btn-link { + color: #fff !important; } + .modal-col-indigo .modal-footer .btn-link:hover, .modal-col-indigo .modal-footer .btn-link:active, .modal-col-indigo .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-blue { + background-color: #2196F3; } + .modal-col-blue .modal-body, + .modal-col-blue .modal-title { + color: #fff !important; } + .modal-col-blue .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-blue .modal-footer .btn-link { + color: #fff !important; } + .modal-col-blue .modal-footer .btn-link:hover, .modal-col-blue .modal-footer .btn-link:active, .modal-col-blue .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-light-blue { + background-color: #03A9F4; } + .modal-col-light-blue .modal-body, + .modal-col-light-blue .modal-title { + color: #fff !important; } + .modal-col-light-blue .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-light-blue .modal-footer .btn-link { + color: #fff !important; } + .modal-col-light-blue .modal-footer .btn-link:hover, .modal-col-light-blue .modal-footer .btn-link:active, .modal-col-light-blue .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-cyan { + background-color: #00BCD4; } + .modal-col-cyan .modal-body, + .modal-col-cyan .modal-title { + color: #fff !important; } + .modal-col-cyan .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-cyan .modal-footer .btn-link { + color: #fff !important; } + .modal-col-cyan .modal-footer .btn-link:hover, .modal-col-cyan .modal-footer .btn-link:active, .modal-col-cyan .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-teal { + background-color: #009688; } + .modal-col-teal .modal-body, + .modal-col-teal .modal-title { + color: #fff !important; } + .modal-col-teal .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-teal .modal-footer .btn-link { + color: #fff !important; } + .modal-col-teal .modal-footer .btn-link:hover, .modal-col-teal .modal-footer .btn-link:active, .modal-col-teal .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-green { + background-color: #4CAF50; } + .modal-col-green .modal-body, + .modal-col-green .modal-title { + color: #fff !important; } + .modal-col-green .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-green .modal-footer .btn-link { + color: #fff !important; } + .modal-col-green .modal-footer .btn-link:hover, .modal-col-green .modal-footer .btn-link:active, .modal-col-green .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-light-green { + background-color: #8BC34A; } + .modal-col-light-green .modal-body, + .modal-col-light-green .modal-title { + color: #fff !important; } + .modal-col-light-green .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-light-green .modal-footer .btn-link { + color: #fff !important; } + .modal-col-light-green .modal-footer .btn-link:hover, .modal-col-light-green .modal-footer .btn-link:active, .modal-col-light-green .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-lime { + background-color: #CDDC39; } + .modal-col-lime .modal-body, + .modal-col-lime .modal-title { + color: #fff !important; } + .modal-col-lime .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-lime .modal-footer .btn-link { + color: #fff !important; } + .modal-col-lime .modal-footer .btn-link:hover, .modal-col-lime .modal-footer .btn-link:active, .modal-col-lime .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-yellow { + background-color: #ffe821; } + .modal-col-yellow .modal-body, + .modal-col-yellow .modal-title { + color: #fff !important; } + .modal-col-yellow .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-yellow .modal-footer .btn-link { + color: #fff !important; } + .modal-col-yellow .modal-footer .btn-link:hover, .modal-col-yellow .modal-footer .btn-link:active, .modal-col-yellow .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-amber { + background-color: #FFC107; } + .modal-col-amber .modal-body, + .modal-col-amber .modal-title { + color: #fff !important; } + .modal-col-amber .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-amber .modal-footer .btn-link { + color: #fff !important; } + .modal-col-amber .modal-footer .btn-link:hover, .modal-col-amber .modal-footer .btn-link:active, .modal-col-amber .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-orange { + background-color: #FF9800; } + .modal-col-orange .modal-body, + .modal-col-orange .modal-title { + color: #fff !important; } + .modal-col-orange .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-orange .modal-footer .btn-link { + color: #fff !important; } + .modal-col-orange .modal-footer .btn-link:hover, .modal-col-orange .modal-footer .btn-link:active, .modal-col-orange .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-deep-orange { + background-color: #FF5722; } + .modal-col-deep-orange .modal-body, + .modal-col-deep-orange .modal-title { + color: #fff !important; } + .modal-col-deep-orange .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-deep-orange .modal-footer .btn-link { + color: #fff !important; } + .modal-col-deep-orange .modal-footer .btn-link:hover, .modal-col-deep-orange .modal-footer .btn-link:active, .modal-col-deep-orange .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-brown { + background-color: #795548; } + .modal-col-brown .modal-body, + .modal-col-brown .modal-title { + color: #fff !important; } + .modal-col-brown .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-brown .modal-footer .btn-link { + color: #fff !important; } + .modal-col-brown .modal-footer .btn-link:hover, .modal-col-brown .modal-footer .btn-link:active, .modal-col-brown .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-grey { + background-color: #9E9E9E; } + .modal-col-grey .modal-body, + .modal-col-grey .modal-title { + color: #fff !important; } + .modal-col-grey .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-grey .modal-footer .btn-link { + color: #fff !important; } + .modal-col-grey .modal-footer .btn-link:hover, .modal-col-grey .modal-footer .btn-link:active, .modal-col-grey .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-blue-grey { + background-color: #607D8B; } + .modal-col-blue-grey .modal-body, + .modal-col-blue-grey .modal-title { + color: #fff !important; } + .modal-col-blue-grey .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-blue-grey .modal-footer .btn-link { + color: #fff !important; } + .modal-col-blue-grey .modal-footer .btn-link:hover, .modal-col-blue-grey .modal-footer .btn-link:active, .modal-col-blue-grey .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-black { + background-color: #000000; } + .modal-col-black .modal-body, + .modal-col-black .modal-title { + color: #fff !important; } + .modal-col-black .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-black .modal-footer .btn-link { + color: #fff !important; } + .modal-col-black .modal-footer .btn-link:hover, .modal-col-black .modal-footer .btn-link:active, .modal-col-black .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +.modal-col-white { + background-color: #ffffff; } + .modal-col-white .modal-body, + .modal-col-white .modal-title { + color: #fff !important; } + .modal-col-white .modal-footer { + background-color: rgba(0, 0, 0, 0.12); } + .modal-col-white .modal-footer .btn-link { + color: #fff !important; } + .modal-col-white .modal-footer .btn-link:hover, .modal-col-white .modal-footer .btn-link:active, .modal-col-white .modal-footer .btn-link:focus { + background-color: rgba(0, 0, 0, 0.12); } + +/* Labels ====================================== */ +.label { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + +.label-primary { + background-color: #1f91f3; } + +.label-success { + background-color: #2b982b; } + +.label-info { + background-color: #00b0e4; } + +.label-warning { + background-color: #ff9600; } + +.label-danger { + background-color: #fb483a; } + +/* Collapse ==================================== */ +.collapse .well, +.collapse.in .well, +.collapsing .well { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + margin-bottom: 0; } + +/* Tables ====================================== */ +.table tbody tr td, .table tbody tr th { + padding: 10px; + border-top: 1px solid #eee; + border-bottom: 1px solid #eee; } + +.table tbody tr.primary td, .table tbody tr.primary th { + background-color: #1f91f3; + color: #fff; } + +.table tbody tr.success td, .table tbody tr.success th { + background-color: #2b982b; + color: #fff; } + +.table tbody tr.info td, .table tbody tr.info th { + background-color: #00b0e4; + color: #fff; } + +.table tbody tr.warning td, .table tbody tr.warning th { + background-color: #ff9600; + color: #fff; } + +.table tbody tr.danger td, .table tbody tr.danger th { + background-color: #fb483a; + color: #fff; } + +.table thead tr th { + padding: 10px; + border-bottom: 1px solid #eee; } + +.table-bordered { + border-top: 1px solid #eee; } + .table-bordered tbody tr td, .table-bordered tbody tr th { + padding: 10px; + border: 1px solid #eee; } + .table-bordered thead tr th { + padding: 10px; + border: 1px solid #eee; } + +/* Panel ======================================= */ +.panel-group .panel-col-red { + border: 1px solid #F44336; } + .panel-group .panel-col-red .panel-title { + background-color: #F44336 !important; + color: #fff; } + .panel-group .panel-col-red .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-pink { + border: 1px solid #E91E63; } + .panel-group .panel-col-pink .panel-title { + background-color: #E91E63 !important; + color: #fff; } + .panel-group .panel-col-pink .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-purple { + border: 1px solid #9C27B0; } + .panel-group .panel-col-purple .panel-title { + background-color: #9C27B0 !important; + color: #fff; } + .panel-group .panel-col-purple .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-deep-purple { + border: 1px solid #673AB7; } + .panel-group .panel-col-deep-purple .panel-title { + background-color: #673AB7 !important; + color: #fff; } + .panel-group .panel-col-deep-purple .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-indigo { + border: 1px solid #3F51B5; } + .panel-group .panel-col-indigo .panel-title { + background-color: #3F51B5 !important; + color: #fff; } + .panel-group .panel-col-indigo .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-blue { + border: 1px solid #2196F3; } + .panel-group .panel-col-blue .panel-title { + background-color: #2196F3 !important; + color: #fff; } + .panel-group .panel-col-blue .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-light-blue { + border: 1px solid #03A9F4; } + .panel-group .panel-col-light-blue .panel-title { + background-color: #03A9F4 !important; + color: #fff; } + .panel-group .panel-col-light-blue .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-cyan { + border: 1px solid #00BCD4; } + .panel-group .panel-col-cyan .panel-title { + background-color: #00BCD4 !important; + color: #fff; } + .panel-group .panel-col-cyan .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-teal { + border: 1px solid #009688; } + .panel-group .panel-col-teal .panel-title { + background-color: #009688 !important; + color: #fff; } + .panel-group .panel-col-teal .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-green { + border: 1px solid #4CAF50; } + .panel-group .panel-col-green .panel-title { + background-color: #4CAF50 !important; + color: #fff; } + .panel-group .panel-col-green .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-light-green { + border: 1px solid #8BC34A; } + .panel-group .panel-col-light-green .panel-title { + background-color: #8BC34A !important; + color: #fff; } + .panel-group .panel-col-light-green .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-lime { + border: 1px solid #CDDC39; } + .panel-group .panel-col-lime .panel-title { + background-color: #CDDC39 !important; + color: #fff; } + .panel-group .panel-col-lime .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-yellow { + border: 1px solid #ffe821; } + .panel-group .panel-col-yellow .panel-title { + background-color: #ffe821 !important; + color: #fff; } + .panel-group .panel-col-yellow .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-amber { + border: 1px solid #FFC107; } + .panel-group .panel-col-amber .panel-title { + background-color: #FFC107 !important; + color: #fff; } + .panel-group .panel-col-amber .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-orange { + border: 1px solid #FF9800; } + .panel-group .panel-col-orange .panel-title { + background-color: #FF9800 !important; + color: #fff; } + .panel-group .panel-col-orange .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-deep-orange { + border: 1px solid #FF5722; } + .panel-group .panel-col-deep-orange .panel-title { + background-color: #FF5722 !important; + color: #fff; } + .panel-group .panel-col-deep-orange .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-brown { + border: 1px solid #795548; } + .panel-group .panel-col-brown .panel-title { + background-color: #795548 !important; + color: #fff; } + .panel-group .panel-col-brown .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-grey { + border: 1px solid #9E9E9E; } + .panel-group .panel-col-grey .panel-title { + background-color: #9E9E9E !important; + color: #fff; } + .panel-group .panel-col-grey .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-blue-grey { + border: 1px solid #607D8B; } + .panel-group .panel-col-blue-grey .panel-title { + background-color: #607D8B !important; + color: #fff; } + .panel-group .panel-col-blue-grey .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-black { + border: 1px solid #000000; } + .panel-group .panel-col-black .panel-title { + background-color: #000000 !important; + color: #fff; } + .panel-group .panel-col-black .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel-col-white { + border: 1px solid #ffffff; } + .panel-group .panel-col-white .panel-title { + background-color: #ffffff !important; + color: #fff; } + .panel-group .panel-col-white .panel-body { + border-top-color: transparent !important; } + +.panel-group .panel { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + .panel-group .panel .panel-title .material-icons { + float: left; + line-height: 16px; + margin-right: 8px; } + .panel-group .panel .panel-heading { + padding: 0; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + .panel-group .panel .panel-heading a { + display: block; + padding: 10px 15px; } + .panel-group .panel .panel-heading a:hover, .panel-group .panel .panel-heading a:focus, .panel-group .panel .panel-heading a:active { + text-decoration: none; } + .panel-group .panel .panel-body { + color: #555; } + +.panel-group .panel-primary { + border: 1px solid #1f91f3; } + .panel-group .panel-primary .panel-title { + background-color: #1f91f3; } + +.panel-group .panel-success { + border: 1px solid #2b982b; } + .panel-group .panel-success .panel-title { + background-color: #2b982b; + color: #fff; } + +.panel-group .panel-warning { + border: 1px solid #ff9600; } + .panel-group .panel-warning .panel-title { + background-color: #ff9600; + color: #fff; } + +.panel-group .panel-danger { + border: 1px solid #fb483a; } + .panel-group .panel-danger .panel-title { + background-color: #fb483a; + color: #fff; } + +.full-body .panel-col-red .panel-body { + border-top-color: #fff !important; + background-color: #F44336; + color: #fff; } + +.full-body .panel-col-pink .panel-body { + border-top-color: #fff !important; + background-color: #E91E63; + color: #fff; } + +.full-body .panel-col-purple .panel-body { + border-top-color: #fff !important; + background-color: #9C27B0; + color: #fff; } + +.full-body .panel-col-deep-purple .panel-body { + border-top-color: #fff !important; + background-color: #673AB7; + color: #fff; } + +.full-body .panel-col-indigo .panel-body { + border-top-color: #fff !important; + background-color: #3F51B5; + color: #fff; } + +.full-body .panel-col-blue .panel-body { + border-top-color: #fff !important; + background-color: #2196F3; + color: #fff; } + +.full-body .panel-col-light-blue .panel-body { + border-top-color: #fff !important; + background-color: #03A9F4; + color: #fff; } + +.full-body .panel-col-cyan .panel-body { + border-top-color: #fff !important; + background-color: #00BCD4; + color: #fff; } + +.full-body .panel-col-teal .panel-body { + border-top-color: #fff !important; + background-color: #009688; + color: #fff; } + +.full-body .panel-col-green .panel-body { + border-top-color: #fff !important; + background-color: #4CAF50; + color: #fff; } + +.full-body .panel-col-light-green .panel-body { + border-top-color: #fff !important; + background-color: #8BC34A; + color: #fff; } + +.full-body .panel-col-lime .panel-body { + border-top-color: #fff !important; + background-color: #CDDC39; + color: #fff; } + +.full-body .panel-col-yellow .panel-body { + border-top-color: #fff !important; + background-color: #ffe821; + color: #fff; } + +.full-body .panel-col-amber .panel-body { + border-top-color: #fff !important; + background-color: #FFC107; + color: #fff; } + +.full-body .panel-col-orange .panel-body { + border-top-color: #fff !important; + background-color: #FF9800; + color: #fff; } + +.full-body .panel-col-deep-orange .panel-body { + border-top-color: #fff !important; + background-color: #FF5722; + color: #fff; } + +.full-body .panel-col-brown .panel-body { + border-top-color: #fff !important; + background-color: #795548; + color: #fff; } + +.full-body .panel-col-grey .panel-body { + border-top-color: #fff !important; + background-color: #9E9E9E; + color: #fff; } + +.full-body .panel-col-blue-grey .panel-body { + border-top-color: #fff !important; + background-color: #607D8B; + color: #fff; } + +.full-body .panel-col-black .panel-body { + border-top-color: #fff !important; + background-color: #000000; + color: #fff; } + +.full-body .panel-col-white .panel-body { + border-top-color: #fff !important; + background-color: #ffffff; + color: #fff; } + +.full-body .panel-primary .panel-body { + border-top-color: #fff !important; + background-color: #1f91f3; + color: #fff; } + +.full-body .panel-success .panel-body { + border-top-color: #fff !important; + background-color: #2b982b; + color: #fff; } + +.full-body .panel-warning .panel-body { + border-top-color: #fff !important; + background-color: #ff9600; + color: #fff; } + +.full-body .panel-danger .panel-body { + border-top-color: #fff !important; + background-color: #fb483a; + color: #fff; } + +/* Progress Bars =============================== */ +.progress { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + height: 22px; } + .progress .progress-bar { + line-height: 23px; + background-color: #1f91f3; } + .progress .progress-bar-success { + background-color: #2b982b; } + .progress .progress-bar-info { + background-color: #00b0e4; } + .progress .progress-bar-warning { + background-color: #ff9600; } + .progress .progress-bar-danger { + background-color: #fb483a; } + +/* Ion Range Slider ============================ */ +.irs .irs-min, +.irs .irs-max, +.irs .irs-from, +.irs .irs-to, +.irs .irs-single { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + +/* Input Group ================================= */ +.input-group { + width: 100%; + margin-bottom: 20px; } + .input-group .form-line { + display: inline-block; + width: 100%; + border-bottom: 1px solid #ddd; + position: relative; } + .input-group .form-line:after { + content: ''; + position: absolute; + left: 0; + width: 100%; + bottom: -2px; + -moz-transform: scaleX(0); + -ms-transform: scaleX(0); + -o-transform: scaleX(0); + -webkit-transform: scaleX(0); + transform: scaleX(0); + -moz-transition: 0.25s ease-in; + -o-transition: 0.25s ease-in; + -webkit-transition: 0.25s ease-in; + transition: 0.25s ease-in; + border-bottom: 2px solid #1f91f3; } + .input-group .form-line + .input-group-addon { + padding-right: 0; + padding-left: 10px; } + .input-group .help-info { + float: right; + font-size: 12px; + margin-top: 5px; + color: #999; } + .input-group label.error { + font-size: 12px; + display: block; + margin-top: 5px; + font-weight: normal; + color: #F44336; } + .input-group .form-line.error:after { + border-bottom: 2px solid #F44336; } + .input-group .form-line.success:after { + border-bottom: 2px solid #4CAF50; } + .input-group .form-line.warning:after { + border-bottom: 2px solid #FFC107; } + .input-group .form-line.focused:after { + -moz-transform: scaleX(1); + -ms-transform: scaleX(1); + -o-transform: scaleX(1); + -webkit-transform: scaleX(1); + transform: scaleX(1); } + .input-group .form-line.focused .form-label { + bottom: 25px; + left: 0; + font-size: 12px; } + .input-group .input-group-addon { + border: none; + background-color: transparent; + padding-left: 0; + font-weight: bold; } + .input-group .input-group-addon .material-icons { + font-size: 18px; + color: #555; } + .input-group input[type="text"], + .input-group .form-control { + border: none; + box-shadow: none; + padding-left: 0; } + .input-group .form-control:focus { + -webkit-box-shadow: none !important; + -moz-box-shadow: none !important; + -ms-box-shadow: none !important; + box-shadow: none !important; } + +.input-group.input-group-sm .input-group-addon i { + font-size: 14px; } + +.input-group.input-group-sm .form-control { + font-size: 12px; } + +.input-group.input-group-lg .input-group-addon i { + font-size: 26px; } + +.input-group.input-group-lg .form-control { + font-size: 18px; } + +.form-control-label { + text-align: right; } + .form-control-label label { + margin-top: 8px; } + +.form-horizontal .form-group { + margin-bottom: 0; } + +.form-group { + width: 100%; + margin-bottom: 25px; } + .form-group .form-control { + width: 100%; + border: none; + box-shadow: none; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + padding-left: 0; } + .form-group .help-info { + float: right; + font-size: 12px; + margin-top: 5px; + color: #999; } + .form-group label.error { + font-size: 12px; + display: block; + margin-top: 5px; + font-weight: normal; + color: #F44336; } + .form-group .form-line { + width: 100%; + position: relative; + border-bottom: 1px solid #ddd; } + .form-group .form-line:after { + content: ''; + position: absolute; + left: 0; + width: 100%; + height: 0; + bottom: -1px; + -moz-transform: scaleX(0); + -ms-transform: scaleX(0); + -o-transform: scaleX(0); + -webkit-transform: scaleX(0); + transform: scaleX(0); + -moz-transition: 0.25s ease-in; + -o-transition: 0.25s ease-in; + -webkit-transition: 0.25s ease-in; + transition: 0.25s ease-in; + border-bottom: 2px solid #1f91f3; } + .form-group .form-line .form-label { + font-weight: normal; + color: #aaa; + position: absolute; + top: 10px; + left: 0; + cursor: text; + -moz-transition: 0.2s; + -o-transition: 0.2s; + -webkit-transition: 0.2s; + transition: 0.2s; } + .form-group .form-line.error:after { + border-bottom: 2px solid #F44336; } + .form-group .form-line.success:after { + border-bottom: 2px solid #4CAF50; } + .form-group .form-line.warning:after { + border-bottom: 2px solid #FFC107; } + .form-group .form-line.focused:after { + -moz-transform: scaleX(1); + -ms-transform: scaleX(1); + -o-transform: scaleX(1); + -webkit-transform: scaleX(1); + transform: scaleX(1); } + .form-group .form-line.focused .form-label { + top: -10px; + left: 0; + font-size: 12px; } + +.form-group-sm .form-label { + font-size: 12px; } + +.form-group-sm .form-line.focused .form-label { + bottom: 20px; + font-size: 10px; } + +.form-group-lg .form-label { + font-size: 18px; } + +.form-group-lg .form-line.focused .form-label { + bottom: 35px; + font-size: 12px; } + +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: transparent; } + +/* Color Picker ================================ */ +.colorpicker { + z-index: 1; } + .colorpicker:before, .colorpicker:after { + display: none !important; } + +/* Dropzone ==================================== */ +.dropzone { + border: 2px solid transparent !important; + background-color: #eee !important; } + .dropzone .dz-message .drag-icon-cph .material-icons { + font-size: 80px; + color: #777; } + +.dz-drag-hover { + border: 2px dashed #888 !important; } + +/* Breadcrumbs ================================= */ +.breadcrumb { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + background-color: transparent; + font-size: 13px; + margin-bottom: 10px; } + .breadcrumb li a { + color: #444; + text-decoration: none; } + .breadcrumb li a .material-icons { + font-size: 18px; + position: relative; + top: 4px; } + .breadcrumb li .material-icons { + font-size: 18px; + position: relative; + top: 4px; } + .breadcrumb > li + li:before { + content: '>\00a0'; } + +.breadcrumb-col-red li a { + color: #F44336 !important; + font-weight: bold; } + +.breadcrumb-bg-red { + background-color: #F44336 !important; } + .breadcrumb-bg-red li { + color: #fff !important; } + .breadcrumb-bg-red li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-red li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-red li + li:before { + color: #fff; } + +.breadcrumb-col-pink li a { + color: #E91E63 !important; + font-weight: bold; } + +.breadcrumb-bg-pink { + background-color: #E91E63 !important; } + .breadcrumb-bg-pink li { + color: #fff !important; } + .breadcrumb-bg-pink li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-pink li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-pink li + li:before { + color: #fff; } + +.breadcrumb-col-purple li a { + color: #9C27B0 !important; + font-weight: bold; } + +.breadcrumb-bg-purple { + background-color: #9C27B0 !important; } + .breadcrumb-bg-purple li { + color: #fff !important; } + .breadcrumb-bg-purple li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-purple li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-purple li + li:before { + color: #fff; } + +.breadcrumb-col-deep-purple li a { + color: #673AB7 !important; + font-weight: bold; } + +.breadcrumb-bg-deep-purple { + background-color: #673AB7 !important; } + .breadcrumb-bg-deep-purple li { + color: #fff !important; } + .breadcrumb-bg-deep-purple li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-deep-purple li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-deep-purple li + li:before { + color: #fff; } + +.breadcrumb-col-indigo li a { + color: #3F51B5 !important; + font-weight: bold; } + +.breadcrumb-bg-indigo { + background-color: #3F51B5 !important; } + .breadcrumb-bg-indigo li { + color: #fff !important; } + .breadcrumb-bg-indigo li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-indigo li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-indigo li + li:before { + color: #fff; } + +.breadcrumb-col-blue li a { + color: #2196F3 !important; + font-weight: bold; } + +.breadcrumb-bg-blue { + background-color: #2196F3 !important; } + .breadcrumb-bg-blue li { + color: #fff !important; } + .breadcrumb-bg-blue li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-blue li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-blue li + li:before { + color: #fff; } + +.breadcrumb-col-light-blue li a { + color: #03A9F4 !important; + font-weight: bold; } + +.breadcrumb-bg-light-blue { + background-color: #03A9F4 !important; } + .breadcrumb-bg-light-blue li { + color: #fff !important; } + .breadcrumb-bg-light-blue li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-light-blue li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-light-blue li + li:before { + color: #fff; } + +.breadcrumb-col-cyan li a { + color: #00BCD4 !important; + font-weight: bold; } + +.breadcrumb-bg-cyan { + background-color: #00BCD4 !important; } + .breadcrumb-bg-cyan li { + color: #fff !important; } + .breadcrumb-bg-cyan li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-cyan li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-cyan li + li:before { + color: #fff; } + +.breadcrumb-col-teal li a { + color: #009688 !important; + font-weight: bold; } + +.breadcrumb-bg-teal { + background-color: #009688 !important; } + .breadcrumb-bg-teal li { + color: #fff !important; } + .breadcrumb-bg-teal li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-teal li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-teal li + li:before { + color: #fff; } + +.breadcrumb-col-green li a { + color: #4CAF50 !important; + font-weight: bold; } + +.breadcrumb-bg-green { + background-color: #4CAF50 !important; } + .breadcrumb-bg-green li { + color: #fff !important; } + .breadcrumb-bg-green li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-green li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-green li + li:before { + color: #fff; } + +.breadcrumb-col-light-green li a { + color: #8BC34A !important; + font-weight: bold; } + +.breadcrumb-bg-light-green { + background-color: #8BC34A !important; } + .breadcrumb-bg-light-green li { + color: #fff !important; } + .breadcrumb-bg-light-green li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-light-green li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-light-green li + li:before { + color: #fff; } + +.breadcrumb-col-lime li a { + color: #CDDC39 !important; + font-weight: bold; } + +.breadcrumb-bg-lime { + background-color: #CDDC39 !important; } + .breadcrumb-bg-lime li { + color: #fff !important; } + .breadcrumb-bg-lime li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-lime li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-lime li + li:before { + color: #fff; } + +.breadcrumb-col-yellow li a { + color: #ffe821 !important; + font-weight: bold; } + +.breadcrumb-bg-yellow { + background-color: #ffe821 !important; } + .breadcrumb-bg-yellow li { + color: #fff !important; } + .breadcrumb-bg-yellow li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-yellow li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-yellow li + li:before { + color: #fff; } + +.breadcrumb-col-amber li a { + color: #FFC107 !important; + font-weight: bold; } + +.breadcrumb-bg-amber { + background-color: #FFC107 !important; } + .breadcrumb-bg-amber li { + color: #fff !important; } + .breadcrumb-bg-amber li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-amber li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-amber li + li:before { + color: #fff; } + +.breadcrumb-col-orange li a { + color: #FF9800 !important; + font-weight: bold; } + +.breadcrumb-bg-orange { + background-color: #FF9800 !important; } + .breadcrumb-bg-orange li { + color: #fff !important; } + .breadcrumb-bg-orange li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-orange li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-orange li + li:before { + color: #fff; } + +.breadcrumb-col-deep-orange li a { + color: #FF5722 !important; + font-weight: bold; } + +.breadcrumb-bg-deep-orange { + background-color: #FF5722 !important; } + .breadcrumb-bg-deep-orange li { + color: #fff !important; } + .breadcrumb-bg-deep-orange li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-deep-orange li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-deep-orange li + li:before { + color: #fff; } + +.breadcrumb-col-brown li a { + color: #795548 !important; + font-weight: bold; } + +.breadcrumb-bg-brown { + background-color: #795548 !important; } + .breadcrumb-bg-brown li { + color: #fff !important; } + .breadcrumb-bg-brown li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-brown li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-brown li + li:before { + color: #fff; } + +.breadcrumb-col-grey li a { + color: #9E9E9E !important; + font-weight: bold; } + +.breadcrumb-bg-grey { + background-color: #9E9E9E !important; } + .breadcrumb-bg-grey li { + color: #fff !important; } + .breadcrumb-bg-grey li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-grey li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-grey li + li:before { + color: #fff; } + +.breadcrumb-col-blue-grey li a { + color: #607D8B !important; + font-weight: bold; } + +.breadcrumb-bg-blue-grey { + background-color: #607D8B !important; } + .breadcrumb-bg-blue-grey li { + color: #fff !important; } + .breadcrumb-bg-blue-grey li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-blue-grey li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-blue-grey li + li:before { + color: #fff; } + +.breadcrumb-col-black li a { + color: #000000 !important; + font-weight: bold; } + +.breadcrumb-bg-black { + background-color: #000000 !important; } + .breadcrumb-bg-black li { + color: #fff !important; } + .breadcrumb-bg-black li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-black li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-black li + li:before { + color: #fff; } + +.breadcrumb-col-white li a { + color: #ffffff !important; + font-weight: bold; } + +.breadcrumb-bg-white { + background-color: #ffffff !important; } + .breadcrumb-bg-white li { + color: #fff !important; } + .breadcrumb-bg-white li a { + color: #fff; + font-weight: bold; } + .breadcrumb-bg-white li a .material-icons { + padding-bottom: 8px; } + .breadcrumb-bg-white li + li:before { + color: #fff; } + +/* Badge | List Group Item ===================== */ +.badge { + -webkit-border-radius: 2px; + -moz-border-radius: 2px; + -ms-border-radius: 2px; + border-radius: 2px; } + +.list-group-item { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + -moz-transition: 0.5s; + -o-transition: 0.5s; + -webkit-transition: 0.5s; + transition: 0.5s; } + +.list-group .active { + background-color: #2196F3; + border-color: #2196F3; } + .list-group .active:hover, .list-group .active:focus, .list-group .active:active { + background-color: #2196F3; + border-color: #2196F3; } + .list-group .active .list-group-item-text { + color: #dfe9f1; + font-size: 13px; } + .list-group .active .list-group-item-text:hover, .list-group .active .list-group-item-text:active, .list-group .active .list-group-item-text:focus { + color: #dfe9f1; } + +.list-group .list-group-item.active:hover .list-group-item-text, .list-group .list-group-item.active:focus .list-group-item-text, .list-group .list-group-item.active:active .list-group-item-text { + color: #dfe9f1; } + +.list-group .list-group-item:first-child, .list-group .list-group-item:last-child { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + +.list-group .list-group-item .list-group-item-heading { + font-weight: bold; + font-size: 17px; } + +.list-group .list-group-item-success { + background-color: #2b982b; + border: none; + color: #fff; } + .list-group .list-group-item-success:hover, .list-group .list-group-item-success:focus { + background-color: #2b982b; + color: #fff; + opacity: 0.8; } + +.list-group .list-group-item-info { + background-color: #00b0e4; + border: none; + color: #fff; } + .list-group .list-group-item-info:hover, .list-group .list-group-item-info:focus { + background-color: #00b0e4; + color: #fff; + opacity: 0.8; } + +.list-group .list-group-item-warning { + background-color: #ff9600; + border: none; + color: #fff; } + .list-group .list-group-item-warning:hover, .list-group .list-group-item-warning:focus { + background-color: #ff9600; + color: #fff; + opacity: 0.8; } + +.list-group .list-group-item-danger { + background-color: #fb483a; + border: none; + color: #fff; } + .list-group .list-group-item-danger:hover, .list-group .list-group-item-danger:focus { + background-color: #fb483a; + color: #fff; + opacity: 0.8; } + +.list-group .pl-red { + stroke: #F44336; } + +.list-group .list-group-bg-red { + background-color: #F44336; + border: none; + color: #fff; } + .list-group .list-group-bg-red:hover, .list-group .list-group-bg-red:focus { + background-color: #F44336; + color: #fff; + opacity: 0.8; } + +.list-group .pl-pink { + stroke: #E91E63; } + +.list-group .list-group-bg-pink { + background-color: #E91E63; + border: none; + color: #fff; } + .list-group .list-group-bg-pink:hover, .list-group .list-group-bg-pink:focus { + background-color: #E91E63; + color: #fff; + opacity: 0.8; } + +.list-group .pl-purple { + stroke: #9C27B0; } + +.list-group .list-group-bg-purple { + background-color: #9C27B0; + border: none; + color: #fff; } + .list-group .list-group-bg-purple:hover, .list-group .list-group-bg-purple:focus { + background-color: #9C27B0; + color: #fff; + opacity: 0.8; } + +.list-group .pl-deep-purple { + stroke: #673AB7; } + +.list-group .list-group-bg-deep-purple { + background-color: #673AB7; + border: none; + color: #fff; } + .list-group .list-group-bg-deep-purple:hover, .list-group .list-group-bg-deep-purple:focus { + background-color: #673AB7; + color: #fff; + opacity: 0.8; } + +.list-group .pl-indigo { + stroke: #3F51B5; } + +.list-group .list-group-bg-indigo { + background-color: #3F51B5; + border: none; + color: #fff; } + .list-group .list-group-bg-indigo:hover, .list-group .list-group-bg-indigo:focus { + background-color: #3F51B5; + color: #fff; + opacity: 0.8; } + +.list-group .pl-blue { + stroke: #2196F3; } + +.list-group .list-group-bg-blue { + background-color: #2196F3; + border: none; + color: #fff; } + .list-group .list-group-bg-blue:hover, .list-group .list-group-bg-blue:focus { + background-color: #2196F3; + color: #fff; + opacity: 0.8; } + +.list-group .pl-light-blue { + stroke: #03A9F4; } + +.list-group .list-group-bg-light-blue { + background-color: #03A9F4; + border: none; + color: #fff; } + .list-group .list-group-bg-light-blue:hover, .list-group .list-group-bg-light-blue:focus { + background-color: #03A9F4; + color: #fff; + opacity: 0.8; } + +.list-group .pl-cyan { + stroke: #00BCD4; } + +.list-group .list-group-bg-cyan { + background-color: #00BCD4; + border: none; + color: #fff; } + .list-group .list-group-bg-cyan:hover, .list-group .list-group-bg-cyan:focus { + background-color: #00BCD4; + color: #fff; + opacity: 0.8; } + +.list-group .pl-teal { + stroke: #009688; } + +.list-group .list-group-bg-teal { + background-color: #009688; + border: none; + color: #fff; } + .list-group .list-group-bg-teal:hover, .list-group .list-group-bg-teal:focus { + background-color: #009688; + color: #fff; + opacity: 0.8; } + +.list-group .pl-green { + stroke: #4CAF50; } + +.list-group .list-group-bg-green { + background-color: #4CAF50; + border: none; + color: #fff; } + .list-group .list-group-bg-green:hover, .list-group .list-group-bg-green:focus { + background-color: #4CAF50; + color: #fff; + opacity: 0.8; } + +.list-group .pl-light-green { + stroke: #8BC34A; } + +.list-group .list-group-bg-light-green { + background-color: #8BC34A; + border: none; + color: #fff; } + .list-group .list-group-bg-light-green:hover, .list-group .list-group-bg-light-green:focus { + background-color: #8BC34A; + color: #fff; + opacity: 0.8; } + +.list-group .pl-lime { + stroke: #CDDC39; } + +.list-group .list-group-bg-lime { + background-color: #CDDC39; + border: none; + color: #fff; } + .list-group .list-group-bg-lime:hover, .list-group .list-group-bg-lime:focus { + background-color: #CDDC39; + color: #fff; + opacity: 0.8; } + +.list-group .pl-yellow { + stroke: #ffe821; } + +.list-group .list-group-bg-yellow { + background-color: #ffe821; + border: none; + color: #fff; } + .list-group .list-group-bg-yellow:hover, .list-group .list-group-bg-yellow:focus { + background-color: #ffe821; + color: #fff; + opacity: 0.8; } + +.list-group .pl-amber { + stroke: #FFC107; } + +.list-group .list-group-bg-amber { + background-color: #FFC107; + border: none; + color: #fff; } + .list-group .list-group-bg-amber:hover, .list-group .list-group-bg-amber:focus { + background-color: #FFC107; + color: #fff; + opacity: 0.8; } + +.list-group .pl-orange { + stroke: #FF9800; } + +.list-group .list-group-bg-orange { + background-color: #FF9800; + border: none; + color: #fff; } + .list-group .list-group-bg-orange:hover, .list-group .list-group-bg-orange:focus { + background-color: #FF9800; + color: #fff; + opacity: 0.8; } + +.list-group .pl-deep-orange { + stroke: #FF5722; } + +.list-group .list-group-bg-deep-orange { + background-color: #FF5722; + border: none; + color: #fff; } + .list-group .list-group-bg-deep-orange:hover, .list-group .list-group-bg-deep-orange:focus { + background-color: #FF5722; + color: #fff; + opacity: 0.8; } + +.list-group .pl-brown { + stroke: #795548; } + +.list-group .list-group-bg-brown { + background-color: #795548; + border: none; + color: #fff; } + .list-group .list-group-bg-brown:hover, .list-group .list-group-bg-brown:focus { + background-color: #795548; + color: #fff; + opacity: 0.8; } + +.list-group .pl-grey { + stroke: #9E9E9E; } + +.list-group .list-group-bg-grey { + background-color: #9E9E9E; + border: none; + color: #fff; } + .list-group .list-group-bg-grey:hover, .list-group .list-group-bg-grey:focus { + background-color: #9E9E9E; + color: #fff; + opacity: 0.8; } + +.list-group .pl-blue-grey { + stroke: #607D8B; } + +.list-group .list-group-bg-blue-grey { + background-color: #607D8B; + border: none; + color: #fff; } + .list-group .list-group-bg-blue-grey:hover, .list-group .list-group-bg-blue-grey:focus { + background-color: #607D8B; + color: #fff; + opacity: 0.8; } + +.list-group .pl-black { + stroke: #000000; } + +.list-group .list-group-bg-black { + background-color: #000000; + border: none; + color: #fff; } + .list-group .list-group-bg-black:hover, .list-group .list-group-bg-black:focus { + background-color: #000000; + color: #fff; + opacity: 0.8; } + +.list-group .pl-white { + stroke: #ffffff; } + +.list-group .list-group-bg-white { + background-color: #ffffff; + border: none; + color: #fff; } + .list-group .list-group-bg-white:hover, .list-group .list-group-bg-white:focus { + background-color: #ffffff; + color: #fff; + opacity: 0.8; } + +/* Pagination & Pager ========================== */ +.pager li > a { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + border: none; + background-color: transparent; + color: #222; + font-weight: bold; } + +.pager li a:focus, +.pager li a:active { + background-color: transparent; } + +.pagination .disabled a, +.pagination .disabled a:hover, +.pagination .disabled a:focus, +.pagination .disabled a:active { + color: #bbb; } + +.pagination li.active a { + background-color: #2196F3; } + +.pagination li { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + .pagination li a:focus, + .pagination li a:active { + background-color: transparent; + color: #555; } + +.pagination > li > a { + border: none; + font-weight: bold; + color: #555; } + +.pagination > li:first-child > a, +.pagination > li:last-child > a { + width: auto; + height: 32px; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + .pagination > li:first-child > a .material-icons, + .pagination > li:last-child > a .material-icons { + position: relative; + bottom: 2px; } + +.pagination-sm > li:first-child > a, +.pagination-sm > li:last-child > a { + width: 28px; + height: 28px; } + .pagination-sm > li:first-child > a .material-icons, + .pagination-sm > li:last-child > a .material-icons { + position: relative; + top: -1px; + left: -6px; + font-size: 20px; } + +.pagination-lg > li:first-child > a, +.pagination-lg > li:last-child > a { + width: 44px; + height: 44px; } + .pagination-lg > li:first-child > a .material-icons, + .pagination-lg > li:last-child > a .material-icons { + font-size: 30px; + position: relative; + top: -3px; + left: -10px; } + +/* Media Object ================================ */ +.media { + margin-bottom: 25px; } + .media .media-body { + color: #777; + font-size: 13px; } + .media .media-body .media-heading { + font-size: 16px; + font-weight: bold; + color: #333; } + +/* Form Wizard ================================= */ +.wizard, +.tabcontrol { + display: block; + width: 100%; + overflow: hidden; } + +.wizard a, +.tabcontrol a { + outline: 0; } + +.wizard ul, +.tabcontrol ul { + list-style: none !important; + padding: 0; + margin: 0; } + +.wizard ul > li, .tabcontrol ul > li { + display: block; + padding: 0; } + +/* Accessibility */ +.wizard > .steps .current-info, +.tabcontrol > .steps .current-info, +.wizard > .content > .title, +.tabcontrol > .content > .title { + position: absolute; + left: -999em; } + +.wizard > .steps { + position: relative; + display: block; + width: 100%; } + +.wizard.vertical > .steps { + float: left; + width: 30%; } + +.wizard.vertical > .steps > ul > li { + float: none; + width: 100%; } + +.wizard.vertical > .content { + float: left; + margin: 0 0 0.5em 0; + width: 70%; } + +.wizard.vertical > .actions { + float: right; + width: 100%; } + +.wizard.vertical > .actions > ul > li { + margin: 0 0 0 1em; } + +.wizard > .steps .number { + font-size: 1.429em; } + +.wizard > .steps > ul > li { + width: 25%; + float: left; } + +.wizard > .actions > ul > li { + float: left; } + +.wizard > .steps a { + display: block; + width: auto; + margin: 0 0.5em 0.5em; + padding: 1em 1em; + text-decoration: none; + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; } + .wizard > .steps a:hover, .wizard > .steps a:active { + display: block; + width: auto; + margin: 0 0.5em 0.5em; + padding: 1em 1em; + text-decoration: none; + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; } + +.wizard > .steps .disabled a { + background: #eee; + color: #aaa; + cursor: default; } + .wizard > .steps .disabled a:hover, .wizard > .steps .disabled a:active { + background: #eee; + color: #aaa; + cursor: default; } + +.wizard > .steps .current a { + background: #2184be; + color: #fff; + cursor: default; } + .wizard > .steps .current a:hover, .wizard > .steps .current a:active { + background: #2184be; + color: #fff; + cursor: default; } + +.wizard > .steps .done a { + background: #9dc8e2; + color: #fff; } + .wizard > .steps .done a:hover, .wizard > .steps .done a:active { + background: #9dc8e2; + color: #fff; } + +.wizard > .steps .error a { + background: #ff3111; + color: #fff; } + .wizard > .steps .error a:hover, .wizard > .steps .error a:active { + background: #ff3111; + color: #fff; } + +.wizard > .content { + border: 1px solid #ddd; + display: block; + margin: 0.5em; + min-height: 35em; + overflow: hidden; + position: relative; + width: auto; } + +.wizard > .actions { + position: relative; + display: block; + text-align: right; + width: 100%; } + +.wizard > .actions > ul { + display: inline-block; + text-align: right; } + .wizard > .actions > ul > li { + margin: 0 0.5em; } + +.wizard > .actions a { + background: #009688; + color: #fff; + display: block; + padding: 0.5em 1em; + text-decoration: none; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + .wizard > .actions a:hover, .wizard > .actions a:active { + background: #009688; + color: #fff; + display: block; + padding: 0.5em 1em; + text-decoration: none; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + +.wizard > .actions .disabled a { + background: #eee; + color: #aaa; } + .wizard > .actions .disabled a:hover, .wizard > .actions .disabled a:active { + background: #eee; + color: #aaa; } + +.tabcontrol > .steps { + position: relative; + display: block; + width: 100%; } + .tabcontrol > .steps > ul { + position: relative; + margin: 6px 0 0 0; + top: 1px; + z-index: 1; } + .tabcontrol > .steps > ul > li { + float: left; + margin: 5px 2px 0 0; + padding: 1px; + -webkit-border-top-left-radius: 5px; + -webkit-border-top-right-radius: 5px; + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 5px; + border-top-left-radius: 5px; + border-top-right-radius: 5px; } + .tabcontrol > .steps > ul > li:hover { + background: #edecec; + border: 1px solid #bbb; + padding: 0; } + .tabcontrol > .steps > ul > li.current { + background: #fff; + border: 1px solid #bbb; + border-bottom: 0 none; + padding: 0 0 1px 0; + margin-top: 0; } + .tabcontrol > .steps > ul > li.current > a { + padding: 15px 30px 10px 30px; } + .tabcontrol > .steps > ul > li > a { + color: #5f5f5f; + display: inline-block; + border: 0 none; + margin: 0; + padding: 10px 30px; + text-decoration: none; } + .tabcontrol > .steps > ul > li > a:hover { + text-decoration: none; } + +.tabcontrol > .content { + position: relative; + display: inline-block; + width: 100%; + height: 35em; + overflow: hidden; + border-top: 1px solid #bbb; + padding-top: 20px; } + .tabcontrol > .content > .body { + float: left; + position: absolute; + width: 95%; + height: 95%; + padding: 2.5%; } + .tabcontrol > .content > .body ul { + list-style: disc !important; } + .tabcontrol > .content > .body ul > li { + display: list-item; } + +.wizard .content { + min-height: 245px; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + overflow-y: auto; } + .wizard .content .body { + padding: 15px; } + +.wizard .steps a { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + -moz-transition: 0.5s; + -o-transition: 0.5s; + -webkit-transition: 0.5s; + transition: 0.5s; } + .wizard .steps a:active, .wizard .steps a:focus, .wizard .steps a:hover { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + +.wizard .steps .done a { + background-color: rgba(0, 150, 136, 0.6); } + .wizard .steps .done a:hover, .wizard .steps .done a:active, .wizard .steps .done a:focus { + background-color: rgba(0, 150, 136, 0.5); } + +.wizard .steps .error a { + background-color: #F44336 !important; } + +.wizard .steps .current a { + background-color: #009688; } + .wizard .steps .current a:active, .wizard .steps .current a:focus, .wizard .steps .current a:hover { + background-color: #009688; } + +/* Waves ======================================= */ +.waves-effect.waves-red .waves-ripple { + background: rgba(244, 67, 54, 0.5); } + +.waves-effect.waves-pink .waves-ripple { + background: rgba(233, 30, 99, 0.5); } + +.waves-effect.waves-purple .waves-ripple { + background: rgba(156, 39, 176, 0.5); } + +.waves-effect.waves-deep-purple .waves-ripple { + background: rgba(103, 58, 183, 0.5); } + +.waves-effect.waves-indigo .waves-ripple { + background: rgba(63, 81, 181, 0.5); } + +.waves-effect.waves-blue .waves-ripple { + background: rgba(33, 150, 243, 0.5); } + +.waves-effect.waves-light-blue .waves-ripple { + background: rgba(3, 169, 244, 0.5); } + +.waves-effect.waves-cyan .waves-ripple { + background: rgba(0, 188, 212, 0.5); } + +.waves-effect.waves-teal .waves-ripple { + background: rgba(0, 150, 136, 0.5); } + +.waves-effect.waves-green .waves-ripple { + background: rgba(76, 175, 80, 0.5); } + +.waves-effect.waves-light-green .waves-ripple { + background: rgba(139, 195, 74, 0.5); } + +.waves-effect.waves-lime .waves-ripple { + background: rgba(205, 220, 57, 0.5); } + +.waves-effect.waves-yellow .waves-ripple { + background: rgba(255, 232, 33, 0.5); } + +.waves-effect.waves-amber .waves-ripple { + background: rgba(255, 193, 7, 0.5); } + +.waves-effect.waves-orange .waves-ripple { + background: rgba(255, 152, 0, 0.5); } + +.waves-effect.waves-deep-orange .waves-ripple { + background: rgba(255, 87, 34, 0.5); } + +.waves-effect.waves-brown .waves-ripple { + background: rgba(121, 85, 72, 0.5); } + +.waves-effect.waves-grey .waves-ripple { + background: rgba(158, 158, 158, 0.5); } + +.waves-effect.waves-blue-grey .waves-ripple { + background: rgba(96, 125, 139, 0.5); } + +.waves-effect.waves-black .waves-ripple { + background: rgba(0, 0, 0, 0.5); } + +.waves-effect.waves-white .waves-ripple { + background: rgba(255, 255, 255, 0.5); } + +/* Page Loader ================================= */ +.page-loader-wrapper { + z-index: 99999999; + position: fixed; + top: 0; + left: 0; + bottom: 0; + right: 0; + width: 100%; + height: 100%; + background: #eee; + overflow: hidden; + text-align: center; } + .page-loader-wrapper p { + font-size: 13px; + margin-top: 10px; + font-weight: bold; + color: #444; } + .page-loader-wrapper .loader { + position: relative; + top: calc(50% - 30px); } + +/* Preloaders ================================== */ +.md-preloader .pl-red { + stroke: #F44336; } + +.md-preloader .pl-pink { + stroke: #E91E63; } + +.md-preloader .pl-purple { + stroke: #9C27B0; } + +.md-preloader .pl-deep-purple { + stroke: #673AB7; } + +.md-preloader .pl-indigo { + stroke: #3F51B5; } + +.md-preloader .pl-blue { + stroke: #2196F3; } + +.md-preloader .pl-light-blue { + stroke: #03A9F4; } + +.md-preloader .pl-cyan { + stroke: #00BCD4; } + +.md-preloader .pl-teal { + stroke: #009688; } + +.md-preloader .pl-green { + stroke: #4CAF50; } + +.md-preloader .pl-light-green { + stroke: #8BC34A; } + +.md-preloader .pl-lime { + stroke: #CDDC39; } + +.md-preloader .pl-yellow { + stroke: #ffe821; } + +.md-preloader .pl-amber { + stroke: #FFC107; } + +.md-preloader .pl-orange { + stroke: #FF9800; } + +.md-preloader .pl-deep-orange { + stroke: #FF5722; } + +.md-preloader .pl-brown { + stroke: #795548; } + +.md-preloader .pl-grey { + stroke: #9E9E9E; } + +.md-preloader .pl-blue-grey { + stroke: #607D8B; } + +.md-preloader .pl-black { + stroke: #000000; } + +.md-preloader .pl-white { + stroke: #ffffff; } + +.preloader { + display: inline-block; + position: relative; + width: 50px; + height: 50px; + -webkit-animation: container-rotate 1568ms linear infinite; + -moz-animation: container-rotate 1568ms linear infinite; + -o-animation: container-rotate 1568ms linear infinite; + animation: container-rotate 1568ms linear infinite; } + .preloader.pl-size-xl { + width: 75px; + height: 75px; } + .preloader.pl-size-l { + width: 60px; + height: 60px; } + .preloader.pl-size-md { + width: 50px; + height: 50px; } + .preloader.pl-size-sm { + width: 40px; + height: 40px; } + .preloader.pl-size-xs { + width: 25px; + height: 25px; } + +.spinner-layer { + position: absolute; + width: 100%; + height: 100%; + border-color: #F44336; + -ms-opacity: 1; + opacity: 1; + -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + -moz-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + -o-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; } + .spinner-layer.pl-red { + border-color: #F44336; } + .spinner-layer.pl-pink { + border-color: #E91E63; } + .spinner-layer.pl-purple { + border-color: #9C27B0; } + .spinner-layer.pl-deep-purple { + border-color: #673AB7; } + .spinner-layer.pl-indigo { + border-color: #3F51B5; } + .spinner-layer.pl-blue { + border-color: #2196F3; } + .spinner-layer.pl-light-blue { + border-color: #03A9F4; } + .spinner-layer.pl-cyan { + border-color: #00BCD4; } + .spinner-layer.pl-teal { + border-color: #009688; } + .spinner-layer.pl-green { + border-color: #4CAF50; } + .spinner-layer.pl-light-green { + border-color: #8BC34A; } + .spinner-layer.pl-lime { + border-color: #CDDC39; } + .spinner-layer.pl-yellow { + border-color: #ffe821; } + .spinner-layer.pl-amber { + border-color: #FFC107; } + .spinner-layer.pl-orange { + border-color: #FF9800; } + .spinner-layer.pl-deep-orange { + border-color: #FF5722; } + .spinner-layer.pl-brown { + border-color: #795548; } + .spinner-layer.pl-grey { + border-color: #9E9E9E; } + .spinner-layer.pl-blue-grey { + border-color: #607D8B; } + .spinner-layer.pl-black { + border-color: #000000; } + .spinner-layer.pl-white { + border-color: #ffffff; } + +.right { + float: right !important; } + +.gap-patch { + position: absolute; + top: 0; + left: 45%; + width: 10%; + height: 100%; + overflow: hidden; + border-color: inherit; } + .gap-patch.circle { + width: 1000%; + left: -450%; } + +.circle-clipper { + display: inline-block; + position: relative; + width: 50%; + height: 100%; + overflow: hidden; + border-color: inherit; } + .circle-clipper .circle { + width: 200%; + height: 100%; + border-width: 3px; + border-style: solid; + border-color: inherit; + border-bottom-color: transparent !important; + -ms-border-radius: 50%; + border-radius: 50%; + -webkit-animation: none; + animation: none; + position: absolute; + top: 0; + right: 0; + bottom: 0; } + .circle-clipper.left .circle { + left: 0; + border-right-color: transparent !important; + -webkit-transform: rotate(129deg); + -moz-transform: rotate(129deg); + -ms-transform: rotate(129deg); + -o-transform: rotate(129deg); + transform: rotate(129deg); + -webkit-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + -moz-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + -o-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; } + .circle-clipper.right .circle { + left: -100%; + border-left-color: transparent !important; + -webkit-transform: rotate(-129deg); + -moz-transform: rotate(-129deg); + -ms-transform: rotate(-129deg); + -o-transform: rotate(-129deg); + transform: rotate(-129deg); + -webkit-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + -moz-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + -o-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; } + +@-webkit-keyframes container-rotate { + to { + -webkit-transform: rotate(360deg); + -moz-transform: rotate(360deg); + -ms-transform: rotate(360deg); + -o-transform: rotate(360deg); + transform: rotate(360deg); } } + +@keyframes container-rotate { + to { + -moz-transform: rotate(360deg); + -ms-transform: rotate(360deg); + -o-transform: rotate(360deg); + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@-webkit-keyframes fill-unfill-rotate { + 12.5% { + -webkit-transform: rotate(135deg); + transform: rotate(135deg); } + 25% { + -webkit-transform: rotate(270deg); + transform: rotate(270deg); } + 37.5% { + -webkit-transform: rotate(405deg); + transform: rotate(405deg); } + 50% { + -webkit-transform: rotate(540deg); + transform: rotate(540deg); } + 62.5% { + -webkit-transform: rotate(675deg); + transform: rotate(675deg); } + 75% { + -webkit-transform: rotate(810deg); + transform: rotate(810deg); } + 87.5% { + -webkit-transform: rotate(945deg); + transform: rotate(945deg); } + to { + -webkit-transform: rotate(1080deg); + transform: rotate(1080deg); } } + +@keyframes fill-unfill-rotate { + 12.5% { + transform: rotate(135deg); } + 25% { + transform: rotate(270deg); } + 37.5% { + transform: rotate(405deg); } + 50% { + transform: rotate(540deg); } + 62.5% { + transform: rotate(675deg); } + 75% { + transform: rotate(810deg); } + 87.5% { + transform: rotate(945deg); } + to { + transform: rotate(1080deg); } } + +@-webkit-keyframes left-spin { + from { + -webkit-transform: rotate(130deg); + -moz-transform: rotate(130deg); + -ms-transform: rotate(130deg); + -o-transform: rotate(130deg); + transform: rotate(130deg); } + 50% { + -webkit-transform: rotate(-5deg); + -moz-transform: rotate(-5deg); + -ms-transform: rotate(-5deg); + -o-transform: rotate(-5deg); + transform: rotate(-5deg); } + to { + -webkit-transform: rotate(130deg); + -moz-transform: rotate(130deg); + -ms-transform: rotate(130deg); + -o-transform: rotate(130deg); + transform: rotate(130deg); } } + +@keyframes left-spin { + from { + -moz-transform: rotate(130deg); + -ms-transform: rotate(130deg); + -o-transform: rotate(130deg); + -webkit-transform: rotate(130deg); + transform: rotate(130deg); } + 50% { + -moz-transform: rotate(-5deg); + -ms-transform: rotate(-5deg); + -o-transform: rotate(-5deg); + -webkit-transform: rotate(-5deg); + transform: rotate(-5deg); } + to { + -moz-transform: rotate(130deg); + -ms-transform: rotate(130deg); + -o-transform: rotate(130deg); + -webkit-transform: rotate(130deg); + transform: rotate(130deg); } } + +@-webkit-keyframes right-spin { + from { + -webkit-transform: rotate(-130deg); + -moz-transform: rotate(-130deg); + -ms-transform: rotate(-130deg); + -o-transform: rotate(-130deg); + transform: rotate(-130deg); } + 50% { + -webkit-transform: rotate(5deg); + -moz-transform: rotate(5deg); + -ms-transform: rotate(5deg); + -o-transform: rotate(5deg); + transform: rotate(5deg); } + to { + -webkit-transform: rotate(-130deg); + -moz-transform: rotate(-130deg); + -ms-transform: rotate(-130deg); + -o-transform: rotate(-130deg); + transform: rotate(-130deg); } } + +@-moz-keyframes right-spin { + from { + -moz-transform: rotate(-130deg); + -ms-transform: rotate(-130deg); + -o-transform: rotate(-130deg); + -webkit-transform: rotate(-130deg); + transform: rotate(-130deg); } + 50% { + -moz-transform: rotate(5deg); + -ms-transform: rotate(5deg); + -o-transform: rotate(5deg); + -webkit-transform: rotate(5deg); + transform: rotate(5deg); } + to { + -moz-transform: rotate(-130deg); + -ms-transform: rotate(-130deg); + -o-transform: rotate(-130deg); + -webkit-transform: rotate(-130deg); + transform: rotate(-130deg); } } + +@keyframes right-spin { + from { + -moz-transform: rotate(-130deg); + -ms-transform: rotate(-130deg); + -o-transform: rotate(-130deg); + -webkit-transform: rotate(-130deg); + transform: rotate(-130deg); } + 50% { + -moz-transform: rotate(5deg); + -ms-transform: rotate(5deg); + -o-transform: rotate(5deg); + -webkit-transform: rotate(5deg); + transform: rotate(5deg); } + to { + -moz-transform: rotate(-130deg); + -ms-transform: rotate(-130deg); + -o-transform: rotate(-130deg); + -webkit-transform: rotate(-130deg); + transform: rotate(-130deg); } } + +/* Navbars ===================================== */ +.navbar { + font-family: "Roboto", sans-serif; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); + -ms-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); + box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); + border: none; + position: fixed; + top: 0; + left: 0; + z-index: 12; + width: 100%; } + .navbar .navbar-brand { + white-space: nowrap; + -ms-text-overflow: ellipsis; + -o-text-overflow: ellipsis; + text-overflow: ellipsis; + overflow: hidden; } + .navbar .navbar-custom-right-menu { + float: right; } + .navbar .navbar-toggle { + text-decoration: none; + color: #fff; + width: 20px; + height: 20px; + margin-top: -4px; + margin-right: 17px; } + .navbar .navbar-toggle:before { + content: '\E8D5'; + font-family: 'Material Icons'; + font-size: 26px; } + .navbar .navbar-collapse.in { + overflow: visible; } + +.ls-closed .sidebar { + margin-left: -300px; } + +.ls-closed section.content { + margin-left: 15px; } + +.ls-closed .bars:after, .ls-closed .bars:before { + font-family: 'Material Icons'; + font-size: 24px; + position: absolute; + top: 18px; + left: 20px; + margin-right: 10px; + -moz-transform: scale(0); + -ms-transform: scale(0); + -o-transform: scale(0); + -webkit-transform: scale(0); + transform: scale(0); + -moz-transition: all 0.3s; + -o-transition: all 0.3s; + -webkit-transition: all 0.3s; + transition: all 0.3s; } + +.ls-closed .bars:before { + content: '\E5D2'; + -moz-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + -webkit-transform: scale(1); + transform: scale(1); } + +.ls-closed .bars:after { + content: '\E5C4'; + -moz-transform: scale(0); + -ms-transform: scale(0); + -o-transform: scale(0); + -webkit-transform: scale(0); + transform: scale(0); } + +.ls-closed .navbar-brand { + margin-left: 30px; } + +.overlay-open .bars:before { + -moz-transform: scale(0); + -ms-transform: scale(0); + -o-transform: scale(0); + -webkit-transform: scale(0); + transform: scale(0); } + +.overlay-open .bars:after { + -moz-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + -webkit-transform: scale(1); + transform: scale(1); } + +.navbar-header { + padding: 10px 7px; } + .navbar-header .bars { + float: left; + text-decoration: none; } + +.navbar-nav > li > a { + padding: 7px 7px 2px 7px; + margin-top: 17px; + margin-left: 5px; } + +.navbar-nav .dropdown-menu { + margin-top: -40px !important; } + +.label-count { + position: absolute; + top: 2px; + right: 6px; + font-size: 10px; + line-height: 15px; + background-color: #000; + padding: 0 4px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + -ms-border-radius: 3px; + border-radius: 3px; } + +.col-red .navbar .navbar-brand, +.col-red .navbar .navbar-brand:hover, +.col-red .navbar .navbar-brand:active, +.col-red .navbar .navbar-brand:focus { + color: #fff; } + +.col-red .navbar .nav > li > a:hover, +.col-red .navbar .nav > li > a:focus, +.col-red .navbar .nav .open > a, +.col-red .navbar .nav .open > a:hover, +.col-red .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-red .navbar .nav > li > a { + color: #fff; } + +.col-red .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-red .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-pink .navbar .navbar-brand, +.col-pink .navbar .navbar-brand:hover, +.col-pink .navbar .navbar-brand:active, +.col-pink .navbar .navbar-brand:focus { + color: #fff; } + +.col-pink .navbar .nav > li > a:hover, +.col-pink .navbar .nav > li > a:focus, +.col-pink .navbar .nav .open > a, +.col-pink .navbar .nav .open > a:hover, +.col-pink .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-pink .navbar .nav > li > a { + color: #fff; } + +.col-pink .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-pink .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-purple .navbar .navbar-brand, +.col-purple .navbar .navbar-brand:hover, +.col-purple .navbar .navbar-brand:active, +.col-purple .navbar .navbar-brand:focus { + color: #fff; } + +.col-purple .navbar .nav > li > a:hover, +.col-purple .navbar .nav > li > a:focus, +.col-purple .navbar .nav .open > a, +.col-purple .navbar .nav .open > a:hover, +.col-purple .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-purple .navbar .nav > li > a { + color: #fff; } + +.col-purple .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-purple .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-deep-purple .navbar .navbar-brand, +.col-deep-purple .navbar .navbar-brand:hover, +.col-deep-purple .navbar .navbar-brand:active, +.col-deep-purple .navbar .navbar-brand:focus { + color: #fff; } + +.col-deep-purple .navbar .nav > li > a:hover, +.col-deep-purple .navbar .nav > li > a:focus, +.col-deep-purple .navbar .nav .open > a, +.col-deep-purple .navbar .nav .open > a:hover, +.col-deep-purple .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-deep-purple .navbar .nav > li > a { + color: #fff; } + +.col-deep-purple .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-deep-purple .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-indigo .navbar .navbar-brand, +.col-indigo .navbar .navbar-brand:hover, +.col-indigo .navbar .navbar-brand:active, +.col-indigo .navbar .navbar-brand:focus { + color: #fff; } + +.col-indigo .navbar .nav > li > a:hover, +.col-indigo .navbar .nav > li > a:focus, +.col-indigo .navbar .nav .open > a, +.col-indigo .navbar .nav .open > a:hover, +.col-indigo .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-indigo .navbar .nav > li > a { + color: #fff; } + +.col-indigo .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-indigo .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-blue .navbar .navbar-brand, +.col-blue .navbar .navbar-brand:hover, +.col-blue .navbar .navbar-brand:active, +.col-blue .navbar .navbar-brand:focus { + color: #fff; } + +.col-blue .navbar .nav > li > a:hover, +.col-blue .navbar .nav > li > a:focus, +.col-blue .navbar .nav .open > a, +.col-blue .navbar .nav .open > a:hover, +.col-blue .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-blue .navbar .nav > li > a { + color: #fff; } + +.col-blue .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-blue .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-light-blue .navbar .navbar-brand, +.col-light-blue .navbar .navbar-brand:hover, +.col-light-blue .navbar .navbar-brand:active, +.col-light-blue .navbar .navbar-brand:focus { + color: #fff; } + +.col-light-blue .navbar .nav > li > a:hover, +.col-light-blue .navbar .nav > li > a:focus, +.col-light-blue .navbar .nav .open > a, +.col-light-blue .navbar .nav .open > a:hover, +.col-light-blue .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-light-blue .navbar .nav > li > a { + color: #fff; } + +.col-light-blue .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-light-blue .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-cyan .navbar .navbar-brand, +.col-cyan .navbar .navbar-brand:hover, +.col-cyan .navbar .navbar-brand:active, +.col-cyan .navbar .navbar-brand:focus { + color: #fff; } + +.col-cyan .navbar .nav > li > a:hover, +.col-cyan .navbar .nav > li > a:focus, +.col-cyan .navbar .nav .open > a, +.col-cyan .navbar .nav .open > a:hover, +.col-cyan .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-cyan .navbar .nav > li > a { + color: #fff; } + +.col-cyan .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-cyan .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-teal .navbar .navbar-brand, +.col-teal .navbar .navbar-brand:hover, +.col-teal .navbar .navbar-brand:active, +.col-teal .navbar .navbar-brand:focus { + color: #fff; } + +.col-teal .navbar .nav > li > a:hover, +.col-teal .navbar .nav > li > a:focus, +.col-teal .navbar .nav .open > a, +.col-teal .navbar .nav .open > a:hover, +.col-teal .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-teal .navbar .nav > li > a { + color: #fff; } + +.col-teal .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-teal .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-green .navbar .navbar-brand, +.col-green .navbar .navbar-brand:hover, +.col-green .navbar .navbar-brand:active, +.col-green .navbar .navbar-brand:focus { + color: #fff; } + +.col-green .navbar .nav > li > a:hover, +.col-green .navbar .nav > li > a:focus, +.col-green .navbar .nav .open > a, +.col-green .navbar .nav .open > a:hover, +.col-green .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-green .navbar .nav > li > a { + color: #fff; } + +.col-green .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-green .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-light-green .navbar .navbar-brand, +.col-light-green .navbar .navbar-brand:hover, +.col-light-green .navbar .navbar-brand:active, +.col-light-green .navbar .navbar-brand:focus { + color: #fff; } + +.col-light-green .navbar .nav > li > a:hover, +.col-light-green .navbar .nav > li > a:focus, +.col-light-green .navbar .nav .open > a, +.col-light-green .navbar .nav .open > a:hover, +.col-light-green .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-light-green .navbar .nav > li > a { + color: #fff; } + +.col-light-green .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-light-green .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-lime .navbar .navbar-brand, +.col-lime .navbar .navbar-brand:hover, +.col-lime .navbar .navbar-brand:active, +.col-lime .navbar .navbar-brand:focus { + color: #fff; } + +.col-lime .navbar .nav > li > a:hover, +.col-lime .navbar .nav > li > a:focus, +.col-lime .navbar .nav .open > a, +.col-lime .navbar .nav .open > a:hover, +.col-lime .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-lime .navbar .nav > li > a { + color: #fff; } + +.col-lime .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-lime .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-yellow .navbar .navbar-brand, +.col-yellow .navbar .navbar-brand:hover, +.col-yellow .navbar .navbar-brand:active, +.col-yellow .navbar .navbar-brand:focus { + color: #fff; } + +.col-yellow .navbar .nav > li > a:hover, +.col-yellow .navbar .nav > li > a:focus, +.col-yellow .navbar .nav .open > a, +.col-yellow .navbar .nav .open > a:hover, +.col-yellow .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-yellow .navbar .nav > li > a { + color: #fff; } + +.col-yellow .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-yellow .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-amber .navbar .navbar-brand, +.col-amber .navbar .navbar-brand:hover, +.col-amber .navbar .navbar-brand:active, +.col-amber .navbar .navbar-brand:focus { + color: #fff; } + +.col-amber .navbar .nav > li > a:hover, +.col-amber .navbar .nav > li > a:focus, +.col-amber .navbar .nav .open > a, +.col-amber .navbar .nav .open > a:hover, +.col-amber .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-amber .navbar .nav > li > a { + color: #fff; } + +.col-amber .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-amber .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-orange .navbar .navbar-brand, +.col-orange .navbar .navbar-brand:hover, +.col-orange .navbar .navbar-brand:active, +.col-orange .navbar .navbar-brand:focus { + color: #fff; } + +.col-orange .navbar .nav > li > a:hover, +.col-orange .navbar .nav > li > a:focus, +.col-orange .navbar .nav .open > a, +.col-orange .navbar .nav .open > a:hover, +.col-orange .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-orange .navbar .nav > li > a { + color: #fff; } + +.col-orange .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-orange .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-deep-orange .navbar .navbar-brand, +.col-deep-orange .navbar .navbar-brand:hover, +.col-deep-orange .navbar .navbar-brand:active, +.col-deep-orange .navbar .navbar-brand:focus { + color: #fff; } + +.col-deep-orange .navbar .nav > li > a:hover, +.col-deep-orange .navbar .nav > li > a:focus, +.col-deep-orange .navbar .nav .open > a, +.col-deep-orange .navbar .nav .open > a:hover, +.col-deep-orange .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-deep-orange .navbar .nav > li > a { + color: #fff; } + +.col-deep-orange .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-deep-orange .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-brown .navbar .navbar-brand, +.col-brown .navbar .navbar-brand:hover, +.col-brown .navbar .navbar-brand:active, +.col-brown .navbar .navbar-brand:focus { + color: #fff; } + +.col-brown .navbar .nav > li > a:hover, +.col-brown .navbar .nav > li > a:focus, +.col-brown .navbar .nav .open > a, +.col-brown .navbar .nav .open > a:hover, +.col-brown .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-brown .navbar .nav > li > a { + color: #fff; } + +.col-brown .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-brown .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-grey .navbar .navbar-brand, +.col-grey .navbar .navbar-brand:hover, +.col-grey .navbar .navbar-brand:active, +.col-grey .navbar .navbar-brand:focus { + color: #fff; } + +.col-grey .navbar .nav > li > a:hover, +.col-grey .navbar .nav > li > a:focus, +.col-grey .navbar .nav .open > a, +.col-grey .navbar .nav .open > a:hover, +.col-grey .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-grey .navbar .nav > li > a { + color: #fff; } + +.col-grey .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-grey .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-blue-grey .navbar .navbar-brand, +.col-blue-grey .navbar .navbar-brand:hover, +.col-blue-grey .navbar .navbar-brand:active, +.col-blue-grey .navbar .navbar-brand:focus { + color: #fff; } + +.col-blue-grey .navbar .nav > li > a:hover, +.col-blue-grey .navbar .nav > li > a:focus, +.col-blue-grey .navbar .nav .open > a, +.col-blue-grey .navbar .nav .open > a:hover, +.col-blue-grey .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-blue-grey .navbar .nav > li > a { + color: #fff; } + +.col-blue-grey .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-blue-grey .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-black .navbar .navbar-brand, +.col-black .navbar .navbar-brand:hover, +.col-black .navbar .navbar-brand:active, +.col-black .navbar .navbar-brand:focus { + color: #fff; } + +.col-black .navbar .nav > li > a:hover, +.col-black .navbar .nav > li > a:focus, +.col-black .navbar .nav .open > a, +.col-black .navbar .nav .open > a:hover, +.col-black .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-black .navbar .nav > li > a { + color: #fff; } + +.col-black .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-black .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +.col-white .navbar .navbar-brand, +.col-white .navbar .navbar-brand:hover, +.col-white .navbar .navbar-brand:active, +.col-white .navbar .navbar-brand:focus { + color: #fff; } + +.col-white .navbar .nav > li > a:hover, +.col-white .navbar .nav > li > a:focus, +.col-white .navbar .nav .open > a, +.col-white .navbar .nav .open > a:hover, +.col-white .navbar .nav .open > a:focus { + background-color: rgba(0, 0, 0, 0.05); } + +.col-white .navbar .nav > li > a { + color: #fff; } + +.col-white .navbar .bars { + float: left; + padding: 10px 20px; + font-size: 22px; + color: #fff; + margin-right: 10px; + margin-left: -10px; + margin-top: 4px; } + +.col-white .navbar .bars:hover { + background-color: rgba(0, 0, 0, 0.08); } + +/* Dropdown Menu =============================== */ +.dropdown-menu { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + margin-top: -35px !important; + box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2); + border: none; } + .dropdown-menu .divider { + margin: 5px 0; } + .dropdown-menu .header { + font-size: 13px; + font-weight: bold; + min-width: 270px; + border-bottom: 1px solid #eee; + text-align: center; + padding: 4px 0 6px 0; } + .dropdown-menu ul.menu { + padding-left: 0; } + .dropdown-menu ul.menu.tasks h4 { + color: #333; + font-size: 13px; + margin: 0 0 8px 0; } + .dropdown-menu ul.menu.tasks h4 small { + float: right; + margin-top: 6px; } + .dropdown-menu ul.menu.tasks .progress { + height: 7px; + margin-bottom: 7px; } + .dropdown-menu ul.menu .icon-circle { + width: 36px; + height: 36px; + -webkit-border-radius: 50%; + -moz-border-radius: 50%; + -ms-border-radius: 50%; + border-radius: 50%; + color: #fff; + text-align: center; + display: inline-block; } + .dropdown-menu ul.menu .icon-circle i { + font-size: 18px; + line-height: 36px; } + .dropdown-menu ul.menu li { + border-bottom: 1px solid #eee; } + .dropdown-menu ul.menu li:last-child { + border-bottom: none; } + .dropdown-menu ul.menu li a { + padding: 7px 11px; + text-decoration: none; + -moz-transition: 0.5s; + -o-transition: 0.5s; + -webkit-transition: 0.5s; + transition: 0.5s; } + .dropdown-menu ul.menu li a:hover { + background-color: #e9e9e9; } + .dropdown-menu ul.menu .menu-info { + display: inline-block; + position: relative; + top: 3px; + left: 5px; } + .dropdown-menu ul.menu .menu-info h4 { + margin: 0; + font-size: 13px; + color: #333; } + .dropdown-menu ul.menu .menu-info p { + margin: 0; + font-size: 11px; + color: #aaa; } + .dropdown-menu ul.menu .menu-info p .material-icons { + font-size: 13px; + color: #aaa; + position: relative; + top: 2px; } + .dropdown-menu .footer a { + text-align: center; + border-top: 1px solid #eee; + padding: 5px 0 5px 0; + font-size: 12px; + margin-bottom: -5px; } + .dropdown-menu .footer a:hover { + background-color: transparent; } + .dropdown-menu > li > a { + padding: 7px 18px; + color: #666; + -moz-transition: all 0.5s; + -o-transition: all 0.5s; + -webkit-transition: all 0.5s; + transition: all 0.5s; + font-size: 14px; + line-height: 25px; } + .dropdown-menu > li > a:hover { + background-color: rgba(0, 0, 0, 0.075); } + .dropdown-menu > li > a i.material-icons { + float: left; + margin-right: 7px; + margin-top: 2px; + font-size: 20px; } + +.dropdown-animated { + -webkit-animation-duration: .3s !important; + -moz-animation-duration: .3s !important; + -o-animation-duration: .3s !important; + animation-duration: .3s !important; } + +/* Left Sidebar & Overlay ====================== */ +.overlay { + position: fixed; + cursor: pointer; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: rgba(0, 0, 0, 0.5); + display: none; + z-index: 10; } + +.overlay-open .sidebar { + margin-left: 0; + z-index: 99999999; } + +.sidebar { + -moz-transition: all 0.5s; + -o-transition: all 0.5s; + -webkit-transition: all 0.5s; + transition: all 0.5s; + font-family: "Roboto", sans-serif; + background: #fdfdfd; + width: 300px; + overflow: hidden; + display: inline-block; + height: calc(100vh - 70px); + position: fixed; + top: 70px; + left: 0; + -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); + -moz-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); + -ms-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); + box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); + z-index: 11 !important; } + .sidebar .legal { + position: absolute; + bottom: 0; + width: 100%; + border-top: 1px solid #eee; + padding: 15px; + overflow: hidden; } + .sidebar .legal .copyright { + font-size: 13px; + white-space: nowrap; + -ms-text-overflow: ellipsis; + -o-text-overflow: ellipsis; + text-overflow: ellipsis; + overflow: hidden; } + .sidebar .legal .copyright a { + font-weight: bold; + text-decoration: none; } + .sidebar .legal .version { + white-space: nowrap; + -ms-text-overflow: ellipsis; + -o-text-overflow: ellipsis; + text-overflow: ellipsis; + overflow: hidden; + margin-top: 5px; + font-size: 13px; } + .sidebar .user-info { + padding: 13px 15px 12px 15px; + white-space: nowrap; + position: relative; + border-bottom: 1px solid #e9e9e9; + background: url("../images/user-img-background.jpg") no-repeat no-repeat; + height: 135px; } + .sidebar .user-info .image { + margin-right: 12px; + display: inline-block; } + .sidebar .user-info .image img { + -webkit-border-radius: 50%; + -moz-border-radius: 50%; + -ms-border-radius: 50%; + border-radius: 50%; + vertical-align: bottom !important; } + .sidebar .user-info .info-container { + cursor: default; + display: block; + position: relative; + top: 25px; } + .sidebar .user-info .info-container .name { + white-space: nowrap; + -ms-text-overflow: ellipsis; + -o-text-overflow: ellipsis; + text-overflow: ellipsis; + overflow: hidden; + font-size: 14px; + max-width: 200px; + color: #fff; } + .sidebar .user-info .info-container .email { + white-space: nowrap; + -ms-text-overflow: ellipsis; + -o-text-overflow: ellipsis; + text-overflow: ellipsis; + overflow: hidden; + font-size: 12px; + max-width: 200px; + color: #fff; } + .sidebar .user-info .info-container .user-helper-dropdown { + position: absolute; + right: -3px; + bottom: -12px; + -webkit-box-shadow: none; + -moz-box-shadow: none; + -ms-box-shadow: none; + box-shadow: none; + cursor: pointer; + color: #fff; } + .sidebar .menu { + position: relative; + overflow-y: auto; + height: 90vh; } + .sidebar .menu .list { + list-style: none; + padding-left: 0; } + .sidebar .menu .list li.active > :first-child span { + font-weight: bold; } + .sidebar .menu .list .header { + background: #eee; + font-size: 12px; + font-weight: 600; + padding: 8px 16px; } + .sidebar .menu .list i.material-icons { + margin-top: 4px; } + .sidebar .menu .list .menu-toggle:after, .sidebar .menu .list .menu-toggle:before { + position: absolute; + top: calc(50% - 14px); + right: 17px; + font-size: 19px; + -moz-transform: scale(0); + -ms-transform: scale(0); + -o-transform: scale(0); + -webkit-transform: scale(0); + transform: scale(0); + -moz-transition: all 0.3s; + -o-transition: all 0.3s; + -webkit-transition: all 0.3s; + transition: all 0.3s; } + .sidebar .menu .list .menu-toggle:before { + content: '+'; + -moz-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + -webkit-transform: scale(1); + transform: scale(1); } + .sidebar .menu .list .menu-toggle:after { + content: '\2013'; + -moz-transform: scale(0); + -ms-transform: scale(0); + -o-transform: scale(0); + -webkit-transform: scale(0); + transform: scale(0); } + .sidebar .menu .list .menu-toggle.toggled:before { + -moz-transform: scale(0); + -ms-transform: scale(0); + -o-transform: scale(0); + -webkit-transform: scale(0); + transform: scale(0); } + .sidebar .menu .list .menu-toggle.toggled:after { + -moz-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + -webkit-transform: scale(1); + transform: scale(1); } + .sidebar .menu .list a { + color: #747474; + position: relative; + display: inline-flex; + vertical-align: middle; + width: 100%; + padding: 10px 13px; } + .sidebar .menu .list a:hover, .sidebar .menu .list a:active, .sidebar .menu .list a:focus { + text-decoration: none !important; } + .sidebar .menu .list a small { + position: absolute; + top: calc(50% - 7.5px); + right: 15px; } + .sidebar .menu .list a span { + margin: 7px 0 7px 12px; + color: #333; + font-weight: bold; + font-size: 14px; + overflow: hidden; } + .sidebar .menu .list .ml-menu { + list-style: none; + display: none; + padding-left: 0; } + .sidebar .menu .list .ml-menu span { + font-weight: normal; + font-size: 14px; + margin: 3px 0 1px 6px; } + .sidebar .menu .list .ml-menu li a { + padding-left: 55px; + padding-top: 7px; + padding-bottom: 7px; } + .sidebar .menu .list .ml-menu li.active a.toggled:not(.menu-toggle) { + font-weight: 600; + margin-left: 5px; } + .sidebar .menu .list .ml-menu li.active a.toggled:not(.menu-toggle):before { + content: '\E315'; + font-family: 'Material Icons'; + position: relative; + font-size: 21px; + height: 20px; + top: -5px; + right: 0px; } + .sidebar .menu .list .ml-menu li .ml-menu li a { + padding-left: 80px; } + .sidebar .menu .list .ml-menu li .ml-menu .ml-menu li a { + padding-left: 95px; } + +.right-sidebar { + width: 280px; + height: calc(100vh - 70px); + position: fixed; + right: -300px; + top: 70px; + background: #fdfdfd; + z-index: 11 !important; + -webkit-box-shadow: -2px 2px 5px rgba(0, 0, 0, 0.1); + -moz-box-shadow: -2px 2px 5px rgba(0, 0, 0, 0.1); + -ms-box-shadow: -2px 2px 5px rgba(0, 0, 0, 0.1); + box-shadow: -2px 2px 5px rgba(0, 0, 0, 0.1); + overflow: hidden; + -moz-transition: 0.5s; + -o-transition: 0.5s; + -webkit-transition: 0.5s; + transition: 0.5s; } + .right-sidebar.open { + right: 0; } + .right-sidebar .nav-tabs { + font-weight: 600; + font-size: 13px; + width: 100%; + margin-left: 2px; } + .right-sidebar .nav-tabs li { + text-align: center; } + .right-sidebar .nav-tabs li > a { + margin-right: 0; } + .right-sidebar .nav-tabs li:first-child { + width: 45%; } + .right-sidebar .nav-tabs li:last-child { + width: 55%; } + +/* Bootstrap Notify ============================ */ +.bootstrap-notify-container { + max-width: 320px; + text-align: center; } + +/* Jquery Nestable ============================= */ +.dd-handle { + background-color: #f9f9f9 !important; } + .dd-handle:hover { + color: #2196F3; } + +.nestable-dark-theme .dd-handle { + background: #ccc !important; + border: 1px solid #999 !important; } + +.dd3-handle { + background: #999 !important; } + +.dd3-content:hover { + color: #2196F3; } + +/* Login Page ================================== */ +.login-page { + background-color: #00BCD4; + padding-left: 0; + max-width: 360px; + margin: 5% auto; + overflow-x: hidden; } + .login-page .login-box .msg { + color: #555; + margin-bottom: 30px; + text-align: center; } + .login-page .login-box a { + font-size: 14px; + text-decoration: none; + color: #00BCD4; } + .login-page .login-box .logo { + margin-bottom: 20px; } + .login-page .login-box .logo a { + font-size: 36px; + display: block; + width: 100%; + text-align: center; + color: #fff; } + .login-page .login-box .logo small { + display: block; + width: 100%; + text-align: center; + color: #fff; + margin-top: -5px; } + +/* Sign Up Page ================================ */ +.signup-page { + background-color: #00BCD4; + padding-left: 0; + max-width: 360px; + margin: 5% auto; + overflow-x: hidden; } + .signup-page .signup-box .msg { + color: #555; + margin-bottom: 30px; + text-align: center; } + .signup-page .signup-box a { + font-size: 14px; + text-decoration: none; + color: #00BCD4; } + .signup-page .signup-box .logo { + margin-bottom: 20px; } + .signup-page .signup-box .logo a { + font-size: 36px; + display: block; + width: 100%; + text-align: center; + color: #fff; } + .signup-page .signup-box .logo small { + display: block; + width: 100%; + text-align: center; + color: #fff; + margin-top: -5px; } + +/* Forgot Password Page ======================== */ +.fp-page { + background-color: #00BCD4; + padding-left: 0; + max-width: 360px; + margin: 5% auto; + overflow-x: hidden; } + .fp-page .fp-box .msg { + color: #555; + margin-bottom: 30px; + text-align: center; } + .fp-page .fp-box a { + font-size: 14px; + text-decoration: none; + color: #00BCD4; } + .fp-page .fp-box .logo { + margin-bottom: 20px; } + .fp-page .fp-box .logo a { + font-size: 36px; + display: block; + width: 100%; + text-align: center; + color: #fff; } + .fp-page .fp-box .logo small { + display: block; + width: 100%; + text-align: center; + color: #fff; + margin-top: -5px; } + +/* 404 Not Found Page ========================== */ +.four-zero-four { + width: 100%; + text-align: center; + margin: 5% auto; } + .four-zero-four .four-zero-four-container .error-code { + font-size: 160px; } + .four-zero-four .four-zero-four-container .error-message { + font-size: 26px; + color: #333; + font-weight: bold; + margin-top: -40px; } + .four-zero-four .four-zero-four-container .button-place { + margin-top: 32px; } + +/* 500 Server Error Page ======================= */ +.five-zero-zero { + width: 100%; + text-align: center; + margin: 5% auto; } + .five-zero-zero .five-zero-zero-container .error-code { + font-size: 160px; } + .five-zero-zero .five-zero-zero-container .error-message { + font-size: 27px; + color: #333; + font-weight: bold; + margin-top: -40px; } + .five-zero-zero .five-zero-zero-container .button-place { + margin-top: 32px; } + +/* Maps ======================================== */ +/* Google Maps */ +.gmap { + width: 100%; + height: 400px; } + +/* jVector Map */ +.jvector-map { + width: 100%; + height: 600px; } + +/* Charts ====================================== */ +/* Morris */ +.morris-hover.morris-default-style { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; } + +/* Flot */ +.flot-chart { + width: 100%; + height: 320px; } + +.panel-switch-btn { + position: relative; + right: 20px; + z-index: 9; } + .panel-switch-btn label { + font-weight: bold !important; } + +.legendLabel { + width: 85px !important; + position: relative; + left: 3px; } + +#multiple_axis_chart .legendLabel { + width: 160px !important; } + +/* Sparkline */ +.sparkline { + text-align: center; } + +/* Searchbar =================================== */ +.search-bar { + position: fixed; + top: -100px; + left: 0; + z-index: 9999999; + width: 100%; + -moz-transition: 0.25s; + -o-transition: 0.25s; + -webkit-transition: 0.25s; + transition: 0.25s; } + .search-bar.open { + top: 0; } + .search-bar .search-icon { + position: absolute; + top: 20px; + left: 14px; } + .search-bar .search-icon .material-icons { + font-size: 32px; + color: #999; } + .search-bar .close-search { + position: absolute; + cursor: pointer; + font-size: 30px; + top: 16px; + right: 18px; } + .search-bar .close-search .material-icons { + color: #999; + opacity: 1; + -moz-transition: 0.5s; + -o-transition: 0.5s; + -webkit-transition: 0.5s; + transition: 0.5s; } + .search-bar .close-search .material-icons:hover { + opacity: .5; } + .search-bar input[type="text"] { + width: 100%; + font-size: 16px; + padding: 25px 60px 23px 56px; + border: none; } + +/* Jquery DataTable ============================ */ +.dataTables_wrapper { + position: relative; } + .dataTables_wrapper select { + border: none; + border-bottom: 1px solid #ddd; + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + -webkit-box-shadow: none; + -moz-box-shadow: none; + -ms-box-shadow: none; + box-shadow: none; } + .dataTables_wrapper select:active, .dataTables_wrapper select:focus { + -webkit-box-shadow: none; + -moz-box-shadow: none; + -ms-box-shadow: none; + box-shadow: none; } + .dataTables_wrapper input[type="search"] { + -webkit-border-radius: 0; + -moz-border-radius: 0; + -ms-border-radius: 0; + border-radius: 0; + -webkit-box-shadow: none; + -moz-box-shadow: none; + -ms-box-shadow: none; + box-shadow: none; + border: none; + font-size: 12px; + border-bottom: 1px solid #ddd; } + .dataTables_wrapper input[type="search"]:focus, .dataTables_wrapper input[type="search"]:active { + border-bottom: 2px solid #1f91f3; } + .dataTables_wrapper .dt-buttons { + float: left; } + .dataTables_wrapper .dt-buttons a.dt-button { + background-color: #607D8B; + color: #fff; + padding: 7px 12px; + margin-right: 5px; + text-decoration: none; + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.16), 0 2px 10px rgba(0, 0, 0, 0.12); + -webkit-border-radius: 2px; + -moz-border-radius: 2px; + -ms-border-radius: 2px; + border-radius: 2px; + border: none; + font-size: 13px; + outline: none; } + .dataTables_wrapper .dt-buttons a.dt-button:active { + opacity: 0.8; } + +.dt-button-info { + position: fixed; + top: 50%; + left: 50%; + min-width: 400px; + text-align: center; + background-color: #fff; + border: 2px solid #999; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + -ms-border-radius: 3px; + border-radius: 3px; + margin-top: -100px; + margin-left: -200px; + z-index: 21; } + .dt-button-info h2 { + color: #777; } + .dt-button-info div { + color: #777; + margin-bottom: 20px; } + +/* Light Gallery ================================ */ +.lg-outer .lg-thumb-item, +.lg-outer .lg-toogle-thumb { + -webkit-border-radius: 0 !important; + -moz-border-radius: 0 !important; + -ms-border-radius: 0 !important; + border-radius: 0 !important; } + +/* For Internet Explorer 10 ===================== */ +html.ie10 .sidebar .menu .list li { + line-height: 30px; } + +html.ie10 .sidebar .menu .list .ml-menu li.active a:not(.menu-toggle).toggled:before { + top: 6px !important; + line-height: 20px !important; } + +html.ie10 .sidebar .user-info .info-container { + top: 15px; } + +html.ie10 .search-bar input[type="text"] { + padding: 26px 60px 26px 56px; } + +html.ie10 .dropdown-menu ul.menu li a { + margin-top: -22px; } + +html.ie10 .bs-searchbox .form-control { + width: 90%; } + +/* For Internet Explorer 11 ===================== */ +html.ie11 .sidebar .menu .list .ml-menu li.active a:not(.menu-toggle).toggled:before { + top: 6px !important; + line-height: 20px !important; } + +html.ie11 .sidebar .user-info .info-container { + top: 15px; } + +html.ie11 .search-bar input[type="text"] { + padding: 26px 60px 26px 56px; } + +html.ie11 .dropdown-menu ul.menu li a { + margin-top: -22px; } + +html.ie11 .bs-searchbox .form-control { + width: 90%; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/style.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/style.min.css new file mode 100644 index 0000000..b5de575 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/style.min.css @@ -0,0 +1 @@ +@import url(materialize.css);.navbar{font-family:"Roboto",sans-serif;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;-webkit-box-shadow:0 1px 5px rgba(0,0,0,.3);-moz-box-shadow:0 1px 5px rgba(0,0,0,.3);-ms-box-shadow:0 1px 5px rgba(0,0,0,.3);box-shadow:0 1px 5px rgba(0,0,0,.3);border:none;position:fixed;top:0;left:0;z-index:12;width:100%;}.navbar .navbar-brand{white-space:nowrap;-ms-text-overflow:ellipsis;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;}.navbar .navbar-custom-right-menu{float:right;}.navbar .navbar-toggle{text-decoration:none;color:#fff;width:20px;height:20px;margin-top:-4px;margin-right:17px;}.navbar .navbar-toggle:before{content:'';font-family:'Material Icons';font-size:26px;}.navbar .navbar-collapse.in{overflow:visible;}.ls-closed .sidebar{margin-left:-300px;}.ls-closed section.content{margin-left:15px;}.ls-closed .bars:after,.ls-closed .bars:before{font-family:'Material Icons';font-size:24px;position:absolute;top:18px;left:20px;margin-right:10px;-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);-webkit-transform:scale(0);transform:scale(0);-moz-transition:all .3s;-o-transition:all .3s;-webkit-transition:all .3s;transition:all .3s;}.ls-closed .bars:before{content:'';-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);}.ls-closed .bars:after{content:'';-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);-webkit-transform:scale(0);transform:scale(0);}.ls-closed .navbar-brand{margin-left:30px;}.overlay-open .bars:before{-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);-webkit-transform:scale(0);transform:scale(0);}.overlay-open .bars:after{-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);}.navbar-header{padding:10px 7px;}.navbar-header .bars{float:left;text-decoration:none;}.navbar-nav>li>a{padding:7px 7px 2px 7px;margin-top:17px;margin-left:5px;}.navbar-nav .dropdown-menu{margin-top:-40px !important;}.label-count{position:absolute;top:2px;right:6px;font-size:10px;line-height:15px;background-color:#000;padding:0 4px;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;}.col-red .navbar .navbar-brand,.col-red .navbar .navbar-brand:hover,.col-red .navbar .navbar-brand:active,.col-red .navbar .navbar-brand:focus{color:#fff;}.col-red .navbar .nav>li>a:hover,.col-red .navbar .nav>li>a:focus,.col-red .navbar .nav .open>a,.col-red .navbar .nav .open>a:hover,.col-red .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-red .navbar .nav>li>a{color:#fff;}.col-red .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-red .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-pink .navbar .navbar-brand,.col-pink .navbar .navbar-brand:hover,.col-pink .navbar .navbar-brand:active,.col-pink .navbar .navbar-brand:focus{color:#fff;}.col-pink .navbar .nav>li>a:hover,.col-pink .navbar .nav>li>a:focus,.col-pink .navbar .nav .open>a,.col-pink .navbar .nav .open>a:hover,.col-pink .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-pink .navbar .nav>li>a{color:#fff;}.col-pink .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-pink .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-purple .navbar .navbar-brand,.col-purple .navbar .navbar-brand:hover,.col-purple .navbar .navbar-brand:active,.col-purple .navbar .navbar-brand:focus{color:#fff;}.col-purple .navbar .nav>li>a:hover,.col-purple .navbar .nav>li>a:focus,.col-purple .navbar .nav .open>a,.col-purple .navbar .nav .open>a:hover,.col-purple .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-purple .navbar .nav>li>a{color:#fff;}.col-purple .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-purple .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-deep-purple .navbar .navbar-brand,.col-deep-purple .navbar .navbar-brand:hover,.col-deep-purple .navbar .navbar-brand:active,.col-deep-purple .navbar .navbar-brand:focus{color:#fff;}.col-deep-purple .navbar .nav>li>a:hover,.col-deep-purple .navbar .nav>li>a:focus,.col-deep-purple .navbar .nav .open>a,.col-deep-purple .navbar .nav .open>a:hover,.col-deep-purple .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-deep-purple .navbar .nav>li>a{color:#fff;}.col-deep-purple .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-deep-purple .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-indigo .navbar .navbar-brand,.col-indigo .navbar .navbar-brand:hover,.col-indigo .navbar .navbar-brand:active,.col-indigo .navbar .navbar-brand:focus{color:#fff;}.col-indigo .navbar .nav>li>a:hover,.col-indigo .navbar .nav>li>a:focus,.col-indigo .navbar .nav .open>a,.col-indigo .navbar .nav .open>a:hover,.col-indigo .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-indigo .navbar .nav>li>a{color:#fff;}.col-indigo .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-indigo .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-blue .navbar .navbar-brand,.col-blue .navbar .navbar-brand:hover,.col-blue .navbar .navbar-brand:active,.col-blue .navbar .navbar-brand:focus{color:#fff;}.col-blue .navbar .nav>li>a:hover,.col-blue .navbar .nav>li>a:focus,.col-blue .navbar .nav .open>a,.col-blue .navbar .nav .open>a:hover,.col-blue .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-blue .navbar .nav>li>a{color:#fff;}.col-blue .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-blue .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-light-blue .navbar .navbar-brand,.col-light-blue .navbar .navbar-brand:hover,.col-light-blue .navbar .navbar-brand:active,.col-light-blue .navbar .navbar-brand:focus{color:#fff;}.col-light-blue .navbar .nav>li>a:hover,.col-light-blue .navbar .nav>li>a:focus,.col-light-blue .navbar .nav .open>a,.col-light-blue .navbar .nav .open>a:hover,.col-light-blue .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-light-blue .navbar .nav>li>a{color:#fff;}.col-light-blue .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-light-blue .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-cyan .navbar .navbar-brand,.col-cyan .navbar .navbar-brand:hover,.col-cyan .navbar .navbar-brand:active,.col-cyan .navbar .navbar-brand:focus{color:#fff;}.col-cyan .navbar .nav>li>a:hover,.col-cyan .navbar .nav>li>a:focus,.col-cyan .navbar .nav .open>a,.col-cyan .navbar .nav .open>a:hover,.col-cyan .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-cyan .navbar .nav>li>a{color:#fff;}.col-cyan .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-cyan .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-teal .navbar .navbar-brand,.col-teal .navbar .navbar-brand:hover,.col-teal .navbar .navbar-brand:active,.col-teal .navbar .navbar-brand:focus{color:#fff;}.col-teal .navbar .nav>li>a:hover,.col-teal .navbar .nav>li>a:focus,.col-teal .navbar .nav .open>a,.col-teal .navbar .nav .open>a:hover,.col-teal .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-teal .navbar .nav>li>a{color:#fff;}.col-teal .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-teal .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-green .navbar .navbar-brand,.col-green .navbar .navbar-brand:hover,.col-green .navbar .navbar-brand:active,.col-green .navbar .navbar-brand:focus{color:#fff;}.col-green .navbar .nav>li>a:hover,.col-green .navbar .nav>li>a:focus,.col-green .navbar .nav .open>a,.col-green .navbar .nav .open>a:hover,.col-green .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-green .navbar .nav>li>a{color:#fff;}.col-green .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-green .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-light-green .navbar .navbar-brand,.col-light-green .navbar .navbar-brand:hover,.col-light-green .navbar .navbar-brand:active,.col-light-green .navbar .navbar-brand:focus{color:#fff;}.col-light-green .navbar .nav>li>a:hover,.col-light-green .navbar .nav>li>a:focus,.col-light-green .navbar .nav .open>a,.col-light-green .navbar .nav .open>a:hover,.col-light-green .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-light-green .navbar .nav>li>a{color:#fff;}.col-light-green .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-light-green .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-lime .navbar .navbar-brand,.col-lime .navbar .navbar-brand:hover,.col-lime .navbar .navbar-brand:active,.col-lime .navbar .navbar-brand:focus{color:#fff;}.col-lime .navbar .nav>li>a:hover,.col-lime .navbar .nav>li>a:focus,.col-lime .navbar .nav .open>a,.col-lime .navbar .nav .open>a:hover,.col-lime .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-lime .navbar .nav>li>a{color:#fff;}.col-lime .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-lime .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-yellow .navbar .navbar-brand,.col-yellow .navbar .navbar-brand:hover,.col-yellow .navbar .navbar-brand:active,.col-yellow .navbar .navbar-brand:focus{color:#fff;}.col-yellow .navbar .nav>li>a:hover,.col-yellow .navbar .nav>li>a:focus,.col-yellow .navbar .nav .open>a,.col-yellow .navbar .nav .open>a:hover,.col-yellow .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-yellow .navbar .nav>li>a{color:#fff;}.col-yellow .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-yellow .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-amber .navbar .navbar-brand,.col-amber .navbar .navbar-brand:hover,.col-amber .navbar .navbar-brand:active,.col-amber .navbar .navbar-brand:focus{color:#fff;}.col-amber .navbar .nav>li>a:hover,.col-amber .navbar .nav>li>a:focus,.col-amber .navbar .nav .open>a,.col-amber .navbar .nav .open>a:hover,.col-amber .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-amber .navbar .nav>li>a{color:#fff;}.col-amber .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-amber .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-orange .navbar .navbar-brand,.col-orange .navbar .navbar-brand:hover,.col-orange .navbar .navbar-brand:active,.col-orange .navbar .navbar-brand:focus{color:#fff;}.col-orange .navbar .nav>li>a:hover,.col-orange .navbar .nav>li>a:focus,.col-orange .navbar .nav .open>a,.col-orange .navbar .nav .open>a:hover,.col-orange .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-orange .navbar .nav>li>a{color:#fff;}.col-orange .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-orange .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-deep-orange .navbar .navbar-brand,.col-deep-orange .navbar .navbar-brand:hover,.col-deep-orange .navbar .navbar-brand:active,.col-deep-orange .navbar .navbar-brand:focus{color:#fff;}.col-deep-orange .navbar .nav>li>a:hover,.col-deep-orange .navbar .nav>li>a:focus,.col-deep-orange .navbar .nav .open>a,.col-deep-orange .navbar .nav .open>a:hover,.col-deep-orange .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-deep-orange .navbar .nav>li>a{color:#fff;}.col-deep-orange .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-deep-orange .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-brown .navbar .navbar-brand,.col-brown .navbar .navbar-brand:hover,.col-brown .navbar .navbar-brand:active,.col-brown .navbar .navbar-brand:focus{color:#fff;}.col-brown .navbar .nav>li>a:hover,.col-brown .navbar .nav>li>a:focus,.col-brown .navbar .nav .open>a,.col-brown .navbar .nav .open>a:hover,.col-brown .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-brown .navbar .nav>li>a{color:#fff;}.col-brown .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-brown .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-grey .navbar .navbar-brand,.col-grey .navbar .navbar-brand:hover,.col-grey .navbar .navbar-brand:active,.col-grey .navbar .navbar-brand:focus{color:#fff;}.col-grey .navbar .nav>li>a:hover,.col-grey .navbar .nav>li>a:focus,.col-grey .navbar .nav .open>a,.col-grey .navbar .nav .open>a:hover,.col-grey .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-grey .navbar .nav>li>a{color:#fff;}.col-grey .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-grey .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-blue-grey .navbar .navbar-brand,.col-blue-grey .navbar .navbar-brand:hover,.col-blue-grey .navbar .navbar-brand:active,.col-blue-grey .navbar .navbar-brand:focus{color:#fff;}.col-blue-grey .navbar .nav>li>a:hover,.col-blue-grey .navbar .nav>li>a:focus,.col-blue-grey .navbar .nav .open>a,.col-blue-grey .navbar .nav .open>a:hover,.col-blue-grey .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-blue-grey .navbar .nav>li>a{color:#fff;}.col-blue-grey .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-blue-grey .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-black .navbar .navbar-brand,.col-black .navbar .navbar-brand:hover,.col-black .navbar .navbar-brand:active,.col-black .navbar .navbar-brand:focus{color:#fff;}.col-black .navbar .nav>li>a:hover,.col-black .navbar .nav>li>a:focus,.col-black .navbar .nav .open>a,.col-black .navbar .nav .open>a:hover,.col-black .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-black .navbar .nav>li>a{color:#fff;}.col-black .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-black .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-white .navbar .navbar-brand,.col-white .navbar .navbar-brand:hover,.col-white .navbar .navbar-brand:active,.col-white .navbar .navbar-brand:focus{color:#fff;}.col-white .navbar .nav>li>a:hover,.col-white .navbar .nav>li>a:focus,.col-white .navbar .nav .open>a,.col-white .navbar .nav .open>a:hover,.col-white .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-white .navbar .nav>li>a{color:#fff;}.col-white .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-white .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.material-icons.md-18{font-size:18px;}.material-icons.md-24{font-size:24px;}.material-icons.md-26{font-size:26px;}.material-icons.md-28{font-size:28px;}.material-icons.md-30{font-size:30px;}.material-icons.md-32{font-size:32px;}.material-icons.md-36{font-size:36px;}.material-icons.md-48{font-size:48px;}.m-l--125{margin-left:-125px;}.m-t--125{margin-top:-125px;}.m-r--125{margin-right:-125px;}.m-b--125{margin-bottom:-125px;}.m-l--120{margin-left:-120px;}.m-t--120{margin-top:-120px;}.m-r--120{margin-right:-120px;}.m-b--120{margin-bottom:-120px;}.m-l--115{margin-left:-115px;}.m-t--115{margin-top:-115px;}.m-r--115{margin-right:-115px;}.m-b--115{margin-bottom:-115px;}.m-l--110{margin-left:-110px;}.m-t--110{margin-top:-110px;}.m-r--110{margin-right:-110px;}.m-b--110{margin-bottom:-110px;}.m-l--105{margin-left:-105px;}.m-t--105{margin-top:-105px;}.m-r--105{margin-right:-105px;}.m-b--105{margin-bottom:-105px;}.m-l--100{margin-left:-100px;}.m-t--100{margin-top:-100px;}.m-r--100{margin-right:-100px;}.m-b--100{margin-bottom:-100px;}.m-l--95{margin-left:-95px;}.m-t--95{margin-top:-95px;}.m-r--95{margin-right:-95px;}.m-b--95{margin-bottom:-95px;}.m-l--90{margin-left:-90px;}.m-t--90{margin-top:-90px;}.m-r--90{margin-right:-90px;}.m-b--90{margin-bottom:-90px;}.m-l--85{margin-left:-85px;}.m-t--85{margin-top:-85px;}.m-r--85{margin-right:-85px;}.m-b--85{margin-bottom:-85px;}.m-l--80{margin-left:-80px;}.m-t--80{margin-top:-80px;}.m-r--80{margin-right:-80px;}.m-b--80{margin-bottom:-80px;}.m-l--75{margin-left:-75px;}.m-t--75{margin-top:-75px;}.m-r--75{margin-right:-75px;}.m-b--75{margin-bottom:-75px;}.m-l--70{margin-left:-70px;}.m-t--70{margin-top:-70px;}.m-r--70{margin-right:-70px;}.m-b--70{margin-bottom:-70px;}.m-l--65{margin-left:-65px;}.m-t--65{margin-top:-65px;}.m-r--65{margin-right:-65px;}.m-b--65{margin-bottom:-65px;}.m-l--60{margin-left:-60px;}.m-t--60{margin-top:-60px;}.m-r--60{margin-right:-60px;}.m-b--60{margin-bottom:-60px;}.m-l--55{margin-left:-55px;}.m-t--55{margin-top:-55px;}.m-r--55{margin-right:-55px;}.m-b--55{margin-bottom:-55px;}.m-l--50{margin-left:-50px;}.m-t--50{margin-top:-50px;}.m-r--50{margin-right:-50px;}.m-b--50{margin-bottom:-50px;}.m-l--45{margin-left:-45px;}.m-t--45{margin-top:-45px;}.m-r--45{margin-right:-45px;}.m-b--45{margin-bottom:-45px;}.m-l--40{margin-left:-40px;}.m-t--40{margin-top:-40px;}.m-r--40{margin-right:-40px;}.m-b--40{margin-bottom:-40px;}.m-l--35{margin-left:-35px;}.m-t--35{margin-top:-35px;}.m-r--35{margin-right:-35px;}.m-b--35{margin-bottom:-35px;}.m-l--30{margin-left:-30px;}.m-t--30{margin-top:-30px;}.m-r--30{margin-right:-30px;}.m-b--30{margin-bottom:-30px;}.m-l--25{margin-left:-25px;}.m-t--25{margin-top:-25px;}.m-r--25{margin-right:-25px;}.m-b--25{margin-bottom:-25px;}.m-l--20{margin-left:-20px;}.m-t--20{margin-top:-20px;}.m-r--20{margin-right:-20px;}.m-b--20{margin-bottom:-20px;}.m-l--15{margin-left:-15px;}.m-t--15{margin-top:-15px;}.m-r--15{margin-right:-15px;}.m-b--15{margin-bottom:-15px;}.m-l--10{margin-left:-10px;}.m-t--10{margin-top:-10px;}.m-r--10{margin-right:-10px;}.m-b--10{margin-bottom:-10px;}.m-l--5{margin-left:-5px;}.m-t--5{margin-top:-5px;}.m-r--5{margin-right:-5px;}.m-b--5{margin-bottom:-5px;}.m-l-0{margin-left:0;}.m-t-0{margin-top:0;}.m-r-0{margin-right:0;}.m-b-0{margin-bottom:0;}.m-l-5{margin-left:5px;}.m-t-5{margin-top:5px;}.m-r-5{margin-right:5px;}.m-b-5{margin-bottom:5px;}.m-l-10{margin-left:10px;}.m-t-10{margin-top:10px;}.m-r-10{margin-right:10px;}.m-b-10{margin-bottom:10px;}.m-l-15{margin-left:15px;}.m-t-15{margin-top:15px;}.m-r-15{margin-right:15px;}.m-b-15{margin-bottom:15px;}.m-l-20{margin-left:20px;}.m-t-20{margin-top:20px;}.m-r-20{margin-right:20px;}.m-b-20{margin-bottom:20px;}.m-l-25{margin-left:25px;}.m-t-25{margin-top:25px;}.m-r-25{margin-right:25px;}.m-b-25{margin-bottom:25px;}.m-l-30{margin-left:30px;}.m-t-30{margin-top:30px;}.m-r-30{margin-right:30px;}.m-b-30{margin-bottom:30px;}.m-l-35{margin-left:35px;}.m-t-35{margin-top:35px;}.m-r-35{margin-right:35px;}.m-b-35{margin-bottom:35px;}.m-l-40{margin-left:40px;}.m-t-40{margin-top:40px;}.m-r-40{margin-right:40px;}.m-b-40{margin-bottom:40px;}.m-l-45{margin-left:45px;}.m-t-45{margin-top:45px;}.m-r-45{margin-right:45px;}.m-b-45{margin-bottom:45px;}.m-l-50{margin-left:50px;}.m-t-50{margin-top:50px;}.m-r-50{margin-right:50px;}.m-b-50{margin-bottom:50px;}.m-l-55{margin-left:55px;}.m-t-55{margin-top:55px;}.m-r-55{margin-right:55px;}.m-b-55{margin-bottom:55px;}.m-l-60{margin-left:60px;}.m-t-60{margin-top:60px;}.m-r-60{margin-right:60px;}.m-b-60{margin-bottom:60px;}.m-l-65{margin-left:65px;}.m-t-65{margin-top:65px;}.m-r-65{margin-right:65px;}.m-b-65{margin-bottom:65px;}.m-l-70{margin-left:70px;}.m-t-70{margin-top:70px;}.m-r-70{margin-right:70px;}.m-b-70{margin-bottom:70px;}.m-l-75{margin-left:75px;}.m-t-75{margin-top:75px;}.m-r-75{margin-right:75px;}.m-b-75{margin-bottom:75px;}.m-l-80{margin-left:80px;}.m-t-80{margin-top:80px;}.m-r-80{margin-right:80px;}.m-b-80{margin-bottom:80px;}.m-l-85{margin-left:85px;}.m-t-85{margin-top:85px;}.m-r-85{margin-right:85px;}.m-b-85{margin-bottom:85px;}.m-l-90{margin-left:90px;}.m-t-90{margin-top:90px;}.m-r-90{margin-right:90px;}.m-b-90{margin-bottom:90px;}.m-l-95{margin-left:95px;}.m-t-95{margin-top:95px;}.m-r-95{margin-right:95px;}.m-b-95{margin-bottom:95px;}.m-l-100{margin-left:100px;}.m-t-100{margin-top:100px;}.m-r-100{margin-right:100px;}.m-b-100{margin-bottom:100px;}.m-l-105{margin-left:105px;}.m-t-105{margin-top:105px;}.m-r-105{margin-right:105px;}.m-b-105{margin-bottom:105px;}.m-l-110{margin-left:110px;}.m-t-110{margin-top:110px;}.m-r-110{margin-right:110px;}.m-b-110{margin-bottom:110px;}.m-l-115{margin-left:115px;}.m-t-115{margin-top:115px;}.m-r-115{margin-right:115px;}.m-b-115{margin-bottom:115px;}.m-l-120{margin-left:120px;}.m-t-120{margin-top:120px;}.m-r-120{margin-right:120px;}.m-b-120{margin-bottom:120px;}.m-l-125{margin-left:125px;}.m-t-125{margin-top:125px;}.m-r-125{margin-right:125px;}.m-b-125{margin-bottom:125px;}.margin-0{margin:0;}.p-l-0{padding-left:0;}.p-t-0{padding-top:0;}.p-r-0{padding-right:0;}.p-b-0{padding-bottom:0;}.p-l-5{padding-left:5px;}.p-t-5{padding-top:5px;}.p-r-5{padding-right:5px;}.p-b-5{padding-bottom:5px;}.p-l-10{padding-left:10px;}.p-t-10{padding-top:10px;}.p-r-10{padding-right:10px;}.p-b-10{padding-bottom:10px;}.p-l-15{padding-left:15px;}.p-t-15{padding-top:15px;}.p-r-15{padding-right:15px;}.p-b-15{padding-bottom:15px;}.p-l-20{padding-left:20px;}.p-t-20{padding-top:20px;}.p-r-20{padding-right:20px;}.p-b-20{padding-bottom:20px;}.p-l-25{padding-left:25px;}.p-t-25{padding-top:25px;}.p-r-25{padding-right:25px;}.p-b-25{padding-bottom:25px;}.p-l-30{padding-left:30px;}.p-t-30{padding-top:30px;}.p-r-30{padding-right:30px;}.p-b-30{padding-bottom:30px;}.p-l-35{padding-left:35px;}.p-t-35{padding-top:35px;}.p-r-35{padding-right:35px;}.p-b-35{padding-bottom:35px;}.p-l-40{padding-left:40px;}.p-t-40{padding-top:40px;}.p-r-40{padding-right:40px;}.p-b-40{padding-bottom:40px;}.p-l-45{padding-left:45px;}.p-t-45{padding-top:45px;}.p-r-45{padding-right:45px;}.p-b-45{padding-bottom:45px;}.p-l-50{padding-left:50px;}.p-t-50{padding-top:50px;}.p-r-50{padding-right:50px;}.p-b-50{padding-bottom:50px;}.p-l-55{padding-left:55px;}.p-t-55{padding-top:55px;}.p-r-55{padding-right:55px;}.p-b-55{padding-bottom:55px;}.p-l-60{padding-left:60px;}.p-t-60{padding-top:60px;}.p-r-60{padding-right:60px;}.p-b-60{padding-bottom:60px;}.p-l-65{padding-left:65px;}.p-t-65{padding-top:65px;}.p-r-65{padding-right:65px;}.p-b-65{padding-bottom:65px;}.p-l-70{padding-left:70px;}.p-t-70{padding-top:70px;}.p-r-70{padding-right:70px;}.p-b-70{padding-bottom:70px;}.p-l-75{padding-left:75px;}.p-t-75{padding-top:75px;}.p-r-75{padding-right:75px;}.p-b-75{padding-bottom:75px;}.p-l-80{padding-left:80px;}.p-t-80{padding-top:80px;}.p-r-80{padding-right:80px;}.p-b-80{padding-bottom:80px;}.p-l-85{padding-left:85px;}.p-t-85{padding-top:85px;}.p-r-85{padding-right:85px;}.p-b-85{padding-bottom:85px;}.p-l-90{padding-left:90px;}.p-t-90{padding-top:90px;}.p-r-90{padding-right:90px;}.p-b-90{padding-bottom:90px;}.p-l-95{padding-left:95px;}.p-t-95{padding-top:95px;}.p-r-95{padding-right:95px;}.p-b-95{padding-bottom:95px;}.p-l-100{padding-left:100px;}.p-t-100{padding-top:100px;}.p-r-100{padding-right:100px;}.p-b-100{padding-bottom:100px;}.p-l-105{padding-left:105px;}.p-t-105{padding-top:105px;}.p-r-105{padding-right:105px;}.p-b-105{padding-bottom:105px;}.p-l-110{padding-left:110px;}.p-t-110{padding-top:110px;}.p-r-110{padding-right:110px;}.p-b-110{padding-bottom:110px;}.p-l-115{padding-left:115px;}.p-t-115{padding-top:115px;}.p-r-115{padding-right:115px;}.p-b-115{padding-bottom:115px;}.p-l-120{padding-left:120px;}.p-t-120{padding-top:120px;}.p-r-120{padding-right:120px;}.p-b-120{padding-bottom:120px;}.p-l-125{padding-left:125px;}.p-t-125{padding-top:125px;}.p-r-125{padding-right:125px;}.p-b-125{padding-bottom:125px;}.padding-0{padding:0;}.font-6{font-size:6px;}.font-7{font-size:7px;}.font-8{font-size:8px;}.font-9{font-size:9px;}.font-10{font-size:10px;}.font-11{font-size:11px;}.font-12{font-size:12px;}.font-13{font-size:13px;}.font-14{font-size:14px;}.font-15{font-size:15px;}.font-16{font-size:16px;}.font-17{font-size:17px;}.font-18{font-size:18px;}.font-19{font-size:19px;}.font-20{font-size:20px;}.font-21{font-size:21px;}.font-22{font-size:22px;}.font-23{font-size:23px;}.font-24{font-size:24px;}.font-25{font-size:25px;}.font-26{font-size:26px;}.font-27{font-size:27px;}.font-28{font-size:28px;}.font-29{font-size:29px;}.font-30{font-size:30px;}.font-31{font-size:31px;}.font-32{font-size:32px;}.font-33{font-size:33px;}.font-34{font-size:34px;}.font-35{font-size:35px;}.font-36{font-size:36px;}.font-37{font-size:37px;}.font-38{font-size:38px;}.font-39{font-size:39px;}.font-40{font-size:40px;}.font-41{font-size:41px;}.font-42{font-size:42px;}.font-43{font-size:43px;}.font-44{font-size:44px;}.font-45{font-size:45px;}.font-46{font-size:46px;}.font-47{font-size:47px;}.font-48{font-size:48px;}.font-49{font-size:49px;}.font-50{font-size:50px;}.align-left{text-align:left;}.align-center{text-align:center;}.align-right{text-align:right;}.align-justify{text-align:justify;}.no-resize{resize:none;}.font-bold{font-weight:bold;}.font-italic{font-style:italic;}.font-underline{text-decoration:underline;}.font-line-through{text-decoration:line-through;}.font-overline{text-decoration:overline;}.block-header{margin-bottom:15px;}.block-header h2{margin:0 !important;color:#666 !important;font-weight:normal;font-size:16px;}.block-header h2 small{display:block;font-size:12px;margin-top:8px;color:#888;}.block-header h2 small a{font-weight:bold;color:#777;}.bg-red{background-color:#f44336 !important;color:#fff;}.bg-red .content .text,.bg-red .content .number{color:#fff !important;}.bg-pink{background-color:#e91e63 !important;color:#fff;}.bg-pink .content .text,.bg-pink .content .number{color:#fff !important;}.bg-purple{background-color:#9c27b0 !important;color:#fff;}.bg-purple .content .text,.bg-purple .content .number{color:#fff !important;}.bg-deep-purple{background-color:#673ab7 !important;color:#fff;}.bg-deep-purple .content .text,.bg-deep-purple .content .number{color:#fff !important;}.bg-indigo{background-color:#3f51b5 !important;color:#fff;}.bg-indigo .content .text,.bg-indigo .content .number{color:#fff !important;}.bg-blue{background-color:#2196f3 !important;color:#fff;}.bg-blue .content .text,.bg-blue .content .number{color:#fff !important;}.bg-light-blue{background-color:#03a9f4 !important;color:#fff;}.bg-light-blue .content .text,.bg-light-blue .content .number{color:#fff !important;}.bg-cyan{background-color:#00bcd4 !important;color:#fff;}.bg-cyan .content .text,.bg-cyan .content .number{color:#fff !important;}.bg-teal{background-color:#009688 !important;color:#fff;}.bg-teal .content .text,.bg-teal .content .number{color:#fff !important;}.bg-green{background-color:#4caf50 !important;color:#fff;}.bg-green .content .text,.bg-green .content .number{color:#fff !important;}.bg-light-green{background-color:#8bc34a !important;color:#fff;}.bg-light-green .content .text,.bg-light-green .content .number{color:#fff !important;}.bg-lime{background-color:#cddc39 !important;color:#fff;}.bg-lime .content .text,.bg-lime .content .number{color:#fff !important;}.bg-yellow{background-color:#ffe821 !important;color:#fff;}.bg-yellow .content .text,.bg-yellow .content .number{color:#fff !important;}.bg-amber{background-color:#ffc107 !important;color:#fff;}.bg-amber .content .text,.bg-amber .content .number{color:#fff !important;}.bg-orange{background-color:#ff9800 !important;color:#fff;}.bg-orange .content .text,.bg-orange .content .number{color:#fff !important;}.bg-deep-orange{background-color:#ff5722 !important;color:#fff;}.bg-deep-orange .content .text,.bg-deep-orange .content .number{color:#fff !important;}.bg-brown{background-color:#795548 !important;color:#fff;}.bg-brown .content .text,.bg-brown .content .number{color:#fff !important;}.bg-grey{background-color:#9e9e9e !important;color:#fff;}.bg-grey .content .text,.bg-grey .content .number{color:#fff !important;}.bg-blue-grey{background-color:#607d8b !important;color:#fff;}.bg-blue-grey .content .text,.bg-blue-grey .content .number{color:#fff !important;}.bg-black{background-color:#000 !important;color:#fff;}.bg-black .content .text,.bg-black .content .number{color:#fff !important;}.bg-white{background-color:#fff !important;color:#fff;}.bg-white .content .text,.bg-white .content .number{color:#fff !important;}.col-red{color:#f44336 !important;}.col-pink{color:#e91e63 !important;}.col-purple{color:#9c27b0 !important;}.col-deep-purple{color:#673ab7 !important;}.col-indigo{color:#3f51b5 !important;}.col-blue{color:#2196f3 !important;}.col-light-blue{color:#03a9f4 !important;}.col-cyan{color:#00bcd4 !important;}.col-teal{color:#009688 !important;}.col-green{color:#4caf50 !important;}.col-light-green{color:#8bc34a !important;}.col-lime{color:#cddc39 !important;}.col-yellow{color:#ffe821 !important;}.col-amber{color:#ffc107 !important;}.col-orange{color:#ff9800 !important;}.col-deep-orange{color:#ff5722 !important;}.col-brown{color:#795548 !important;}.col-grey{color:#9e9e9e !important;}.col-blue-grey{color:#607d8b !important;}.col-black{color:#000 !important;}.col-white{color:#fff !important;}@-ms-keyframes spin{from{-ms-transform:rotate(0deg);-moz-transform:rotate(0deg);-o-transform:rotate(0deg);-webkit-transform:rotate(0deg);transform:rotate(0deg);}to{-ms-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-webkit-transform:rotate(360deg);transform:rotate(360deg);}}@-moz-keyframes spin{from{-moz-transform:rotate(0deg);-ms-transform:rotate(0deg);-o-transform:rotate(0deg);-webkit-transform:rotate(0deg);transform:rotate(0deg);}to{-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);-o-transform:rotate(360deg);-webkit-transform:rotate(360deg);transform:rotate(360deg);}}@-webkit-keyframes spin{from{-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-ms-transform:rotate(0deg);-o-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg);}}@keyframes spin{from{-moz-transform:rotate(0deg);-ms-transform:rotate(0deg);-o-transform:rotate(0deg);-webkit-transform:rotate(0deg);transform:rotate(0deg);}to{-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);-o-transform:rotate(360deg);-webkit-transform:rotate(360deg);transform:rotate(360deg);}}.demo-button-sizes .btn{margin-bottom:5px;}.icon-button-demo button{margin-right:5px;margin-bottom:12px;}.button-demo ul{padding-left:0;}.button-demo ul li{list-style:none;padding-left:0;display:inline-block;margin-right:7px;}.button-demo ul li .btn{display:block;min-width:175px;}.button-demo .btn{margin-right:8px;margin-bottom:13px;min-width:120px;}.demo-button-groups .btn-group{margin-right:10px;}.demo-button-toolbar .btn-toolbar{float:left;margin-right:25px;}.demo-button-nesting>.btn-group{margin-right:15px;}.demo-single-button-dropdowns>.btn-group{margin-right:10px;}.demo-splite-button-dropdowns>.btn-group{margin-right:10px;}.demo-dropup .dropup{margin-right:10px;}.demo-checkbox label,.demo-radio-button label{min-width:150px;}.demo-knob-chart div{margin-right:15px;}.demo-switch .switch{display:inline-block;min-width:170px;}.demo-switch .demo-switch-title{min-width:95px;display:inline-block;}.demo-color-box{padding:15px 0;text-align:center;margin-bottom:20px;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;}.demo-color-box .color-name{font-size:16px;margin-bottom:5px;}.demo-color-box .color-code,.demo-color-box .color-class-name{font-size:13px;}.demo-image-copyright{text-align:right;font-style:italic;font-size:12px;color:#777;margin:5px 0 10px 0;}.demo-image-copyright a{font-weight:bold;color:#555 !important;}.demo-tagsinput-area{margin-bottom:50px !important;}.demo-icon-container .demo-google-material-icon{margin-bottom:5px;text-align:left;}.demo-icon-container .demo-google-material-icon .icon-name{position:relative;top:-8px;left:7px;}.demo-icon-container .demo-google-material-icon .material-icons{width:24px;}.demo-preloader .preloader{margin-right:10px;}.irs-demo{margin-bottom:40px;}.irs-demo .irs{margin-top:15px;}.right-sidebar .nav-tabs+.tab-content{padding:0;}.right-sidebar p{margin:20px 15px 15px 15px;font-weight:bold;text-align:center;}.right-sidebar #settings .setting-list{list-style:none;padding-left:0;margin-bottom:20px;}.right-sidebar #settings .setting-list li{padding:15px;position:relative;border-top:1px solid #eee;}.right-sidebar #settings .setting-list li .switch{position:absolute;top:15px;right:5px;}.demo-choose-skin{list-style:none;padding-left:0;overflow-y:hidden;}.demo-choose-skin li{border-bottom:1px solid #eee;padding:10px 10px 4px 10px;position:relative;cursor:pointer;}.demo-choose-skin li.active{background-color:#eee;}.demo-choose-skin li.active:after{font-family:'Material Icons';position:absolute;top:10px;right:10px;content:'';font-size:18px;font-weight:bold;}.demo-choose-skin li:hover{background-color:#eee;}.demo-choose-skin li div{width:24px;height:24px;display:inline-block;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;}.demo-choose-skin li span{position:relative;bottom:7px;left:5px;}.demo-choose-skin .red{background-color:#f44336;}.demo-choose-skin .pink{background-color:#e91e63;}.demo-choose-skin .purple{background-color:#9c27b0;}.demo-choose-skin .deep-purple{background-color:#673ab7;}.demo-choose-skin .indigo{background-color:#3f51b5;}.demo-choose-skin .blue{background-color:#2196f3;}.demo-choose-skin .light-blue{background-color:#03a9f4;}.demo-choose-skin .cyan{background-color:#00bcd4;}.demo-choose-skin .teal{background-color:#009688;}.demo-choose-skin .green{background-color:#4caf50;}.demo-choose-skin .light-green{background-color:#8bc34a;}.demo-choose-skin .lime{background-color:#cddc39;}.demo-choose-skin .yellow{background-color:#ffe821;}.demo-choose-skin .amber{background-color:#ffc107;}.demo-choose-skin .orange{background-color:#ff9800;}.demo-choose-skin .deep-orange{background-color:#ff5722;}.demo-choose-skin .brown{background-color:#795548;}.demo-choose-skin .grey{background-color:#9e9e9e;}.demo-choose-skin .blue-grey{background-color:#607d8b;}.demo-choose-skin .black{background-color:#000;}.demo-choose-skin .white{background-color:#fff;}@media(max-width:767px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:35px;width:73%;}.navbar .navbar-header{display:inline-block;margin-bottom:-6px;width:calc(100% + 30px);}.navbar .nav>li{display:inline-block;}.navbar .navbar-nav{margin-top:-10px;margin-bottom:1px;margin-left:-7px;}.navbar .navbar-nav .open .dropdown-menu{background-color:#fff;position:absolute;}.navbar .dropdown-menu{margin-left:-50px;}.navbar .js-right-sidebar{margin-top:15px;}.dt-buttons{float:none !important;text-align:center;margin-bottom:15px;}.panel-switch-btn{top:12px;right:0 !important;}}@media(min-width:768px) and (max-width:991px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:20px;}}@media(min-width:992px) and (max-width:1169px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:20px;}}body{background-color:#e9e9e9;-moz-transition:all .5s;-o-transition:all .5s;-webkit-transition:all .5s;transition:all .5s;font-family:'Roboto',Arial,Tahoma,sans-serif;}h1,h2,h3,h4,h5,h6{font-weight:bold;}button,input,select,a{outline:none !important;}.no-animate{-o-transition-property:none !important;-moz-transition-property:none !important;-ms-transition-property:none !important;-webkit-transition-property:none !important;transition-property:none !important;-o-transform:none !important;-moz-transform:none !important;-ms-transform:none !important;-webkit-transform:none !important;transform:none !important;-webkit-animation:none !important;-moz-animation:none !important;-o-animation:none !important;-ms-animation:none !important;animation:none !important;}section.content{margin:100px 15px 0 315px;-moz-transition:.5s;-o-transition:.5s;-webkit-transition:.5s;transition:.5s;}.dashboard-flot-chart{height:275px;}.dashboard-donut-chart{height:265px;}.dashboard-line-chart{height:250px;}.dashboard-stat-list{list-style:none;padding-left:0;margin-top:40px;}.dashboard-stat-list li{padding:16px 0 0 0;}.dashboard-stat-list li small{font-size:8px;}.dashboard-task-infos .progress{height:10px;margin-bottom:0;position:relative;top:6px;}.btn:focus{outline:none !important;}.btn-circle{border:none;outline:none !important;overflow:hidden;width:40px;height:40px;-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;}.btn-circle i{font-size:18px;position:relative;left:-1px;}.btn-link{font-weight:bold;color:#333;-moz-transition:.5s;-o-transition:.5s;-webkit-transition:.5s;transition:.5s;}.btn-link:active,.btn-link:focus{text-decoration:none;color:#333;}.btn-link:hover{text-decoration:none;color:#333;background-color:#ddd;}.btn-circle-lg{border:none;outline:none !important;overflow:hidden;width:50px;height:50px;-webkit-border-radius:50% !important;-moz-border-radius:50% !important;-ms-border-radius:50% !important;border-radius:50% !important;}.btn-circle-lg i{font-size:26px !important;position:relative !important;left:0 !important;top:6px !important;}.btn:not(.btn-link):not(.btn-circle){box-shadow:0 2px 5px rgba(0,0,0,.16),0 2px 10px rgba(0,0,0,.12);-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;border-radius:2px;border:none;font-size:13px;outline:none;}.btn:not(.btn-link):not(.btn-circle):hover{outline:none;}.btn:not(.btn-link):not(.btn-circle) i{font-size:20px;position:relative;top:3px;}.btn-warning,.btn-warning:hover,.btn-warning:active,.btn-warning:focus{background-color:#ff9600 !important;}.btn-danger,.btn-danger:hover,.btn-danger:active,.btn-danger:focus{background-color:#fb483a !important;}.btn-info,.btn-info:hover,.btn-info:active,.btn-info:focus{background-color:#00b0e4 !important;}.btn-success,.btn-success:hover,.btn-success:active,.btn-success:focus{background-color:#2b982b !important;}.btn-primary,.btn-primary:hover,.btn-primary:active,.btn-primary:focus{background-color:#1f91f3 !important;}.btn-default,.btn-default:hover,.btn-default:active,.btn-default:focus{background-color:#fff !important;}.btn-group,.btn-group-vertical{box-shadow:0 2px 5px rgba(0,0,0,.16),0 2px 10px rgba(0,0,0,.12);}.btn-group .btn,.btn-group-vertical .btn{box-shadow:none !important;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.btn-group .btn .caret,.btn-group-vertical .btn .caret{position:relative;bottom:1px;}.btn-group .btn-group,.btn-group-vertical .btn-group{box-shadow:none !important;}.btn-group .btn+.dropdown-toggle,.btn-group-vertical .btn+.dropdown-toggle{border-left:1px solid rgba(0,0,0,.08) !important;}.bootstrap-tagsinput{-webkit-box-shadow:none !important;-moz-box-shadow:none !important;-ms-box-shadow:none !important;box-shadow:none !important;border:none !important;}.noUi-target{-webkit-touch-callout:none;-webkit-user-select:none;-ms-touch-action:none;touch-action:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-moz-box-sizing:border-box;box-sizing:border-box;position:relative;direction:ltr;}.noUi-target *{-webkit-touch-callout:none;-webkit-user-select:none;-ms-touch-action:none;touch-action:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-moz-box-sizing:border-box;box-sizing:border-box;}.noUi-base{width:100%;height:100%;position:relative;z-index:1;}.noUi-origin{position:absolute;right:0;top:6px;left:0;bottom:0;}.noUi-handle{position:relative;z-index:1;}.noUi-stacking .noUi-handle{z-index:10;}.noUi-state-tap .noUi-origin{-webkit-transition:left .25s,top .25s;transition:left .25s,top .25s;}.noUi-state-drag *{cursor:inherit !important;}.noUi-base{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);}.noUi-horizontal{height:18px;}.noUi-horizontal .noUi-handle{width:34px;height:28px;left:-17px;top:-6px;}.noUi-vertical{width:18px;}.noUi-vertical .noUi-handle{width:28px;height:34px;left:-6px;top:-17px;}.noUi-background{background:#fafafa;box-shadow:inset 0 1px 1px #f0f0f0;}.noUi-connect{background:#3fb8af;box-shadow:inset 0 0 3px rgba(51,51,51,.45);-webkit-transition:background 450ms;transition:background 450ms;}.noUi-origin{border-radius:2px;}.noUi-target{border-radius:4px;border:1px solid #d3d3d3;box-shadow:inset 0 1px 1px #f0f0f0,0 3px 6px -5px #bbb;}.noUi-target.noUi-connect{box-shadow:inset 0 0 3px rgba(51,51,51,.45),0 3px 6px -5px #bbb;}.noUi-dragable{cursor:w-resize;}.noUi-vertical .noUi-dragable{cursor:n-resize;}.noUi-handle{border:1px solid #d9d9d9;border-radius:3px;background:#fff;cursor:default;box-shadow:inset 0 0 1px #fff,inset 0 1px 7px #ebebeb,0 3px 6px -3px #bbb;}.noUi-active{box-shadow:inset 0 0 1px #fff,inset 0 1px 7px #ddd,0 3px 6px -3px #bbb;}.noUi-handle:before{content:"";display:block;position:absolute;height:14px;width:1px;background:#e8e7e6;left:14px;top:6px;}.noUi-handle:after{content:"";display:block;position:absolute;height:14px;width:1px;background:#e8e7e6;left:14px;top:6px;left:17px;}.noUi-vertical .noUi-handle:before{width:14px;height:1px;left:6px;top:14px;}.noUi-vertical .noUi-handle:after{width:14px;height:1px;left:6px;top:14px;top:17px;}[disabled].noUi-connect,[disabled] .noUi-connect{background:#b8b8b8;}[disabled].noUi-origin,[disabled] .noUi-handle{cursor:not-allowed;}.noUi-target{box-shadow:none;border:none;}.noUi-base{height:15px;top:-6px;}.noUi-background{height:3px;top:6px;background-color:#bfbfbf;box-shadow:none;}.noUi-horizontal{height:3px;}.noUi-connect{height:3px;top:6px;background-color:#26a69a;box-shadow:none;}.noUi-horizontal .noUi-handle{width:15px;height:15px;border-radius:50%;box-shadow:none;background-color:#26a69a;border:none;left:-5px;top:-6px;transition:width .2s cubic-bezier(.215,.61,.355,1),height .2s cubic-bezier(.215,.61,.355,1),left .2s cubic-bezier(.215,.61,.355,1),top .2s cubic-bezier(.215,.61,.355,1);}.noUi-handle:before,.noUi-handle:after{content:none;}.noUi-target .noUi-active.noUi-handle{-webkit-box-shadow:0 0 20px rgba(0,0,0,.5);-moz-box-shadow:0 0 20px rgba(0,0,0,.5);-ms-box-shadow:0 0 20px rgba(0,0,0,.5);box-shadow:0 0 20px rgba(0,0,0,.5);}.noUi-target .range-label{position:absolute;height:30px;width:30px;top:-17px;left:-2px;background-color:#26a69a;border-radius:50%;transition:border-radius .25s cubic-bezier(.215,.61,.355,1),transform .25s cubic-bezier(.215,.61,.355,1);transform:scale(.5) rotate(-45deg);transform-origin:50% 100%;}.noUi-target .noUi-active .range-label{border-radius:15px 15px 15px 0;transform:rotate(-45deg) translate(23px,-25px);}.range-label span{width:100%;text-align:center;color:#fff;font-size:12px;transform:rotate(45deg);opacity:0;position:absolute;top:7px;left:-1px;transition:opacity .25s cubic-bezier(.215,.61,.355,1);}.noUi-active .range-label span{opacity:1;}.ms-container{width:auto !important;}.ms-container .ms-list{-webkit-box-shadow:none !important;-moz-box-shadow:none !important;-ms-box-shadow:none !important;box-shadow:none !important;-webkit-border-radius:0 !important;-moz-border-radius:0 !important;-ms-border-radius:0 !important;border-radius:0 !important;}.ms-container .ms-list.ms-focus{-webkit-box-shadow:none !important;-moz-box-shadow:none !important;-ms-box-shadow:none !important;box-shadow:none !important;}.ms-container .ms-selectable,.ms-container .ms-selection{min-width:250px !important;}.ms-container .ms-selectable li.ms-hover,.ms-container .ms-selection li.ms-hover{color:#000 !important;background-color:#e6e6e6 !important;}.ms-container .ms-selectable li.ms-elem-selectable,.ms-container .ms-selectable li.ms-elem-selection,.ms-container .ms-selection li.ms-elem-selectable,.ms-container .ms-selection li.ms-elem-selection{padding:9px 15px 6px 15px !important;}.ms-container .ms-optgroup-label{padding:5px 0 0 8px !important;}.card{background:#fff;min-height:50px;box-shadow:0 2px 10px rgba(0,0,0,.2);position:relative;margin-bottom:30px;}.card .card-inside-title{margin-top:25px;margin-bottom:15px;display:block;font-size:15px;color:#000;}.card .card-inside-title small{color:#999;display:block;font-size:11px;margin-top:5px;}.card .card-inside-title small a{color:#777;font-weight:bold;}.card .card-inside-title:first-child{margin-top:0;}.card .bg-red,.card .bg-pink,.card .bg-purple,.card .bg-deep-purple,.card .bg-indigo,.card .bg-blue,.card .bg-light-blue,.card .bg-cyan,.card .bg-teal,.card .bg-green,.card .bg-light-green,.card .bg-lime,.card .bg-yellow,.card .bg-amber,.card .bg-orange,.card .bg-deep-orange,.card .bg-brown,.card .bg-grey,.card .bg-blue-grey,.card .bg-black{border-bottom:none !important;color:#fff !important;}.card .bg-red h2,.card .bg-red small,.card .bg-red .material-icons,.card .bg-pink h2,.card .bg-pink small,.card .bg-pink .material-icons,.card .bg-purple h2,.card .bg-purple small,.card .bg-purple .material-icons,.card .bg-deep-purple h2,.card .bg-deep-purple small,.card .bg-deep-purple .material-icons,.card .bg-indigo h2,.card .bg-indigo small,.card .bg-indigo .material-icons,.card .bg-blue h2,.card .bg-blue small,.card .bg-blue .material-icons,.card .bg-light-blue h2,.card .bg-light-blue small,.card .bg-light-blue .material-icons,.card .bg-cyan h2,.card .bg-cyan small,.card .bg-cyan .material-icons,.card .bg-teal h2,.card .bg-teal small,.card .bg-teal .material-icons,.card .bg-green h2,.card .bg-green small,.card .bg-green .material-icons,.card .bg-light-green h2,.card .bg-light-green small,.card .bg-light-green .material-icons,.card .bg-lime h2,.card .bg-lime small,.card .bg-lime .material-icons,.card .bg-yellow h2,.card .bg-yellow small,.card .bg-yellow .material-icons,.card .bg-amber h2,.card .bg-amber small,.card .bg-amber .material-icons,.card .bg-orange h2,.card .bg-orange small,.card .bg-orange .material-icons,.card .bg-deep-orange h2,.card .bg-deep-orange small,.card .bg-deep-orange .material-icons,.card .bg-brown h2,.card .bg-brown small,.card .bg-brown .material-icons,.card .bg-grey h2,.card .bg-grey small,.card .bg-grey .material-icons,.card .bg-blue-grey h2,.card .bg-blue-grey small,.card .bg-blue-grey .material-icons,.card .bg-black h2,.card .bg-black small,.card .bg-black .material-icons{color:#fff !important;}.card .bg-red .badge,.card .bg-pink .badge,.card .bg-purple .badge,.card .bg-deep-purple .badge,.card .bg-indigo .badge,.card .bg-blue .badge,.card .bg-light-blue .badge,.card .bg-cyan .badge,.card .bg-teal .badge,.card .bg-green .badge,.card .bg-light-green .badge,.card .bg-lime .badge,.card .bg-yellow .badge,.card .bg-amber .badge,.card .bg-orange .badge,.card .bg-deep-orange .badge,.card .bg-brown .badge,.card .bg-grey .badge,.card .bg-blue-grey .badge,.card .bg-black .badge{background-color:#fff;color:#555;}.card .header{color:#555;padding:20px;position:relative;border-bottom:1px solid rgba(204,204,204,.35);}.card .header .header-dropdown{position:absolute;top:20px;right:15px;list-style:none;}.card .header .header-dropdown .dropdown-menu li{display:block !important;}.card .header .header-dropdown li{display:inline-block;}.card .header .header-dropdown i{font-size:20px;color:#999;-moz-transition:all .5s;-o-transition:all .5s;-webkit-transition:all .5s;transition:all .5s;}.card .header .header-dropdown i:hover{color:#000;}.card .header h2{margin:0;font-size:18px;font-weight:normal;color:#111;}.card .header h2 small{display:block;font-size:12px;margin-top:5px;color:#999;line-height:15px;}.card .header h2 small a{font-weight:bold;color:#777;}.card .header .col-xs-12 h2{margin-top:5px;}.card .body{font-size:14px;color:#555;padding:20px;}.card .body .col-xs-1,.card .body .col-sm-1,.card .body .col-md-1,.card .body .col-lg-1{margin-bottom:20px;}.card .body .col-xs-2,.card .body .col-sm-2,.card .body .col-md-2,.card .body .col-lg-2{margin-bottom:20px;}.card .body .col-xs-3,.card .body .col-sm-3,.card .body .col-md-3,.card .body .col-lg-3{margin-bottom:20px;}.card .body .col-xs-4,.card .body .col-sm-4,.card .body .col-md-4,.card .body .col-lg-4{margin-bottom:20px;}.card .body .col-xs-5,.card .body .col-sm-5,.card .body .col-md-5,.card .body .col-lg-5{margin-bottom:20px;}.card .body .col-xs-6,.card .body .col-sm-6,.card .body .col-md-6,.card .body .col-lg-6{margin-bottom:20px;}.card .body .col-xs-7,.card .body .col-sm-7,.card .body .col-md-7,.card .body .col-lg-7{margin-bottom:20px;}.card .body .col-xs-8,.card .body .col-sm-8,.card .body .col-md-8,.card .body .col-lg-8{margin-bottom:20px;}.card .body .col-xs-9,.card .body .col-sm-9,.card .body .col-md-9,.card .body .col-lg-9{margin-bottom:20px;}.card .body .col-xs-10,.card .body .col-sm-10,.card .body .col-md-10,.card .body .col-lg-10{margin-bottom:20px;}.card .body .col-xs-11,.card .body .col-sm-11,.card .body .col-md-11,.card .body .col-lg-11{margin-bottom:20px;}.card .body .col-xs-12,.card .body .col-sm-12,.card .body .col-md-12,.card .body .col-lg-12{margin-bottom:20px;}.info-box{box-shadow:0 2px 10px rgba(0,0,0,.2);height:80px;display:flex;cursor:default;background-color:#fff;position:relative;overflow:hidden;margin-bottom:30px;}.info-box .icon{display:inline-block;text-align:center;background-color:rgba(0,0,0,.12);width:80px;}.info-box .icon i{color:#fff;font-size:50px;line-height:80px;}.info-box .icon .chart.chart-bar{height:100%;line-height:100px;}.info-box .icon .chart.chart-bar canvas{vertical-align:baseline !important;}.info-box .icon .chart.chart-pie{height:100%;line-height:123px;}.info-box .icon .chart.chart-pie canvas{vertical-align:baseline !important;}.info-box .icon .chart.chart-line{height:100%;line-height:115px;}.info-box .icon .chart.chart-line canvas{vertical-align:baseline !important;}.info-box .content{display:inline-block;padding:7px 10px;}.info-box .content .text{font-size:13px;margin-top:11px;color:#555;}.info-box .content .number{font-weight:normal;font-size:26px;margin-top:-4px;color:#555;}.info-box.hover-zoom-effect .icon{overflow:hidden;}.info-box.hover-zoom-effect .icon i{-moz-transition:all .3s ease;-o-transition:all .3s ease;-webkit-transition:all .3s ease;transition:all .3s ease;}.info-box.hover-zoom-effect:hover .icon i{opacity:.4;-moz-transform:rotate(-32deg) scale(1.4);-ms-transform:rotate(-32deg) scale(1.4);-o-transform:rotate(-32deg) scale(1.4);-webkit-transform:rotate(-32deg) scale(1.4);transform:rotate(-32deg) scale(1.4);}.info-box.hover-expand-effect:after{background-color:rgba(0,0,0,.05);content:".";position:absolute;left:80px;top:0;width:0;height:100%;color:transparent;-moz-transition:all .95s;-o-transition:all .95s;-webkit-transition:all .95s;transition:all .95s;}.info-box.hover-expand-effect:hover:after{width:100%;}.info-box-2{box-shadow:0 2px 10px rgba(0,0,0,.2);height:80px;display:flex;cursor:default;background-color:#fff;position:relative;overflow:hidden;margin-bottom:30px;}.info-box-2 .icon{display:inline-block;text-align:center;width:80px;}.info-box-2 .icon i{color:#fff;font-size:50px;line-height:80px;}.info-box-2 .chart.chart-bar{height:100%;line-height:105px;}.info-box-2 .chart.chart-bar canvas{vertical-align:baseline !important;}.info-box-2 .chart.chart-pie{height:100%;line-height:123px;}.info-box-2 .chart.chart-pie canvas{vertical-align:baseline !important;}.info-box-2 .chart.chart-line{height:100%;line-height:115px;}.info-box-2 .chart.chart-line canvas{vertical-align:baseline !important;}.info-box-2 .content{display:inline-block;padding:7px 10px;}.info-box-2 .content .text{font-size:13px;margin-top:11px;color:#555;}.info-box-2 .content .number{font-weight:normal;font-size:26px;margin-top:-4px;color:#555;}.info-box-2.hover-zoom-effect .icon{overflow:hidden;}.info-box-2.hover-zoom-effect .icon i{-moz-transition:all .3s ease;-o-transition:all .3s ease;-webkit-transition:all .3s ease;transition:all .3s ease;}.info-box-2.hover-zoom-effect:hover .icon i{opacity:.4;-moz-transform:rotate(-32deg) scale(1.4);-ms-transform:rotate(-32deg) scale(1.4);-o-transform:rotate(-32deg) scale(1.4);-webkit-transform:rotate(-32deg) scale(1.4);transform:rotate(-32deg) scale(1.4);}.info-box-2.hover-expand-effect:after{background-color:rgba(0,0,0,.05);content:".";position:absolute;left:0;top:0;width:0;height:100%;color:transparent;-moz-transition:all .95s;-o-transition:all .95s;-webkit-transition:all .95s;transition:all .95s;}.info-box-2.hover-expand-effect:hover:after{width:100%;}.info-box-3{box-shadow:0 2px 10px rgba(0,0,0,.2);height:80px;display:flex;cursor:default;background-color:#fff;position:relative;overflow:hidden;margin-bottom:30px;}.info-box-3 .icon{position:absolute;right:10px;bottom:2px;text-align:center;}.info-box-3 .icon i{color:rgba(0,0,0,.15);font-size:60px;}.info-box-3 .chart{margin-right:5px;}.info-box-3 .chart.chart-bar{height:100%;line-height:50px;}.info-box-3 .chart.chart-bar canvas{vertical-align:baseline !important;}.info-box-3 .chart.chart-pie{height:100%;line-height:34px;}.info-box-3 .chart.chart-pie canvas{vertical-align:baseline !important;}.info-box-3 .chart.chart-line{height:100%;line-height:40px;}.info-box-3 .chart.chart-line canvas{vertical-align:baseline !important;}.info-box-3 .content{display:inline-block;padding:7px 16px;}.info-box-3 .content .text{font-size:13px;margin-top:11px;color:#555;}.info-box-3 .content .number{font-weight:normal;font-size:26px;margin-top:-4px;color:#555;}.info-box-3.hover-zoom-effect .icon i{-moz-transition:all .3s ease;-o-transition:all .3s ease;-webkit-transition:all .3s ease;transition:all .3s ease;}.info-box-3.hover-zoom-effect:hover .icon i{opacity:.4;-moz-transform:rotate(-32deg) scale(1.4);-ms-transform:rotate(-32deg) scale(1.4);-o-transform:rotate(-32deg) scale(1.4);-webkit-transform:rotate(-32deg) scale(1.4);transform:rotate(-32deg) scale(1.4);}.info-box-3.hover-expand-effect:after{background-color:rgba(0,0,0,.05);content:".";position:absolute;left:0;top:0;width:0;height:100%;color:transparent;-moz-transition:all .95s;-o-transition:all .95s;-webkit-transition:all .95s;transition:all .95s;}.info-box-3.hover-expand-effect:hover:after{width:100%;}.info-box-4{box-shadow:0 2px 10px rgba(0,0,0,.2);height:80px;display:flex;cursor:default;background-color:#fff;position:relative;overflow:hidden;margin-bottom:30px;}.info-box-4 .icon{position:absolute;right:10px;bottom:2px;text-align:center;}.info-box-4 .icon i{color:rgba(0,0,0,.15);font-size:60px;}.info-box-4 .chart{margin-right:5px;}.info-box-4 .chart.chart-bar{height:100%;line-height:50px;}.info-box-4 .chart.chart-bar canvas{vertical-align:baseline !important;}.info-box-4 .chart.chart-pie{height:100%;line-height:34px;}.info-box-4 .chart.chart-pie canvas{vertical-align:baseline !important;}.info-box-4 .chart.chart-line{height:100%;line-height:40px;}.info-box-4 .chart.chart-line canvas{vertical-align:baseline !important;}.info-box-4 .content{display:inline-block;padding:7px 16px;}.info-box-4 .content .text{font-size:13px;margin-top:11px;color:#555;}.info-box-4 .content .number{font-weight:normal;font-size:26px;margin-top:-4px;color:#555;}.info-box-4.hover-zoom-effect .icon i{-moz-transition:all .3s ease;-o-transition:all .3s ease;-webkit-transition:all .3s ease;transition:all .3s ease;}.info-box-4.hover-zoom-effect:hover .icon i{opacity:.4;-moz-transform:rotate(-32deg) scale(1.4);-ms-transform:rotate(-32deg) scale(1.4);-o-transform:rotate(-32deg) scale(1.4);-webkit-transform:rotate(-32deg) scale(1.4);transform:rotate(-32deg) scale(1.4);}.info-box-4.hover-expand-effect:after{background-color:rgba(0,0,0,.05);content:".";position:absolute;left:0;top:0;width:0;height:100%;color:transparent;-moz-transition:all .95s;-o-transition:all .95s;-webkit-transition:all .95s;transition:all .95s;}.info-box-4.hover-expand-effect:hover:after{width:100%;}.alert{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;-ms-box-shadow:none;box-shadow:none;border:none;color:#fff !important;}.alert .alert-link{color:#fff;text-decoration:underline;font-weight:bold;}.alert-success{background-color:#2b982b;}.alert-info{background-color:#00b0e4;}.alert-warning{background-color:#ff9600 !important;}.alert-danger{background-color:#fb483a !important;}.alert-dismissible .close{color:#fff;opacity:1;border:none;text-shadow:none;}.sweet-alert{-webkit-border-radius:0 !important;-moz-border-radius:0 !important;-ms-border-radius:0 !important;border-radius:0 !important;}.sweet-alert p{font-size:14px !important;}.sweet-alert .sa-input-error{top:23px !important;right:13px !important;}.sweet-alert h2{font-size:18px !important;margin:0 0 5px 0 !important;}.sweet-alert button{font-size:15px !important;-webkit-border-radius:0 !important;-moz-border-radius:0 !important;-ms-border-radius:0 !important;border-radius:0 !important;padding:5px 20px !important;}[type="checkbox"]+label{padding-left:26px;height:25px;line-height:21px;font-size:13px;font-weight:normal;}[type="checkbox"]:checked+label:before{top:-4px;left:-2px;width:11px;height:19px;}[type="checkbox"]:checked.chk-col-red+label:before{border-right:2px solid #f44336;border-bottom:2px solid #f44336;}[type="checkbox"]:checked.chk-col-pink+label:before{border-right:2px solid #e91e63;border-bottom:2px solid #e91e63;}[type="checkbox"]:checked.chk-col-purple+label:before{border-right:2px solid #9c27b0;border-bottom:2px solid #9c27b0;}[type="checkbox"]:checked.chk-col-deep-purple+label:before{border-right:2px solid #673ab7;border-bottom:2px solid #673ab7;}[type="checkbox"]:checked.chk-col-indigo+label:before{border-right:2px solid #3f51b5;border-bottom:2px solid #3f51b5;}[type="checkbox"]:checked.chk-col-blue+label:before{border-right:2px solid #2196f3;border-bottom:2px solid #2196f3;}[type="checkbox"]:checked.chk-col-light-blue+label:before{border-right:2px solid #03a9f4;border-bottom:2px solid #03a9f4;}[type="checkbox"]:checked.chk-col-cyan+label:before{border-right:2px solid #00bcd4;border-bottom:2px solid #00bcd4;}[type="checkbox"]:checked.chk-col-teal+label:before{border-right:2px solid #009688;border-bottom:2px solid #009688;}[type="checkbox"]:checked.chk-col-green+label:before{border-right:2px solid #4caf50;border-bottom:2px solid #4caf50;}[type="checkbox"]:checked.chk-col-light-green+label:before{border-right:2px solid #8bc34a;border-bottom:2px solid #8bc34a;}[type="checkbox"]:checked.chk-col-lime+label:before{border-right:2px solid #cddc39;border-bottom:2px solid #cddc39;}[type="checkbox"]:checked.chk-col-yellow+label:before{border-right:2px solid #ffe821;border-bottom:2px solid #ffe821;}[type="checkbox"]:checked.chk-col-amber+label:before{border-right:2px solid #ffc107;border-bottom:2px solid #ffc107;}[type="checkbox"]:checked.chk-col-orange+label:before{border-right:2px solid #ff9800;border-bottom:2px solid #ff9800;}[type="checkbox"]:checked.chk-col-deep-orange+label:before{border-right:2px solid #ff5722;border-bottom:2px solid #ff5722;}[type="checkbox"]:checked.chk-col-brown+label:before{border-right:2px solid #795548;border-bottom:2px solid #795548;}[type="checkbox"]:checked.chk-col-grey+label:before{border-right:2px solid #9e9e9e;border-bottom:2px solid #9e9e9e;}[type="checkbox"]:checked.chk-col-blue-grey+label:before{border-right:2px solid #607d8b;border-bottom:2px solid #607d8b;}[type="checkbox"]:checked.chk-col-black+label:before{border-right:2px solid #000;border-bottom:2px solid #000;}[type="checkbox"]:checked.chk-col-white+label:before{border-right:2px solid #fff;border-bottom:2px solid #fff;}[type="checkbox"].filled-in:checked+label:after{top:0;width:20px;height:20px;border:2px solid #26a69a;background-color:#26a69a;z-index:0;}[type="checkbox"].filled-in:checked+label:before{border-right:2px solid #fff !important;border-bottom:2px solid #fff !important;}[type="checkbox"].filled-in:checked.chk-col-red+label:after{border:2px solid #f44336;background-color:#f44336;}[type="checkbox"].filled-in:checked.chk-col-pink+label:after{border:2px solid #e91e63;background-color:#e91e63;}[type="checkbox"].filled-in:checked.chk-col-purple+label:after{border:2px solid #9c27b0;background-color:#9c27b0;}[type="checkbox"].filled-in:checked.chk-col-deep-purple+label:after{border:2px solid #673ab7;background-color:#673ab7;}[type="checkbox"].filled-in:checked.chk-col-indigo+label:after{border:2px solid #3f51b5;background-color:#3f51b5;}[type="checkbox"].filled-in:checked.chk-col-blue+label:after{border:2px solid #2196f3;background-color:#2196f3;}[type="checkbox"].filled-in:checked.chk-col-light-blue+label:after{border:2px solid #03a9f4;background-color:#03a9f4;}[type="checkbox"].filled-in:checked.chk-col-cyan+label:after{border:2px solid #00bcd4;background-color:#00bcd4;}[type="checkbox"].filled-in:checked.chk-col-teal+label:after{border:2px solid #009688;background-color:#009688;}[type="checkbox"].filled-in:checked.chk-col-green+label:after{border:2px solid #4caf50;background-color:#4caf50;}[type="checkbox"].filled-in:checked.chk-col-light-green+label:after{border:2px solid #8bc34a;background-color:#8bc34a;}[type="checkbox"].filled-in:checked.chk-col-lime+label:after{border:2px solid #cddc39;background-color:#cddc39;}[type="checkbox"].filled-in:checked.chk-col-yellow+label:after{border:2px solid #ffe821;background-color:#ffe821;}[type="checkbox"].filled-in:checked.chk-col-amber+label:after{border:2px solid #ffc107;background-color:#ffc107;}[type="checkbox"].filled-in:checked.chk-col-orange+label:after{border:2px solid #ff9800;background-color:#ff9800;}[type="checkbox"].filled-in:checked.chk-col-deep-orange+label:after{border:2px solid #ff5722;background-color:#ff5722;}[type="checkbox"].filled-in:checked.chk-col-brown+label:after{border:2px solid #795548;background-color:#795548;}[type="checkbox"].filled-in:checked.chk-col-grey+label:after{border:2px solid #9e9e9e;background-color:#9e9e9e;}[type="checkbox"].filled-in:checked.chk-col-blue-grey+label:after{border:2px solid #607d8b;background-color:#607d8b;}[type="checkbox"].filled-in:checked.chk-col-black+label:after{border:2px solid #000;background-color:#000;}[type="checkbox"].filled-in:checked.chk-col-white+label:after{border:2px solid #fff;background-color:#fff;}[type="radio"]:not(:checked)+label{padding-left:26px;height:25px;line-height:25px;font-size:13px;font-weight:normal;}[type="radio"]:checked+label{padding-left:26px;height:25px;line-height:25px;font-size:13px;font-weight:normal;}[type="radio"].radio-col-red:checked+label:after{background-color:#f44336;border-color:#f44336;}[type="radio"].radio-col-pink:checked+label:after{background-color:#e91e63;border-color:#e91e63;}[type="radio"].radio-col-purple:checked+label:after{background-color:#9c27b0;border-color:#9c27b0;}[type="radio"].radio-col-deep-purple:checked+label:after{background-color:#673ab7;border-color:#673ab7;}[type="radio"].radio-col-indigo:checked+label:after{background-color:#3f51b5;border-color:#3f51b5;}[type="radio"].radio-col-blue:checked+label:after{background-color:#2196f3;border-color:#2196f3;}[type="radio"].radio-col-light-blue:checked+label:after{background-color:#03a9f4;border-color:#03a9f4;}[type="radio"].radio-col-cyan:checked+label:after{background-color:#00bcd4;border-color:#00bcd4;}[type="radio"].radio-col-teal:checked+label:after{background-color:#009688;border-color:#009688;}[type="radio"].radio-col-green:checked+label:after{background-color:#4caf50;border-color:#4caf50;}[type="radio"].radio-col-light-green:checked+label:after{background-color:#8bc34a;border-color:#8bc34a;}[type="radio"].radio-col-lime:checked+label:after{background-color:#cddc39;border-color:#cddc39;}[type="radio"].radio-col-yellow:checked+label:after{background-color:#ffe821;border-color:#ffe821;}[type="radio"].radio-col-amber:checked+label:after{background-color:#ffc107;border-color:#ffc107;}[type="radio"].radio-col-orange:checked+label:after{background-color:#ff9800;border-color:#ff9800;}[type="radio"].radio-col-deep-orange:checked+label:after{background-color:#ff5722;border-color:#ff5722;}[type="radio"].radio-col-brown:checked+label:after{background-color:#795548;border-color:#795548;}[type="radio"].radio-col-grey:checked+label:after{background-color:#9e9e9e;border-color:#9e9e9e;}[type="radio"].radio-col-blue-grey:checked+label:after{background-color:#607d8b;border-color:#607d8b;}[type="radio"].radio-col-black:checked+label:after{background-color:#000;border-color:#000;}[type="radio"].radio-col-white:checked+label:after{background-color:#fff;border-color:#fff;}[type="radio"].with-gap.radio-col-red:checked+label:before{border:2px solid #f44336;}[type="radio"].with-gap.radio-col-red:checked+label:after{background-color:#f44336;border:2px solid #f44336;}[type="radio"].with-gap.radio-col-pink:checked+label:before{border:2px solid #e91e63;}[type="radio"].with-gap.radio-col-pink:checked+label:after{background-color:#e91e63;border:2px solid #e91e63;}[type="radio"].with-gap.radio-col-purple:checked+label:before{border:2px solid #9c27b0;}[type="radio"].with-gap.radio-col-purple:checked+label:after{background-color:#9c27b0;border:2px solid #9c27b0;}[type="radio"].with-gap.radio-col-deep-purple:checked+label:before{border:2px solid #673ab7;}[type="radio"].with-gap.radio-col-deep-purple:checked+label:after{background-color:#673ab7;border:2px solid #673ab7;}[type="radio"].with-gap.radio-col-indigo:checked+label:before{border:2px solid #3f51b5;}[type="radio"].with-gap.radio-col-indigo:checked+label:after{background-color:#3f51b5;border:2px solid #3f51b5;}[type="radio"].with-gap.radio-col-blue:checked+label:before{border:2px solid #2196f3;}[type="radio"].with-gap.radio-col-blue:checked+label:after{background-color:#2196f3;border:2px solid #2196f3;}[type="radio"].with-gap.radio-col-light-blue:checked+label:before{border:2px solid #03a9f4;}[type="radio"].with-gap.radio-col-light-blue:checked+label:after{background-color:#03a9f4;border:2px solid #03a9f4;}[type="radio"].with-gap.radio-col-cyan:checked+label:before{border:2px solid #00bcd4;}[type="radio"].with-gap.radio-col-cyan:checked+label:after{background-color:#00bcd4;border:2px solid #00bcd4;}[type="radio"].with-gap.radio-col-teal:checked+label:before{border:2px solid #009688;}[type="radio"].with-gap.radio-col-teal:checked+label:after{background-color:#009688;border:2px solid #009688;}[type="radio"].with-gap.radio-col-green:checked+label:before{border:2px solid #4caf50;}[type="radio"].with-gap.radio-col-green:checked+label:after{background-color:#4caf50;border:2px solid #4caf50;}[type="radio"].with-gap.radio-col-light-green:checked+label:before{border:2px solid #8bc34a;}[type="radio"].with-gap.radio-col-light-green:checked+label:after{background-color:#8bc34a;border:2px solid #8bc34a;}[type="radio"].with-gap.radio-col-lime:checked+label:before{border:2px solid #cddc39;}[type="radio"].with-gap.radio-col-lime:checked+label:after{background-color:#cddc39;border:2px solid #cddc39;}[type="radio"].with-gap.radio-col-yellow:checked+label:before{border:2px solid #ffe821;}[type="radio"].with-gap.radio-col-yellow:checked+label:after{background-color:#ffe821;border:2px solid #ffe821;}[type="radio"].with-gap.radio-col-amber:checked+label:before{border:2px solid #ffc107;}[type="radio"].with-gap.radio-col-amber:checked+label:after{background-color:#ffc107;border:2px solid #ffc107;}[type="radio"].with-gap.radio-col-orange:checked+label:before{border:2px solid #ff9800;}[type="radio"].with-gap.radio-col-orange:checked+label:after{background-color:#ff9800;border:2px solid #ff9800;}[type="radio"].with-gap.radio-col-deep-orange:checked+label:before{border:2px solid #ff5722;}[type="radio"].with-gap.radio-col-deep-orange:checked+label:after{background-color:#ff5722;border:2px solid #ff5722;}[type="radio"].with-gap.radio-col-brown:checked+label:before{border:2px solid #795548;}[type="radio"].with-gap.radio-col-brown:checked+label:after{background-color:#795548;border:2px solid #795548;}[type="radio"].with-gap.radio-col-grey:checked+label:before{border:2px solid #9e9e9e;}[type="radio"].with-gap.radio-col-grey:checked+label:after{background-color:#9e9e9e;border:2px solid #9e9e9e;}[type="radio"].with-gap.radio-col-blue-grey:checked+label:before{border:2px solid #607d8b;}[type="radio"].with-gap.radio-col-blue-grey:checked+label:after{background-color:#607d8b;border:2px solid #607d8b;}[type="radio"].with-gap.radio-col-black:checked+label:before{border:2px solid #000;}[type="radio"].with-gap.radio-col-black:checked+label:after{background-color:#000;border:2px solid #000;}[type="radio"].with-gap.radio-col-white:checked+label:before{border:2px solid #fff;}[type="radio"].with-gap.radio-col-white:checked+label:after{background-color:#fff;border:2px solid #fff;}.switch label{font-weight:normal;font-size:13px;}.switch label .lever{margin:0 14px;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-red:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(244,67,54,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-red{background-color:rgba(244,67,54,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-red:after{background-color:#f44336;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-pink:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(233,30,99,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-pink{background-color:rgba(233,30,99,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-pink:after{background-color:#e91e63;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-purple:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(156,39,176,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-purple{background-color:rgba(156,39,176,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-purple:after{background-color:#9c27b0;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-deep-purple:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(103,58,183,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-deep-purple{background-color:rgba(103,58,183,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-deep-purple:after{background-color:#673ab7;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-indigo:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(63,81,181,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-indigo{background-color:rgba(63,81,181,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-indigo:after{background-color:#3f51b5;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-blue:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(33,150,243,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-blue{background-color:rgba(33,150,243,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-blue:after{background-color:#2196f3;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-light-blue:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(3,169,244,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-light-blue{background-color:rgba(3,169,244,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-light-blue:after{background-color:#03a9f4;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-cyan:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(0,188,212,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-cyan{background-color:rgba(0,188,212,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-cyan:after{background-color:#00bcd4;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-teal:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(0,150,136,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-teal{background-color:rgba(0,150,136,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-teal:after{background-color:#009688;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-green:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(76,175,80,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-green{background-color:rgba(76,175,80,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-green:after{background-color:#4caf50;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-light-green:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(139,195,74,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-light-green{background-color:rgba(139,195,74,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-light-green:after{background-color:#8bc34a;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-lime:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(205,220,57,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-lime{background-color:rgba(205,220,57,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-lime:after{background-color:#cddc39;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-yellow:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(255,232,33,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-yellow{background-color:rgba(255,232,33,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-yellow:after{background-color:#ffe821;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-amber:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(255,193,7,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-amber{background-color:rgba(255,193,7,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-amber:after{background-color:#ffc107;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-orange:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(255,152,0,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-orange{background-color:rgba(255,152,0,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-orange:after{background-color:#ff9800;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-deep-orange:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(255,87,34,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-deep-orange{background-color:rgba(255,87,34,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-deep-orange:after{background-color:#ff5722;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-brown:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(121,85,72,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-brown{background-color:rgba(121,85,72,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-brown:after{background-color:#795548;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-grey:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(158,158,158,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-grey{background-color:rgba(158,158,158,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-grey:after{background-color:#9e9e9e;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-blue-grey:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(96,125,139,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-blue-grey{background-color:rgba(96,125,139,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-blue-grey:after{background-color:#607d8b;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-black:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(0,0,0,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-black{background-color:rgba(0,0,0,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-black:after{background-color:#000;}.switch label input[type=checkbox]:checked:not(:disabled)~.lever.switch-col-white:active:after{box-shadow:0 1px 3px 1px rgba(0,0,0,.4),0 0 0 15px rgba(255,255,255,.1);}.switch label input[type=checkbox]:checked+.lever.switch-col-white{background-color:rgba(255,255,255,.5);}.switch label input[type=checkbox]:checked+.lever.switch-col-white:after{background-color:#fff;}.dtp div.dtp-date,.dtp div.dtp-time{background:#007d72;}.dtp>.dtp-content>.dtp-date-view>header.dtp-header{background:#009688;}.dtp .dtp-buttons .dtp-btn-ok{margin-left:10px;}.dtp .dtp-buttons .dtp-btn-clear{margin-right:10px !important;}.dtp .p10>a{color:#fff;}.dtp div.dtp-actual-year{font-size:1.5em;color:#fff;}.dtp table.dtp-picker-days tr td a.selected{background:#007d72;color:#fff;}.bootstrap-select{box-shadow:none !important;border-bottom:1px solid #ddd !important;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.bootstrap-select .dropdown-toggle:focus,.bootstrap-select .dropdown-toggle:active{outline:none !important;}.bootstrap-select .bs-searchbox,.bootstrap-select .bs-actionsbox,.bootstrap-select .bs-donebutton{padding:0 0 5px 0;border-bottom:1px solid #e9e9e9;}.bootstrap-select .bs-searchbox .form-control,.bootstrap-select .bs-actionsbox .form-control,.bootstrap-select .bs-donebutton .form-control{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;-webkit-box-shadow:none !important;-moz-box-shadow:none !important;-ms-box-shadow:none !important;box-shadow:none !important;border:none;margin-left:30px;}.bootstrap-select .bs-searchbox{position:relative;}.bootstrap-select .bs-searchbox:after{content:'';font-family:'Material Icons';position:absolute;top:0;left:10px;font-size:25px;}.bootstrap-select ul.dropdown-menu{margin-top:0 !important;}.bootstrap-select .dropdown-menu li.selected a{background-color:#eee !important;color:#555 !important;}.bootstrap-select .dropdown-menu .active a{background-color:transparent;color:#333 !important;}.bootstrap-select .dropdown-menu .notify{background-color:#f44336 !important;color:#fff !important;border:none !important;}.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark{margin-top:9px;}.tooltip{font-size:13px;}.tooltip .tooltip-inner{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.popover{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;border:1px solid rgba(0,0,0,.08);}.popover .popover-title{font-weight:bold;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;background-color:#e9e9e9;border-bottom:1px solid #ddd;}.popover .popover-content{font-size:13px;color:#777;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.nav-tabs{border-bottom:2px solid #eee;}.nav-tabs>li{position:relative;top:3px;left:-2px;}.nav-tabs>li>a{border:none !important;color:#999 !important;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.nav-tabs>li>a:hover,.nav-tabs>li>a:active,.nav-tabs>li>a:focus{background-color:transparent !important;}.nav-tabs>li>a:before{content:'';position:absolute;left:0;width:100%;height:0;border-bottom:2px solid #2196f3;bottom:2px;-moz-transform:scaleX(0);-ms-transform:scaleX(0);-o-transform:scaleX(0);-webkit-transform:scaleX(0);transform:scaleX(0);-moz-transition:.1s ease-in;-o-transition:.1s ease-in;-webkit-transition:.1s ease-in;transition:.1s ease-in;}.nav-tabs>li>a .material-icons{position:relative;top:7px;margin-bottom:8px;}.nav-tabs li.active a{color:#222 !important;}.nav-tabs li.active a:hover,.nav-tabs li.active a:active,.nav-tabs li.active a:focus{background-color:transparent !important;}.nav-tabs li.active a:before{-moz-transform:scaleX(1);-ms-transform:scaleX(1);-o-transform:scaleX(1);-webkit-transform:scaleX(1);transform:scaleX(1);}.nav-tabs+.tab-content{padding:15px 0;}.nav-tabs.tab-col-red>li>a:before{border-bottom:2px solid #f44336;}.nav-tabs.tab-col-pink>li>a:before{border-bottom:2px solid #e91e63;}.nav-tabs.tab-col-purple>li>a:before{border-bottom:2px solid #9c27b0;}.nav-tabs.tab-col-deep-purple>li>a:before{border-bottom:2px solid #673ab7;}.nav-tabs.tab-col-indigo>li>a:before{border-bottom:2px solid #3f51b5;}.nav-tabs.tab-col-blue>li>a:before{border-bottom:2px solid #2196f3;}.nav-tabs.tab-col-light-blue>li>a:before{border-bottom:2px solid #03a9f4;}.nav-tabs.tab-col-cyan>li>a:before{border-bottom:2px solid #00bcd4;}.nav-tabs.tab-col-teal>li>a:before{border-bottom:2px solid #009688;}.nav-tabs.tab-col-green>li>a:before{border-bottom:2px solid #4caf50;}.nav-tabs.tab-col-light-green>li>a:before{border-bottom:2px solid #8bc34a;}.nav-tabs.tab-col-lime>li>a:before{border-bottom:2px solid #cddc39;}.nav-tabs.tab-col-yellow>li>a:before{border-bottom:2px solid #ffe821;}.nav-tabs.tab-col-amber>li>a:before{border-bottom:2px solid #ffc107;}.nav-tabs.tab-col-orange>li>a:before{border-bottom:2px solid #ff9800;}.nav-tabs.tab-col-deep-orange>li>a:before{border-bottom:2px solid #ff5722;}.nav-tabs.tab-col-brown>li>a:before{border-bottom:2px solid #795548;}.nav-tabs.tab-col-grey>li>a:before{border-bottom:2px solid #9e9e9e;}.nav-tabs.tab-col-blue-grey>li>a:before{border-bottom:2px solid #607d8b;}.nav-tabs.tab-col-black>li>a:before{border-bottom:2px solid #000;}.nav-tabs.tab-col-white>li>a:before{border-bottom:2px solid #fff;}.thumbnail{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.thumbnail p:not(button){color:#999;font-size:14px;}.thumbnail h3{font-weight:bold;font-size:17px;}.modal .modal-header{border:none;padding:25px 25px 5px 25px;}.modal .modal-header .modal-title{font-weight:bold;font-size:16px;}.modal .modal-content{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;box-shadow:0 5px 20px rgba(0,0,0,.31) !important;border:none;}.modal .modal-content .modal-body{color:#777;padding:15px 25px;}.modal .modal-footer{border:none;}.modal-col-red{background-color:#f44336;}.modal-col-red .modal-body,.modal-col-red .modal-title{color:#fff !important;}.modal-col-red .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-red .modal-footer .btn-link{color:#fff !important;}.modal-col-red .modal-footer .btn-link:hover,.modal-col-red .modal-footer .btn-link:active,.modal-col-red .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-pink{background-color:#e91e63;}.modal-col-pink .modal-body,.modal-col-pink .modal-title{color:#fff !important;}.modal-col-pink .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-pink .modal-footer .btn-link{color:#fff !important;}.modal-col-pink .modal-footer .btn-link:hover,.modal-col-pink .modal-footer .btn-link:active,.modal-col-pink .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-purple{background-color:#9c27b0;}.modal-col-purple .modal-body,.modal-col-purple .modal-title{color:#fff !important;}.modal-col-purple .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-purple .modal-footer .btn-link{color:#fff !important;}.modal-col-purple .modal-footer .btn-link:hover,.modal-col-purple .modal-footer .btn-link:active,.modal-col-purple .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-deep-purple{background-color:#673ab7;}.modal-col-deep-purple .modal-body,.modal-col-deep-purple .modal-title{color:#fff !important;}.modal-col-deep-purple .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-deep-purple .modal-footer .btn-link{color:#fff !important;}.modal-col-deep-purple .modal-footer .btn-link:hover,.modal-col-deep-purple .modal-footer .btn-link:active,.modal-col-deep-purple .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-indigo{background-color:#3f51b5;}.modal-col-indigo .modal-body,.modal-col-indigo .modal-title{color:#fff !important;}.modal-col-indigo .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-indigo .modal-footer .btn-link{color:#fff !important;}.modal-col-indigo .modal-footer .btn-link:hover,.modal-col-indigo .modal-footer .btn-link:active,.modal-col-indigo .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-blue{background-color:#2196f3;}.modal-col-blue .modal-body,.modal-col-blue .modal-title{color:#fff !important;}.modal-col-blue .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-blue .modal-footer .btn-link{color:#fff !important;}.modal-col-blue .modal-footer .btn-link:hover,.modal-col-blue .modal-footer .btn-link:active,.modal-col-blue .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-light-blue{background-color:#03a9f4;}.modal-col-light-blue .modal-body,.modal-col-light-blue .modal-title{color:#fff !important;}.modal-col-light-blue .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-light-blue .modal-footer .btn-link{color:#fff !important;}.modal-col-light-blue .modal-footer .btn-link:hover,.modal-col-light-blue .modal-footer .btn-link:active,.modal-col-light-blue .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-cyan{background-color:#00bcd4;}.modal-col-cyan .modal-body,.modal-col-cyan .modal-title{color:#fff !important;}.modal-col-cyan .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-cyan .modal-footer .btn-link{color:#fff !important;}.modal-col-cyan .modal-footer .btn-link:hover,.modal-col-cyan .modal-footer .btn-link:active,.modal-col-cyan .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-teal{background-color:#009688;}.modal-col-teal .modal-body,.modal-col-teal .modal-title{color:#fff !important;}.modal-col-teal .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-teal .modal-footer .btn-link{color:#fff !important;}.modal-col-teal .modal-footer .btn-link:hover,.modal-col-teal .modal-footer .btn-link:active,.modal-col-teal .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-green{background-color:#4caf50;}.modal-col-green .modal-body,.modal-col-green .modal-title{color:#fff !important;}.modal-col-green .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-green .modal-footer .btn-link{color:#fff !important;}.modal-col-green .modal-footer .btn-link:hover,.modal-col-green .modal-footer .btn-link:active,.modal-col-green .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-light-green{background-color:#8bc34a;}.modal-col-light-green .modal-body,.modal-col-light-green .modal-title{color:#fff !important;}.modal-col-light-green .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-light-green .modal-footer .btn-link{color:#fff !important;}.modal-col-light-green .modal-footer .btn-link:hover,.modal-col-light-green .modal-footer .btn-link:active,.modal-col-light-green .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-lime{background-color:#cddc39;}.modal-col-lime .modal-body,.modal-col-lime .modal-title{color:#fff !important;}.modal-col-lime .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-lime .modal-footer .btn-link{color:#fff !important;}.modal-col-lime .modal-footer .btn-link:hover,.modal-col-lime .modal-footer .btn-link:active,.modal-col-lime .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-yellow{background-color:#ffe821;}.modal-col-yellow .modal-body,.modal-col-yellow .modal-title{color:#fff !important;}.modal-col-yellow .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-yellow .modal-footer .btn-link{color:#fff !important;}.modal-col-yellow .modal-footer .btn-link:hover,.modal-col-yellow .modal-footer .btn-link:active,.modal-col-yellow .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-amber{background-color:#ffc107;}.modal-col-amber .modal-body,.modal-col-amber .modal-title{color:#fff !important;}.modal-col-amber .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-amber .modal-footer .btn-link{color:#fff !important;}.modal-col-amber .modal-footer .btn-link:hover,.modal-col-amber .modal-footer .btn-link:active,.modal-col-amber .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-orange{background-color:#ff9800;}.modal-col-orange .modal-body,.modal-col-orange .modal-title{color:#fff !important;}.modal-col-orange .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-orange .modal-footer .btn-link{color:#fff !important;}.modal-col-orange .modal-footer .btn-link:hover,.modal-col-orange .modal-footer .btn-link:active,.modal-col-orange .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-deep-orange{background-color:#ff5722;}.modal-col-deep-orange .modal-body,.modal-col-deep-orange .modal-title{color:#fff !important;}.modal-col-deep-orange .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-deep-orange .modal-footer .btn-link{color:#fff !important;}.modal-col-deep-orange .modal-footer .btn-link:hover,.modal-col-deep-orange .modal-footer .btn-link:active,.modal-col-deep-orange .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-brown{background-color:#795548;}.modal-col-brown .modal-body,.modal-col-brown .modal-title{color:#fff !important;}.modal-col-brown .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-brown .modal-footer .btn-link{color:#fff !important;}.modal-col-brown .modal-footer .btn-link:hover,.modal-col-brown .modal-footer .btn-link:active,.modal-col-brown .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-grey{background-color:#9e9e9e;}.modal-col-grey .modal-body,.modal-col-grey .modal-title{color:#fff !important;}.modal-col-grey .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-grey .modal-footer .btn-link{color:#fff !important;}.modal-col-grey .modal-footer .btn-link:hover,.modal-col-grey .modal-footer .btn-link:active,.modal-col-grey .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-blue-grey{background-color:#607d8b;}.modal-col-blue-grey .modal-body,.modal-col-blue-grey .modal-title{color:#fff !important;}.modal-col-blue-grey .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-blue-grey .modal-footer .btn-link{color:#fff !important;}.modal-col-blue-grey .modal-footer .btn-link:hover,.modal-col-blue-grey .modal-footer .btn-link:active,.modal-col-blue-grey .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-black{background-color:#000;}.modal-col-black .modal-body,.modal-col-black .modal-title{color:#fff !important;}.modal-col-black .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-black .modal-footer .btn-link{color:#fff !important;}.modal-col-black .modal-footer .btn-link:hover,.modal-col-black .modal-footer .btn-link:active,.modal-col-black .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.modal-col-white{background-color:#fff;}.modal-col-white .modal-body,.modal-col-white .modal-title{color:#fff !important;}.modal-col-white .modal-footer{background-color:rgba(0,0,0,.12);}.modal-col-white .modal-footer .btn-link{color:#fff !important;}.modal-col-white .modal-footer .btn-link:hover,.modal-col-white .modal-footer .btn-link:active,.modal-col-white .modal-footer .btn-link:focus{background-color:rgba(0,0,0,.12);}.label{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.label-primary{background-color:#1f91f3;}.label-success{background-color:#2b982b;}.label-info{background-color:#00b0e4;}.label-warning{background-color:#ff9600;}.label-danger{background-color:#fb483a;}.collapse .well,.collapse.in .well,.collapsing .well{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;margin-bottom:0;}.table tbody tr td,.table tbody tr th{padding:10px;border-top:1px solid #eee;border-bottom:1px solid #eee;}.table tbody tr.primary td,.table tbody tr.primary th{background-color:#1f91f3;color:#fff;}.table tbody tr.success td,.table tbody tr.success th{background-color:#2b982b;color:#fff;}.table tbody tr.info td,.table tbody tr.info th{background-color:#00b0e4;color:#fff;}.table tbody tr.warning td,.table tbody tr.warning th{background-color:#ff9600;color:#fff;}.table tbody tr.danger td,.table tbody tr.danger th{background-color:#fb483a;color:#fff;}.table thead tr th{padding:10px;border-bottom:1px solid #eee;}.table-bordered{border-top:1px solid #eee;}.table-bordered tbody tr td,.table-bordered tbody tr th{padding:10px;border:1px solid #eee;}.table-bordered thead tr th{padding:10px;border:1px solid #eee;}.panel-group .panel-col-red{border:1px solid #f44336;}.panel-group .panel-col-red .panel-title{background-color:#f44336 !important;color:#fff;}.panel-group .panel-col-red .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-pink{border:1px solid #e91e63;}.panel-group .panel-col-pink .panel-title{background-color:#e91e63 !important;color:#fff;}.panel-group .panel-col-pink .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-purple{border:1px solid #9c27b0;}.panel-group .panel-col-purple .panel-title{background-color:#9c27b0 !important;color:#fff;}.panel-group .panel-col-purple .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-deep-purple{border:1px solid #673ab7;}.panel-group .panel-col-deep-purple .panel-title{background-color:#673ab7 !important;color:#fff;}.panel-group .panel-col-deep-purple .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-indigo{border:1px solid #3f51b5;}.panel-group .panel-col-indigo .panel-title{background-color:#3f51b5 !important;color:#fff;}.panel-group .panel-col-indigo .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-blue{border:1px solid #2196f3;}.panel-group .panel-col-blue .panel-title{background-color:#2196f3 !important;color:#fff;}.panel-group .panel-col-blue .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-light-blue{border:1px solid #03a9f4;}.panel-group .panel-col-light-blue .panel-title{background-color:#03a9f4 !important;color:#fff;}.panel-group .panel-col-light-blue .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-cyan{border:1px solid #00bcd4;}.panel-group .panel-col-cyan .panel-title{background-color:#00bcd4 !important;color:#fff;}.panel-group .panel-col-cyan .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-teal{border:1px solid #009688;}.panel-group .panel-col-teal .panel-title{background-color:#009688 !important;color:#fff;}.panel-group .panel-col-teal .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-green{border:1px solid #4caf50;}.panel-group .panel-col-green .panel-title{background-color:#4caf50 !important;color:#fff;}.panel-group .panel-col-green .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-light-green{border:1px solid #8bc34a;}.panel-group .panel-col-light-green .panel-title{background-color:#8bc34a !important;color:#fff;}.panel-group .panel-col-light-green .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-lime{border:1px solid #cddc39;}.panel-group .panel-col-lime .panel-title{background-color:#cddc39 !important;color:#fff;}.panel-group .panel-col-lime .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-yellow{border:1px solid #ffe821;}.panel-group .panel-col-yellow .panel-title{background-color:#ffe821 !important;color:#fff;}.panel-group .panel-col-yellow .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-amber{border:1px solid #ffc107;}.panel-group .panel-col-amber .panel-title{background-color:#ffc107 !important;color:#fff;}.panel-group .panel-col-amber .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-orange{border:1px solid #ff9800;}.panel-group .panel-col-orange .panel-title{background-color:#ff9800 !important;color:#fff;}.panel-group .panel-col-orange .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-deep-orange{border:1px solid #ff5722;}.panel-group .panel-col-deep-orange .panel-title{background-color:#ff5722 !important;color:#fff;}.panel-group .panel-col-deep-orange .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-brown{border:1px solid #795548;}.panel-group .panel-col-brown .panel-title{background-color:#795548 !important;color:#fff;}.panel-group .panel-col-brown .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-grey{border:1px solid #9e9e9e;}.panel-group .panel-col-grey .panel-title{background-color:#9e9e9e !important;color:#fff;}.panel-group .panel-col-grey .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-blue-grey{border:1px solid #607d8b;}.panel-group .panel-col-blue-grey .panel-title{background-color:#607d8b !important;color:#fff;}.panel-group .panel-col-blue-grey .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-black{border:1px solid #000;}.panel-group .panel-col-black .panel-title{background-color:#000 !important;color:#fff;}.panel-group .panel-col-black .panel-body{border-top-color:transparent !important;}.panel-group .panel-col-white{border:1px solid #fff;}.panel-group .panel-col-white .panel-title{background-color:#fff !important;color:#fff;}.panel-group .panel-col-white .panel-body{border-top-color:transparent !important;}.panel-group .panel{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.panel-group .panel .panel-title .material-icons{float:left;line-height:16px;margin-right:8px;}.panel-group .panel .panel-heading{padding:0;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.panel-group .panel .panel-heading a{display:block;padding:10px 15px;}.panel-group .panel .panel-heading a:hover,.panel-group .panel .panel-heading a:focus,.panel-group .panel .panel-heading a:active{text-decoration:none;}.panel-group .panel .panel-body{color:#555;}.panel-group .panel-primary{border:1px solid #1f91f3;}.panel-group .panel-primary .panel-title{background-color:#1f91f3;}.panel-group .panel-success{border:1px solid #2b982b;}.panel-group .panel-success .panel-title{background-color:#2b982b;color:#fff;}.panel-group .panel-warning{border:1px solid #ff9600;}.panel-group .panel-warning .panel-title{background-color:#ff9600;color:#fff;}.panel-group .panel-danger{border:1px solid #fb483a;}.panel-group .panel-danger .panel-title{background-color:#fb483a;color:#fff;}.full-body .panel-col-red .panel-body{border-top-color:#fff !important;background-color:#f44336;color:#fff;}.full-body .panel-col-pink .panel-body{border-top-color:#fff !important;background-color:#e91e63;color:#fff;}.full-body .panel-col-purple .panel-body{border-top-color:#fff !important;background-color:#9c27b0;color:#fff;}.full-body .panel-col-deep-purple .panel-body{border-top-color:#fff !important;background-color:#673ab7;color:#fff;}.full-body .panel-col-indigo .panel-body{border-top-color:#fff !important;background-color:#3f51b5;color:#fff;}.full-body .panel-col-blue .panel-body{border-top-color:#fff !important;background-color:#2196f3;color:#fff;}.full-body .panel-col-light-blue .panel-body{border-top-color:#fff !important;background-color:#03a9f4;color:#fff;}.full-body .panel-col-cyan .panel-body{border-top-color:#fff !important;background-color:#00bcd4;color:#fff;}.full-body .panel-col-teal .panel-body{border-top-color:#fff !important;background-color:#009688;color:#fff;}.full-body .panel-col-green .panel-body{border-top-color:#fff !important;background-color:#4caf50;color:#fff;}.full-body .panel-col-light-green .panel-body{border-top-color:#fff !important;background-color:#8bc34a;color:#fff;}.full-body .panel-col-lime .panel-body{border-top-color:#fff !important;background-color:#cddc39;color:#fff;}.full-body .panel-col-yellow .panel-body{border-top-color:#fff !important;background-color:#ffe821;color:#fff;}.full-body .panel-col-amber .panel-body{border-top-color:#fff !important;background-color:#ffc107;color:#fff;}.full-body .panel-col-orange .panel-body{border-top-color:#fff !important;background-color:#ff9800;color:#fff;}.full-body .panel-col-deep-orange .panel-body{border-top-color:#fff !important;background-color:#ff5722;color:#fff;}.full-body .panel-col-brown .panel-body{border-top-color:#fff !important;background-color:#795548;color:#fff;}.full-body .panel-col-grey .panel-body{border-top-color:#fff !important;background-color:#9e9e9e;color:#fff;}.full-body .panel-col-blue-grey .panel-body{border-top-color:#fff !important;background-color:#607d8b;color:#fff;}.full-body .panel-col-black .panel-body{border-top-color:#fff !important;background-color:#000;color:#fff;}.full-body .panel-col-white .panel-body{border-top-color:#fff !important;background-color:#fff;color:#fff;}.full-body .panel-primary .panel-body{border-top-color:#fff !important;background-color:#1f91f3;color:#fff;}.full-body .panel-success .panel-body{border-top-color:#fff !important;background-color:#2b982b;color:#fff;}.full-body .panel-warning .panel-body{border-top-color:#fff !important;background-color:#ff9600;color:#fff;}.full-body .panel-danger .panel-body{border-top-color:#fff !important;background-color:#fb483a;color:#fff;}.progress{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;height:22px;}.progress .progress-bar{line-height:23px;background-color:#1f91f3;}.progress .progress-bar-success{background-color:#2b982b;}.progress .progress-bar-info{background-color:#00b0e4;}.progress .progress-bar-warning{background-color:#ff9600;}.progress .progress-bar-danger{background-color:#fb483a;}.irs .irs-min,.irs .irs-max,.irs .irs-from,.irs .irs-to,.irs .irs-single{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.input-group{width:100%;margin-bottom:20px;}.input-group .form-line{display:inline-block;width:100%;border-bottom:1px solid #ddd;position:relative;}.input-group .form-line:after{content:'';position:absolute;left:0;width:100%;bottom:-2px;-moz-transform:scaleX(0);-ms-transform:scaleX(0);-o-transform:scaleX(0);-webkit-transform:scaleX(0);transform:scaleX(0);-moz-transition:.25s ease-in;-o-transition:.25s ease-in;-webkit-transition:.25s ease-in;transition:.25s ease-in;border-bottom:2px solid #1f91f3;}.input-group .form-line+.input-group-addon{padding-right:0;padding-left:10px;}.input-group .help-info{float:right;font-size:12px;margin-top:5px;color:#999;}.input-group label.error{font-size:12px;display:block;margin-top:5px;font-weight:normal;color:#f44336;}.input-group .form-line.error:after{border-bottom:2px solid #f44336;}.input-group .form-line.success:after{border-bottom:2px solid #4caf50;}.input-group .form-line.warning:after{border-bottom:2px solid #ffc107;}.input-group .form-line.focused:after{-moz-transform:scaleX(1);-ms-transform:scaleX(1);-o-transform:scaleX(1);-webkit-transform:scaleX(1);transform:scaleX(1);}.input-group .form-line.focused .form-label{bottom:25px;left:0;font-size:12px;}.input-group .input-group-addon{border:none;background-color:transparent;padding-left:0;font-weight:bold;}.input-group .input-group-addon .material-icons{font-size:18px;color:#555;}.input-group input[type="text"],.input-group .form-control{border:none;box-shadow:none;padding-left:0;}.input-group .form-control:focus{-webkit-box-shadow:none !important;-moz-box-shadow:none !important;-ms-box-shadow:none !important;box-shadow:none !important;}.input-group.input-group-sm .input-group-addon i{font-size:14px;}.input-group.input-group-sm .form-control{font-size:12px;}.input-group.input-group-lg .input-group-addon i{font-size:26px;}.input-group.input-group-lg .form-control{font-size:18px;}.form-control-label{text-align:right;}.form-control-label label{margin-top:8px;}.form-horizontal .form-group{margin-bottom:0;}.form-group{width:100%;margin-bottom:25px;}.form-group .form-control{width:100%;border:none;box-shadow:none;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;padding-left:0;}.form-group .help-info{float:right;font-size:12px;margin-top:5px;color:#999;}.form-group label.error{font-size:12px;display:block;margin-top:5px;font-weight:normal;color:#f44336;}.form-group .form-line{width:100%;position:relative;border-bottom:1px solid #ddd;}.form-group .form-line:after{content:'';position:absolute;left:0;width:100%;height:0;bottom:-1px;-moz-transform:scaleX(0);-ms-transform:scaleX(0);-o-transform:scaleX(0);-webkit-transform:scaleX(0);transform:scaleX(0);-moz-transition:.25s ease-in;-o-transition:.25s ease-in;-webkit-transition:.25s ease-in;transition:.25s ease-in;border-bottom:2px solid #1f91f3;}.form-group .form-line .form-label{font-weight:normal;color:#aaa;position:absolute;top:10px;left:0;cursor:text;-moz-transition:.2s;-o-transition:.2s;-webkit-transition:.2s;transition:.2s;}.form-group .form-line.error:after{border-bottom:2px solid #f44336;}.form-group .form-line.success:after{border-bottom:2px solid #4caf50;}.form-group .form-line.warning:after{border-bottom:2px solid #ffc107;}.form-group .form-line.focused:after{-moz-transform:scaleX(1);-ms-transform:scaleX(1);-o-transform:scaleX(1);-webkit-transform:scaleX(1);transform:scaleX(1);}.form-group .form-line.focused .form-label{top:-10px;left:0;font-size:12px;}.form-group-sm .form-label{font-size:12px;}.form-group-sm .form-line.focused .form-label{bottom:20px;font-size:10px;}.form-group-lg .form-label{font-size:18px;}.form-group-lg .form-line.focused .form-label{bottom:35px;font-size:12px;}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:transparent;}.colorpicker{z-index:1;}.colorpicker:before,.colorpicker:after{display:none !important;}.dropzone{border:2px solid transparent !important;background-color:#eee !important;}.dropzone .dz-message .drag-icon-cph .material-icons{font-size:80px;color:#777;}.dz-drag-hover{border:2px dashed #888 !important;}.breadcrumb{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;background-color:transparent;font-size:13px;margin-bottom:10px;}.breadcrumb li a{color:#444;text-decoration:none;}.breadcrumb li a .material-icons{font-size:18px;position:relative;top:4px;}.breadcrumb li .material-icons{font-size:18px;position:relative;top:4px;}.breadcrumb>li+li:before{content:'> ';}.breadcrumb-col-red li a{color:#f44336 !important;font-weight:bold;}.breadcrumb-bg-red{background-color:#f44336 !important;}.breadcrumb-bg-red li{color:#fff !important;}.breadcrumb-bg-red li a{color:#fff;font-weight:bold;}.breadcrumb-bg-red li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-red li+li:before{color:#fff;}.breadcrumb-col-pink li a{color:#e91e63 !important;font-weight:bold;}.breadcrumb-bg-pink{background-color:#e91e63 !important;}.breadcrumb-bg-pink li{color:#fff !important;}.breadcrumb-bg-pink li a{color:#fff;font-weight:bold;}.breadcrumb-bg-pink li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-pink li+li:before{color:#fff;}.breadcrumb-col-purple li a{color:#9c27b0 !important;font-weight:bold;}.breadcrumb-bg-purple{background-color:#9c27b0 !important;}.breadcrumb-bg-purple li{color:#fff !important;}.breadcrumb-bg-purple li a{color:#fff;font-weight:bold;}.breadcrumb-bg-purple li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-purple li+li:before{color:#fff;}.breadcrumb-col-deep-purple li a{color:#673ab7 !important;font-weight:bold;}.breadcrumb-bg-deep-purple{background-color:#673ab7 !important;}.breadcrumb-bg-deep-purple li{color:#fff !important;}.breadcrumb-bg-deep-purple li a{color:#fff;font-weight:bold;}.breadcrumb-bg-deep-purple li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-deep-purple li+li:before{color:#fff;}.breadcrumb-col-indigo li a{color:#3f51b5 !important;font-weight:bold;}.breadcrumb-bg-indigo{background-color:#3f51b5 !important;}.breadcrumb-bg-indigo li{color:#fff !important;}.breadcrumb-bg-indigo li a{color:#fff;font-weight:bold;}.breadcrumb-bg-indigo li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-indigo li+li:before{color:#fff;}.breadcrumb-col-blue li a{color:#2196f3 !important;font-weight:bold;}.breadcrumb-bg-blue{background-color:#2196f3 !important;}.breadcrumb-bg-blue li{color:#fff !important;}.breadcrumb-bg-blue li a{color:#fff;font-weight:bold;}.breadcrumb-bg-blue li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-blue li+li:before{color:#fff;}.breadcrumb-col-light-blue li a{color:#03a9f4 !important;font-weight:bold;}.breadcrumb-bg-light-blue{background-color:#03a9f4 !important;}.breadcrumb-bg-light-blue li{color:#fff !important;}.breadcrumb-bg-light-blue li a{color:#fff;font-weight:bold;}.breadcrumb-bg-light-blue li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-light-blue li+li:before{color:#fff;}.breadcrumb-col-cyan li a{color:#00bcd4 !important;font-weight:bold;}.breadcrumb-bg-cyan{background-color:#00bcd4 !important;}.breadcrumb-bg-cyan li{color:#fff !important;}.breadcrumb-bg-cyan li a{color:#fff;font-weight:bold;}.breadcrumb-bg-cyan li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-cyan li+li:before{color:#fff;}.breadcrumb-col-teal li a{color:#009688 !important;font-weight:bold;}.breadcrumb-bg-teal{background-color:#009688 !important;}.breadcrumb-bg-teal li{color:#fff !important;}.breadcrumb-bg-teal li a{color:#fff;font-weight:bold;}.breadcrumb-bg-teal li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-teal li+li:before{color:#fff;}.breadcrumb-col-green li a{color:#4caf50 !important;font-weight:bold;}.breadcrumb-bg-green{background-color:#4caf50 !important;}.breadcrumb-bg-green li{color:#fff !important;}.breadcrumb-bg-green li a{color:#fff;font-weight:bold;}.breadcrumb-bg-green li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-green li+li:before{color:#fff;}.breadcrumb-col-light-green li a{color:#8bc34a !important;font-weight:bold;}.breadcrumb-bg-light-green{background-color:#8bc34a !important;}.breadcrumb-bg-light-green li{color:#fff !important;}.breadcrumb-bg-light-green li a{color:#fff;font-weight:bold;}.breadcrumb-bg-light-green li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-light-green li+li:before{color:#fff;}.breadcrumb-col-lime li a{color:#cddc39 !important;font-weight:bold;}.breadcrumb-bg-lime{background-color:#cddc39 !important;}.breadcrumb-bg-lime li{color:#fff !important;}.breadcrumb-bg-lime li a{color:#fff;font-weight:bold;}.breadcrumb-bg-lime li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-lime li+li:before{color:#fff;}.breadcrumb-col-yellow li a{color:#ffe821 !important;font-weight:bold;}.breadcrumb-bg-yellow{background-color:#ffe821 !important;}.breadcrumb-bg-yellow li{color:#fff !important;}.breadcrumb-bg-yellow li a{color:#fff;font-weight:bold;}.breadcrumb-bg-yellow li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-yellow li+li:before{color:#fff;}.breadcrumb-col-amber li a{color:#ffc107 !important;font-weight:bold;}.breadcrumb-bg-amber{background-color:#ffc107 !important;}.breadcrumb-bg-amber li{color:#fff !important;}.breadcrumb-bg-amber li a{color:#fff;font-weight:bold;}.breadcrumb-bg-amber li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-amber li+li:before{color:#fff;}.breadcrumb-col-orange li a{color:#ff9800 !important;font-weight:bold;}.breadcrumb-bg-orange{background-color:#ff9800 !important;}.breadcrumb-bg-orange li{color:#fff !important;}.breadcrumb-bg-orange li a{color:#fff;font-weight:bold;}.breadcrumb-bg-orange li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-orange li+li:before{color:#fff;}.breadcrumb-col-deep-orange li a{color:#ff5722 !important;font-weight:bold;}.breadcrumb-bg-deep-orange{background-color:#ff5722 !important;}.breadcrumb-bg-deep-orange li{color:#fff !important;}.breadcrumb-bg-deep-orange li a{color:#fff;font-weight:bold;}.breadcrumb-bg-deep-orange li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-deep-orange li+li:before{color:#fff;}.breadcrumb-col-brown li a{color:#795548 !important;font-weight:bold;}.breadcrumb-bg-brown{background-color:#795548 !important;}.breadcrumb-bg-brown li{color:#fff !important;}.breadcrumb-bg-brown li a{color:#fff;font-weight:bold;}.breadcrumb-bg-brown li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-brown li+li:before{color:#fff;}.breadcrumb-col-grey li a{color:#9e9e9e !important;font-weight:bold;}.breadcrumb-bg-grey{background-color:#9e9e9e !important;}.breadcrumb-bg-grey li{color:#fff !important;}.breadcrumb-bg-grey li a{color:#fff;font-weight:bold;}.breadcrumb-bg-grey li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-grey li+li:before{color:#fff;}.breadcrumb-col-blue-grey li a{color:#607d8b !important;font-weight:bold;}.breadcrumb-bg-blue-grey{background-color:#607d8b !important;}.breadcrumb-bg-blue-grey li{color:#fff !important;}.breadcrumb-bg-blue-grey li a{color:#fff;font-weight:bold;}.breadcrumb-bg-blue-grey li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-blue-grey li+li:before{color:#fff;}.breadcrumb-col-black li a{color:#000 !important;font-weight:bold;}.breadcrumb-bg-black{background-color:#000 !important;}.breadcrumb-bg-black li{color:#fff !important;}.breadcrumb-bg-black li a{color:#fff;font-weight:bold;}.breadcrumb-bg-black li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-black li+li:before{color:#fff;}.breadcrumb-col-white li a{color:#fff !important;font-weight:bold;}.breadcrumb-bg-white{background-color:#fff !important;}.breadcrumb-bg-white li{color:#fff !important;}.breadcrumb-bg-white li a{color:#fff;font-weight:bold;}.breadcrumb-bg-white li a .material-icons{padding-bottom:8px;}.breadcrumb-bg-white li+li:before{color:#fff;}.badge{-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;border-radius:2px;}.list-group-item{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;-moz-transition:.5s;-o-transition:.5s;-webkit-transition:.5s;transition:.5s;}.list-group .active{background-color:#2196f3;border-color:#2196f3;}.list-group .active:hover,.list-group .active:focus,.list-group .active:active{background-color:#2196f3;border-color:#2196f3;}.list-group .active .list-group-item-text{color:#dfe9f1;font-size:13px;}.list-group .active .list-group-item-text:hover,.list-group .active .list-group-item-text:active,.list-group .active .list-group-item-text:focus{color:#dfe9f1;}.list-group .list-group-item.active:hover .list-group-item-text,.list-group .list-group-item.active:focus .list-group-item-text,.list-group .list-group-item.active:active .list-group-item-text{color:#dfe9f1;}.list-group .list-group-item:first-child,.list-group .list-group-item:last-child{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.list-group .list-group-item .list-group-item-heading{font-weight:bold;font-size:17px;}.list-group .list-group-item-success{background-color:#2b982b;border:none;color:#fff;}.list-group .list-group-item-success:hover,.list-group .list-group-item-success:focus{background-color:#2b982b;color:#fff;opacity:.8;}.list-group .list-group-item-info{background-color:#00b0e4;border:none;color:#fff;}.list-group .list-group-item-info:hover,.list-group .list-group-item-info:focus{background-color:#00b0e4;color:#fff;opacity:.8;}.list-group .list-group-item-warning{background-color:#ff9600;border:none;color:#fff;}.list-group .list-group-item-warning:hover,.list-group .list-group-item-warning:focus{background-color:#ff9600;color:#fff;opacity:.8;}.list-group .list-group-item-danger{background-color:#fb483a;border:none;color:#fff;}.list-group .list-group-item-danger:hover,.list-group .list-group-item-danger:focus{background-color:#fb483a;color:#fff;opacity:.8;}.list-group .pl-red{stroke:#f44336;}.list-group .list-group-bg-red{background-color:#f44336;border:none;color:#fff;}.list-group .list-group-bg-red:hover,.list-group .list-group-bg-red:focus{background-color:#f44336;color:#fff;opacity:.8;}.list-group .pl-pink{stroke:#e91e63;}.list-group .list-group-bg-pink{background-color:#e91e63;border:none;color:#fff;}.list-group .list-group-bg-pink:hover,.list-group .list-group-bg-pink:focus{background-color:#e91e63;color:#fff;opacity:.8;}.list-group .pl-purple{stroke:#9c27b0;}.list-group .list-group-bg-purple{background-color:#9c27b0;border:none;color:#fff;}.list-group .list-group-bg-purple:hover,.list-group .list-group-bg-purple:focus{background-color:#9c27b0;color:#fff;opacity:.8;}.list-group .pl-deep-purple{stroke:#673ab7;}.list-group .list-group-bg-deep-purple{background-color:#673ab7;border:none;color:#fff;}.list-group .list-group-bg-deep-purple:hover,.list-group .list-group-bg-deep-purple:focus{background-color:#673ab7;color:#fff;opacity:.8;}.list-group .pl-indigo{stroke:#3f51b5;}.list-group .list-group-bg-indigo{background-color:#3f51b5;border:none;color:#fff;}.list-group .list-group-bg-indigo:hover,.list-group .list-group-bg-indigo:focus{background-color:#3f51b5;color:#fff;opacity:.8;}.list-group .pl-blue{stroke:#2196f3;}.list-group .list-group-bg-blue{background-color:#2196f3;border:none;color:#fff;}.list-group .list-group-bg-blue:hover,.list-group .list-group-bg-blue:focus{background-color:#2196f3;color:#fff;opacity:.8;}.list-group .pl-light-blue{stroke:#03a9f4;}.list-group .list-group-bg-light-blue{background-color:#03a9f4;border:none;color:#fff;}.list-group .list-group-bg-light-blue:hover,.list-group .list-group-bg-light-blue:focus{background-color:#03a9f4;color:#fff;opacity:.8;}.list-group .pl-cyan{stroke:#00bcd4;}.list-group .list-group-bg-cyan{background-color:#00bcd4;border:none;color:#fff;}.list-group .list-group-bg-cyan:hover,.list-group .list-group-bg-cyan:focus{background-color:#00bcd4;color:#fff;opacity:.8;}.list-group .pl-teal{stroke:#009688;}.list-group .list-group-bg-teal{background-color:#009688;border:none;color:#fff;}.list-group .list-group-bg-teal:hover,.list-group .list-group-bg-teal:focus{background-color:#009688;color:#fff;opacity:.8;}.list-group .pl-green{stroke:#4caf50;}.list-group .list-group-bg-green{background-color:#4caf50;border:none;color:#fff;}.list-group .list-group-bg-green:hover,.list-group .list-group-bg-green:focus{background-color:#4caf50;color:#fff;opacity:.8;}.list-group .pl-light-green{stroke:#8bc34a;}.list-group .list-group-bg-light-green{background-color:#8bc34a;border:none;color:#fff;}.list-group .list-group-bg-light-green:hover,.list-group .list-group-bg-light-green:focus{background-color:#8bc34a;color:#fff;opacity:.8;}.list-group .pl-lime{stroke:#cddc39;}.list-group .list-group-bg-lime{background-color:#cddc39;border:none;color:#fff;}.list-group .list-group-bg-lime:hover,.list-group .list-group-bg-lime:focus{background-color:#cddc39;color:#fff;opacity:.8;}.list-group .pl-yellow{stroke:#ffe821;}.list-group .list-group-bg-yellow{background-color:#ffe821;border:none;color:#fff;}.list-group .list-group-bg-yellow:hover,.list-group .list-group-bg-yellow:focus{background-color:#ffe821;color:#fff;opacity:.8;}.list-group .pl-amber{stroke:#ffc107;}.list-group .list-group-bg-amber{background-color:#ffc107;border:none;color:#fff;}.list-group .list-group-bg-amber:hover,.list-group .list-group-bg-amber:focus{background-color:#ffc107;color:#fff;opacity:.8;}.list-group .pl-orange{stroke:#ff9800;}.list-group .list-group-bg-orange{background-color:#ff9800;border:none;color:#fff;}.list-group .list-group-bg-orange:hover,.list-group .list-group-bg-orange:focus{background-color:#ff9800;color:#fff;opacity:.8;}.list-group .pl-deep-orange{stroke:#ff5722;}.list-group .list-group-bg-deep-orange{background-color:#ff5722;border:none;color:#fff;}.list-group .list-group-bg-deep-orange:hover,.list-group .list-group-bg-deep-orange:focus{background-color:#ff5722;color:#fff;opacity:.8;}.list-group .pl-brown{stroke:#795548;}.list-group .list-group-bg-brown{background-color:#795548;border:none;color:#fff;}.list-group .list-group-bg-brown:hover,.list-group .list-group-bg-brown:focus{background-color:#795548;color:#fff;opacity:.8;}.list-group .pl-grey{stroke:#9e9e9e;}.list-group .list-group-bg-grey{background-color:#9e9e9e;border:none;color:#fff;}.list-group .list-group-bg-grey:hover,.list-group .list-group-bg-grey:focus{background-color:#9e9e9e;color:#fff;opacity:.8;}.list-group .pl-blue-grey{stroke:#607d8b;}.list-group .list-group-bg-blue-grey{background-color:#607d8b;border:none;color:#fff;}.list-group .list-group-bg-blue-grey:hover,.list-group .list-group-bg-blue-grey:focus{background-color:#607d8b;color:#fff;opacity:.8;}.list-group .pl-black{stroke:#000;}.list-group .list-group-bg-black{background-color:#000;border:none;color:#fff;}.list-group .list-group-bg-black:hover,.list-group .list-group-bg-black:focus{background-color:#000;color:#fff;opacity:.8;}.list-group .pl-white{stroke:#fff;}.list-group .list-group-bg-white{background-color:#fff;border:none;color:#fff;}.list-group .list-group-bg-white:hover,.list-group .list-group-bg-white:focus{background-color:#fff;color:#fff;opacity:.8;}.pager li>a{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;border:none;background-color:transparent;color:#222;font-weight:bold;}.pager li a:focus,.pager li a:active{background-color:transparent;}.pagination .disabled a,.pagination .disabled a:hover,.pagination .disabled a:focus,.pagination .disabled a:active{color:#bbb;}.pagination li.active a{background-color:#2196f3;}.pagination li{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.pagination li a:focus,.pagination li a:active{background-color:transparent;color:#555;}.pagination>li>a{border:none;font-weight:bold;color:#555;}.pagination>li:first-child>a,.pagination>li:last-child>a{width:auto;height:32px;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.pagination>li:first-child>a .material-icons,.pagination>li:last-child>a .material-icons{position:relative;bottom:2px;}.pagination-sm>li:first-child>a,.pagination-sm>li:last-child>a{width:28px;height:28px;}.pagination-sm>li:first-child>a .material-icons,.pagination-sm>li:last-child>a .material-icons{position:relative;top:-1px;left:-6px;font-size:20px;}.pagination-lg>li:first-child>a,.pagination-lg>li:last-child>a{width:44px;height:44px;}.pagination-lg>li:first-child>a .material-icons,.pagination-lg>li:last-child>a .material-icons{font-size:30px;position:relative;top:-3px;left:-10px;}.media{margin-bottom:25px;}.media .media-body{color:#777;font-size:13px;}.media .media-body .media-heading{font-size:16px;font-weight:bold;color:#333;}.wizard,.tabcontrol{display:block;width:100%;overflow:hidden;}.wizard a,.tabcontrol a{outline:0;}.wizard ul,.tabcontrol ul{list-style:none !important;padding:0;margin:0;}.wizard ul>li,.tabcontrol ul>li{display:block;padding:0;}.wizard>.steps .current-info,.tabcontrol>.steps .current-info,.wizard>.content>.title,.tabcontrol>.content>.title{position:absolute;left:-999em;}.wizard>.steps{position:relative;display:block;width:100%;}.wizard.vertical>.steps{float:left;width:30%;}.wizard.vertical>.steps>ul>li{float:none;width:100%;}.wizard.vertical>.content{float:left;margin:0 0 .5em 0;width:70%;}.wizard.vertical>.actions{float:right;width:100%;}.wizard.vertical>.actions>ul>li{margin:0 0 0 1em;}.wizard>.steps .number{font-size:1.429em;}.wizard>.steps>ul>li{width:25%;float:left;}.wizard>.actions>ul>li{float:left;}.wizard>.steps a{display:block;width:auto;margin:0 .5em .5em;padding:1em 1em;text-decoration:none;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;}.wizard>.steps a:hover,.wizard>.steps a:active{display:block;width:auto;margin:0 .5em .5em;padding:1em 1em;text-decoration:none;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;}.wizard>.steps .disabled a{background:#eee;color:#aaa;cursor:default;}.wizard>.steps .disabled a:hover,.wizard>.steps .disabled a:active{background:#eee;color:#aaa;cursor:default;}.wizard>.steps .current a{background:#2184be;color:#fff;cursor:default;}.wizard>.steps .current a:hover,.wizard>.steps .current a:active{background:#2184be;color:#fff;cursor:default;}.wizard>.steps .done a{background:#9dc8e2;color:#fff;}.wizard>.steps .done a:hover,.wizard>.steps .done a:active{background:#9dc8e2;color:#fff;}.wizard>.steps .error a{background:#ff3111;color:#fff;}.wizard>.steps .error a:hover,.wizard>.steps .error a:active{background:#ff3111;color:#fff;}.wizard>.content{border:1px solid #ddd;display:block;margin:.5em;min-height:35em;overflow:hidden;position:relative;width:auto;}.wizard>.actions{position:relative;display:block;text-align:right;width:100%;}.wizard>.actions>ul{display:inline-block;text-align:right;}.wizard>.actions>ul>li{margin:0 .5em;}.wizard>.actions a{background:#009688;color:#fff;display:block;padding:.5em 1em;text-decoration:none;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.wizard>.actions a:hover,.wizard>.actions a:active{background:#009688;color:#fff;display:block;padding:.5em 1em;text-decoration:none;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.wizard>.actions .disabled a{background:#eee;color:#aaa;}.wizard>.actions .disabled a:hover,.wizard>.actions .disabled a:active{background:#eee;color:#aaa;}.tabcontrol>.steps{position:relative;display:block;width:100%;}.tabcontrol>.steps>ul{position:relative;margin:6px 0 0 0;top:1px;z-index:1;}.tabcontrol>.steps>ul>li{float:left;margin:5px 2px 0 0;padding:1px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px;}.tabcontrol>.steps>ul>li:hover{background:#edecec;border:1px solid #bbb;padding:0;}.tabcontrol>.steps>ul>li.current{background:#fff;border:1px solid #bbb;border-bottom:0 none;padding:0 0 1px 0;margin-top:0;}.tabcontrol>.steps>ul>li.current>a{padding:15px 30px 10px 30px;}.tabcontrol>.steps>ul>li>a{color:#5f5f5f;display:inline-block;border:0 none;margin:0;padding:10px 30px;text-decoration:none;}.tabcontrol>.steps>ul>li>a:hover{text-decoration:none;}.tabcontrol>.content{position:relative;display:inline-block;width:100%;height:35em;overflow:hidden;border-top:1px solid #bbb;padding-top:20px;}.tabcontrol>.content>.body{float:left;position:absolute;width:95%;height:95%;padding:2.5%;}.tabcontrol>.content>.body ul{list-style:disc !important;}.tabcontrol>.content>.body ul>li{display:list-item;}.wizard .content{min-height:245px;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;overflow-y:auto;}.wizard .content .body{padding:15px;}.wizard .steps a{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;-moz-transition:.5s;-o-transition:.5s;-webkit-transition:.5s;transition:.5s;}.wizard .steps a:active,.wizard .steps a:focus,.wizard .steps a:hover{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.wizard .steps .done a{background-color:rgba(0,150,136,.6);}.wizard .steps .done a:hover,.wizard .steps .done a:active,.wizard .steps .done a:focus{background-color:rgba(0,150,136,.5);}.wizard .steps .error a{background-color:#f44336 !important;}.wizard .steps .current a{background-color:#009688;}.wizard .steps .current a:active,.wizard .steps .current a:focus,.wizard .steps .current a:hover{background-color:#009688;}.waves-effect.waves-red .waves-ripple{background:rgba(244,67,54,.5);}.waves-effect.waves-pink .waves-ripple{background:rgba(233,30,99,.5);}.waves-effect.waves-purple .waves-ripple{background:rgba(156,39,176,.5);}.waves-effect.waves-deep-purple .waves-ripple{background:rgba(103,58,183,.5);}.waves-effect.waves-indigo .waves-ripple{background:rgba(63,81,181,.5);}.waves-effect.waves-blue .waves-ripple{background:rgba(33,150,243,.5);}.waves-effect.waves-light-blue .waves-ripple{background:rgba(3,169,244,.5);}.waves-effect.waves-cyan .waves-ripple{background:rgba(0,188,212,.5);}.waves-effect.waves-teal .waves-ripple{background:rgba(0,150,136,.5);}.waves-effect.waves-green .waves-ripple{background:rgba(76,175,80,.5);}.waves-effect.waves-light-green .waves-ripple{background:rgba(139,195,74,.5);}.waves-effect.waves-lime .waves-ripple{background:rgba(205,220,57,.5);}.waves-effect.waves-yellow .waves-ripple{background:rgba(255,232,33,.5);}.waves-effect.waves-amber .waves-ripple{background:rgba(255,193,7,.5);}.waves-effect.waves-orange .waves-ripple{background:rgba(255,152,0,.5);}.waves-effect.waves-deep-orange .waves-ripple{background:rgba(255,87,34,.5);}.waves-effect.waves-brown .waves-ripple{background:rgba(121,85,72,.5);}.waves-effect.waves-grey .waves-ripple{background:rgba(158,158,158,.5);}.waves-effect.waves-blue-grey .waves-ripple{background:rgba(96,125,139,.5);}.waves-effect.waves-black .waves-ripple{background:rgba(0,0,0,.5);}.waves-effect.waves-white .waves-ripple{background:rgba(255,255,255,.5);}.page-loader-wrapper{z-index:99999999;position:fixed;top:0;left:0;bottom:0;right:0;width:100%;height:100%;background:#eee;overflow:hidden;text-align:center;}.page-loader-wrapper p{font-size:13px;margin-top:10px;font-weight:bold;color:#444;}.page-loader-wrapper .loader{position:relative;top:calc(50% - 30px);}.md-preloader .pl-red{stroke:#f44336;}.md-preloader .pl-pink{stroke:#e91e63;}.md-preloader .pl-purple{stroke:#9c27b0;}.md-preloader .pl-deep-purple{stroke:#673ab7;}.md-preloader .pl-indigo{stroke:#3f51b5;}.md-preloader .pl-blue{stroke:#2196f3;}.md-preloader .pl-light-blue{stroke:#03a9f4;}.md-preloader .pl-cyan{stroke:#00bcd4;}.md-preloader .pl-teal{stroke:#009688;}.md-preloader .pl-green{stroke:#4caf50;}.md-preloader .pl-light-green{stroke:#8bc34a;}.md-preloader .pl-lime{stroke:#cddc39;}.md-preloader .pl-yellow{stroke:#ffe821;}.md-preloader .pl-amber{stroke:#ffc107;}.md-preloader .pl-orange{stroke:#ff9800;}.md-preloader .pl-deep-orange{stroke:#ff5722;}.md-preloader .pl-brown{stroke:#795548;}.md-preloader .pl-grey{stroke:#9e9e9e;}.md-preloader .pl-blue-grey{stroke:#607d8b;}.md-preloader .pl-black{stroke:#000;}.md-preloader .pl-white{stroke:#fff;}.preloader{display:inline-block;position:relative;width:50px;height:50px;-webkit-animation:container-rotate 1568ms linear infinite;-moz-animation:container-rotate 1568ms linear infinite;-o-animation:container-rotate 1568ms linear infinite;animation:container-rotate 1568ms linear infinite;}.preloader.pl-size-xl{width:75px;height:75px;}.preloader.pl-size-l{width:60px;height:60px;}.preloader.pl-size-md{width:50px;height:50px;}.preloader.pl-size-sm{width:40px;height:40px;}.preloader.pl-size-xs{width:25px;height:25px;}.spinner-layer{position:absolute;width:100%;height:100%;border-color:#f44336;-ms-opacity:1;opacity:1;-webkit-animation:fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both;-moz-animation:fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both;-o-animation:fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both;animation:fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both;}.spinner-layer.pl-red{border-color:#f44336;}.spinner-layer.pl-pink{border-color:#e91e63;}.spinner-layer.pl-purple{border-color:#9c27b0;}.spinner-layer.pl-deep-purple{border-color:#673ab7;}.spinner-layer.pl-indigo{border-color:#3f51b5;}.spinner-layer.pl-blue{border-color:#2196f3;}.spinner-layer.pl-light-blue{border-color:#03a9f4;}.spinner-layer.pl-cyan{border-color:#00bcd4;}.spinner-layer.pl-teal{border-color:#009688;}.spinner-layer.pl-green{border-color:#4caf50;}.spinner-layer.pl-light-green{border-color:#8bc34a;}.spinner-layer.pl-lime{border-color:#cddc39;}.spinner-layer.pl-yellow{border-color:#ffe821;}.spinner-layer.pl-amber{border-color:#ffc107;}.spinner-layer.pl-orange{border-color:#ff9800;}.spinner-layer.pl-deep-orange{border-color:#ff5722;}.spinner-layer.pl-brown{border-color:#795548;}.spinner-layer.pl-grey{border-color:#9e9e9e;}.spinner-layer.pl-blue-grey{border-color:#607d8b;}.spinner-layer.pl-black{border-color:#000;}.spinner-layer.pl-white{border-color:#fff;}.right{float:right !important;}.gap-patch{position:absolute;top:0;left:45%;width:10%;height:100%;overflow:hidden;border-color:inherit;}.gap-patch.circle{width:1000%;left:-450%;}.circle-clipper{display:inline-block;position:relative;width:50%;height:100%;overflow:hidden;border-color:inherit;}.circle-clipper .circle{width:200%;height:100%;border-width:3px;border-style:solid;border-color:inherit;border-bottom-color:transparent !important;-ms-border-radius:50%;border-radius:50%;-webkit-animation:none;animation:none;position:absolute;top:0;right:0;bottom:0;}.circle-clipper.left .circle{left:0;border-right-color:transparent !important;-webkit-transform:rotate(129deg);-moz-transform:rotate(129deg);-ms-transform:rotate(129deg);-o-transform:rotate(129deg);transform:rotate(129deg);-webkit-animation:left-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;-moz-animation:left-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;-o-animation:left-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;animation:left-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;}.circle-clipper.right .circle{left:-100%;border-left-color:transparent !important;-webkit-transform:rotate(-129deg);-moz-transform:rotate(-129deg);-ms-transform:rotate(-129deg);-o-transform:rotate(-129deg);transform:rotate(-129deg);-webkit-animation:right-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;-moz-animation:right-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;-o-animation:right-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;animation:right-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;}@-webkit-keyframes container-rotate{to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg);}}@keyframes container-rotate{to{-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);-o-transform:rotate(360deg);-webkit-transform:rotate(360deg);transform:rotate(360deg);}}@-webkit-keyframes fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg);transform:rotate(135deg);}25%{-webkit-transform:rotate(270deg);transform:rotate(270deg);}37.5%{-webkit-transform:rotate(405deg);transform:rotate(405deg);}50%{-webkit-transform:rotate(540deg);transform:rotate(540deg);}62.5%{-webkit-transform:rotate(675deg);transform:rotate(675deg);}75%{-webkit-transform:rotate(810deg);transform:rotate(810deg);}87.5%{-webkit-transform:rotate(945deg);transform:rotate(945deg);}to{-webkit-transform:rotate(1080deg);transform:rotate(1080deg);}}@keyframes fill-unfill-rotate{12.5%{transform:rotate(135deg);}25%{transform:rotate(270deg);}37.5%{transform:rotate(405deg);}50%{transform:rotate(540deg);}62.5%{transform:rotate(675deg);}75%{transform:rotate(810deg);}87.5%{transform:rotate(945deg);}to{transform:rotate(1080deg);}}@-webkit-keyframes left-spin{from{-webkit-transform:rotate(130deg);-moz-transform:rotate(130deg);-ms-transform:rotate(130deg);-o-transform:rotate(130deg);transform:rotate(130deg);}50%{-webkit-transform:rotate(-5deg);-moz-transform:rotate(-5deg);-ms-transform:rotate(-5deg);-o-transform:rotate(-5deg);transform:rotate(-5deg);}to{-webkit-transform:rotate(130deg);-moz-transform:rotate(130deg);-ms-transform:rotate(130deg);-o-transform:rotate(130deg);transform:rotate(130deg);}}@keyframes left-spin{from{-moz-transform:rotate(130deg);-ms-transform:rotate(130deg);-o-transform:rotate(130deg);-webkit-transform:rotate(130deg);transform:rotate(130deg);}50%{-moz-transform:rotate(-5deg);-ms-transform:rotate(-5deg);-o-transform:rotate(-5deg);-webkit-transform:rotate(-5deg);transform:rotate(-5deg);}to{-moz-transform:rotate(130deg);-ms-transform:rotate(130deg);-o-transform:rotate(130deg);-webkit-transform:rotate(130deg);transform:rotate(130deg);}}@-webkit-keyframes right-spin{from{-webkit-transform:rotate(-130deg);-moz-transform:rotate(-130deg);-ms-transform:rotate(-130deg);-o-transform:rotate(-130deg);transform:rotate(-130deg);}50%{-webkit-transform:rotate(5deg);-moz-transform:rotate(5deg);-ms-transform:rotate(5deg);-o-transform:rotate(5deg);transform:rotate(5deg);}to{-webkit-transform:rotate(-130deg);-moz-transform:rotate(-130deg);-ms-transform:rotate(-130deg);-o-transform:rotate(-130deg);transform:rotate(-130deg);}}@-moz-keyframes right-spin{from{-moz-transform:rotate(-130deg);-ms-transform:rotate(-130deg);-o-transform:rotate(-130deg);-webkit-transform:rotate(-130deg);transform:rotate(-130deg);}50%{-moz-transform:rotate(5deg);-ms-transform:rotate(5deg);-o-transform:rotate(5deg);-webkit-transform:rotate(5deg);transform:rotate(5deg);}to{-moz-transform:rotate(-130deg);-ms-transform:rotate(-130deg);-o-transform:rotate(-130deg);-webkit-transform:rotate(-130deg);transform:rotate(-130deg);}}@keyframes right-spin{from{-moz-transform:rotate(-130deg);-ms-transform:rotate(-130deg);-o-transform:rotate(-130deg);-webkit-transform:rotate(-130deg);transform:rotate(-130deg);}50%{-moz-transform:rotate(5deg);-ms-transform:rotate(5deg);-o-transform:rotate(5deg);-webkit-transform:rotate(5deg);transform:rotate(5deg);}to{-moz-transform:rotate(-130deg);-ms-transform:rotate(-130deg);-o-transform:rotate(-130deg);-webkit-transform:rotate(-130deg);transform:rotate(-130deg);}}.navbar{font-family:"Roboto",sans-serif;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;-webkit-box-shadow:0 1px 5px rgba(0,0,0,.3);-moz-box-shadow:0 1px 5px rgba(0,0,0,.3);-ms-box-shadow:0 1px 5px rgba(0,0,0,.3);box-shadow:0 1px 5px rgba(0,0,0,.3);border:none;position:fixed;top:0;left:0;z-index:12;width:100%;}.navbar .navbar-brand{white-space:nowrap;-ms-text-overflow:ellipsis;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;}.navbar .navbar-custom-right-menu{float:right;}.navbar .navbar-toggle{text-decoration:none;color:#fff;width:20px;height:20px;margin-top:-4px;margin-right:17px;}.navbar .navbar-toggle:before{content:'';font-family:'Material Icons';font-size:26px;}.navbar .navbar-collapse.in{overflow:visible;}.ls-closed .sidebar{margin-left:-300px;}.ls-closed section.content{margin-left:15px;}.ls-closed .bars:after,.ls-closed .bars:before{font-family:'Material Icons';font-size:24px;position:absolute;top:18px;left:20px;margin-right:10px;-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);-webkit-transform:scale(0);transform:scale(0);-moz-transition:all .3s;-o-transition:all .3s;-webkit-transition:all .3s;transition:all .3s;}.ls-closed .bars:before{content:'';-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);}.ls-closed .bars:after{content:'';-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);-webkit-transform:scale(0);transform:scale(0);}.ls-closed .navbar-brand{margin-left:30px;}.overlay-open .bars:before{-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);-webkit-transform:scale(0);transform:scale(0);}.overlay-open .bars:after{-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);}.navbar-header{padding:10px 7px;}.navbar-header .bars{float:left;text-decoration:none;}.navbar-nav>li>a{padding:7px 7px 2px 7px;margin-top:17px;margin-left:5px;}.navbar-nav .dropdown-menu{margin-top:-40px !important;}.label-count{position:absolute;top:2px;right:6px;font-size:10px;line-height:15px;background-color:#000;padding:0 4px;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;}.col-red .navbar .navbar-brand,.col-red .navbar .navbar-brand:hover,.col-red .navbar .navbar-brand:active,.col-red .navbar .navbar-brand:focus{color:#fff;}.col-red .navbar .nav>li>a:hover,.col-red .navbar .nav>li>a:focus,.col-red .navbar .nav .open>a,.col-red .navbar .nav .open>a:hover,.col-red .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-red .navbar .nav>li>a{color:#fff;}.col-red .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-red .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-pink .navbar .navbar-brand,.col-pink .navbar .navbar-brand:hover,.col-pink .navbar .navbar-brand:active,.col-pink .navbar .navbar-brand:focus{color:#fff;}.col-pink .navbar .nav>li>a:hover,.col-pink .navbar .nav>li>a:focus,.col-pink .navbar .nav .open>a,.col-pink .navbar .nav .open>a:hover,.col-pink .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-pink .navbar .nav>li>a{color:#fff;}.col-pink .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-pink .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-purple .navbar .navbar-brand,.col-purple .navbar .navbar-brand:hover,.col-purple .navbar .navbar-brand:active,.col-purple .navbar .navbar-brand:focus{color:#fff;}.col-purple .navbar .nav>li>a:hover,.col-purple .navbar .nav>li>a:focus,.col-purple .navbar .nav .open>a,.col-purple .navbar .nav .open>a:hover,.col-purple .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-purple .navbar .nav>li>a{color:#fff;}.col-purple .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-purple .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-deep-purple .navbar .navbar-brand,.col-deep-purple .navbar .navbar-brand:hover,.col-deep-purple .navbar .navbar-brand:active,.col-deep-purple .navbar .navbar-brand:focus{color:#fff;}.col-deep-purple .navbar .nav>li>a:hover,.col-deep-purple .navbar .nav>li>a:focus,.col-deep-purple .navbar .nav .open>a,.col-deep-purple .navbar .nav .open>a:hover,.col-deep-purple .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-deep-purple .navbar .nav>li>a{color:#fff;}.col-deep-purple .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-deep-purple .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-indigo .navbar .navbar-brand,.col-indigo .navbar .navbar-brand:hover,.col-indigo .navbar .navbar-brand:active,.col-indigo .navbar .navbar-brand:focus{color:#fff;}.col-indigo .navbar .nav>li>a:hover,.col-indigo .navbar .nav>li>a:focus,.col-indigo .navbar .nav .open>a,.col-indigo .navbar .nav .open>a:hover,.col-indigo .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-indigo .navbar .nav>li>a{color:#fff;}.col-indigo .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-indigo .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-blue .navbar .navbar-brand,.col-blue .navbar .navbar-brand:hover,.col-blue .navbar .navbar-brand:active,.col-blue .navbar .navbar-brand:focus{color:#fff;}.col-blue .navbar .nav>li>a:hover,.col-blue .navbar .nav>li>a:focus,.col-blue .navbar .nav .open>a,.col-blue .navbar .nav .open>a:hover,.col-blue .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-blue .navbar .nav>li>a{color:#fff;}.col-blue .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-blue .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-light-blue .navbar .navbar-brand,.col-light-blue .navbar .navbar-brand:hover,.col-light-blue .navbar .navbar-brand:active,.col-light-blue .navbar .navbar-brand:focus{color:#fff;}.col-light-blue .navbar .nav>li>a:hover,.col-light-blue .navbar .nav>li>a:focus,.col-light-blue .navbar .nav .open>a,.col-light-blue .navbar .nav .open>a:hover,.col-light-blue .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-light-blue .navbar .nav>li>a{color:#fff;}.col-light-blue .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-light-blue .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-cyan .navbar .navbar-brand,.col-cyan .navbar .navbar-brand:hover,.col-cyan .navbar .navbar-brand:active,.col-cyan .navbar .navbar-brand:focus{color:#fff;}.col-cyan .navbar .nav>li>a:hover,.col-cyan .navbar .nav>li>a:focus,.col-cyan .navbar .nav .open>a,.col-cyan .navbar .nav .open>a:hover,.col-cyan .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-cyan .navbar .nav>li>a{color:#fff;}.col-cyan .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-cyan .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-teal .navbar .navbar-brand,.col-teal .navbar .navbar-brand:hover,.col-teal .navbar .navbar-brand:active,.col-teal .navbar .navbar-brand:focus{color:#fff;}.col-teal .navbar .nav>li>a:hover,.col-teal .navbar .nav>li>a:focus,.col-teal .navbar .nav .open>a,.col-teal .navbar .nav .open>a:hover,.col-teal .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-teal .navbar .nav>li>a{color:#fff;}.col-teal .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-teal .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-green .navbar .navbar-brand,.col-green .navbar .navbar-brand:hover,.col-green .navbar .navbar-brand:active,.col-green .navbar .navbar-brand:focus{color:#fff;}.col-green .navbar .nav>li>a:hover,.col-green .navbar .nav>li>a:focus,.col-green .navbar .nav .open>a,.col-green .navbar .nav .open>a:hover,.col-green .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-green .navbar .nav>li>a{color:#fff;}.col-green .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-green .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-light-green .navbar .navbar-brand,.col-light-green .navbar .navbar-brand:hover,.col-light-green .navbar .navbar-brand:active,.col-light-green .navbar .navbar-brand:focus{color:#fff;}.col-light-green .navbar .nav>li>a:hover,.col-light-green .navbar .nav>li>a:focus,.col-light-green .navbar .nav .open>a,.col-light-green .navbar .nav .open>a:hover,.col-light-green .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-light-green .navbar .nav>li>a{color:#fff;}.col-light-green .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-light-green .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-lime .navbar .navbar-brand,.col-lime .navbar .navbar-brand:hover,.col-lime .navbar .navbar-brand:active,.col-lime .navbar .navbar-brand:focus{color:#fff;}.col-lime .navbar .nav>li>a:hover,.col-lime .navbar .nav>li>a:focus,.col-lime .navbar .nav .open>a,.col-lime .navbar .nav .open>a:hover,.col-lime .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-lime .navbar .nav>li>a{color:#fff;}.col-lime .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-lime .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-yellow .navbar .navbar-brand,.col-yellow .navbar .navbar-brand:hover,.col-yellow .navbar .navbar-brand:active,.col-yellow .navbar .navbar-brand:focus{color:#fff;}.col-yellow .navbar .nav>li>a:hover,.col-yellow .navbar .nav>li>a:focus,.col-yellow .navbar .nav .open>a,.col-yellow .navbar .nav .open>a:hover,.col-yellow .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-yellow .navbar .nav>li>a{color:#fff;}.col-yellow .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-yellow .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-amber .navbar .navbar-brand,.col-amber .navbar .navbar-brand:hover,.col-amber .navbar .navbar-brand:active,.col-amber .navbar .navbar-brand:focus{color:#fff;}.col-amber .navbar .nav>li>a:hover,.col-amber .navbar .nav>li>a:focus,.col-amber .navbar .nav .open>a,.col-amber .navbar .nav .open>a:hover,.col-amber .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-amber .navbar .nav>li>a{color:#fff;}.col-amber .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-amber .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-orange .navbar .navbar-brand,.col-orange .navbar .navbar-brand:hover,.col-orange .navbar .navbar-brand:active,.col-orange .navbar .navbar-brand:focus{color:#fff;}.col-orange .navbar .nav>li>a:hover,.col-orange .navbar .nav>li>a:focus,.col-orange .navbar .nav .open>a,.col-orange .navbar .nav .open>a:hover,.col-orange .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-orange .navbar .nav>li>a{color:#fff;}.col-orange .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-orange .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-deep-orange .navbar .navbar-brand,.col-deep-orange .navbar .navbar-brand:hover,.col-deep-orange .navbar .navbar-brand:active,.col-deep-orange .navbar .navbar-brand:focus{color:#fff;}.col-deep-orange .navbar .nav>li>a:hover,.col-deep-orange .navbar .nav>li>a:focus,.col-deep-orange .navbar .nav .open>a,.col-deep-orange .navbar .nav .open>a:hover,.col-deep-orange .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-deep-orange .navbar .nav>li>a{color:#fff;}.col-deep-orange .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-deep-orange .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-brown .navbar .navbar-brand,.col-brown .navbar .navbar-brand:hover,.col-brown .navbar .navbar-brand:active,.col-brown .navbar .navbar-brand:focus{color:#fff;}.col-brown .navbar .nav>li>a:hover,.col-brown .navbar .nav>li>a:focus,.col-brown .navbar .nav .open>a,.col-brown .navbar .nav .open>a:hover,.col-brown .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-brown .navbar .nav>li>a{color:#fff;}.col-brown .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-brown .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-grey .navbar .navbar-brand,.col-grey .navbar .navbar-brand:hover,.col-grey .navbar .navbar-brand:active,.col-grey .navbar .navbar-brand:focus{color:#fff;}.col-grey .navbar .nav>li>a:hover,.col-grey .navbar .nav>li>a:focus,.col-grey .navbar .nav .open>a,.col-grey .navbar .nav .open>a:hover,.col-grey .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-grey .navbar .nav>li>a{color:#fff;}.col-grey .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-grey .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-blue-grey .navbar .navbar-brand,.col-blue-grey .navbar .navbar-brand:hover,.col-blue-grey .navbar .navbar-brand:active,.col-blue-grey .navbar .navbar-brand:focus{color:#fff;}.col-blue-grey .navbar .nav>li>a:hover,.col-blue-grey .navbar .nav>li>a:focus,.col-blue-grey .navbar .nav .open>a,.col-blue-grey .navbar .nav .open>a:hover,.col-blue-grey .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-blue-grey .navbar .nav>li>a{color:#fff;}.col-blue-grey .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-blue-grey .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-black .navbar .navbar-brand,.col-black .navbar .navbar-brand:hover,.col-black .navbar .navbar-brand:active,.col-black .navbar .navbar-brand:focus{color:#fff;}.col-black .navbar .nav>li>a:hover,.col-black .navbar .nav>li>a:focus,.col-black .navbar .nav .open>a,.col-black .navbar .nav .open>a:hover,.col-black .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-black .navbar .nav>li>a{color:#fff;}.col-black .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-black .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.col-white .navbar .navbar-brand,.col-white .navbar .navbar-brand:hover,.col-white .navbar .navbar-brand:active,.col-white .navbar .navbar-brand:focus{color:#fff;}.col-white .navbar .nav>li>a:hover,.col-white .navbar .nav>li>a:focus,.col-white .navbar .nav .open>a,.col-white .navbar .nav .open>a:hover,.col-white .navbar .nav .open>a:focus{background-color:rgba(0,0,0,.05);}.col-white .navbar .nav>li>a{color:#fff;}.col-white .navbar .bars{float:left;padding:10px 20px;font-size:22px;color:#fff;margin-right:10px;margin-left:-10px;margin-top:4px;}.col-white .navbar .bars:hover{background-color:rgba(0,0,0,.08);}.dropdown-menu{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;margin-top:-35px !important;box-shadow:0 2px 10px rgba(0,0,0,.2);border:none;}.dropdown-menu .divider{margin:5px 0;}.dropdown-menu .header{font-size:13px;font-weight:bold;min-width:270px;border-bottom:1px solid #eee;text-align:center;padding:4px 0 6px 0;}.dropdown-menu ul.menu{padding-left:0;}.dropdown-menu ul.menu.tasks h4{color:#333;font-size:13px;margin:0 0 8px 0;}.dropdown-menu ul.menu.tasks h4 small{float:right;margin-top:6px;}.dropdown-menu ul.menu.tasks .progress{height:7px;margin-bottom:7px;}.dropdown-menu ul.menu .icon-circle{width:36px;height:36px;-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;color:#fff;text-align:center;display:inline-block;}.dropdown-menu ul.menu .icon-circle i{font-size:18px;line-height:36px;}.dropdown-menu ul.menu li{border-bottom:1px solid #eee;}.dropdown-menu ul.menu li:last-child{border-bottom:none;}.dropdown-menu ul.menu li a{padding:7px 11px;text-decoration:none;-moz-transition:.5s;-o-transition:.5s;-webkit-transition:.5s;transition:.5s;}.dropdown-menu ul.menu li a:hover{background-color:#e9e9e9;}.dropdown-menu ul.menu .menu-info{display:inline-block;position:relative;top:3px;left:5px;}.dropdown-menu ul.menu .menu-info h4{margin:0;font-size:13px;color:#333;}.dropdown-menu ul.menu .menu-info p{margin:0;font-size:11px;color:#aaa;}.dropdown-menu ul.menu .menu-info p .material-icons{font-size:13px;color:#aaa;position:relative;top:2px;}.dropdown-menu .footer a{text-align:center;border-top:1px solid #eee;padding:5px 0 5px 0;font-size:12px;margin-bottom:-5px;}.dropdown-menu .footer a:hover{background-color:transparent;}.dropdown-menu>li>a{padding:7px 18px;color:#666;-moz-transition:all .5s;-o-transition:all .5s;-webkit-transition:all .5s;transition:all .5s;font-size:14px;line-height:25px;}.dropdown-menu>li>a:hover{background-color:rgba(0,0,0,.075);}.dropdown-menu>li>a i.material-icons{float:left;margin-right:7px;margin-top:2px;font-size:20px;}.dropdown-animated{-webkit-animation-duration:.3s !important;-moz-animation-duration:.3s !important;-o-animation-duration:.3s !important;animation-duration:.3s !important;}.overlay{position:fixed;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:none;z-index:10;}.overlay-open .sidebar{margin-left:0;z-index:99999999;}.sidebar{-moz-transition:all .5s;-o-transition:all .5s;-webkit-transition:all .5s;transition:all .5s;font-family:"Roboto",sans-serif;background:#fdfdfd;width:300px;overflow:hidden;display:inline-block;height:calc(100vh - 70px);position:fixed;top:70px;left:0;-webkit-box-shadow:2px 2px 5px rgba(0,0,0,.1);-moz-box-shadow:2px 2px 5px rgba(0,0,0,.1);-ms-box-shadow:2px 2px 5px rgba(0,0,0,.1);box-shadow:2px 2px 5px rgba(0,0,0,.1);z-index:11 !important;}.sidebar .legal{position:absolute;bottom:0;width:100%;border-top:1px solid #eee;padding:15px;overflow:hidden;}.sidebar .legal .copyright{font-size:13px;white-space:nowrap;-ms-text-overflow:ellipsis;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;}.sidebar .legal .copyright a{font-weight:bold;text-decoration:none;}.sidebar .legal .version{white-space:nowrap;-ms-text-overflow:ellipsis;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;margin-top:5px;font-size:13px;}.sidebar .user-info{padding:13px 15px 12px 15px;white-space:nowrap;position:relative;border-bottom:1px solid #e9e9e9;background:url("../images/user-img-background.jpg") no-repeat no-repeat;height:135px;}.sidebar .user-info .image{margin-right:12px;display:inline-block;}.sidebar .user-info .image img{-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;border-radius:50%;vertical-align:bottom !important;}.sidebar .user-info .info-container{cursor:default;display:block;position:relative;top:25px;}.sidebar .user-info .info-container .name{white-space:nowrap;-ms-text-overflow:ellipsis;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;font-size:14px;max-width:200px;color:#fff;}.sidebar .user-info .info-container .email{white-space:nowrap;-ms-text-overflow:ellipsis;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;font-size:12px;max-width:200px;color:#fff;}.sidebar .user-info .info-container .user-helper-dropdown{position:absolute;right:-3px;bottom:-12px;-webkit-box-shadow:none;-moz-box-shadow:none;-ms-box-shadow:none;box-shadow:none;cursor:pointer;color:#fff;}.sidebar .menu{position:relative;overflow-y:auto;height:90vh;}.sidebar .menu .list{list-style:none;padding-left:0;}.sidebar .menu .list li.active>:first-child span{font-weight:bold;}.sidebar .menu .list .header{background:#eee;font-size:12px;font-weight:600;padding:8px 16px;}.sidebar .menu .list i.material-icons{margin-top:4px;}.sidebar .menu .list .menu-toggle:after,.sidebar .menu .list .menu-toggle:before{position:absolute;top:calc(50% - 14px);right:17px;font-size:19px;-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);-webkit-transform:scale(0);transform:scale(0);-moz-transition:all .3s;-o-transition:all .3s;-webkit-transition:all .3s;transition:all .3s;}.sidebar .menu .list .menu-toggle:before{content:'+';-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);}.sidebar .menu .list .menu-toggle:after{content:'–';-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);-webkit-transform:scale(0);transform:scale(0);}.sidebar .menu .list .menu-toggle.toggled:before{-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);-webkit-transform:scale(0);transform:scale(0);}.sidebar .menu .list .menu-toggle.toggled:after{-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);-webkit-transform:scale(1);transform:scale(1);}.sidebar .menu .list a{color:#747474;position:relative;display:inline-flex;vertical-align:middle;width:100%;padding:10px 13px;}.sidebar .menu .list a:hover,.sidebar .menu .list a:active,.sidebar .menu .list a:focus{text-decoration:none !important;}.sidebar .menu .list a small{position:absolute;top:calc(50% - 7.5px);right:15px;}.sidebar .menu .list a span{margin:7px 0 7px 12px;color:#333;font-weight:bold;font-size:14px;overflow:hidden;}.sidebar .menu .list .ml-menu{list-style:none;display:none;padding-left:0;}.sidebar .menu .list .ml-menu span{font-weight:normal;font-size:14px;margin:3px 0 1px 6px;}.sidebar .menu .list .ml-menu li a{padding-left:55px;padding-top:7px;padding-bottom:7px;}.sidebar .menu .list .ml-menu li.active a.toggled:not(.menu-toggle){font-weight:600;margin-left:5px;}.sidebar .menu .list .ml-menu li.active a.toggled:not(.menu-toggle):before{content:'';font-family:'Material Icons';position:relative;font-size:21px;height:20px;top:-5px;right:0;}.sidebar .menu .list .ml-menu li .ml-menu li a{padding-left:80px;}.sidebar .menu .list .ml-menu li .ml-menu .ml-menu li a{padding-left:95px;}.right-sidebar{width:280px;height:calc(100vh - 70px);position:fixed;right:-300px;top:70px;background:#fdfdfd;z-index:11 !important;-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,.1);-moz-box-shadow:-2px 2px 5px rgba(0,0,0,.1);-ms-box-shadow:-2px 2px 5px rgba(0,0,0,.1);box-shadow:-2px 2px 5px rgba(0,0,0,.1);overflow:hidden;-moz-transition:.5s;-o-transition:.5s;-webkit-transition:.5s;transition:.5s;}.right-sidebar.open{right:0;}.right-sidebar .nav-tabs{font-weight:600;font-size:13px;width:100%;margin-left:2px;}.right-sidebar .nav-tabs li{text-align:center;}.right-sidebar .nav-tabs li>a{margin-right:0;}.right-sidebar .nav-tabs li:first-child{width:45%;}.right-sidebar .nav-tabs li:last-child{width:55%;}.bootstrap-notify-container{max-width:320px;text-align:center;}.dd-handle{background-color:#f9f9f9 !important;}.dd-handle:hover{color:#2196f3;}.nestable-dark-theme .dd-handle{background:#ccc !important;border:1px solid #999 !important;}.dd3-handle{background:#999 !important;}.dd3-content:hover{color:#2196f3;}.login-page{background-color:#00bcd4;padding-left:0;max-width:360px;margin:5% auto;overflow-x:hidden;}.login-page .login-box .msg{color:#555;margin-bottom:30px;text-align:center;}.login-page .login-box a{font-size:14px;text-decoration:none;color:#00bcd4;}.login-page .login-box .logo{margin-bottom:20px;}.login-page .login-box .logo a{font-size:36px;display:block;width:100%;text-align:center;color:#fff;}.login-page .login-box .logo small{display:block;width:100%;text-align:center;color:#fff;margin-top:-5px;}.signup-page{background-color:#00bcd4;padding-left:0;max-width:360px;margin:5% auto;overflow-x:hidden;}.signup-page .signup-box .msg{color:#555;margin-bottom:30px;text-align:center;}.signup-page .signup-box a{font-size:14px;text-decoration:none;color:#00bcd4;}.signup-page .signup-box .logo{margin-bottom:20px;}.signup-page .signup-box .logo a{font-size:36px;display:block;width:100%;text-align:center;color:#fff;}.signup-page .signup-box .logo small{display:block;width:100%;text-align:center;color:#fff;margin-top:-5px;}.fp-page{background-color:#00bcd4;padding-left:0;max-width:360px;margin:5% auto;overflow-x:hidden;}.fp-page .fp-box .msg{color:#555;margin-bottom:30px;text-align:center;}.fp-page .fp-box a{font-size:14px;text-decoration:none;color:#00bcd4;}.fp-page .fp-box .logo{margin-bottom:20px;}.fp-page .fp-box .logo a{font-size:36px;display:block;width:100%;text-align:center;color:#fff;}.fp-page .fp-box .logo small{display:block;width:100%;text-align:center;color:#fff;margin-top:-5px;}.four-zero-four{width:100%;text-align:center;margin:5% auto;}.four-zero-four .four-zero-four-container .error-code{font-size:160px;}.four-zero-four .four-zero-four-container .error-message{font-size:26px;color:#333;font-weight:bold;margin-top:-40px;}.four-zero-four .four-zero-four-container .button-place{margin-top:32px;}.five-zero-zero{width:100%;text-align:center;margin:5% auto;}.five-zero-zero .five-zero-zero-container .error-code{font-size:160px;}.five-zero-zero .five-zero-zero-container .error-message{font-size:27px;color:#333;font-weight:bold;margin-top:-40px;}.five-zero-zero .five-zero-zero-container .button-place{margin-top:32px;}.gmap{width:100%;height:400px;}.jvector-map{width:100%;height:600px;}.morris-hover.morris-default-style{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;}.flot-chart{width:100%;height:320px;}.panel-switch-btn{position:relative;right:20px;z-index:9;}.panel-switch-btn label{font-weight:bold !important;}.legendLabel{width:85px !important;position:relative;left:3px;}#multiple_axis_chart .legendLabel{width:160px !important;}.sparkline{text-align:center;}.search-bar{position:fixed;top:-100px;left:0;z-index:9999999;width:100%;-moz-transition:.25s;-o-transition:.25s;-webkit-transition:.25s;transition:.25s;}.search-bar.open{top:0;}.search-bar .search-icon{position:absolute;top:20px;left:14px;}.search-bar .search-icon .material-icons{font-size:32px;color:#999;}.search-bar .close-search{position:absolute;cursor:pointer;font-size:30px;top:16px;right:18px;}.search-bar .close-search .material-icons{color:#999;opacity:1;-moz-transition:.5s;-o-transition:.5s;-webkit-transition:.5s;transition:.5s;}.search-bar .close-search .material-icons:hover{opacity:.5;}.search-bar input[type="text"]{width:100%;font-size:16px;padding:25px 60px 23px 56px;border:none;}.dataTables_wrapper{position:relative;}.dataTables_wrapper select{border:none;border-bottom:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;-ms-box-shadow:none;box-shadow:none;}.dataTables_wrapper select:active,.dataTables_wrapper select:focus{-webkit-box-shadow:none;-moz-box-shadow:none;-ms-box-shadow:none;box-shadow:none;}.dataTables_wrapper input[type="search"]{-webkit-border-radius:0;-moz-border-radius:0;-ms-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;-ms-box-shadow:none;box-shadow:none;border:none;font-size:12px;border-bottom:1px solid #ddd;}.dataTables_wrapper input[type="search"]:focus,.dataTables_wrapper input[type="search"]:active{border-bottom:2px solid #1f91f3;}.dataTables_wrapper .dt-buttons{float:left;}.dataTables_wrapper .dt-buttons a.dt-button{background-color:#607d8b;color:#fff;padding:7px 12px;margin-right:5px;text-decoration:none;box-shadow:0 2px 5px rgba(0,0,0,.16),0 2px 10px rgba(0,0,0,.12);-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;border-radius:2px;border:none;font-size:13px;outline:none;}.dataTables_wrapper .dt-buttons a.dt-button:active{opacity:.8;}.dt-button-info{position:fixed;top:50%;left:50%;min-width:400px;text-align:center;background-color:#fff;border:2px solid #999;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;margin-top:-100px;margin-left:-200px;z-index:21;}.dt-button-info h2{color:#777;}.dt-button-info div{color:#777;margin-bottom:20px;}.lg-outer .lg-thumb-item,.lg-outer .lg-toogle-thumb{-webkit-border-radius:0 !important;-moz-border-radius:0 !important;-ms-border-radius:0 !important;border-radius:0 !important;}html.ie10 .sidebar .menu .list li{line-height:30px;}html.ie10 .sidebar .menu .list .ml-menu li.active a:not(.menu-toggle).toggled:before{top:6px !important;line-height:20px !important;}html.ie10 .sidebar .user-info .info-container{top:15px;}html.ie10 .search-bar input[type="text"]{padding:26px 60px 26px 56px;}html.ie10 .dropdown-menu ul.menu li a{margin-top:-22px;}html.ie10 .bs-searchbox .form-control{width:90%;}html.ie11 .sidebar .menu .list .ml-menu li.active a:not(.menu-toggle).toggled:before{top:6px !important;line-height:20px !important;}html.ie11 .sidebar .user-info .info-container{top:15px;}html.ie11 .search-bar input[type="text"]{padding:26px 60px 26px 56px;}html.ie11 .dropdown-menu ul.menu li a{margin-top:-22px;}html.ie11 .bs-searchbox .form-control{width:90%;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/all-themes.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/all-themes.css new file mode 100644 index 0000000..96fb068 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/all-themes.css @@ -0,0 +1,900 @@ +.theme-red .navbar { + background-color: #F44336; } + +.theme-red .navbar-brand { + color: #fff; } + .theme-red .navbar-brand:hover { + color: #fff; } + .theme-red .navbar-brand:active { + color: #fff; } + .theme-red .navbar-brand:focus { + color: #fff; } + +.theme-red .nav > li > a { + color: #fff; } + .theme-red .nav > li > a:hover { + background-color: transparent; } + .theme-red .nav > li > a:focus { + background-color: transparent; } + +.theme-red .nav .open > a { + background-color: transparent; } + .theme-red .nav .open > a:hover { + background-color: transparent; } + .theme-red .nav .open > a:focus { + background-color: transparent; } + +.theme-red .bars { + color: #fff; } + +.theme-red .sidebar .menu .list li.active { + background-color: transparent; } + .theme-red .sidebar .menu .list li.active > :first-child i, .theme-red .sidebar .menu .list li.active > :first-child span { + color: #F44336; } + +.theme-red .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-red .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-red .sidebar .legal { + background-color: #fff; } + .theme-red .sidebar .legal .copyright a { + color: #F44336 !important; } + +.theme-pink .navbar { + background-color: #E91E63; } + +.theme-pink .navbar-brand { + color: #fff; } + .theme-pink .navbar-brand:hover { + color: #fff; } + .theme-pink .navbar-brand:active { + color: #fff; } + .theme-pink .navbar-brand:focus { + color: #fff; } + +.theme-pink .nav > li > a { + color: #fff; } + .theme-pink .nav > li > a:hover { + background-color: transparent; } + .theme-pink .nav > li > a:focus { + background-color: transparent; } + +.theme-pink .nav .open > a { + background-color: transparent; } + .theme-pink .nav .open > a:hover { + background-color: transparent; } + .theme-pink .nav .open > a:focus { + background-color: transparent; } + +.theme-pink .bars { + color: #fff; } + +.theme-pink .sidebar .menu .list li.active { + background-color: transparent; } + .theme-pink .sidebar .menu .list li.active > :first-child i, .theme-pink .sidebar .menu .list li.active > :first-child span { + color: #E91E63; } + +.theme-pink .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-pink .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-pink .sidebar .legal { + background-color: #fff; } + .theme-pink .sidebar .legal .copyright a { + color: #E91E63 !important; } + +.theme-purple .navbar { + background-color: #9C27B0; } + +.theme-purple .navbar-brand { + color: #fff; } + .theme-purple .navbar-brand:hover { + color: #fff; } + .theme-purple .navbar-brand:active { + color: #fff; } + .theme-purple .navbar-brand:focus { + color: #fff; } + +.theme-purple .nav > li > a { + color: #fff; } + .theme-purple .nav > li > a:hover { + background-color: transparent; } + .theme-purple .nav > li > a:focus { + background-color: transparent; } + +.theme-purple .nav .open > a { + background-color: transparent; } + .theme-purple .nav .open > a:hover { + background-color: transparent; } + .theme-purple .nav .open > a:focus { + background-color: transparent; } + +.theme-purple .bars { + color: #fff; } + +.theme-purple .sidebar .menu .list li.active { + background-color: transparent; } + .theme-purple .sidebar .menu .list li.active > :first-child i, .theme-purple .sidebar .menu .list li.active > :first-child span { + color: #9C27B0; } + +.theme-purple .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-purple .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-purple .sidebar .legal { + background-color: #fff; } + .theme-purple .sidebar .legal .copyright a { + color: #9C27B0 !important; } + +.theme-deep-purple .navbar { + background-color: #673AB7; } + +.theme-deep-purple .navbar-brand { + color: #fff; } + .theme-deep-purple .navbar-brand:hover { + color: #fff; } + .theme-deep-purple .navbar-brand:active { + color: #fff; } + .theme-deep-purple .navbar-brand:focus { + color: #fff; } + +.theme-deep-purple .nav > li > a { + color: #fff; } + .theme-deep-purple .nav > li > a:hover { + background-color: transparent; } + .theme-deep-purple .nav > li > a:focus { + background-color: transparent; } + +.theme-deep-purple .nav .open > a { + background-color: transparent; } + .theme-deep-purple .nav .open > a:hover { + background-color: transparent; } + .theme-deep-purple .nav .open > a:focus { + background-color: transparent; } + +.theme-deep-purple .bars { + color: #fff; } + +.theme-deep-purple .sidebar .menu .list li.active { + background-color: transparent; } + .theme-deep-purple .sidebar .menu .list li.active > :first-child i, .theme-deep-purple .sidebar .menu .list li.active > :first-child span { + color: #673AB7; } + +.theme-deep-purple .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-deep-purple .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-deep-purple .sidebar .legal { + background-color: #fff; } + .theme-deep-purple .sidebar .legal .copyright a { + color: #673AB7 !important; } + +.theme-indigo .navbar { + background-color: #3F51B5; } + +.theme-indigo .navbar-brand { + color: #fff; } + .theme-indigo .navbar-brand:hover { + color: #fff; } + .theme-indigo .navbar-brand:active { + color: #fff; } + .theme-indigo .navbar-brand:focus { + color: #fff; } + +.theme-indigo .nav > li > a { + color: #fff; } + .theme-indigo .nav > li > a:hover { + background-color: transparent; } + .theme-indigo .nav > li > a:focus { + background-color: transparent; } + +.theme-indigo .nav .open > a { + background-color: transparent; } + .theme-indigo .nav .open > a:hover { + background-color: transparent; } + .theme-indigo .nav .open > a:focus { + background-color: transparent; } + +.theme-indigo .bars { + color: #fff; } + +.theme-indigo .sidebar .menu .list li.active { + background-color: transparent; } + .theme-indigo .sidebar .menu .list li.active > :first-child i, .theme-indigo .sidebar .menu .list li.active > :first-child span { + color: #3F51B5; } + +.theme-indigo .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-indigo .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-indigo .sidebar .legal { + background-color: #fff; } + .theme-indigo .sidebar .legal .copyright a { + color: #3F51B5 !important; } + +.theme-blue .navbar { + background-color: #2196F3; } + +.theme-blue .navbar-brand { + color: #fff; } + .theme-blue .navbar-brand:hover { + color: #fff; } + .theme-blue .navbar-brand:active { + color: #fff; } + .theme-blue .navbar-brand:focus { + color: #fff; } + +.theme-blue .nav > li > a { + color: #fff; } + .theme-blue .nav > li > a:hover { + background-color: transparent; } + .theme-blue .nav > li > a:focus { + background-color: transparent; } + +.theme-blue .nav .open > a { + background-color: transparent; } + .theme-blue .nav .open > a:hover { + background-color: transparent; } + .theme-blue .nav .open > a:focus { + background-color: transparent; } + +.theme-blue .bars { + color: #fff; } + +.theme-blue .sidebar .menu .list li.active { + background-color: transparent; } + .theme-blue .sidebar .menu .list li.active > :first-child i, .theme-blue .sidebar .menu .list li.active > :first-child span { + color: #2196F3; } + +.theme-blue .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-blue .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-blue .sidebar .legal { + background-color: #fff; } + .theme-blue .sidebar .legal .copyright a { + color: #2196F3 !important; } + +.theme-light-blue .navbar { + background-color: #03A9F4; } + +.theme-light-blue .navbar-brand { + color: #fff; } + .theme-light-blue .navbar-brand:hover { + color: #fff; } + .theme-light-blue .navbar-brand:active { + color: #fff; } + .theme-light-blue .navbar-brand:focus { + color: #fff; } + +.theme-light-blue .nav > li > a { + color: #fff; } + .theme-light-blue .nav > li > a:hover { + background-color: transparent; } + .theme-light-blue .nav > li > a:focus { + background-color: transparent; } + +.theme-light-blue .nav .open > a { + background-color: transparent; } + .theme-light-blue .nav .open > a:hover { + background-color: transparent; } + .theme-light-blue .nav .open > a:focus { + background-color: transparent; } + +.theme-light-blue .bars { + color: #fff; } + +.theme-light-blue .sidebar .menu .list li.active { + background-color: transparent; } + .theme-light-blue .sidebar .menu .list li.active > :first-child i, .theme-light-blue .sidebar .menu .list li.active > :first-child span { + color: #03A9F4; } + +.theme-light-blue .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-light-blue .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-light-blue .sidebar .legal { + background-color: #fff; } + .theme-light-blue .sidebar .legal .copyright a { + color: #03A9F4 !important; } + +.theme-cyan .navbar { + background-color: #00BCD4; } + +.theme-cyan .navbar-brand { + color: #fff; } + .theme-cyan .navbar-brand:hover { + color: #fff; } + .theme-cyan .navbar-brand:active { + color: #fff; } + .theme-cyan .navbar-brand:focus { + color: #fff; } + +.theme-cyan .nav > li > a { + color: #fff; } + .theme-cyan .nav > li > a:hover { + background-color: transparent; } + .theme-cyan .nav > li > a:focus { + background-color: transparent; } + +.theme-cyan .nav .open > a { + background-color: transparent; } + .theme-cyan .nav .open > a:hover { + background-color: transparent; } + .theme-cyan .nav .open > a:focus { + background-color: transparent; } + +.theme-cyan .bars { + color: #fff; } + +.theme-cyan .sidebar .menu .list li.active { + background-color: transparent; } + .theme-cyan .sidebar .menu .list li.active > :first-child i, .theme-cyan .sidebar .menu .list li.active > :first-child span { + color: #00BCD4; } + +.theme-cyan .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-cyan .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-cyan .sidebar .legal { + background-color: #fff; } + .theme-cyan .sidebar .legal .copyright a { + color: #00BCD4 !important; } + +.theme-teal .navbar { + background-color: #009688; } + +.theme-teal .navbar-brand { + color: #fff; } + .theme-teal .navbar-brand:hover { + color: #fff; } + .theme-teal .navbar-brand:active { + color: #fff; } + .theme-teal .navbar-brand:focus { + color: #fff; } + +.theme-teal .nav > li > a { + color: #fff; } + .theme-teal .nav > li > a:hover { + background-color: transparent; } + .theme-teal .nav > li > a:focus { + background-color: transparent; } + +.theme-teal .nav .open > a { + background-color: transparent; } + .theme-teal .nav .open > a:hover { + background-color: transparent; } + .theme-teal .nav .open > a:focus { + background-color: transparent; } + +.theme-teal .bars { + color: #fff; } + +.theme-teal .sidebar .menu .list li.active { + background-color: transparent; } + .theme-teal .sidebar .menu .list li.active > :first-child i, .theme-teal .sidebar .menu .list li.active > :first-child span { + color: #009688; } + +.theme-teal .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-teal .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-teal .sidebar .legal { + background-color: #fff; } + .theme-teal .sidebar .legal .copyright a { + color: #009688 !important; } + +.theme-green .navbar { + background-color: #4CAF50; } + +.theme-green .navbar-brand { + color: #fff; } + .theme-green .navbar-brand:hover { + color: #fff; } + .theme-green .navbar-brand:active { + color: #fff; } + .theme-green .navbar-brand:focus { + color: #fff; } + +.theme-green .nav > li > a { + color: #fff; } + .theme-green .nav > li > a:hover { + background-color: transparent; } + .theme-green .nav > li > a:focus { + background-color: transparent; } + +.theme-green .nav .open > a { + background-color: transparent; } + .theme-green .nav .open > a:hover { + background-color: transparent; } + .theme-green .nav .open > a:focus { + background-color: transparent; } + +.theme-green .bars { + color: #fff; } + +.theme-green .sidebar .menu .list li.active { + background-color: transparent; } + .theme-green .sidebar .menu .list li.active > :first-child i, .theme-green .sidebar .menu .list li.active > :first-child span { + color: #4CAF50; } + +.theme-green .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-green .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-green .sidebar .legal { + background-color: #fff; } + .theme-green .sidebar .legal .copyright a { + color: #4CAF50 !important; } + +.theme-light-green .navbar { + background-color: #8BC34A; } + +.theme-light-green .navbar-brand { + color: #fff; } + .theme-light-green .navbar-brand:hover { + color: #fff; } + .theme-light-green .navbar-brand:active { + color: #fff; } + .theme-light-green .navbar-brand:focus { + color: #fff; } + +.theme-light-green .nav > li > a { + color: #fff; } + .theme-light-green .nav > li > a:hover { + background-color: transparent; } + .theme-light-green .nav > li > a:focus { + background-color: transparent; } + +.theme-light-green .nav .open > a { + background-color: transparent; } + .theme-light-green .nav .open > a:hover { + background-color: transparent; } + .theme-light-green .nav .open > a:focus { + background-color: transparent; } + +.theme-light-green .bars { + color: #fff; } + +.theme-light-green .sidebar .menu .list li.active { + background-color: transparent; } + .theme-light-green .sidebar .menu .list li.active > :first-child i, .theme-light-green .sidebar .menu .list li.active > :first-child span { + color: #8BC34A; } + +.theme-light-green .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-light-green .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-light-green .sidebar .legal { + background-color: #fff; } + .theme-light-green .sidebar .legal .copyright a { + color: #8BC34A !important; } + +.theme-lime .navbar { + background-color: #CDDC39; } + +.theme-lime .navbar-brand { + color: #fff; } + .theme-lime .navbar-brand:hover { + color: #fff; } + .theme-lime .navbar-brand:active { + color: #fff; } + .theme-lime .navbar-brand:focus { + color: #fff; } + +.theme-lime .nav > li > a { + color: #fff; } + .theme-lime .nav > li > a:hover { + background-color: transparent; } + .theme-lime .nav > li > a:focus { + background-color: transparent; } + +.theme-lime .nav .open > a { + background-color: transparent; } + .theme-lime .nav .open > a:hover { + background-color: transparent; } + .theme-lime .nav .open > a:focus { + background-color: transparent; } + +.theme-lime .bars { + color: #fff; } + +.theme-lime .sidebar .menu .list li.active { + background-color: transparent; } + .theme-lime .sidebar .menu .list li.active > :first-child i, .theme-lime .sidebar .menu .list li.active > :first-child span { + color: #CDDC39; } + +.theme-lime .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-lime .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-lime .sidebar .legal { + background-color: #fff; } + .theme-lime .sidebar .legal .copyright a { + color: #CDDC39 !important; } + +.theme-yellow .navbar { + background-color: #FFEB3B; } + +.theme-yellow .navbar-brand { + color: #fff; } + .theme-yellow .navbar-brand:hover { + color: #fff; } + .theme-yellow .navbar-brand:active { + color: #fff; } + .theme-yellow .navbar-brand:focus { + color: #fff; } + +.theme-yellow .nav > li > a { + color: #fff; } + .theme-yellow .nav > li > a:hover { + background-color: transparent; } + .theme-yellow .nav > li > a:focus { + background-color: transparent; } + +.theme-yellow .nav .open > a { + background-color: transparent; } + .theme-yellow .nav .open > a:hover { + background-color: transparent; } + .theme-yellow .nav .open > a:focus { + background-color: transparent; } + +.theme-yellow .bars { + color: #fff; } + +.theme-yellow .sidebar .menu .list li.active { + background-color: transparent; } + .theme-yellow .sidebar .menu .list li.active > :first-child i, .theme-yellow .sidebar .menu .list li.active > :first-child span { + color: #FFEB3B; } + +.theme-yellow .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-yellow .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-yellow .sidebar .legal { + background-color: #fff; } + .theme-yellow .sidebar .legal .copyright a { + color: #FFEB3B !important; } + +.theme-amber .navbar { + background-color: #FFC107; } + +.theme-amber .navbar-brand { + color: #fff; } + .theme-amber .navbar-brand:hover { + color: #fff; } + .theme-amber .navbar-brand:active { + color: #fff; } + .theme-amber .navbar-brand:focus { + color: #fff; } + +.theme-amber .nav > li > a { + color: #fff; } + .theme-amber .nav > li > a:hover { + background-color: transparent; } + .theme-amber .nav > li > a:focus { + background-color: transparent; } + +.theme-amber .nav .open > a { + background-color: transparent; } + .theme-amber .nav .open > a:hover { + background-color: transparent; } + .theme-amber .nav .open > a:focus { + background-color: transparent; } + +.theme-amber .bars { + color: #fff; } + +.theme-amber .sidebar .menu .list li.active { + background-color: transparent; } + .theme-amber .sidebar .menu .list li.active > :first-child i, .theme-amber .sidebar .menu .list li.active > :first-child span { + color: #FFC107; } + +.theme-amber .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-amber .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-amber .sidebar .legal { + background-color: #fff; } + .theme-amber .sidebar .legal .copyright a { + color: #FFC107 !important; } + +.theme-orange .navbar { + background-color: #FF9800; } + +.theme-orange .navbar-brand { + color: #fff; } + .theme-orange .navbar-brand:hover { + color: #fff; } + .theme-orange .navbar-brand:active { + color: #fff; } + .theme-orange .navbar-brand:focus { + color: #fff; } + +.theme-orange .nav > li > a { + color: #fff; } + .theme-orange .nav > li > a:hover { + background-color: transparent; } + .theme-orange .nav > li > a:focus { + background-color: transparent; } + +.theme-orange .nav .open > a { + background-color: transparent; } + .theme-orange .nav .open > a:hover { + background-color: transparent; } + .theme-orange .nav .open > a:focus { + background-color: transparent; } + +.theme-orange .bars { + color: #fff; } + +.theme-orange .sidebar .menu .list li.active { + background-color: transparent; } + .theme-orange .sidebar .menu .list li.active > :first-child i, .theme-orange .sidebar .menu .list li.active > :first-child span { + color: #FF9800; } + +.theme-orange .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-orange .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-orange .sidebar .legal { + background-color: #fff; } + .theme-orange .sidebar .legal .copyright a { + color: #FF9800 !important; } + +.theme-deep-orange .navbar { + background-color: #FF5722; } + +.theme-deep-orange .navbar-brand { + color: #fff; } + .theme-deep-orange .navbar-brand:hover { + color: #fff; } + .theme-deep-orange .navbar-brand:active { + color: #fff; } + .theme-deep-orange .navbar-brand:focus { + color: #fff; } + +.theme-deep-orange .nav > li > a { + color: #fff; } + .theme-deep-orange .nav > li > a:hover { + background-color: transparent; } + .theme-deep-orange .nav > li > a:focus { + background-color: transparent; } + +.theme-deep-orange .nav .open > a { + background-color: transparent; } + .theme-deep-orange .nav .open > a:hover { + background-color: transparent; } + .theme-deep-orange .nav .open > a:focus { + background-color: transparent; } + +.theme-deep-orange .bars { + color: #fff; } + +.theme-deep-orange .sidebar .menu .list li.active { + background-color: transparent; } + .theme-deep-orange .sidebar .menu .list li.active > :first-child i, .theme-deep-orange .sidebar .menu .list li.active > :first-child span { + color: #FF5722; } + +.theme-deep-orange .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-deep-orange .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-deep-orange .sidebar .legal { + background-color: #fff; } + .theme-deep-orange .sidebar .legal .copyright a { + color: #FF5722 !important; } + +.theme-brown .navbar { + background-color: #795548; } + +.theme-brown .navbar-brand { + color: #fff; } + .theme-brown .navbar-brand:hover { + color: #fff; } + .theme-brown .navbar-brand:active { + color: #fff; } + .theme-brown .navbar-brand:focus { + color: #fff; } + +.theme-brown .nav > li > a { + color: #fff; } + .theme-brown .nav > li > a:hover { + background-color: transparent; } + .theme-brown .nav > li > a:focus { + background-color: transparent; } + +.theme-brown .nav .open > a { + background-color: transparent; } + .theme-brown .nav .open > a:hover { + background-color: transparent; } + .theme-brown .nav .open > a:focus { + background-color: transparent; } + +.theme-brown .bars { + color: #fff; } + +.theme-brown .sidebar .menu .list li.active { + background-color: transparent; } + .theme-brown .sidebar .menu .list li.active > :first-child i, .theme-brown .sidebar .menu .list li.active > :first-child span { + color: #795548; } + +.theme-brown .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-brown .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-brown .sidebar .legal { + background-color: #fff; } + .theme-brown .sidebar .legal .copyright a { + color: #795548 !important; } + +.theme-grey .navbar { + background-color: #9E9E9E; } + +.theme-grey .navbar-brand { + color: #fff; } + .theme-grey .navbar-brand:hover { + color: #fff; } + .theme-grey .navbar-brand:active { + color: #fff; } + .theme-grey .navbar-brand:focus { + color: #fff; } + +.theme-grey .nav > li > a { + color: #fff; } + .theme-grey .nav > li > a:hover { + background-color: transparent; } + .theme-grey .nav > li > a:focus { + background-color: transparent; } + +.theme-grey .nav .open > a { + background-color: transparent; } + .theme-grey .nav .open > a:hover { + background-color: transparent; } + .theme-grey .nav .open > a:focus { + background-color: transparent; } + +.theme-grey .bars { + color: #fff; } + +.theme-grey .sidebar .menu .list li.active { + background-color: transparent; } + .theme-grey .sidebar .menu .list li.active > :first-child i, .theme-grey .sidebar .menu .list li.active > :first-child span { + color: #9E9E9E; } + +.theme-grey .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-grey .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-grey .sidebar .legal { + background-color: #fff; } + .theme-grey .sidebar .legal .copyright a { + color: #9E9E9E !important; } + +.theme-blue-grey .navbar { + background-color: #607D8B; } + +.theme-blue-grey .navbar-brand { + color: #fff; } + .theme-blue-grey .navbar-brand:hover { + color: #fff; } + .theme-blue-grey .navbar-brand:active { + color: #fff; } + .theme-blue-grey .navbar-brand:focus { + color: #fff; } + +.theme-blue-grey .nav > li > a { + color: #fff; } + .theme-blue-grey .nav > li > a:hover { + background-color: transparent; } + .theme-blue-grey .nav > li > a:focus { + background-color: transparent; } + +.theme-blue-grey .nav .open > a { + background-color: transparent; } + .theme-blue-grey .nav .open > a:hover { + background-color: transparent; } + .theme-blue-grey .nav .open > a:focus { + background-color: transparent; } + +.theme-blue-grey .bars { + color: #fff; } + +.theme-blue-grey .sidebar .menu .list li.active { + background-color: transparent; } + .theme-blue-grey .sidebar .menu .list li.active > :first-child i, .theme-blue-grey .sidebar .menu .list li.active > :first-child span { + color: #607D8B; } + +.theme-blue-grey .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-blue-grey .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-blue-grey .sidebar .legal { + background-color: #fff; } + .theme-blue-grey .sidebar .legal .copyright a { + color: #607D8B !important; } + +.theme-black .navbar { + background-color: #000; } + +.theme-black .navbar-brand { + color: #fff; } + .theme-black .navbar-brand:hover { + color: #fff; } + .theme-black .navbar-brand:active { + color: #fff; } + .theme-black .navbar-brand:focus { + color: #fff; } + +.theme-black .nav > li > a { + color: #fff; } + .theme-black .nav > li > a:hover { + background-color: transparent; } + .theme-black .nav > li > a:focus { + background-color: transparent; } + +.theme-black .nav .open > a { + background-color: transparent; } + .theme-black .nav .open > a:hover { + background-color: transparent; } + .theme-black .nav .open > a:focus { + background-color: transparent; } + +.theme-black .bars { + color: #fff; } + +.theme-black .sidebar .menu .list li.active { + background-color: transparent; } + .theme-black .sidebar .menu .list li.active > :first-child i, .theme-black .sidebar .menu .list li.active > :first-child span { + color: #000; } + +.theme-black .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-black .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-black .sidebar .legal { + background-color: #fff; } + .theme-black .sidebar .legal .copyright a { + color: #000 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/all-themes.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/all-themes.min.css new file mode 100644 index 0000000..ecb4023 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/all-themes.min.css @@ -0,0 +1 @@ +.theme-red .navbar{background-color:#f44336;}.theme-red .navbar-brand{color:#fff;}.theme-red .navbar-brand:hover{color:#fff;}.theme-red .navbar-brand:active{color:#fff;}.theme-red .navbar-brand:focus{color:#fff;}.theme-red .nav>li>a{color:#fff;}.theme-red .nav>li>a:hover{background-color:transparent;}.theme-red .nav>li>a:focus{background-color:transparent;}.theme-red .nav .open>a{background-color:transparent;}.theme-red .nav .open>a:hover{background-color:transparent;}.theme-red .nav .open>a:focus{background-color:transparent;}.theme-red .bars{color:#fff;}.theme-red .sidebar .menu .list li.active{background-color:transparent;}.theme-red .sidebar .menu .list li.active>:first-child i,.theme-red .sidebar .menu .list li.active>:first-child span{color:#f44336;}.theme-red .sidebar .menu .list .toggled{background-color:transparent;}.theme-red .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-red .sidebar .legal{background-color:#fff;}.theme-red .sidebar .legal .copyright a{color:#f44336 !important;}.theme-pink .navbar{background-color:#e91e63;}.theme-pink .navbar-brand{color:#fff;}.theme-pink .navbar-brand:hover{color:#fff;}.theme-pink .navbar-brand:active{color:#fff;}.theme-pink .navbar-brand:focus{color:#fff;}.theme-pink .nav>li>a{color:#fff;}.theme-pink .nav>li>a:hover{background-color:transparent;}.theme-pink .nav>li>a:focus{background-color:transparent;}.theme-pink .nav .open>a{background-color:transparent;}.theme-pink .nav .open>a:hover{background-color:transparent;}.theme-pink .nav .open>a:focus{background-color:transparent;}.theme-pink .bars{color:#fff;}.theme-pink .sidebar .menu .list li.active{background-color:transparent;}.theme-pink .sidebar .menu .list li.active>:first-child i,.theme-pink .sidebar .menu .list li.active>:first-child span{color:#e91e63;}.theme-pink .sidebar .menu .list .toggled{background-color:transparent;}.theme-pink .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-pink .sidebar .legal{background-color:#fff;}.theme-pink .sidebar .legal .copyright a{color:#e91e63 !important;}.theme-purple .navbar{background-color:#9c27b0;}.theme-purple .navbar-brand{color:#fff;}.theme-purple .navbar-brand:hover{color:#fff;}.theme-purple .navbar-brand:active{color:#fff;}.theme-purple .navbar-brand:focus{color:#fff;}.theme-purple .nav>li>a{color:#fff;}.theme-purple .nav>li>a:hover{background-color:transparent;}.theme-purple .nav>li>a:focus{background-color:transparent;}.theme-purple .nav .open>a{background-color:transparent;}.theme-purple .nav .open>a:hover{background-color:transparent;}.theme-purple .nav .open>a:focus{background-color:transparent;}.theme-purple .bars{color:#fff;}.theme-purple .sidebar .menu .list li.active{background-color:transparent;}.theme-purple .sidebar .menu .list li.active>:first-child i,.theme-purple .sidebar .menu .list li.active>:first-child span{color:#9c27b0;}.theme-purple .sidebar .menu .list .toggled{background-color:transparent;}.theme-purple .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-purple .sidebar .legal{background-color:#fff;}.theme-purple .sidebar .legal .copyright a{color:#9c27b0 !important;}.theme-deep-purple .navbar{background-color:#673ab7;}.theme-deep-purple .navbar-brand{color:#fff;}.theme-deep-purple .navbar-brand:hover{color:#fff;}.theme-deep-purple .navbar-brand:active{color:#fff;}.theme-deep-purple .navbar-brand:focus{color:#fff;}.theme-deep-purple .nav>li>a{color:#fff;}.theme-deep-purple .nav>li>a:hover{background-color:transparent;}.theme-deep-purple .nav>li>a:focus{background-color:transparent;}.theme-deep-purple .nav .open>a{background-color:transparent;}.theme-deep-purple .nav .open>a:hover{background-color:transparent;}.theme-deep-purple .nav .open>a:focus{background-color:transparent;}.theme-deep-purple .bars{color:#fff;}.theme-deep-purple .sidebar .menu .list li.active{background-color:transparent;}.theme-deep-purple .sidebar .menu .list li.active>:first-child i,.theme-deep-purple .sidebar .menu .list li.active>:first-child span{color:#673ab7;}.theme-deep-purple .sidebar .menu .list .toggled{background-color:transparent;}.theme-deep-purple .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-deep-purple .sidebar .legal{background-color:#fff;}.theme-deep-purple .sidebar .legal .copyright a{color:#673ab7 !important;}.theme-indigo .navbar{background-color:#3f51b5;}.theme-indigo .navbar-brand{color:#fff;}.theme-indigo .navbar-brand:hover{color:#fff;}.theme-indigo .navbar-brand:active{color:#fff;}.theme-indigo .navbar-brand:focus{color:#fff;}.theme-indigo .nav>li>a{color:#fff;}.theme-indigo .nav>li>a:hover{background-color:transparent;}.theme-indigo .nav>li>a:focus{background-color:transparent;}.theme-indigo .nav .open>a{background-color:transparent;}.theme-indigo .nav .open>a:hover{background-color:transparent;}.theme-indigo .nav .open>a:focus{background-color:transparent;}.theme-indigo .bars{color:#fff;}.theme-indigo .sidebar .menu .list li.active{background-color:transparent;}.theme-indigo .sidebar .menu .list li.active>:first-child i,.theme-indigo .sidebar .menu .list li.active>:first-child span{color:#3f51b5;}.theme-indigo .sidebar .menu .list .toggled{background-color:transparent;}.theme-indigo .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-indigo .sidebar .legal{background-color:#fff;}.theme-indigo .sidebar .legal .copyright a{color:#3f51b5 !important;}.theme-blue .navbar{background-color:#2196f3;}.theme-blue .navbar-brand{color:#fff;}.theme-blue .navbar-brand:hover{color:#fff;}.theme-blue .navbar-brand:active{color:#fff;}.theme-blue .navbar-brand:focus{color:#fff;}.theme-blue .nav>li>a{color:#fff;}.theme-blue .nav>li>a:hover{background-color:transparent;}.theme-blue .nav>li>a:focus{background-color:transparent;}.theme-blue .nav .open>a{background-color:transparent;}.theme-blue .nav .open>a:hover{background-color:transparent;}.theme-blue .nav .open>a:focus{background-color:transparent;}.theme-blue .bars{color:#fff;}.theme-blue .sidebar .menu .list li.active{background-color:transparent;}.theme-blue .sidebar .menu .list li.active>:first-child i,.theme-blue .sidebar .menu .list li.active>:first-child span{color:#2196f3;}.theme-blue .sidebar .menu .list .toggled{background-color:transparent;}.theme-blue .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-blue .sidebar .legal{background-color:#fff;}.theme-blue .sidebar .legal .copyright a{color:#2196f3 !important;}.theme-light-blue .navbar{background-color:#03a9f4;}.theme-light-blue .navbar-brand{color:#fff;}.theme-light-blue .navbar-brand:hover{color:#fff;}.theme-light-blue .navbar-brand:active{color:#fff;}.theme-light-blue .navbar-brand:focus{color:#fff;}.theme-light-blue .nav>li>a{color:#fff;}.theme-light-blue .nav>li>a:hover{background-color:transparent;}.theme-light-blue .nav>li>a:focus{background-color:transparent;}.theme-light-blue .nav .open>a{background-color:transparent;}.theme-light-blue .nav .open>a:hover{background-color:transparent;}.theme-light-blue .nav .open>a:focus{background-color:transparent;}.theme-light-blue .bars{color:#fff;}.theme-light-blue .sidebar .menu .list li.active{background-color:transparent;}.theme-light-blue .sidebar .menu .list li.active>:first-child i,.theme-light-blue .sidebar .menu .list li.active>:first-child span{color:#03a9f4;}.theme-light-blue .sidebar .menu .list .toggled{background-color:transparent;}.theme-light-blue .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-light-blue .sidebar .legal{background-color:#fff;}.theme-light-blue .sidebar .legal .copyright a{color:#03a9f4 !important;}.theme-cyan .navbar{background-color:#00bcd4;}.theme-cyan .navbar-brand{color:#fff;}.theme-cyan .navbar-brand:hover{color:#fff;}.theme-cyan .navbar-brand:active{color:#fff;}.theme-cyan .navbar-brand:focus{color:#fff;}.theme-cyan .nav>li>a{color:#fff;}.theme-cyan .nav>li>a:hover{background-color:transparent;}.theme-cyan .nav>li>a:focus{background-color:transparent;}.theme-cyan .nav .open>a{background-color:transparent;}.theme-cyan .nav .open>a:hover{background-color:transparent;}.theme-cyan .nav .open>a:focus{background-color:transparent;}.theme-cyan .bars{color:#fff;}.theme-cyan .sidebar .menu .list li.active{background-color:transparent;}.theme-cyan .sidebar .menu .list li.active>:first-child i,.theme-cyan .sidebar .menu .list li.active>:first-child span{color:#00bcd4;}.theme-cyan .sidebar .menu .list .toggled{background-color:transparent;}.theme-cyan .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-cyan .sidebar .legal{background-color:#fff;}.theme-cyan .sidebar .legal .copyright a{color:#00bcd4 !important;}.theme-teal .navbar{background-color:#009688;}.theme-teal .navbar-brand{color:#fff;}.theme-teal .navbar-brand:hover{color:#fff;}.theme-teal .navbar-brand:active{color:#fff;}.theme-teal .navbar-brand:focus{color:#fff;}.theme-teal .nav>li>a{color:#fff;}.theme-teal .nav>li>a:hover{background-color:transparent;}.theme-teal .nav>li>a:focus{background-color:transparent;}.theme-teal .nav .open>a{background-color:transparent;}.theme-teal .nav .open>a:hover{background-color:transparent;}.theme-teal .nav .open>a:focus{background-color:transparent;}.theme-teal .bars{color:#fff;}.theme-teal .sidebar .menu .list li.active{background-color:transparent;}.theme-teal .sidebar .menu .list li.active>:first-child i,.theme-teal .sidebar .menu .list li.active>:first-child span{color:#009688;}.theme-teal .sidebar .menu .list .toggled{background-color:transparent;}.theme-teal .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-teal .sidebar .legal{background-color:#fff;}.theme-teal .sidebar .legal .copyright a{color:#009688 !important;}.theme-green .navbar{background-color:#4caf50;}.theme-green .navbar-brand{color:#fff;}.theme-green .navbar-brand:hover{color:#fff;}.theme-green .navbar-brand:active{color:#fff;}.theme-green .navbar-brand:focus{color:#fff;}.theme-green .nav>li>a{color:#fff;}.theme-green .nav>li>a:hover{background-color:transparent;}.theme-green .nav>li>a:focus{background-color:transparent;}.theme-green .nav .open>a{background-color:transparent;}.theme-green .nav .open>a:hover{background-color:transparent;}.theme-green .nav .open>a:focus{background-color:transparent;}.theme-green .bars{color:#fff;}.theme-green .sidebar .menu .list li.active{background-color:transparent;}.theme-green .sidebar .menu .list li.active>:first-child i,.theme-green .sidebar .menu .list li.active>:first-child span{color:#4caf50;}.theme-green .sidebar .menu .list .toggled{background-color:transparent;}.theme-green .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-green .sidebar .legal{background-color:#fff;}.theme-green .sidebar .legal .copyright a{color:#4caf50 !important;}.theme-light-green .navbar{background-color:#8bc34a;}.theme-light-green .navbar-brand{color:#fff;}.theme-light-green .navbar-brand:hover{color:#fff;}.theme-light-green .navbar-brand:active{color:#fff;}.theme-light-green .navbar-brand:focus{color:#fff;}.theme-light-green .nav>li>a{color:#fff;}.theme-light-green .nav>li>a:hover{background-color:transparent;}.theme-light-green .nav>li>a:focus{background-color:transparent;}.theme-light-green .nav .open>a{background-color:transparent;}.theme-light-green .nav .open>a:hover{background-color:transparent;}.theme-light-green .nav .open>a:focus{background-color:transparent;}.theme-light-green .bars{color:#fff;}.theme-light-green .sidebar .menu .list li.active{background-color:transparent;}.theme-light-green .sidebar .menu .list li.active>:first-child i,.theme-light-green .sidebar .menu .list li.active>:first-child span{color:#8bc34a;}.theme-light-green .sidebar .menu .list .toggled{background-color:transparent;}.theme-light-green .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-light-green .sidebar .legal{background-color:#fff;}.theme-light-green .sidebar .legal .copyright a{color:#8bc34a !important;}.theme-lime .navbar{background-color:#cddc39;}.theme-lime .navbar-brand{color:#fff;}.theme-lime .navbar-brand:hover{color:#fff;}.theme-lime .navbar-brand:active{color:#fff;}.theme-lime .navbar-brand:focus{color:#fff;}.theme-lime .nav>li>a{color:#fff;}.theme-lime .nav>li>a:hover{background-color:transparent;}.theme-lime .nav>li>a:focus{background-color:transparent;}.theme-lime .nav .open>a{background-color:transparent;}.theme-lime .nav .open>a:hover{background-color:transparent;}.theme-lime .nav .open>a:focus{background-color:transparent;}.theme-lime .bars{color:#fff;}.theme-lime .sidebar .menu .list li.active{background-color:transparent;}.theme-lime .sidebar .menu .list li.active>:first-child i,.theme-lime .sidebar .menu .list li.active>:first-child span{color:#cddc39;}.theme-lime .sidebar .menu .list .toggled{background-color:transparent;}.theme-lime .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-lime .sidebar .legal{background-color:#fff;}.theme-lime .sidebar .legal .copyright a{color:#cddc39 !important;}.theme-yellow .navbar{background-color:#ffeb3b;}.theme-yellow .navbar-brand{color:#fff;}.theme-yellow .navbar-brand:hover{color:#fff;}.theme-yellow .navbar-brand:active{color:#fff;}.theme-yellow .navbar-brand:focus{color:#fff;}.theme-yellow .nav>li>a{color:#fff;}.theme-yellow .nav>li>a:hover{background-color:transparent;}.theme-yellow .nav>li>a:focus{background-color:transparent;}.theme-yellow .nav .open>a{background-color:transparent;}.theme-yellow .nav .open>a:hover{background-color:transparent;}.theme-yellow .nav .open>a:focus{background-color:transparent;}.theme-yellow .bars{color:#fff;}.theme-yellow .sidebar .menu .list li.active{background-color:transparent;}.theme-yellow .sidebar .menu .list li.active>:first-child i,.theme-yellow .sidebar .menu .list li.active>:first-child span{color:#ffeb3b;}.theme-yellow .sidebar .menu .list .toggled{background-color:transparent;}.theme-yellow .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-yellow .sidebar .legal{background-color:#fff;}.theme-yellow .sidebar .legal .copyright a{color:#ffeb3b !important;}.theme-amber .navbar{background-color:#ffc107;}.theme-amber .navbar-brand{color:#fff;}.theme-amber .navbar-brand:hover{color:#fff;}.theme-amber .navbar-brand:active{color:#fff;}.theme-amber .navbar-brand:focus{color:#fff;}.theme-amber .nav>li>a{color:#fff;}.theme-amber .nav>li>a:hover{background-color:transparent;}.theme-amber .nav>li>a:focus{background-color:transparent;}.theme-amber .nav .open>a{background-color:transparent;}.theme-amber .nav .open>a:hover{background-color:transparent;}.theme-amber .nav .open>a:focus{background-color:transparent;}.theme-amber .bars{color:#fff;}.theme-amber .sidebar .menu .list li.active{background-color:transparent;}.theme-amber .sidebar .menu .list li.active>:first-child i,.theme-amber .sidebar .menu .list li.active>:first-child span{color:#ffc107;}.theme-amber .sidebar .menu .list .toggled{background-color:transparent;}.theme-amber .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-amber .sidebar .legal{background-color:#fff;}.theme-amber .sidebar .legal .copyright a{color:#ffc107 !important;}.theme-orange .navbar{background-color:#ff9800;}.theme-orange .navbar-brand{color:#fff;}.theme-orange .navbar-brand:hover{color:#fff;}.theme-orange .navbar-brand:active{color:#fff;}.theme-orange .navbar-brand:focus{color:#fff;}.theme-orange .nav>li>a{color:#fff;}.theme-orange .nav>li>a:hover{background-color:transparent;}.theme-orange .nav>li>a:focus{background-color:transparent;}.theme-orange .nav .open>a{background-color:transparent;}.theme-orange .nav .open>a:hover{background-color:transparent;}.theme-orange .nav .open>a:focus{background-color:transparent;}.theme-orange .bars{color:#fff;}.theme-orange .sidebar .menu .list li.active{background-color:transparent;}.theme-orange .sidebar .menu .list li.active>:first-child i,.theme-orange .sidebar .menu .list li.active>:first-child span{color:#ff9800;}.theme-orange .sidebar .menu .list .toggled{background-color:transparent;}.theme-orange .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-orange .sidebar .legal{background-color:#fff;}.theme-orange .sidebar .legal .copyright a{color:#ff9800 !important;}.theme-deep-orange .navbar{background-color:#ff5722;}.theme-deep-orange .navbar-brand{color:#fff;}.theme-deep-orange .navbar-brand:hover{color:#fff;}.theme-deep-orange .navbar-brand:active{color:#fff;}.theme-deep-orange .navbar-brand:focus{color:#fff;}.theme-deep-orange .nav>li>a{color:#fff;}.theme-deep-orange .nav>li>a:hover{background-color:transparent;}.theme-deep-orange .nav>li>a:focus{background-color:transparent;}.theme-deep-orange .nav .open>a{background-color:transparent;}.theme-deep-orange .nav .open>a:hover{background-color:transparent;}.theme-deep-orange .nav .open>a:focus{background-color:transparent;}.theme-deep-orange .bars{color:#fff;}.theme-deep-orange .sidebar .menu .list li.active{background-color:transparent;}.theme-deep-orange .sidebar .menu .list li.active>:first-child i,.theme-deep-orange .sidebar .menu .list li.active>:first-child span{color:#ff5722;}.theme-deep-orange .sidebar .menu .list .toggled{background-color:transparent;}.theme-deep-orange .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-deep-orange .sidebar .legal{background-color:#fff;}.theme-deep-orange .sidebar .legal .copyright a{color:#ff5722 !important;}.theme-brown .navbar{background-color:#795548;}.theme-brown .navbar-brand{color:#fff;}.theme-brown .navbar-brand:hover{color:#fff;}.theme-brown .navbar-brand:active{color:#fff;}.theme-brown .navbar-brand:focus{color:#fff;}.theme-brown .nav>li>a{color:#fff;}.theme-brown .nav>li>a:hover{background-color:transparent;}.theme-brown .nav>li>a:focus{background-color:transparent;}.theme-brown .nav .open>a{background-color:transparent;}.theme-brown .nav .open>a:hover{background-color:transparent;}.theme-brown .nav .open>a:focus{background-color:transparent;}.theme-brown .bars{color:#fff;}.theme-brown .sidebar .menu .list li.active{background-color:transparent;}.theme-brown .sidebar .menu .list li.active>:first-child i,.theme-brown .sidebar .menu .list li.active>:first-child span{color:#795548;}.theme-brown .sidebar .menu .list .toggled{background-color:transparent;}.theme-brown .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-brown .sidebar .legal{background-color:#fff;}.theme-brown .sidebar .legal .copyright a{color:#795548 !important;}.theme-grey .navbar{background-color:#9e9e9e;}.theme-grey .navbar-brand{color:#fff;}.theme-grey .navbar-brand:hover{color:#fff;}.theme-grey .navbar-brand:active{color:#fff;}.theme-grey .navbar-brand:focus{color:#fff;}.theme-grey .nav>li>a{color:#fff;}.theme-grey .nav>li>a:hover{background-color:transparent;}.theme-grey .nav>li>a:focus{background-color:transparent;}.theme-grey .nav .open>a{background-color:transparent;}.theme-grey .nav .open>a:hover{background-color:transparent;}.theme-grey .nav .open>a:focus{background-color:transparent;}.theme-grey .bars{color:#fff;}.theme-grey .sidebar .menu .list li.active{background-color:transparent;}.theme-grey .sidebar .menu .list li.active>:first-child i,.theme-grey .sidebar .menu .list li.active>:first-child span{color:#9e9e9e;}.theme-grey .sidebar .menu .list .toggled{background-color:transparent;}.theme-grey .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-grey .sidebar .legal{background-color:#fff;}.theme-grey .sidebar .legal .copyright a{color:#9e9e9e !important;}.theme-blue-grey .navbar{background-color:#607d8b;}.theme-blue-grey .navbar-brand{color:#fff;}.theme-blue-grey .navbar-brand:hover{color:#fff;}.theme-blue-grey .navbar-brand:active{color:#fff;}.theme-blue-grey .navbar-brand:focus{color:#fff;}.theme-blue-grey .nav>li>a{color:#fff;}.theme-blue-grey .nav>li>a:hover{background-color:transparent;}.theme-blue-grey .nav>li>a:focus{background-color:transparent;}.theme-blue-grey .nav .open>a{background-color:transparent;}.theme-blue-grey .nav .open>a:hover{background-color:transparent;}.theme-blue-grey .nav .open>a:focus{background-color:transparent;}.theme-blue-grey .bars{color:#fff;}.theme-blue-grey .sidebar .menu .list li.active{background-color:transparent;}.theme-blue-grey .sidebar .menu .list li.active>:first-child i,.theme-blue-grey .sidebar .menu .list li.active>:first-child span{color:#607d8b;}.theme-blue-grey .sidebar .menu .list .toggled{background-color:transparent;}.theme-blue-grey .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-blue-grey .sidebar .legal{background-color:#fff;}.theme-blue-grey .sidebar .legal .copyright a{color:#607d8b !important;}.theme-black .navbar{background-color:#000;}.theme-black .navbar-brand{color:#fff;}.theme-black .navbar-brand:hover{color:#fff;}.theme-black .navbar-brand:active{color:#fff;}.theme-black .navbar-brand:focus{color:#fff;}.theme-black .nav>li>a{color:#fff;}.theme-black .nav>li>a:hover{background-color:transparent;}.theme-black .nav>li>a:focus{background-color:transparent;}.theme-black .nav .open>a{background-color:transparent;}.theme-black .nav .open>a:hover{background-color:transparent;}.theme-black .nav .open>a:focus{background-color:transparent;}.theme-black .bars{color:#fff;}.theme-black .sidebar .menu .list li.active{background-color:transparent;}.theme-black .sidebar .menu .list li.active>:first-child i,.theme-black .sidebar .menu .list li.active>:first-child span{color:#000;}.theme-black .sidebar .menu .list .toggled{background-color:transparent;}.theme-black .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-black .sidebar .legal{background-color:#fff;}.theme-black .sidebar .legal .copyright a{color:#000 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-amber.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-amber.css new file mode 100644 index 0000000..f1b1b5f --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-amber.css @@ -0,0 +1,45 @@ +.theme-amber .navbar { + background-color: #FFC107; } + +.theme-amber .navbar-brand { + color: #fff; } + .theme-amber .navbar-brand:hover { + color: #fff; } + .theme-amber .navbar-brand:active { + color: #fff; } + .theme-amber .navbar-brand:focus { + color: #fff; } + +.theme-amber .nav > li > a { + color: #fff; } + .theme-amber .nav > li > a:hover { + background-color: transparent; } + .theme-amber .nav > li > a:focus { + background-color: transparent; } + +.theme-amber .nav .open > a { + background-color: transparent; } + .theme-amber .nav .open > a:hover { + background-color: transparent; } + .theme-amber .nav .open > a:focus { + background-color: transparent; } + +.theme-amber .bars { + color: #fff; } + +.theme-amber .sidebar .menu .list li.active { + background-color: transparent; } + .theme-amber .sidebar .menu .list li.active > :first-child i, .theme-amber .sidebar .menu .list li.active > :first-child span { + color: #FFC107; } + +.theme-amber .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-amber .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-amber .sidebar .legal { + background-color: #fff; } + .theme-amber .sidebar .legal .copyright a { + color: #FFC107 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-amber.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-amber.min.css new file mode 100644 index 0000000..d791a33 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-amber.min.css @@ -0,0 +1 @@ +.theme-amber .navbar{background-color:#ffc107;}.theme-amber .navbar-brand{color:#fff;}.theme-amber .navbar-brand:hover{color:#fff;}.theme-amber .navbar-brand:active{color:#fff;}.theme-amber .navbar-brand:focus{color:#fff;}.theme-amber .nav>li>a{color:#fff;}.theme-amber .nav>li>a:hover{background-color:transparent;}.theme-amber .nav>li>a:focus{background-color:transparent;}.theme-amber .nav .open>a{background-color:transparent;}.theme-amber .nav .open>a:hover{background-color:transparent;}.theme-amber .nav .open>a:focus{background-color:transparent;}.theme-amber .bars{color:#fff;}.theme-amber .sidebar .menu .list li.active{background-color:transparent;}.theme-amber .sidebar .menu .list li.active>:first-child i,.theme-amber .sidebar .menu .list li.active>:first-child span{color:#ffc107;}.theme-amber .sidebar .menu .list .toggled{background-color:transparent;}.theme-amber .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-amber .sidebar .legal{background-color:#fff;}.theme-amber .sidebar .legal .copyright a{color:#ffc107 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-black.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-black.css new file mode 100644 index 0000000..93263b7 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-black.css @@ -0,0 +1,45 @@ +.theme-black .navbar { + background-color: #000; } + +.theme-black .navbar-brand { + color: #fff; } + .theme-black .navbar-brand:hover { + color: #fff; } + .theme-black .navbar-brand:active { + color: #fff; } + .theme-black .navbar-brand:focus { + color: #fff; } + +.theme-black .nav > li > a { + color: #fff; } + .theme-black .nav > li > a:hover { + background-color: transparent; } + .theme-black .nav > li > a:focus { + background-color: transparent; } + +.theme-black .nav .open > a { + background-color: transparent; } + .theme-black .nav .open > a:hover { + background-color: transparent; } + .theme-black .nav .open > a:focus { + background-color: transparent; } + +.theme-black .bars { + color: #fff; } + +.theme-black .sidebar .menu .list li.active { + background-color: transparent; } + .theme-black .sidebar .menu .list li.active > :first-child i, .theme-black .sidebar .menu .list li.active > :first-child span { + color: #000; } + +.theme-black .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-black .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-black .sidebar .legal { + background-color: #fff; } + .theme-black .sidebar .legal .copyright a { + color: #000 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-black.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-black.min.css new file mode 100644 index 0000000..e763c92 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-black.min.css @@ -0,0 +1 @@ +.theme-black .navbar{background-color:#000;}.theme-black .navbar-brand{color:#fff;}.theme-black .navbar-brand:hover{color:#fff;}.theme-black .navbar-brand:active{color:#fff;}.theme-black .navbar-brand:focus{color:#fff;}.theme-black .nav>li>a{color:#fff;}.theme-black .nav>li>a:hover{background-color:transparent;}.theme-black .nav>li>a:focus{background-color:transparent;}.theme-black .nav .open>a{background-color:transparent;}.theme-black .nav .open>a:hover{background-color:transparent;}.theme-black .nav .open>a:focus{background-color:transparent;}.theme-black .bars{color:#fff;}.theme-black .sidebar .menu .list li.active{background-color:transparent;}.theme-black .sidebar .menu .list li.active>:first-child i,.theme-black .sidebar .menu .list li.active>:first-child span{color:#000;}.theme-black .sidebar .menu .list .toggled{background-color:transparent;}.theme-black .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-black .sidebar .legal{background-color:#fff;}.theme-black .sidebar .legal .copyright a{color:#000 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue-grey.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue-grey.css new file mode 100644 index 0000000..2cbb4a0 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue-grey.css @@ -0,0 +1,45 @@ +.theme-blue-grey .navbar { + background-color: #607D8B; } + +.theme-blue-grey .navbar-brand { + color: #fff; } + .theme-blue-grey .navbar-brand:hover { + color: #fff; } + .theme-blue-grey .navbar-brand:active { + color: #fff; } + .theme-blue-grey .navbar-brand:focus { + color: #fff; } + +.theme-blue-grey .nav > li > a { + color: #fff; } + .theme-blue-grey .nav > li > a:hover { + background-color: transparent; } + .theme-blue-grey .nav > li > a:focus { + background-color: transparent; } + +.theme-blue-grey .nav .open > a { + background-color: transparent; } + .theme-blue-grey .nav .open > a:hover { + background-color: transparent; } + .theme-blue-grey .nav .open > a:focus { + background-color: transparent; } + +.theme-blue-grey .bars { + color: #fff; } + +.theme-blue-grey .sidebar .menu .list li.active { + background-color: transparent; } + .theme-blue-grey .sidebar .menu .list li.active > :first-child i, .theme-blue-grey .sidebar .menu .list li.active > :first-child span { + color: #607D8B; } + +.theme-blue-grey .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-blue-grey .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-blue-grey .sidebar .legal { + background-color: #fff; } + .theme-blue-grey .sidebar .legal .copyright a { + color: #607D8B !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue-grey.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue-grey.min.css new file mode 100644 index 0000000..803f3a9 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue-grey.min.css @@ -0,0 +1 @@ +.theme-blue-grey .navbar{background-color:#607d8b;}.theme-blue-grey .navbar-brand{color:#fff;}.theme-blue-grey .navbar-brand:hover{color:#fff;}.theme-blue-grey .navbar-brand:active{color:#fff;}.theme-blue-grey .navbar-brand:focus{color:#fff;}.theme-blue-grey .nav>li>a{color:#fff;}.theme-blue-grey .nav>li>a:hover{background-color:transparent;}.theme-blue-grey .nav>li>a:focus{background-color:transparent;}.theme-blue-grey .nav .open>a{background-color:transparent;}.theme-blue-grey .nav .open>a:hover{background-color:transparent;}.theme-blue-grey .nav .open>a:focus{background-color:transparent;}.theme-blue-grey .bars{color:#fff;}.theme-blue-grey .sidebar .menu .list li.active{background-color:transparent;}.theme-blue-grey .sidebar .menu .list li.active>:first-child i,.theme-blue-grey .sidebar .menu .list li.active>:first-child span{color:#607d8b;}.theme-blue-grey .sidebar .menu .list .toggled{background-color:transparent;}.theme-blue-grey .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-blue-grey .sidebar .legal{background-color:#fff;}.theme-blue-grey .sidebar .legal .copyright a{color:#607d8b !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue.css new file mode 100644 index 0000000..01017c7 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue.css @@ -0,0 +1,45 @@ +.theme-blue .navbar { + background-color: #2196F3; } + +.theme-blue .navbar-brand { + color: #fff; } + .theme-blue .navbar-brand:hover { + color: #fff; } + .theme-blue .navbar-brand:active { + color: #fff; } + .theme-blue .navbar-brand:focus { + color: #fff; } + +.theme-blue .nav > li > a { + color: #fff; } + .theme-blue .nav > li > a:hover { + background-color: transparent; } + .theme-blue .nav > li > a:focus { + background-color: transparent; } + +.theme-blue .nav .open > a { + background-color: transparent; } + .theme-blue .nav .open > a:hover { + background-color: transparent; } + .theme-blue .nav .open > a:focus { + background-color: transparent; } + +.theme-blue .bars { + color: #fff; } + +.theme-blue .sidebar .menu .list li.active { + background-color: transparent; } + .theme-blue .sidebar .menu .list li.active > :first-child i, .theme-blue .sidebar .menu .list li.active > :first-child span { + color: #2196F3; } + +.theme-blue .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-blue .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-blue .sidebar .legal { + background-color: #fff; } + .theme-blue .sidebar .legal .copyright a { + color: #2196F3 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue.min.css new file mode 100644 index 0000000..36359d3 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-blue.min.css @@ -0,0 +1 @@ +.theme-blue .navbar{background-color:#2196f3;}.theme-blue .navbar-brand{color:#fff;}.theme-blue .navbar-brand:hover{color:#fff;}.theme-blue .navbar-brand:active{color:#fff;}.theme-blue .navbar-brand:focus{color:#fff;}.theme-blue .nav>li>a{color:#fff;}.theme-blue .nav>li>a:hover{background-color:transparent;}.theme-blue .nav>li>a:focus{background-color:transparent;}.theme-blue .nav .open>a{background-color:transparent;}.theme-blue .nav .open>a:hover{background-color:transparent;}.theme-blue .nav .open>a:focus{background-color:transparent;}.theme-blue .bars{color:#fff;}.theme-blue .sidebar .menu .list li.active{background-color:transparent;}.theme-blue .sidebar .menu .list li.active>:first-child i,.theme-blue .sidebar .menu .list li.active>:first-child span{color:#2196f3;}.theme-blue .sidebar .menu .list .toggled{background-color:transparent;}.theme-blue .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-blue .sidebar .legal{background-color:#fff;}.theme-blue .sidebar .legal .copyright a{color:#2196f3 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-brown.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-brown.css new file mode 100644 index 0000000..709c9e6 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-brown.css @@ -0,0 +1,45 @@ +.theme-brown .navbar { + background-color: #795548; } + +.theme-brown .navbar-brand { + color: #fff; } + .theme-brown .navbar-brand:hover { + color: #fff; } + .theme-brown .navbar-brand:active { + color: #fff; } + .theme-brown .navbar-brand:focus { + color: #fff; } + +.theme-brown .nav > li > a { + color: #fff; } + .theme-brown .nav > li > a:hover { + background-color: transparent; } + .theme-brown .nav > li > a:focus { + background-color: transparent; } + +.theme-brown .nav .open > a { + background-color: transparent; } + .theme-brown .nav .open > a:hover { + background-color: transparent; } + .theme-brown .nav .open > a:focus { + background-color: transparent; } + +.theme-brown .bars { + color: #fff; } + +.theme-brown .sidebar .menu .list li.active { + background-color: transparent; } + .theme-brown .sidebar .menu .list li.active > :first-child i, .theme-brown .sidebar .menu .list li.active > :first-child span { + color: #795548; } + +.theme-brown .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-brown .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-brown .sidebar .legal { + background-color: #fff; } + .theme-brown .sidebar .legal .copyright a { + color: #795548 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-brown.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-brown.min.css new file mode 100644 index 0000000..acc53fe --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-brown.min.css @@ -0,0 +1 @@ +.theme-brown .navbar{background-color:#795548;}.theme-brown .navbar-brand{color:#fff;}.theme-brown .navbar-brand:hover{color:#fff;}.theme-brown .navbar-brand:active{color:#fff;}.theme-brown .navbar-brand:focus{color:#fff;}.theme-brown .nav>li>a{color:#fff;}.theme-brown .nav>li>a:hover{background-color:transparent;}.theme-brown .nav>li>a:focus{background-color:transparent;}.theme-brown .nav .open>a{background-color:transparent;}.theme-brown .nav .open>a:hover{background-color:transparent;}.theme-brown .nav .open>a:focus{background-color:transparent;}.theme-brown .bars{color:#fff;}.theme-brown .sidebar .menu .list li.active{background-color:transparent;}.theme-brown .sidebar .menu .list li.active>:first-child i,.theme-brown .sidebar .menu .list li.active>:first-child span{color:#795548;}.theme-brown .sidebar .menu .list .toggled{background-color:transparent;}.theme-brown .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-brown .sidebar .legal{background-color:#fff;}.theme-brown .sidebar .legal .copyright a{color:#795548 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-cyan.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-cyan.css new file mode 100644 index 0000000..e05559d --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-cyan.css @@ -0,0 +1,45 @@ +.theme-cyan .navbar { + background-color: #00BCD4; } + +.theme-cyan .navbar-brand { + color: #fff; } + .theme-cyan .navbar-brand:hover { + color: #fff; } + .theme-cyan .navbar-brand:active { + color: #fff; } + .theme-cyan .navbar-brand:focus { + color: #fff; } + +.theme-cyan .nav > li > a { + color: #fff; } + .theme-cyan .nav > li > a:hover { + background-color: transparent; } + .theme-cyan .nav > li > a:focus { + background-color: transparent; } + +.theme-cyan .nav .open > a { + background-color: transparent; } + .theme-cyan .nav .open > a:hover { + background-color: transparent; } + .theme-cyan .nav .open > a:focus { + background-color: transparent; } + +.theme-cyan .bars { + color: #fff; } + +.theme-cyan .sidebar .menu .list li.active { + background-color: transparent; } + .theme-cyan .sidebar .menu .list li.active > :first-child i, .theme-cyan .sidebar .menu .list li.active > :first-child span { + color: #00BCD4; } + +.theme-cyan .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-cyan .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-cyan .sidebar .legal { + background-color: #fff; } + .theme-cyan .sidebar .legal .copyright a { + color: #00BCD4 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-cyan.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-cyan.min.css new file mode 100644 index 0000000..792c898 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-cyan.min.css @@ -0,0 +1 @@ +.theme-cyan .navbar{background-color:#00bcd4;}.theme-cyan .navbar-brand{color:#fff;}.theme-cyan .navbar-brand:hover{color:#fff;}.theme-cyan .navbar-brand:active{color:#fff;}.theme-cyan .navbar-brand:focus{color:#fff;}.theme-cyan .nav>li>a{color:#fff;}.theme-cyan .nav>li>a:hover{background-color:transparent;}.theme-cyan .nav>li>a:focus{background-color:transparent;}.theme-cyan .nav .open>a{background-color:transparent;}.theme-cyan .nav .open>a:hover{background-color:transparent;}.theme-cyan .nav .open>a:focus{background-color:transparent;}.theme-cyan .bars{color:#fff;}.theme-cyan .sidebar .menu .list li.active{background-color:transparent;}.theme-cyan .sidebar .menu .list li.active>:first-child i,.theme-cyan .sidebar .menu .list li.active>:first-child span{color:#00bcd4;}.theme-cyan .sidebar .menu .list .toggled{background-color:transparent;}.theme-cyan .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-cyan .sidebar .legal{background-color:#fff;}.theme-cyan .sidebar .legal .copyright a{color:#00bcd4 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-orange.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-orange.css new file mode 100644 index 0000000..5229daf --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-orange.css @@ -0,0 +1,45 @@ +.theme-deep-orange .navbar { + background-color: #FF5722; } + +.theme-deep-orange .navbar-brand { + color: #fff; } + .theme-deep-orange .navbar-brand:hover { + color: #fff; } + .theme-deep-orange .navbar-brand:active { + color: #fff; } + .theme-deep-orange .navbar-brand:focus { + color: #fff; } + +.theme-deep-orange .nav > li > a { + color: #fff; } + .theme-deep-orange .nav > li > a:hover { + background-color: transparent; } + .theme-deep-orange .nav > li > a:focus { + background-color: transparent; } + +.theme-deep-orange .nav .open > a { + background-color: transparent; } + .theme-deep-orange .nav .open > a:hover { + background-color: transparent; } + .theme-deep-orange .nav .open > a:focus { + background-color: transparent; } + +.theme-deep-orange .bars { + color: #fff; } + +.theme-deep-orange .sidebar .menu .list li.active { + background-color: transparent; } + .theme-deep-orange .sidebar .menu .list li.active > :first-child i, .theme-deep-orange .sidebar .menu .list li.active > :first-child span { + color: #FF5722; } + +.theme-deep-orange .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-deep-orange .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-deep-orange .sidebar .legal { + background-color: #fff; } + .theme-deep-orange .sidebar .legal .copyright a { + color: #FF5722 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-orange.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-orange.min.css new file mode 100644 index 0000000..160fc70 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-orange.min.css @@ -0,0 +1 @@ +.theme-deep-orange .navbar{background-color:#ff5722;}.theme-deep-orange .navbar-brand{color:#fff;}.theme-deep-orange .navbar-brand:hover{color:#fff;}.theme-deep-orange .navbar-brand:active{color:#fff;}.theme-deep-orange .navbar-brand:focus{color:#fff;}.theme-deep-orange .nav>li>a{color:#fff;}.theme-deep-orange .nav>li>a:hover{background-color:transparent;}.theme-deep-orange .nav>li>a:focus{background-color:transparent;}.theme-deep-orange .nav .open>a{background-color:transparent;}.theme-deep-orange .nav .open>a:hover{background-color:transparent;}.theme-deep-orange .nav .open>a:focus{background-color:transparent;}.theme-deep-orange .bars{color:#fff;}.theme-deep-orange .sidebar .menu .list li.active{background-color:transparent;}.theme-deep-orange .sidebar .menu .list li.active>:first-child i,.theme-deep-orange .sidebar .menu .list li.active>:first-child span{color:#ff5722;}.theme-deep-orange .sidebar .menu .list .toggled{background-color:transparent;}.theme-deep-orange .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-deep-orange .sidebar .legal{background-color:#fff;}.theme-deep-orange .sidebar .legal .copyright a{color:#ff5722 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-purple.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-purple.css new file mode 100644 index 0000000..8c21049 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-purple.css @@ -0,0 +1,45 @@ +.theme-deep-purple .navbar { + background-color: #673AB7; } + +.theme-deep-purple .navbar-brand { + color: #fff; } + .theme-deep-purple .navbar-brand:hover { + color: #fff; } + .theme-deep-purple .navbar-brand:active { + color: #fff; } + .theme-deep-purple .navbar-brand:focus { + color: #fff; } + +.theme-deep-purple .nav > li > a { + color: #fff; } + .theme-deep-purple .nav > li > a:hover { + background-color: transparent; } + .theme-deep-purple .nav > li > a:focus { + background-color: transparent; } + +.theme-deep-purple .nav .open > a { + background-color: transparent; } + .theme-deep-purple .nav .open > a:hover { + background-color: transparent; } + .theme-deep-purple .nav .open > a:focus { + background-color: transparent; } + +.theme-deep-purple .bars { + color: #fff; } + +.theme-deep-purple .sidebar .menu .list li.active { + background-color: transparent; } + .theme-deep-purple .sidebar .menu .list li.active > :first-child i, .theme-deep-purple .sidebar .menu .list li.active > :first-child span { + color: #673AB7; } + +.theme-deep-purple .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-deep-purple .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-deep-purple .sidebar .legal { + background-color: #fff; } + .theme-deep-purple .sidebar .legal .copyright a { + color: #673AB7 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-purple.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-purple.min.css new file mode 100644 index 0000000..fc96963 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-deep-purple.min.css @@ -0,0 +1 @@ +.theme-deep-purple .navbar{background-color:#673ab7;}.theme-deep-purple .navbar-brand{color:#fff;}.theme-deep-purple .navbar-brand:hover{color:#fff;}.theme-deep-purple .navbar-brand:active{color:#fff;}.theme-deep-purple .navbar-brand:focus{color:#fff;}.theme-deep-purple .nav>li>a{color:#fff;}.theme-deep-purple .nav>li>a:hover{background-color:transparent;}.theme-deep-purple .nav>li>a:focus{background-color:transparent;}.theme-deep-purple .nav .open>a{background-color:transparent;}.theme-deep-purple .nav .open>a:hover{background-color:transparent;}.theme-deep-purple .nav .open>a:focus{background-color:transparent;}.theme-deep-purple .bars{color:#fff;}.theme-deep-purple .sidebar .menu .list li.active{background-color:transparent;}.theme-deep-purple .sidebar .menu .list li.active>:first-child i,.theme-deep-purple .sidebar .menu .list li.active>:first-child span{color:#673ab7;}.theme-deep-purple .sidebar .menu .list .toggled{background-color:transparent;}.theme-deep-purple .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-deep-purple .sidebar .legal{background-color:#fff;}.theme-deep-purple .sidebar .legal .copyright a{color:#673ab7 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-green.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-green.css new file mode 100644 index 0000000..6f08cab --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-green.css @@ -0,0 +1,45 @@ +.theme-green .navbar { + background-color: #4CAF50; } + +.theme-green .navbar-brand { + color: #fff; } + .theme-green .navbar-brand:hover { + color: #fff; } + .theme-green .navbar-brand:active { + color: #fff; } + .theme-green .navbar-brand:focus { + color: #fff; } + +.theme-green .nav > li > a { + color: #fff; } + .theme-green .nav > li > a:hover { + background-color: transparent; } + .theme-green .nav > li > a:focus { + background-color: transparent; } + +.theme-green .nav .open > a { + background-color: transparent; } + .theme-green .nav .open > a:hover { + background-color: transparent; } + .theme-green .nav .open > a:focus { + background-color: transparent; } + +.theme-green .bars { + color: #fff; } + +.theme-green .sidebar .menu .list li.active { + background-color: transparent; } + .theme-green .sidebar .menu .list li.active > :first-child i, .theme-green .sidebar .menu .list li.active > :first-child span { + color: #4CAF50; } + +.theme-green .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-green .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-green .sidebar .legal { + background-color: #fff; } + .theme-green .sidebar .legal .copyright a { + color: #4CAF50 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-green.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-green.min.css new file mode 100644 index 0000000..7907971 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-green.min.css @@ -0,0 +1 @@ +.theme-green .navbar{background-color:#4caf50;}.theme-green .navbar-brand{color:#fff;}.theme-green .navbar-brand:hover{color:#fff;}.theme-green .navbar-brand:active{color:#fff;}.theme-green .navbar-brand:focus{color:#fff;}.theme-green .nav>li>a{color:#fff;}.theme-green .nav>li>a:hover{background-color:transparent;}.theme-green .nav>li>a:focus{background-color:transparent;}.theme-green .nav .open>a{background-color:transparent;}.theme-green .nav .open>a:hover{background-color:transparent;}.theme-green .nav .open>a:focus{background-color:transparent;}.theme-green .bars{color:#fff;}.theme-green .sidebar .menu .list li.active{background-color:transparent;}.theme-green .sidebar .menu .list li.active>:first-child i,.theme-green .sidebar .menu .list li.active>:first-child span{color:#4caf50;}.theme-green .sidebar .menu .list .toggled{background-color:transparent;}.theme-green .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-green .sidebar .legal{background-color:#fff;}.theme-green .sidebar .legal .copyright a{color:#4caf50 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-grey.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-grey.css new file mode 100644 index 0000000..658eacb --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-grey.css @@ -0,0 +1,45 @@ +.theme-grey .navbar { + background-color: #9E9E9E; } + +.theme-grey .navbar-brand { + color: #fff; } + .theme-grey .navbar-brand:hover { + color: #fff; } + .theme-grey .navbar-brand:active { + color: #fff; } + .theme-grey .navbar-brand:focus { + color: #fff; } + +.theme-grey .nav > li > a { + color: #fff; } + .theme-grey .nav > li > a:hover { + background-color: transparent; } + .theme-grey .nav > li > a:focus { + background-color: transparent; } + +.theme-grey .nav .open > a { + background-color: transparent; } + .theme-grey .nav .open > a:hover { + background-color: transparent; } + .theme-grey .nav .open > a:focus { + background-color: transparent; } + +.theme-grey .bars { + color: #fff; } + +.theme-grey .sidebar .menu .list li.active { + background-color: transparent; } + .theme-grey .sidebar .menu .list li.active > :first-child i, .theme-grey .sidebar .menu .list li.active > :first-child span { + color: #9E9E9E; } + +.theme-grey .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-grey .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-grey .sidebar .legal { + background-color: #fff; } + .theme-grey .sidebar .legal .copyright a { + color: #9E9E9E !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-grey.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-grey.min.css new file mode 100644 index 0000000..f437acb --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-grey.min.css @@ -0,0 +1 @@ +.theme-grey .navbar{background-color:#9e9e9e;}.theme-grey .navbar-brand{color:#fff;}.theme-grey .navbar-brand:hover{color:#fff;}.theme-grey .navbar-brand:active{color:#fff;}.theme-grey .navbar-brand:focus{color:#fff;}.theme-grey .nav>li>a{color:#fff;}.theme-grey .nav>li>a:hover{background-color:transparent;}.theme-grey .nav>li>a:focus{background-color:transparent;}.theme-grey .nav .open>a{background-color:transparent;}.theme-grey .nav .open>a:hover{background-color:transparent;}.theme-grey .nav .open>a:focus{background-color:transparent;}.theme-grey .bars{color:#fff;}.theme-grey .sidebar .menu .list li.active{background-color:transparent;}.theme-grey .sidebar .menu .list li.active>:first-child i,.theme-grey .sidebar .menu .list li.active>:first-child span{color:#9e9e9e;}.theme-grey .sidebar .menu .list .toggled{background-color:transparent;}.theme-grey .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-grey .sidebar .legal{background-color:#fff;}.theme-grey .sidebar .legal .copyright a{color:#9e9e9e !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-indigo.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-indigo.css new file mode 100644 index 0000000..9f8cfda --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-indigo.css @@ -0,0 +1,45 @@ +.theme-indigo .navbar { + background-color: #3F51B5; } + +.theme-indigo .navbar-brand { + color: #fff; } + .theme-indigo .navbar-brand:hover { + color: #fff; } + .theme-indigo .navbar-brand:active { + color: #fff; } + .theme-indigo .navbar-brand:focus { + color: #fff; } + +.theme-indigo .nav > li > a { + color: #fff; } + .theme-indigo .nav > li > a:hover { + background-color: transparent; } + .theme-indigo .nav > li > a:focus { + background-color: transparent; } + +.theme-indigo .nav .open > a { + background-color: transparent; } + .theme-indigo .nav .open > a:hover { + background-color: transparent; } + .theme-indigo .nav .open > a:focus { + background-color: transparent; } + +.theme-indigo .bars { + color: #fff; } + +.theme-indigo .sidebar .menu .list li.active { + background-color: transparent; } + .theme-indigo .sidebar .menu .list li.active > :first-child i, .theme-indigo .sidebar .menu .list li.active > :first-child span { + color: #3F51B5; } + +.theme-indigo .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-indigo .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-indigo .sidebar .legal { + background-color: #fff; } + .theme-indigo .sidebar .legal .copyright a { + color: #3F51B5 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-indigo.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-indigo.min.css new file mode 100644 index 0000000..28cdeb1 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-indigo.min.css @@ -0,0 +1 @@ +.theme-indigo .navbar{background-color:#3f51b5;}.theme-indigo .navbar-brand{color:#fff;}.theme-indigo .navbar-brand:hover{color:#fff;}.theme-indigo .navbar-brand:active{color:#fff;}.theme-indigo .navbar-brand:focus{color:#fff;}.theme-indigo .nav>li>a{color:#fff;}.theme-indigo .nav>li>a:hover{background-color:transparent;}.theme-indigo .nav>li>a:focus{background-color:transparent;}.theme-indigo .nav .open>a{background-color:transparent;}.theme-indigo .nav .open>a:hover{background-color:transparent;}.theme-indigo .nav .open>a:focus{background-color:transparent;}.theme-indigo .bars{color:#fff;}.theme-indigo .sidebar .menu .list li.active{background-color:transparent;}.theme-indigo .sidebar .menu .list li.active>:first-child i,.theme-indigo .sidebar .menu .list li.active>:first-child span{color:#3f51b5;}.theme-indigo .sidebar .menu .list .toggled{background-color:transparent;}.theme-indigo .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-indigo .sidebar .legal{background-color:#fff;}.theme-indigo .sidebar .legal .copyright a{color:#3f51b5 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-light-blue.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-light-blue.css new file mode 100644 index 0000000..50f4e0a --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-light-blue.css @@ -0,0 +1,45 @@ +.theme-light-blue .navbar { + background-color: #03A9F4; } + +.theme-light-blue .navbar-brand { + color: #fff; } + .theme-light-blue .navbar-brand:hover { + color: #fff; } + .theme-light-blue .navbar-brand:active { + color: #fff; } + .theme-light-blue .navbar-brand:focus { + color: #fff; } + +.theme-light-blue .nav > li > a { + color: #fff; } + .theme-light-blue .nav > li > a:hover { + background-color: transparent; } + .theme-light-blue .nav > li > a:focus { + background-color: transparent; } + +.theme-light-blue .nav .open > a { + background-color: transparent; } + .theme-light-blue .nav .open > a:hover { + background-color: transparent; } + .theme-light-blue .nav .open > a:focus { + background-color: transparent; } + +.theme-light-blue .bars { + color: #fff; } + +.theme-light-blue .sidebar .menu .list li.active { + background-color: transparent; } + .theme-light-blue .sidebar .menu .list li.active > :first-child i, .theme-light-blue .sidebar .menu .list li.active > :first-child span { + color: #03A9F4; } + +.theme-light-blue .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-light-blue .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-light-blue .sidebar .legal { + background-color: #fff; } + .theme-light-blue .sidebar .legal .copyright a { + color: #03A9F4 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-light-blue.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-light-blue.min.css new file mode 100644 index 0000000..d15a177 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-light-blue.min.css @@ -0,0 +1 @@ +.theme-light-blue .navbar{background-color:#03a9f4;}.theme-light-blue .navbar-brand{color:#fff;}.theme-light-blue .navbar-brand:hover{color:#fff;}.theme-light-blue .navbar-brand:active{color:#fff;}.theme-light-blue .navbar-brand:focus{color:#fff;}.theme-light-blue .nav>li>a{color:#fff;}.theme-light-blue .nav>li>a:hover{background-color:transparent;}.theme-light-blue .nav>li>a:focus{background-color:transparent;}.theme-light-blue .nav .open>a{background-color:transparent;}.theme-light-blue .nav .open>a:hover{background-color:transparent;}.theme-light-blue .nav .open>a:focus{background-color:transparent;}.theme-light-blue .bars{color:#fff;}.theme-light-blue .sidebar .menu .list li.active{background-color:transparent;}.theme-light-blue .sidebar .menu .list li.active>:first-child i,.theme-light-blue .sidebar .menu .list li.active>:first-child span{color:#03a9f4;}.theme-light-blue .sidebar .menu .list .toggled{background-color:transparent;}.theme-light-blue .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-light-blue .sidebar .legal{background-color:#fff;}.theme-light-blue .sidebar .legal .copyright a{color:#03a9f4 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-lime.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-lime.css new file mode 100644 index 0000000..82179e3 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-lime.css @@ -0,0 +1,45 @@ +.theme-lime .navbar { + background-color: #CDDC39; } + +.theme-lime .navbar-brand { + color: #fff; } + .theme-lime .navbar-brand:hover { + color: #fff; } + .theme-lime .navbar-brand:active { + color: #fff; } + .theme-lime .navbar-brand:focus { + color: #fff; } + +.theme-lime .nav > li > a { + color: #fff; } + .theme-lime .nav > li > a:hover { + background-color: transparent; } + .theme-lime .nav > li > a:focus { + background-color: transparent; } + +.theme-lime .nav .open > a { + background-color: transparent; } + .theme-lime .nav .open > a:hover { + background-color: transparent; } + .theme-lime .nav .open > a:focus { + background-color: transparent; } + +.theme-lime .bars { + color: #fff; } + +.theme-lime .sidebar .menu .list li.active { + background-color: transparent; } + .theme-lime .sidebar .menu .list li.active > :first-child i, .theme-lime .sidebar .menu .list li.active > :first-child span { + color: #CDDC39; } + +.theme-lime .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-lime .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-lime .sidebar .legal { + background-color: #fff; } + .theme-lime .sidebar .legal .copyright a { + color: #CDDC39 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-lime.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-lime.min.css new file mode 100644 index 0000000..3cc7c35 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-lime.min.css @@ -0,0 +1 @@ +.theme-lime .navbar{background-color:#cddc39;}.theme-lime .navbar-brand{color:#fff;}.theme-lime .navbar-brand:hover{color:#fff;}.theme-lime .navbar-brand:active{color:#fff;}.theme-lime .navbar-brand:focus{color:#fff;}.theme-lime .nav>li>a{color:#fff;}.theme-lime .nav>li>a:hover{background-color:transparent;}.theme-lime .nav>li>a:focus{background-color:transparent;}.theme-lime .nav .open>a{background-color:transparent;}.theme-lime .nav .open>a:hover{background-color:transparent;}.theme-lime .nav .open>a:focus{background-color:transparent;}.theme-lime .bars{color:#fff;}.theme-lime .sidebar .menu .list li.active{background-color:transparent;}.theme-lime .sidebar .menu .list li.active>:first-child i,.theme-lime .sidebar .menu .list li.active>:first-child span{color:#cddc39;}.theme-lime .sidebar .menu .list .toggled{background-color:transparent;}.theme-lime .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-lime .sidebar .legal{background-color:#fff;}.theme-lime .sidebar .legal .copyright a{color:#cddc39 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-orange.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-orange.css new file mode 100644 index 0000000..e855021 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-orange.css @@ -0,0 +1,45 @@ +.theme-orange .navbar { + background-color: #FF9800; } + +.theme-orange .navbar-brand { + color: #fff; } + .theme-orange .navbar-brand:hover { + color: #fff; } + .theme-orange .navbar-brand:active { + color: #fff; } + .theme-orange .navbar-brand:focus { + color: #fff; } + +.theme-orange .nav > li > a { + color: #fff; } + .theme-orange .nav > li > a:hover { + background-color: transparent; } + .theme-orange .nav > li > a:focus { + background-color: transparent; } + +.theme-orange .nav .open > a { + background-color: transparent; } + .theme-orange .nav .open > a:hover { + background-color: transparent; } + .theme-orange .nav .open > a:focus { + background-color: transparent; } + +.theme-orange .bars { + color: #fff; } + +.theme-orange .sidebar .menu .list li.active { + background-color: transparent; } + .theme-orange .sidebar .menu .list li.active > :first-child i, .theme-orange .sidebar .menu .list li.active > :first-child span { + color: #FF9800; } + +.theme-orange .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-orange .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-orange .sidebar .legal { + background-color: #fff; } + .theme-orange .sidebar .legal .copyright a { + color: #FF9800 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-orange.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-orange.min.css new file mode 100644 index 0000000..5b20f26 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-orange.min.css @@ -0,0 +1 @@ +.theme-orange .navbar{background-color:#ff9800;}.theme-orange .navbar-brand{color:#fff;}.theme-orange .navbar-brand:hover{color:#fff;}.theme-orange .navbar-brand:active{color:#fff;}.theme-orange .navbar-brand:focus{color:#fff;}.theme-orange .nav>li>a{color:#fff;}.theme-orange .nav>li>a:hover{background-color:transparent;}.theme-orange .nav>li>a:focus{background-color:transparent;}.theme-orange .nav .open>a{background-color:transparent;}.theme-orange .nav .open>a:hover{background-color:transparent;}.theme-orange .nav .open>a:focus{background-color:transparent;}.theme-orange .bars{color:#fff;}.theme-orange .sidebar .menu .list li.active{background-color:transparent;}.theme-orange .sidebar .menu .list li.active>:first-child i,.theme-orange .sidebar .menu .list li.active>:first-child span{color:#ff9800;}.theme-orange .sidebar .menu .list .toggled{background-color:transparent;}.theme-orange .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-orange .sidebar .legal{background-color:#fff;}.theme-orange .sidebar .legal .copyright a{color:#ff9800 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-pink.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-pink.css new file mode 100644 index 0000000..a0ff28f --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-pink.css @@ -0,0 +1,45 @@ +.theme-pink .navbar { + background-color: #E91E63; } + +.theme-pink .navbar-brand { + color: #fff; } + .theme-pink .navbar-brand:hover { + color: #fff; } + .theme-pink .navbar-brand:active { + color: #fff; } + .theme-pink .navbar-brand:focus { + color: #fff; } + +.theme-pink .nav > li > a { + color: #fff; } + .theme-pink .nav > li > a:hover { + background-color: transparent; } + .theme-pink .nav > li > a:focus { + background-color: transparent; } + +.theme-pink .nav .open > a { + background-color: transparent; } + .theme-pink .nav .open > a:hover { + background-color: transparent; } + .theme-pink .nav .open > a:focus { + background-color: transparent; } + +.theme-pink .bars { + color: #fff; } + +.theme-pink .sidebar .menu .list li.active { + background-color: transparent; } + .theme-pink .sidebar .menu .list li.active > :first-child i, .theme-pink .sidebar .menu .list li.active > :first-child span { + color: #E91E63; } + +.theme-pink .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-pink .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-pink .sidebar .legal { + background-color: #fff; } + .theme-pink .sidebar .legal .copyright a { + color: #E91E63 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-pink.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-pink.min.css new file mode 100644 index 0000000..c282520 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-pink.min.css @@ -0,0 +1 @@ +.theme-pink .navbar{background-color:#e91e63;}.theme-pink .navbar-brand{color:#fff;}.theme-pink .navbar-brand:hover{color:#fff;}.theme-pink .navbar-brand:active{color:#fff;}.theme-pink .navbar-brand:focus{color:#fff;}.theme-pink .nav>li>a{color:#fff;}.theme-pink .nav>li>a:hover{background-color:transparent;}.theme-pink .nav>li>a:focus{background-color:transparent;}.theme-pink .nav .open>a{background-color:transparent;}.theme-pink .nav .open>a:hover{background-color:transparent;}.theme-pink .nav .open>a:focus{background-color:transparent;}.theme-pink .bars{color:#fff;}.theme-pink .sidebar .menu .list li.active{background-color:transparent;}.theme-pink .sidebar .menu .list li.active>:first-child i,.theme-pink .sidebar .menu .list li.active>:first-child span{color:#e91e63;}.theme-pink .sidebar .menu .list .toggled{background-color:transparent;}.theme-pink .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-pink .sidebar .legal{background-color:#fff;}.theme-pink .sidebar .legal .copyright a{color:#e91e63 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-purple.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-purple.css new file mode 100644 index 0000000..76326c9 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-purple.css @@ -0,0 +1,45 @@ +.theme-purple .navbar { + background-color: #9C27B0; } + +.theme-purple .navbar-brand { + color: #fff; } + .theme-purple .navbar-brand:hover { + color: #fff; } + .theme-purple .navbar-brand:active { + color: #fff; } + .theme-purple .navbar-brand:focus { + color: #fff; } + +.theme-purple .nav > li > a { + color: #fff; } + .theme-purple .nav > li > a:hover { + background-color: transparent; } + .theme-purple .nav > li > a:focus { + background-color: transparent; } + +.theme-purple .nav .open > a { + background-color: transparent; } + .theme-purple .nav .open > a:hover { + background-color: transparent; } + .theme-purple .nav .open > a:focus { + background-color: transparent; } + +.theme-purple .bars { + color: #fff; } + +.theme-purple .sidebar .menu .list li.active { + background-color: transparent; } + .theme-purple .sidebar .menu .list li.active > :first-child i, .theme-purple .sidebar .menu .list li.active > :first-child span { + color: #9C27B0; } + +.theme-purple .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-purple .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-purple .sidebar .legal { + background-color: #fff; } + .theme-purple .sidebar .legal .copyright a { + color: #9C27B0 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-purple.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-purple.min.css new file mode 100644 index 0000000..f261c6b --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-purple.min.css @@ -0,0 +1 @@ +.theme-purple .navbar{background-color:#9c27b0;}.theme-purple .navbar-brand{color:#fff;}.theme-purple .navbar-brand:hover{color:#fff;}.theme-purple .navbar-brand:active{color:#fff;}.theme-purple .navbar-brand:focus{color:#fff;}.theme-purple .nav>li>a{color:#fff;}.theme-purple .nav>li>a:hover{background-color:transparent;}.theme-purple .nav>li>a:focus{background-color:transparent;}.theme-purple .nav .open>a{background-color:transparent;}.theme-purple .nav .open>a:hover{background-color:transparent;}.theme-purple .nav .open>a:focus{background-color:transparent;}.theme-purple .bars{color:#fff;}.theme-purple .sidebar .menu .list li.active{background-color:transparent;}.theme-purple .sidebar .menu .list li.active>:first-child i,.theme-purple .sidebar .menu .list li.active>:first-child span{color:#9c27b0;}.theme-purple .sidebar .menu .list .toggled{background-color:transparent;}.theme-purple .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-purple .sidebar .legal{background-color:#fff;}.theme-purple .sidebar .legal .copyright a{color:#9c27b0 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-red.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-red.css new file mode 100644 index 0000000..73c6a2d --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-red.css @@ -0,0 +1,45 @@ +.theme-red .navbar { + background-color: #F44336; } + +.theme-red .navbar-brand { + color: #fff; } + .theme-red .navbar-brand:hover { + color: #fff; } + .theme-red .navbar-brand:active { + color: #fff; } + .theme-red .navbar-brand:focus { + color: #fff; } + +.theme-red .nav > li > a { + color: #fff; } + .theme-red .nav > li > a:hover { + background-color: transparent; } + .theme-red .nav > li > a:focus { + background-color: transparent; } + +.theme-red .nav .open > a { + background-color: transparent; } + .theme-red .nav .open > a:hover { + background-color: transparent; } + .theme-red .nav .open > a:focus { + background-color: transparent; } + +.theme-red .bars { + color: #fff; } + +.theme-red .sidebar .menu .list li.active { + background-color: transparent; } + .theme-red .sidebar .menu .list li.active > :first-child i, .theme-red .sidebar .menu .list li.active > :first-child span { + color: #F44336; } + +.theme-red .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-red .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-red .sidebar .legal { + background-color: #fff; } + .theme-red .sidebar .legal .copyright a { + color: #F44336 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-red.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-red.min.css new file mode 100644 index 0000000..1431c29 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-red.min.css @@ -0,0 +1 @@ +.theme-red .navbar{background-color:#f44336;}.theme-red .navbar-brand{color:#fff;}.theme-red .navbar-brand:hover{color:#fff;}.theme-red .navbar-brand:active{color:#fff;}.theme-red .navbar-brand:focus{color:#fff;}.theme-red .nav>li>a{color:#fff;}.theme-red .nav>li>a:hover{background-color:transparent;}.theme-red .nav>li>a:focus{background-color:transparent;}.theme-red .nav .open>a{background-color:transparent;}.theme-red .nav .open>a:hover{background-color:transparent;}.theme-red .nav .open>a:focus{background-color:transparent;}.theme-red .bars{color:#fff;}.theme-red .sidebar .menu .list li.active{background-color:transparent;}.theme-red .sidebar .menu .list li.active>:first-child i,.theme-red .sidebar .menu .list li.active>:first-child span{color:#f44336;}.theme-red .sidebar .menu .list .toggled{background-color:transparent;}.theme-red .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-red .sidebar .legal{background-color:#fff;}.theme-red .sidebar .legal .copyright a{color:#f44336 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-teal.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-teal.css new file mode 100644 index 0000000..378fe9e --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-teal.css @@ -0,0 +1,45 @@ +.theme-teal .navbar { + background-color: #009688; } + +.theme-teal .navbar-brand { + color: #fff; } + .theme-teal .navbar-brand:hover { + color: #fff; } + .theme-teal .navbar-brand:active { + color: #fff; } + .theme-teal .navbar-brand:focus { + color: #fff; } + +.theme-teal .nav > li > a { + color: #fff; } + .theme-teal .nav > li > a:hover { + background-color: transparent; } + .theme-teal .nav > li > a:focus { + background-color: transparent; } + +.theme-teal .nav .open > a { + background-color: transparent; } + .theme-teal .nav .open > a:hover { + background-color: transparent; } + .theme-teal .nav .open > a:focus { + background-color: transparent; } + +.theme-teal .bars { + color: #fff; } + +.theme-teal .sidebar .menu .list li.active { + background-color: transparent; } + .theme-teal .sidebar .menu .list li.active > :first-child i, .theme-teal .sidebar .menu .list li.active > :first-child span { + color: #009688; } + +.theme-teal .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-teal .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-teal .sidebar .legal { + background-color: #fff; } + .theme-teal .sidebar .legal .copyright a { + color: #009688 !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-teal.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-teal.min.css new file mode 100644 index 0000000..27fe181 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-teal.min.css @@ -0,0 +1 @@ +.theme-teal .navbar{background-color:#009688;}.theme-teal .navbar-brand{color:#fff;}.theme-teal .navbar-brand:hover{color:#fff;}.theme-teal .navbar-brand:active{color:#fff;}.theme-teal .navbar-brand:focus{color:#fff;}.theme-teal .nav>li>a{color:#fff;}.theme-teal .nav>li>a:hover{background-color:transparent;}.theme-teal .nav>li>a:focus{background-color:transparent;}.theme-teal .nav .open>a{background-color:transparent;}.theme-teal .nav .open>a:hover{background-color:transparent;}.theme-teal .nav .open>a:focus{background-color:transparent;}.theme-teal .bars{color:#fff;}.theme-teal .sidebar .menu .list li.active{background-color:transparent;}.theme-teal .sidebar .menu .list li.active>:first-child i,.theme-teal .sidebar .menu .list li.active>:first-child span{color:#009688;}.theme-teal .sidebar .menu .list .toggled{background-color:transparent;}.theme-teal .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-teal .sidebar .legal{background-color:#fff;}.theme-teal .sidebar .legal .copyright a{color:#009688 !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-yellow.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-yellow.css new file mode 100644 index 0000000..92c573f --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-yellow.css @@ -0,0 +1,45 @@ +.theme-yellow .navbar { + background-color: #FFEB3B; } + +.theme-yellow .navbar-brand { + color: #fff; } + .theme-yellow .navbar-brand:hover { + color: #fff; } + .theme-yellow .navbar-brand:active { + color: #fff; } + .theme-yellow .navbar-brand:focus { + color: #fff; } + +.theme-yellow .nav > li > a { + color: #fff; } + .theme-yellow .nav > li > a:hover { + background-color: transparent; } + .theme-yellow .nav > li > a:focus { + background-color: transparent; } + +.theme-yellow .nav .open > a { + background-color: transparent; } + .theme-yellow .nav .open > a:hover { + background-color: transparent; } + .theme-yellow .nav .open > a:focus { + background-color: transparent; } + +.theme-yellow .bars { + color: #fff; } + +.theme-yellow .sidebar .menu .list li.active { + background-color: transparent; } + .theme-yellow .sidebar .menu .list li.active > :first-child i, .theme-yellow .sidebar .menu .list li.active > :first-child span { + color: #FFEB3B; } + +.theme-yellow .sidebar .menu .list .toggled { + background-color: transparent; } + +.theme-yellow .sidebar .menu .list .ml-menu { + background-color: transparent; } + +.theme-yellow .sidebar .legal { + background-color: #fff; } + .theme-yellow .sidebar .legal .copyright a { + color: #FFEB3B !important; } + diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-yellow.min.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-yellow.min.css new file mode 100644 index 0000000..73c0b78 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/themes/theme-yellow.min.css @@ -0,0 +1 @@ +.theme-yellow .navbar{background-color:#ffeb3b;}.theme-yellow .navbar-brand{color:#fff;}.theme-yellow .navbar-brand:hover{color:#fff;}.theme-yellow .navbar-brand:active{color:#fff;}.theme-yellow .navbar-brand:focus{color:#fff;}.theme-yellow .nav>li>a{color:#fff;}.theme-yellow .nav>li>a:hover{background-color:transparent;}.theme-yellow .nav>li>a:focus{background-color:transparent;}.theme-yellow .nav .open>a{background-color:transparent;}.theme-yellow .nav .open>a:hover{background-color:transparent;}.theme-yellow .nav .open>a:focus{background-color:transparent;}.theme-yellow .bars{color:#fff;}.theme-yellow .sidebar .menu .list li.active{background-color:transparent;}.theme-yellow .sidebar .menu .list li.active>:first-child i,.theme-yellow .sidebar .menu .list li.active>:first-child span{color:#ffeb3b;}.theme-yellow .sidebar .menu .list .toggled{background-color:transparent;}.theme-yellow .sidebar .menu .list .ml-menu{background-color:transparent;}.theme-yellow .sidebar .legal{background-color:#fff;}.theme-yellow .sidebar .legal .copyright a{color:#ffeb3b !important;} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/images/user-img-background.jpg b/SystemKonkursow/4.2.1/angular/src/bsb-theme/images/user-img-background.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3870108a6f7f71b98d869de32e51e1949262d890 GIT binary patch literal 26835 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 literal 0 HcmV?d00001 diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/admin.js b/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/admin.js new file mode 100644 index 0000000..b1b83c4 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/admin.js @@ -0,0 +1,467 @@ +(function() { + if (typeof jQuery === "undefined") { + throw new Error("jQuery plugins need to be before this file"); + } + + $.AdminBSB = {}; + $.AdminBSB.options = { + colors: { + red: '#F44336', + pink: '#E91E63', + purple: '#9C27B0', + deepPurple: '#673AB7', + indigo: '#3F51B5', + blue: '#2196F3', + lightBlue: '#03A9F4', + cyan: '#00BCD4', + teal: '#009688', + green: '#4CAF50', + lightGreen: '#8BC34A', + lime: '#CDDC39', + yellow: '#ffe821', + amber: '#FFC107', + orange: '#FF9800', + deepOrange: '#FF5722', + brown: '#795548', + grey: '#9E9E9E', + blueGrey: '#607D8B', + black: '#000000', + white: '#ffffff' + }, + leftSideBar: { + scrollColor: 'rgba(0,0,0,0.5)', + scrollWidth: '4px', + scrollAlwaysVisible: false, + scrollBorderRadius: '0', + scrollRailBorderRadius: '0', + scrollActiveItemWhenPageLoad: true, + breakpointWidth: 1170 + }, + dropdownMenu: { + effectIn: 'fadeIn', + effectOut: 'fadeOut' + } + } + + /* Left Sidebar - Function ================================================================================================= + * You can manage the left sidebar menu options + * + */ + $.AdminBSB.leftSideBar = { + activate: function () { + var _this = this; + var $body = $('body'); + var $overlay = $('.overlay'); + + //Close sidebar + $(window).click(function (e) { + var $target = $(e.target); + if (e.target.nodeName.toLowerCase() === 'i') { $target = $(e.target).parent(); } + + if (!$target.hasClass('bars') && _this.isOpen() && $target.parents('#leftsidebar').length === 0) { + if (!$target.hasClass('js-right-sidebar')) $overlay.fadeOut(); + $body.removeClass('overlay-open'); + } + }); + + $.each($('.menu-toggle.toggled'), function (i, val) { + $(val).next().slideToggle(0); + }); + + //When page load + $.each($('.menu .list li.active'), function (i, val) { + var $activeAnchors = $(val).find('a:eq(0)'); + + $activeAnchors.addClass('toggled'); + $activeAnchors.next().show(); + }); + + //Collapse or Expand Menu + $('.menu-toggle').on('click', function (e) { + var $this = $(this); + var $content = $this.next(); + + if ($($this.parents('ul')[0]).hasClass('list')) { + var $not = $(e.target).hasClass('menu-toggle') ? e.target : $(e.target).parents('.menu-toggle'); + + $.each($('.menu-toggle.toggled').not($not).next(), function (i, val) { + if ($(val).is(':visible')) { + $(val).prev().toggleClass('toggled'); + $(val).slideUp(); + } + }); + } + + $this.toggleClass('toggled'); + $content.slideToggle(320); + }); + + //Set menu height + _this.setMenuHeight(); + _this.checkStatuForResize(true); + //$(window).resize(function () { + // _this.setMenuHeight(); + // _this.checkStatuForResize(false); + //}); + + //Set Waves + Waves.attach('.menu .list a', ['waves-block']); + Waves.init(); + }, + setMenuHeight: function (isFirstTime) { + if (typeof $.fn.slimScroll != 'undefined') { + var configs = $.AdminBSB.options.leftSideBar; + var height = ($(window).height() - ($('.legal').outerHeight() + $('.user-info').outerHeight() + $('.navbar').innerHeight())); + var $el = $('.list'); + + $el.slimscroll({ + height: height + "px", + color: configs.scrollColor, + size: configs.scrollWidth, + alwaysVisible: configs.scrollAlwaysVisible, + borderRadius: configs.scrollBorderRadius, + railBorderRadius: configs.scrollRailBorderRadius + }); + + //Scroll active menu item when page load, if option set = true + if ($.AdminBSB.options.leftSideBar.scrollActiveItemWhenPageLoad) { + var $activeItem = $('.menu .list li.active'); + if ($activeItem.length) { + var activeItemOffsetTop = $activeItem[0].offsetTop; + if (activeItemOffsetTop > 150) $el.slimscroll({ scrollTo: activeItemOffsetTop + 'px' }); + } + } + } + }, + checkStatuForResize: function (firstTime) { + var $body = $('body'); + var $openCloseBar = $('.navbar .navbar-header .bars'); + var width = $body.width(); + + if (firstTime) { + $body.find('.content, .sidebar').addClass('no-animate').delay(1000).queue(function () { + $(this).removeClass('no-animate').dequeue(); + }); + } + + if (width < $.AdminBSB.options.leftSideBar.breakpointWidth) { + $body.addClass('ls-closed'); + $openCloseBar.fadeIn(); + } + else { + $body.removeClass('ls-closed'); + $openCloseBar.fadeOut(); + } + }, + isOpen: function () { + return $('body').hasClass('overlay-open'); + } + }; + //========================================================================================================================== + + /* Right Sidebar - Function ================================================================================================ + * You can manage the right sidebar menu options + * + */ + $.AdminBSB.rightSideBar = { + activate: function () { + var _this = this; + var $sidebar = $('#rightsidebar'); + var $overlay = $('.overlay'); + + //Close sidebar + $(window).click(function (e) { + var $target = $(e.target); + if (e.target.nodeName.toLowerCase() === 'i') { $target = $(e.target).parent(); } + + if (!$target.hasClass('js-right-sidebar') && _this.isOpen() && $target.parents('#rightsidebar').length === 0) { + if (!$target.hasClass('bars')) $overlay.fadeOut(); + $sidebar.removeClass('open'); + } + }); + + $('.js-right-sidebar').on('click', function () { + $sidebar.toggleClass('open'); + if (_this.isOpen()) { $overlay.fadeIn(); } else { $overlay.fadeOut(); } + }); + }, + isOpen: function () { + return $('.right-sidebar').hasClass('open'); + } + } + //========================================================================================================================== + + /* Searchbar - Function ================================================================================================ + * You can manage the search bar + * + */ + $.AdminBSB.search = { + activate: function () { + var _this = this; + var $searchBar = $('.search-bar'); + + //Search button click event + $('.js-search').on('click', function () { + _this.showSearchBar(); + }); + + //Close search click event + $searchBar.find('.close-search').on('click', function () { + _this.hideSearchBar(); + }); + + //ESC key on pressed + $searchBar.find('input[type="text"]').on('keyup', function (e) { + if (e.keyCode == 27) { + _this.hideSearchBar(); + } + }); + }, + showSearchBar: function () { + var $searchBar = $('.search-bar'); + $searchBar.addClass('open'); + $searchBar.find('input[type="text"]').focus(); + console.log($searchBar); + }, + hideSearchBar: function () { + var $searchBar = $('.search-bar'); + $searchBar.removeClass('open'); + $searchBar.find('input[type="text"]').val(''); + } + } + //========================================================================================================================== + + /* Navbar - Function ======================================================================================================= + * You can manage the navbar + * + */ + $.AdminBSB.navbar = { + activate: function () { + var $body = $('body'); + var $overlay = $('.overlay'); + + //Open left sidebar panel + $('.bars').on('click', function () { + $body.toggleClass('overlay-open'); + if ($body.hasClass('overlay-open')) { $overlay.fadeIn(); } else { $overlay.fadeOut(); } + }); + + //Close collapse bar on click event + $('.nav [data-close="true"]').on('click', function () { + var isVisible = $('.navbar-toggle').is(':visible'); + var $navbarCollapse = $('.navbar-collapse'); + + if (isVisible) { + $navbarCollapse.slideUp(function () { + $navbarCollapse.removeClass('in').removeAttr('style'); + }); + } + }); + } + } + //========================================================================================================================== + + /* Input - Function ======================================================================================================== + * You can manage the inputs(also textareas) with name of class 'form-control' + * + */ + $.AdminBSB.input = { + activate: function ($parentSelector) { + $parentSelector = $parentSelector || $('body'); + + //On focus event + $parentSelector.find('.form-control').focus(function () { + $(this).parent().addClass('focused'); + }); + + //On focusout event + $parentSelector.find('.form-control').focusout(function () { + var $this = $(this); + if ($this.parents('.form-group').hasClass('form-float')) { + if ($this.val() == '') { $this.parents('.form-line').removeClass('focused'); } + } + else { + $this.parents('.form-line').removeClass('focused'); + } + }); + + //On label click + $parentSelector.on('click', '.form-float .form-line .form-label', function () { + $(this).parent().find('input').focus(); + }); + + //Not blank form + $parentSelector.find('.form-control').each(function () { + if ($(this).val() !== '') { + $(this).parents('.form-line').addClass('focused'); + } + }); + } + } + //========================================================================================================================== + + /* Form - Select - Function ================================================================================================ + * You can manage the 'select' of form elements + * + */ + $.AdminBSB.select = { + activate: function () { + if ($.fn.selectpicker) { $('select:not(.ms)').selectpicker(); } + } + } + //========================================================================================================================== + + /* DropdownMenu - Function ================================================================================================= + * You can manage the dropdown menu + * + */ + + $.AdminBSB.dropdownMenu = { + activate: function () { + var _this = this; + + $('.dropdown, .dropup, .btn-group').on({ + "show.bs.dropdown": function () { + var dropdown = _this.dropdownEffect(this); + _this.dropdownEffectStart(dropdown, dropdown.effectIn); + }, + "shown.bs.dropdown": function () { + var dropdown = _this.dropdownEffect(this); + if (dropdown.effectIn && dropdown.effectOut) { + _this.dropdownEffectEnd(dropdown, function () { }); + } + }, + "hide.bs.dropdown": function (e) { + var dropdown = _this.dropdownEffect(this); + if (dropdown.effectOut) { + e.preventDefault(); + _this.dropdownEffectStart(dropdown, dropdown.effectOut); + _this.dropdownEffectEnd(dropdown, function () { + dropdown.dropdown.removeClass('open'); + }); + } + } + }); + + //Set Waves + Waves.attach('.dropdown-menu li a', ['waves-block']); + Waves.init(); + }, + dropdownEffect: function (target) { + var effectIn = $.AdminBSB.options.dropdownMenu.effectIn, effectOut = $.AdminBSB.options.dropdownMenu.effectOut; + var dropdown = $(target), dropdownMenu = $('.dropdown-menu', target); + + if (dropdown.length > 0) { + var udEffectIn = dropdown.data('effect-in'); + var udEffectOut = dropdown.data('effect-out'); + if (udEffectIn !== undefined) { effectIn = udEffectIn; } + if (udEffectOut !== undefined) { effectOut = udEffectOut; } + } + + return { + target: target, + dropdown: dropdown, + dropdownMenu: dropdownMenu, + effectIn: effectIn, + effectOut: effectOut + }; + }, + dropdownEffectStart: function (data, effectToStart) { + if (effectToStart) { + data.dropdown.addClass('dropdown-animating'); + data.dropdownMenu.addClass('animated dropdown-animated'); + data.dropdownMenu.addClass(effectToStart); + } + }, + dropdownEffectEnd: function (data, callback) { + var animationEnd = 'webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend'; + data.dropdown.one(animationEnd, function () { + data.dropdown.removeClass('dropdown-animating'); + data.dropdownMenu.removeClass('animated dropdown-animated'); + data.dropdownMenu.removeClass(data.effectIn); + data.dropdownMenu.removeClass(data.effectOut); + + if (typeof callback == 'function') { + callback(); + } + }); + } + } + //========================================================================================================================== + + /* Browser - Function ====================================================================================================== + * You can manage browser + * + */ + var edge = 'Microsoft Edge'; + var ie10 = 'Internet Explorer 10'; + var ie11 = 'Internet Explorer 11'; + var opera = 'Opera'; + var firefox = 'Mozilla Firefox'; + var chrome = 'Google Chrome'; + var safari = 'Safari'; + + $.AdminBSB.browser = { + activate: function () { + var _this = this; + var className = _this.getClassName(); + + if (className !== '') $('html').addClass(_this.getClassName()); + }, + getBrowser: function () { + var userAgent = navigator.userAgent.toLowerCase(); + + if (/edge/i.test(userAgent)) { + return edge; + } else if (/rv:11/i.test(userAgent)) { + return ie11; + } else if (/msie 10/i.test(userAgent)) { + return ie10; + } else if (/opr/i.test(userAgent)) { + return opera; + } else if (/chrome/i.test(userAgent)) { + return chrome; + } else if (/firefox/i.test(userAgent)) { + return firefox; + } else if (!!navigator.userAgent.match(/Version\/[\d\.]+.*Safari/)) { + return safari; + } + + return undefined; + }, + getClassName: function () { + var browser = this.getBrowser(); + + if (browser === edge) { + return 'edge'; + } else if (browser === ie11) { + return 'ie11'; + } else if (browser === ie10) { + return 'ie10'; + } else if (browser === opera) { + return 'opera'; + } else if (browser === chrome) { + return 'chrome'; + } else if (browser === firefox) { + return 'firefox'; + } else if (browser === safari) { + return 'safari'; + } else { + return ''; + } + } + } + //========================================================================================================================== + + $.AdminBSB.activateAll = function () { + $.AdminBSB.browser.activate(); + $.AdminBSB.leftSideBar.activate(); + $.AdminBSB.rightSideBar.activate(); + $.AdminBSB.navbar.activate(); + //$.AdminBSB.dropdownMenu.activate(); //Breaks drop downs, so disabled it! + $.AdminBSB.input.activate(); + $.AdminBSB.select.activate(); + $.AdminBSB.search.activate(); + } + +})(); diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/demo.js b/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/demo.js new file mode 100644 index 0000000..140ada9 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/demo.js @@ -0,0 +1,62 @@ +$.AdminBSB.activateDemo = function () { + activateNotificationAndTasksScroll(); + + setSkinListHeightAndScroll(); + setSettingListHeightAndScroll(); + //$(window).resize(function () { + // setSkinListHeightAndScroll(); + // setSettingListHeightAndScroll(); + //}); +}; + +//Skin tab content set height and show scroll +function setSkinListHeightAndScroll() { + var height = $(window).height() - ($('.navbar').innerHeight() + $('.right-sidebar .nav-tabs').outerHeight()); + var $el = $('.demo-choose-skin'); + + $el.slimScroll({ destroy: true }).height('auto'); + $el.parent().find('.slimScrollBar, .slimScrollRail').remove(); + + $el.slimscroll({ + height: height + 'px', + color: 'rgba(0,0,0,0.5)', + size: '4px', + alwaysVisible: false, + borderRadius: '0', + railBorderRadius: '0' + }); +} + +//Setting tab content set height and show scroll +function setSettingListHeightAndScroll() { + var height = $(window).height() - ($('.navbar').innerHeight() + $('.right-sidebar .nav-tabs').outerHeight()); + var $el = $('.right-sidebar .demo-settings'); + + $el.slimScroll({ destroy: true }).height('auto'); + $el.parent().find('.slimScrollBar, .slimScrollRail').remove(); + + $el.slimscroll({ + height: height + 'px', + color: 'rgba(0,0,0,0.5)', + size: '4px', + alwaysVisible: false, + borderRadius: '0', + railBorderRadius: '0' + }); +} + +//Activate notification and task dropdown on top right menu +function activateNotificationAndTasksScroll() { + $('.navbar-right .dropdown-menu .body .menu').slimscroll({ + height: '254px', + color: 'rgba(0,0,0,0.5)', + size: '4px', + alwaysVisible: false, + borderRadius: '0', + railBorderRadius: '0' + }); +} + +$.AdminBSB.demo = $.AdminBSB.demo || {}; +$.AdminBSB.demo.setSkinListHeightAndScroll = setSkinListHeightAndScroll; +$.AdminBSB.demo.setSettingListHeightAndScroll = setSettingListHeightAndScroll; diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/helpers.js b/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/helpers.js new file mode 100644 index 0000000..37e3d32 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/helpers.js @@ -0,0 +1,13 @@ +function hexToRgb(hexCode) { + var patt = /^#([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})$/; + var matches = patt.exec(hexCode); + var rgb = "rgb(" + parseInt(matches[1], 16) + "," + parseInt(matches[2], 16) + "," + parseInt(matches[3], 16) + ")"; + return rgb; +} + +function hexToRgba(hexCode, opacity) { + var patt = /^#([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})$/; + var matches = patt.exec(hexCode); + var rgb = "rgba(" + parseInt(matches[1], 16) + "," + parseInt(matches[2], 16) + "," + parseInt(matches[3], 16) + "," + opacity + ")"; + return rgb; +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/jquery.validate.js b/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/jquery.validate.js new file mode 100644 index 0000000..e110f1d --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/js/jquery.validate.js @@ -0,0 +1,1574 @@ +/*! + * jQuery Validation Plugin v1.15.1 + * + * http://jqueryvalidation.org/ + * + * Copyright (c) 2016 Jörn Zaefferer + * Released under the MIT license + */ +(function( factory ) { + if ( typeof define === "function" && define.amd ) { + define( ["jquery"], factory ); + } else if (typeof module === "object" && module.exports) { + module.exports = factory( require( "jquery" ) ); + } else { + factory( jQuery ); + } +}(function( $ ) { + +$.extend( $.fn, { + + // http://jqueryvalidation.org/validate/ + validate: function( options ) { + + // If nothing is selected, return nothing; can't chain anyway + if ( !this.length ) { + if ( options && options.debug && window.console ) { + console.warn( "Nothing selected, can't validate, returning nothing." ); + } + return; + } + + // Check if a validator for this form was already created + var validator = $.data( this[ 0 ], "validator" ); + if ( validator ) { + return validator; + } + + // Add novalidate tag if HTML5. + this.attr( "novalidate", "novalidate" ); + + validator = new $.validator( options, this[ 0 ] ); + $.data( this[ 0 ], "validator", validator ); + + if ( validator.settings.onsubmit ) { + + this.on( "click.validate", ":submit", function( event ) { + if ( validator.settings.submitHandler ) { + validator.submitButton = event.target; + } + + // Allow suppressing validation by adding a cancel class to the submit button + if ( $( this ).hasClass( "cancel" ) ) { + validator.cancelSubmit = true; + } + + // Allow suppressing validation by adding the html5 formnovalidate attribute to the submit button + if ( $( this ).attr( "formnovalidate" ) !== undefined ) { + validator.cancelSubmit = true; + } + } ); + + // Validate the form on submit + this.on( "submit.validate", function( event ) { + if ( validator.settings.debug ) { + + // Prevent form submit to be able to see console output + event.preventDefault(); + } + function handle() { + var hidden, result; + if ( validator.settings.submitHandler ) { + if ( validator.submitButton ) { + + // Insert a hidden input as a replacement for the missing submit button + hidden = $( "" ) + .attr( "name", validator.submitButton.name ) + .val( $( validator.submitButton ).val() ) + .appendTo( validator.currentForm ); + } + result = validator.settings.submitHandler.call( validator, validator.currentForm, event ); + if ( validator.submitButton ) { + + // And clean up afterwards; thanks to no-block-scope, hidden can be referenced + hidden.remove(); + } + if ( result !== undefined ) { + return result; + } + return false; + } + return true; + } + + // Prevent submit for invalid forms or custom submit handlers + if ( validator.cancelSubmit ) { + validator.cancelSubmit = false; + return handle(); + } + if ( validator.form() ) { + if ( validator.pendingRequest ) { + validator.formSubmitted = true; + return false; + } + return handle(); + } else { + validator.focusInvalid(); + return false; + } + } ); + } + + return validator; + }, + + // http://jqueryvalidation.org/valid/ + valid: function() { + var valid, validator, errorList; + + if ( $( this[ 0 ] ).is( "form" ) ) { + valid = this.validate().form(); + } else { + errorList = []; + valid = true; + validator = $( this[ 0 ].form ).validate(); + this.each( function() { + valid = validator.element( this ) && valid; + if ( !valid ) { + errorList = errorList.concat( validator.errorList ); + } + } ); + validator.errorList = errorList; + } + return valid; + }, + + // http://jqueryvalidation.org/rules/ + rules: function( command, argument ) { + var element = this[ 0 ], + settings, staticRules, existingRules, data, param, filtered; + + // If nothing is selected, return empty object; can't chain anyway + if ( element == null || element.form == null ) { + return; + } + + if ( command ) { + settings = $.data( element.form, "validator" ).settings; + staticRules = settings.rules; + existingRules = $.validator.staticRules( element ); + switch ( command ) { + case "add": + $.extend( existingRules, $.validator.normalizeRule( argument ) ); + + // Remove messages from rules, but allow them to be set separately + delete existingRules.messages; + staticRules[ element.name ] = existingRules; + if ( argument.messages ) { + settings.messages[ element.name ] = $.extend( settings.messages[ element.name ], argument.messages ); + } + break; + case "remove": + if ( !argument ) { + delete staticRules[ element.name ]; + return existingRules; + } + filtered = {}; + $.each( argument.split( /\s/ ), function( index, method ) { + filtered[ method ] = existingRules[ method ]; + delete existingRules[ method ]; + if ( method === "required" ) { + $( element ).removeAttr( "aria-required" ); + } + } ); + return filtered; + } + } + + data = $.validator.normalizeRules( + $.extend( + {}, + $.validator.classRules( element ), + $.validator.attributeRules( element ), + $.validator.dataRules( element ), + $.validator.staticRules( element ) + ), element ); + + // Make sure required is at front + if ( data.required ) { + param = data.required; + delete data.required; + data = $.extend( { required: param }, data ); + $( element ).attr( "aria-required", "true" ); + } + + // Make sure remote is at back + if ( data.remote ) { + param = data.remote; + delete data.remote; + data = $.extend( data, { remote: param } ); + } + + return data; + } +} ); + +// Custom selectors +$.extend( $.expr[ ":" ], { + + // http://jqueryvalidation.org/blank-selector/ + blank: function( a ) { + return !$.trim( "" + $( a ).val() ); + }, + + // http://jqueryvalidation.org/filled-selector/ + filled: function( a ) { + var val = $( a ).val(); + return val !== null && !!$.trim( "" + val ); + }, + + // http://jqueryvalidation.org/unchecked-selector/ + unchecked: function( a ) { + return !$( a ).prop( "checked" ); + } +} ); + +// Constructor for validator +$.validator = function( options, form ) { + this.settings = $.extend( true, {}, $.validator.defaults, options ); + this.currentForm = form; + this.init(); +}; + +// http://jqueryvalidation.org/jQuery.validator.format/ +$.validator.format = function( source, params ) { + if ( arguments.length === 1 ) { + return function() { + var args = $.makeArray( arguments ); + args.unshift( source ); + return $.validator.format.apply( this, args ); + }; + } + if ( params === undefined ) { + return source; + } + if ( arguments.length > 2 && params.constructor !== Array ) { + params = $.makeArray( arguments ).slice( 1 ); + } + if ( params.constructor !== Array ) { + params = [ params ]; + } + $.each( params, function( i, n ) { + source = source.replace( new RegExp( "\\{" + i + "\\}", "g" ), function() { + return n; + } ); + } ); + return source; +}; + +$.extend( $.validator, { + + defaults: { + messages: {}, + groups: {}, + rules: {}, + errorClass: "error", + pendingClass: "pending", + validClass: "valid", + errorElement: "label", + focusCleanup: false, + focusInvalid: true, + errorContainer: $( [] ), + errorLabelContainer: $( [] ), + onsubmit: true, + ignore: ":hidden", + ignoreTitle: false, + onfocusin: function( element ) { + this.lastActive = element; + + // Hide error label and remove error class on focus if enabled + if ( this.settings.focusCleanup ) { + if ( this.settings.unhighlight ) { + this.settings.unhighlight.call( this, element, this.settings.errorClass, this.settings.validClass ); + } + this.hideThese( this.errorsFor( element ) ); + } + }, + onfocusout: function( element ) { + if ( !this.checkable( element ) && ( element.name in this.submitted || !this.optional( element ) ) ) { + this.element( element ); + } + }, + onkeyup: function( element, event ) { + + // Avoid revalidate the field when pressing one of the following keys + // Shift => 16 + // Ctrl => 17 + // Alt => 18 + // Caps lock => 20 + // End => 35 + // Home => 36 + // Left arrow => 37 + // Up arrow => 38 + // Right arrow => 39 + // Down arrow => 40 + // Insert => 45 + // Num lock => 144 + // AltGr key => 225 + var excludedKeys = [ + 16, 17, 18, 20, 35, 36, 37, + 38, 39, 40, 45, 144, 225 + ]; + + if ( event.which === 9 && this.elementValue( element ) === "" || $.inArray( event.keyCode, excludedKeys ) !== -1 ) { + return; + } else if ( element.name in this.submitted || element.name in this.invalid ) { + this.element( element ); + } + }, + onclick: function( element ) { + + // Click on selects, radiobuttons and checkboxes + if ( element.name in this.submitted ) { + this.element( element ); + + // Or option elements, check parent select in that case + } else if ( element.parentNode.name in this.submitted ) { + this.element( element.parentNode ); + } + }, + highlight: function( element, errorClass, validClass ) { + if ( element.type === "radio" ) { + this.findByName( element.name ).addClass( errorClass ).removeClass( validClass ); + } else { + $( element ).addClass( errorClass ).removeClass( validClass ); + } + }, + unhighlight: function( element, errorClass, validClass ) { + if ( element.type === "radio" ) { + this.findByName( element.name ).removeClass( errorClass ).addClass( validClass ); + } else { + $( element ).removeClass( errorClass ).addClass( validClass ); + } + } + }, + + // http://jqueryvalidation.org/jQuery.validator.setDefaults/ + setDefaults: function( settings ) { + $.extend( $.validator.defaults, settings ); + }, + + messages: { + required: "This field is required.", + remote: "Please fix this field.", + email: "Please enter a valid email address.", + url: "Please enter a valid URL.", + date: "Please enter a valid date.", + dateISO: "Please enter a valid date (ISO).", + number: "Please enter a valid number.", + digits: "Please enter only digits.", + equalTo: "Please enter the same value again.", + maxlength: $.validator.format( "Please enter no more than {0} characters." ), + minlength: $.validator.format( "Please enter at least {0} characters." ), + rangelength: $.validator.format( "Please enter a value between {0} and {1} characters long." ), + range: $.validator.format( "Please enter a value between {0} and {1}." ), + max: $.validator.format( "Please enter a value less than or equal to {0}." ), + min: $.validator.format( "Please enter a value greater than or equal to {0}." ), + step: $.validator.format( "Please enter a multiple of {0}." ) + }, + + autoCreateRanges: false, + + prototype: { + + init: function() { + this.labelContainer = $( this.settings.errorLabelContainer ); + this.errorContext = this.labelContainer.length && this.labelContainer || $( this.currentForm ); + this.containers = $( this.settings.errorContainer ).add( this.settings.errorLabelContainer ); + this.submitted = {}; + this.valueCache = {}; + this.pendingRequest = 0; + this.pending = {}; + this.invalid = {}; + this.reset(); + + var groups = ( this.groups = {} ), + rules; + $.each( this.settings.groups, function( key, value ) { + if ( typeof value === "string" ) { + value = value.split( /\s/ ); + } + $.each( value, function( index, name ) { + groups[ name ] = key; + } ); + } ); + rules = this.settings.rules; + $.each( rules, function( key, value ) { + rules[ key ] = $.validator.normalizeRule( value ); + } ); + + function delegate( event ) { + + // Set form expando on contenteditable + if ( !this.form && this.hasAttribute( "contenteditable" ) ) { + this.form = $( this ).closest( "form" )[ 0 ]; + } + + var validator = $.data( this.form, "validator" ), + eventType = "on" + event.type.replace( /^validate/, "" ), + settings = validator.settings; + if ( settings[ eventType ] && !$( this ).is( settings.ignore ) ) { + settings[ eventType ].call( validator, this, event ); + } + } + + $( this.currentForm ) + .on( "focusin.validate focusout.validate keyup.validate", + ":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'], " + + "[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], " + + "[type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], " + + "[type='radio'], [type='checkbox'], [contenteditable]", delegate ) + + // Support: Chrome, oldIE + // "select" is provided as event.target when clicking a option + .on( "click.validate", "select, option, [type='radio'], [type='checkbox']", delegate ); + + if ( this.settings.invalidHandler ) { + $( this.currentForm ).on( "invalid-form.validate", this.settings.invalidHandler ); + } + + // Add aria-required to any Static/Data/Class required fields before first validation + // Screen readers require this attribute to be present before the initial submission http://www.w3.org/TR/WCAG-TECHS/ARIA2.html + $( this.currentForm ).find( "[required], [data-rule-required], .required" ).attr( "aria-required", "true" ); + }, + + // http://jqueryvalidation.org/Validator.form/ + form: function() { + this.checkForm(); + $.extend( this.submitted, this.errorMap ); + this.invalid = $.extend( {}, this.errorMap ); + if ( !this.valid() ) { + $( this.currentForm ).triggerHandler( "invalid-form", [ this ] ); + } + this.showErrors(); + return this.valid(); + }, + + checkForm: function() { + this.prepareForm(); + for ( var i = 0, elements = ( this.currentElements = this.elements() ); elements[ i ]; i++ ) { + this.check( elements[ i ] ); + } + return this.valid(); + }, + + // http://jqueryvalidation.org/Validator.element/ + element: function( element ) { + var cleanElement = this.clean( element ), + checkElement = this.validationTargetFor( cleanElement ), + v = this, + result = true, + rs, group; + + if ( checkElement === undefined ) { + delete this.invalid[ cleanElement.name ]; + } else { + this.prepareElement( checkElement ); + this.currentElements = $( checkElement ); + + // If this element is grouped, then validate all group elements already + // containing a value + group = this.groups[ checkElement.name ]; + if ( group ) { + $.each( this.groups, function( name, testgroup ) { + if ( testgroup === group && name !== checkElement.name ) { + cleanElement = v.validationTargetFor( v.clean( v.findByName( name ) ) ); + if ( cleanElement && cleanElement.name in v.invalid ) { + v.currentElements.push( cleanElement ); + result = v.check( cleanElement ) && result; + } + } + } ); + } + + rs = this.check( checkElement ) !== false; + result = result && rs; + if ( rs ) { + this.invalid[ checkElement.name ] = false; + } else { + this.invalid[ checkElement.name ] = true; + } + + if ( !this.numberOfInvalids() ) { + + // Hide error containers on last error + this.toHide = this.toHide.add( this.containers ); + } + this.showErrors(); + + // Add aria-invalid status for screen readers + $( element ).attr( "aria-invalid", !rs ); + } + + return result; + }, + + // http://jqueryvalidation.org/Validator.showErrors/ + showErrors: function( errors ) { + if ( errors ) { + var validator = this; + + // Add items to error list and map + $.extend( this.errorMap, errors ); + this.errorList = $.map( this.errorMap, function( message, name ) { + return { + message: message, + element: validator.findByName( name )[ 0 ] + }; + } ); + + // Remove items from success list + this.successList = $.grep( this.successList, function( element ) { + return !( element.name in errors ); + } ); + } + if ( this.settings.showErrors ) { + this.settings.showErrors.call( this, this.errorMap, this.errorList ); + } else { + this.defaultShowErrors(); + } + }, + + // http://jqueryvalidation.org/Validator.resetForm/ + resetForm: function() { + if ( $.fn.resetForm ) { + $( this.currentForm ).resetForm(); + } + this.invalid = {}; + this.submitted = {}; + this.prepareForm(); + this.hideErrors(); + var elements = this.elements() + .removeData( "previousValue" ) + .removeAttr( "aria-invalid" ); + + this.resetElements( elements ); + }, + + resetElements: function( elements ) { + var i; + + if ( this.settings.unhighlight ) { + for ( i = 0; elements[ i ]; i++ ) { + this.settings.unhighlight.call( this, elements[ i ], + this.settings.errorClass, "" ); + this.findByName( elements[ i ].name ).removeClass( this.settings.validClass ); + } + } else { + elements + .removeClass( this.settings.errorClass ) + .removeClass( this.settings.validClass ); + } + }, + + numberOfInvalids: function() { + return this.objectLength( this.invalid ); + }, + + objectLength: function( obj ) { + /* jshint unused: false */ + var count = 0, + i; + for ( i in obj ) { + if ( obj[ i ] ) { + count++; + } + } + return count; + }, + + hideErrors: function() { + this.hideThese( this.toHide ); + }, + + hideThese: function( errors ) { + errors.not( this.containers ).text( "" ); + this.addWrapper( errors ).hide(); + }, + + valid: function() { + return this.size() === 0; + }, + + size: function() { + return this.errorList.length; + }, + + focusInvalid: function() { + if ( this.settings.focusInvalid ) { + try { + $( this.findLastActive() || this.errorList.length && this.errorList[ 0 ].element || [] ) + .filter( ":visible" ) + .focus() + + // Manually trigger focusin event; without it, focusin handler isn't called, findLastActive won't have anything to find + .trigger( "focusin" ); + } catch ( e ) { + + // Ignore IE throwing errors when focusing hidden elements + } + } + }, + + findLastActive: function() { + var lastActive = this.lastActive; + return lastActive && $.grep( this.errorList, function( n ) { + return n.element.name === lastActive.name; + } ).length === 1 && lastActive; + }, + + elements: function() { + var validator = this, + rulesCache = {}; + + // Select all valid inputs inside the form (no submit or reset buttons) + return $( this.currentForm ) + .find( "input, select, textarea, [contenteditable]" ) + .not( ":submit, :reset, :image, :disabled" ) + .not( this.settings.ignore ) + .filter( function() { + var name = this.name || $( this ).attr( "name" ); // For contenteditable + if ( !name && validator.settings.debug && window.console ) { + console.error( "%o has no name assigned", this ); + } + + // Set form expando on contenteditable + if ( this.hasAttribute( "contenteditable" ) ) { + this.form = $( this ).closest( "form" )[ 0 ]; + } + + // Select only the first element for each name, and only those with rules specified + if ( name in rulesCache || !validator.objectLength( $( this ).rules() ) ) { + return false; + } + + rulesCache[ name ] = true; + return true; + } ); + }, + + clean: function( selector ) { + return $( selector )[ 0 ]; + }, + + errors: function() { + var errorClass = this.settings.errorClass.split( " " ).join( "." ); + return $( this.settings.errorElement + "." + errorClass, this.errorContext ); + }, + + resetInternals: function() { + this.successList = []; + this.errorList = []; + this.errorMap = {}; + this.toShow = $( [] ); + this.toHide = $( [] ); + }, + + reset: function() { + this.resetInternals(); + this.currentElements = $( [] ); + }, + + prepareForm: function() { + this.reset(); + this.toHide = this.errors().add( this.containers ); + }, + + prepareElement: function( element ) { + this.reset(); + this.toHide = this.errorsFor( element ); + }, + + elementValue: function( element ) { + var $element = $( element ), + type = element.type, + val, idx; + + if ( type === "radio" || type === "checkbox" ) { + return this.findByName( element.name ).filter( ":checked" ).val(); + } else if ( type === "number" && typeof element.validity !== "undefined" ) { + return element.validity.badInput ? "NaN" : $element.val(); + } + + if ( element.hasAttribute( "contenteditable" ) ) { + val = $element.text(); + } else { + val = $element.val(); + } + + if ( type === "file" ) { + + // Modern browser (chrome & safari) + if ( val.substr( 0, 12 ) === "C:\\fakepath\\" ) { + return val.substr( 12 ); + } + + // Legacy browsers + // Unix-based path + idx = val.lastIndexOf( "/" ); + if ( idx >= 0 ) { + return val.substr( idx + 1 ); + } + + // Windows-based path + idx = val.lastIndexOf( "\\" ); + if ( idx >= 0 ) { + return val.substr( idx + 1 ); + } + + // Just the file name + return val; + } + + if ( typeof val === "string" ) { + return val.replace( /\r/g, "" ); + } + return val; + }, + + check: function( element ) { + element = this.validationTargetFor( this.clean( element ) ); + + var rules = $( element ).rules(), + rulesCount = $.map( rules, function( n, i ) { + return i; + } ).length, + dependencyMismatch = false, + val = this.elementValue( element ), + result, method, rule; + + // If a normalizer is defined for this element, then + // call it to retreive the changed value instead + // of using the real one. + // Note that `this` in the normalizer is `element`. + if ( typeof rules.normalizer === "function" ) { + val = rules.normalizer.call( element, val ); + + if ( typeof val !== "string" ) { + throw new TypeError( "The normalizer should return a string value." ); + } + + // Delete the normalizer from rules to avoid treating + // it as a pre-defined method. + delete rules.normalizer; + } + + for ( method in rules ) { + rule = { method: method, parameters: rules[ method ] }; + try { + result = $.validator.methods[ method ].call( this, val, element, rule.parameters ); + + // If a method indicates that the field is optional and therefore valid, + // don't mark it as valid when there are no other rules + if ( result === "dependency-mismatch" && rulesCount === 1 ) { + dependencyMismatch = true; + continue; + } + dependencyMismatch = false; + + if ( result === "pending" ) { + this.toHide = this.toHide.not( this.errorsFor( element ) ); + return; + } + + if ( !result ) { + this.formatAndAdd( element, rule ); + return false; + } + } catch ( e ) { + if ( this.settings.debug && window.console ) { + console.log( "Exception occurred when checking element " + element.id + ", check the '" + rule.method + "' method.", e ); + } + if ( e instanceof TypeError ) { + e.message += ". Exception occurred when checking element " + element.id + ", check the '" + rule.method + "' method."; + } + + throw e; + } + } + if ( dependencyMismatch ) { + return; + } + if ( this.objectLength( rules ) ) { + this.successList.push( element ); + } + return true; + }, + + // Return the custom message for the given element and validation method + // specified in the element's HTML5 data attribute + // return the generic message if present and no method specific message is present + customDataMessage: function( element, method ) { + return $( element ).data( "msg" + method.charAt( 0 ).toUpperCase() + + method.substring( 1 ).toLowerCase() ) || $( element ).data( "msg" ); + }, + + // Return the custom message for the given element name and validation method + customMessage: function( name, method ) { + var m = this.settings.messages[ name ]; + return m && ( m.constructor === String ? m : m[ method ] ); + }, + + // Return the first defined argument, allowing empty strings + findDefined: function() { + for ( var i = 0; i < arguments.length; i++ ) { + if ( arguments[ i ] !== undefined ) { + return arguments[ i ]; + } + } + return undefined; + }, + + // The second parameter 'rule' used to be a string, and extended to an object literal + // of the following form: + // rule = { + // method: "method name", + // parameters: "the given method parameters" + // } + // + // The old behavior still supported, kept to maintain backward compatibility with + // old code, and will be removed in the next major release. + defaultMessage: function( element, rule ) { + if ( typeof rule === "string" ) { + rule = { method: rule }; + } + + var message = this.findDefined( + this.customMessage( element.name, rule.method ), + this.customDataMessage( element, rule.method ), + + // 'title' is never undefined, so handle empty string as undefined + !this.settings.ignoreTitle && element.title || undefined, + $.validator.messages[ rule.method ], + "Warning: No message defined for " + element.name + "" + ), + theregex = /\$?\{(\d+)\}/g; + if ( typeof message === "function" ) { + message = message.call( this, rule.parameters, element ); + } else if ( theregex.test( message ) ) { + message = $.validator.format( message.replace( theregex, "{$1}" ), rule.parameters ); + } + + return message; + }, + + formatAndAdd: function( element, rule ) { + var message = this.defaultMessage( element, rule ); + + this.errorList.push( { + message: message, + element: element, + method: rule.method + } ); + + this.errorMap[ element.name ] = message; + this.submitted[ element.name ] = message; + }, + + addWrapper: function( toToggle ) { + if ( this.settings.wrapper ) { + toToggle = toToggle.add( toToggle.parent( this.settings.wrapper ) ); + } + return toToggle; + }, + + defaultShowErrors: function() { + var i, elements, error; + for ( i = 0; this.errorList[ i ]; i++ ) { + error = this.errorList[ i ]; + if ( this.settings.highlight ) { + this.settings.highlight.call( this, error.element, this.settings.errorClass, this.settings.validClass ); + } + this.showLabel( error.element, error.message ); + } + if ( this.errorList.length ) { + this.toShow = this.toShow.add( this.containers ); + } + if ( this.settings.success ) { + for ( i = 0; this.successList[ i ]; i++ ) { + this.showLabel( this.successList[ i ] ); + } + } + if ( this.settings.unhighlight ) { + for ( i = 0, elements = this.validElements(); elements[ i ]; i++ ) { + this.settings.unhighlight.call( this, elements[ i ], this.settings.errorClass, this.settings.validClass ); + } + } + this.toHide = this.toHide.not( this.toShow ); + this.hideErrors(); + this.addWrapper( this.toShow ).show(); + }, + + validElements: function() { + return this.currentElements.not( this.invalidElements() ); + }, + + invalidElements: function() { + return $( this.errorList ).map( function() { + return this.element; + } ); + }, + + showLabel: function( element, message ) { + var place, group, errorID, v, + error = this.errorsFor( element ), + elementID = this.idOrName( element ), + describedBy = $( element ).attr( "aria-describedby" ); + + if ( error.length ) { + + // Refresh error/success class + error.removeClass( this.settings.validClass ).addClass( this.settings.errorClass ); + + // Replace message on existing label + error.html( message ); + } else { + + // Create error element + error = $( "<" + this.settings.errorElement + ">" ) + .attr( "id", elementID + "-error" ) + .addClass( this.settings.errorClass ) + .html( message || "" ); + + // Maintain reference to the element to be placed into the DOM + place = error; + if ( this.settings.wrapper ) { + + // Make sure the element is visible, even in IE + // actually showing the wrapped element is handled elsewhere + place = error.hide().show().wrap( "<" + this.settings.wrapper + "/>" ).parent(); + } + if ( this.labelContainer.length ) { + this.labelContainer.append( place ); + } else if ( this.settings.errorPlacement ) { + this.settings.errorPlacement.call( this, place, $( element ) ); + } else { + place.insertAfter( element ); + } + + // Link error back to the element + if ( error.is( "label" ) ) { + + // If the error is a label, then associate using 'for' + error.attr( "for", elementID ); + + // If the element is not a child of an associated label, then it's necessary + // to explicitly apply aria-describedby + } else if ( error.parents( "label[for='" + this.escapeCssMeta( elementID ) + "']" ).length === 0 ) { + errorID = error.attr( "id" ); + + // Respect existing non-error aria-describedby + if ( !describedBy ) { + describedBy = errorID; + } else if ( !describedBy.match( new RegExp( "\\b" + this.escapeCssMeta( errorID ) + "\\b" ) ) ) { + + // Add to end of list if not already present + describedBy += " " + errorID; + } + $( element ).attr( "aria-describedby", describedBy ); + + // If this element is grouped, then assign to all elements in the same group + group = this.groups[ element.name ]; + if ( group ) { + v = this; + $.each( v.groups, function( name, testgroup ) { + if ( testgroup === group ) { + $( "[name='" + v.escapeCssMeta( name ) + "']", v.currentForm ) + .attr( "aria-describedby", error.attr( "id" ) ); + } + } ); + } + } + } + if ( !message && this.settings.success ) { + error.text( "" ); + if ( typeof this.settings.success === "string" ) { + error.addClass( this.settings.success ); + } else { + this.settings.success( error, element ); + } + } + this.toShow = this.toShow.add( error ); + }, + + errorsFor: function( element ) { + var name = this.escapeCssMeta( this.idOrName( element ) ), + describer = $( element ).attr( "aria-describedby" ), + selector = "label[for='" + name + "'], label[for='" + name + "'] *"; + + // 'aria-describedby' should directly reference the error element + if ( describer ) { + selector = selector + ", #" + this.escapeCssMeta( describer ) + .replace( /\s+/g, ", #" ); + } + + return this + .errors() + .filter( selector ); + }, + + // See https://api.jquery.com/category/selectors/, for CSS + // meta-characters that should be escaped in order to be used with JQuery + // as a literal part of a name/id or any selector. + escapeCssMeta: function( string ) { + return string.replace( /([\\!"#$%&'()*+,./:;<=>?@\[\]^`{|}~])/g, "\\$1" ); + }, + + idOrName: function( element ) { + return this.groups[ element.name ] || ( this.checkable( element ) ? element.name : element.id || element.name ); + }, + + validationTargetFor: function( element ) { + + // If radio/checkbox, validate first element in group instead + if ( this.checkable( element ) ) { + element = this.findByName( element.name ); + } + + // Always apply ignore filter + return $( element ).not( this.settings.ignore )[ 0 ]; + }, + + checkable: function( element ) { + return ( /radio|checkbox/i ).test( element.type ); + }, + + findByName: function( name ) { + return $( this.currentForm ).find( "[name='" + this.escapeCssMeta( name ) + "']" ); + }, + + getLength: function( value, element ) { + switch ( element.nodeName.toLowerCase() ) { + case "select": + return $( "option:selected", element ).length; + case "input": + if ( this.checkable( element ) ) { + return this.findByName( element.name ).filter( ":checked" ).length; + } + } + return value.length; + }, + + depend: function( param, element ) { + return this.dependTypes[ typeof param ] ? this.dependTypes[ typeof param ]( param, element ) : true; + }, + + dependTypes: { + "boolean": function( param ) { + return param; + }, + "string": function( param, element ) { + return !!$( param, element.form ).length; + }, + "function": function( param, element ) { + return param( element ); + } + }, + + optional: function( element ) { + var val = this.elementValue( element ); + return !$.validator.methods.required.call( this, val, element ) && "dependency-mismatch"; + }, + + startRequest: function( element ) { + if ( !this.pending[ element.name ] ) { + this.pendingRequest++; + $( element ).addClass( this.settings.pendingClass ); + this.pending[ element.name ] = true; + } + }, + + stopRequest: function( element, valid ) { + this.pendingRequest--; + + // Sometimes synchronization fails, make sure pendingRequest is never < 0 + if ( this.pendingRequest < 0 ) { + this.pendingRequest = 0; + } + delete this.pending[ element.name ]; + $( element ).removeClass( this.settings.pendingClass ); + if ( valid && this.pendingRequest === 0 && this.formSubmitted && this.form() ) { + $( this.currentForm ).submit(); + this.formSubmitted = false; + } else if ( !valid && this.pendingRequest === 0 && this.formSubmitted ) { + $( this.currentForm ).triggerHandler( "invalid-form", [ this ] ); + this.formSubmitted = false; + } + }, + + previousValue: function( element, method ) { + method = typeof method === "string" && method || "remote"; + + return $.data( element, "previousValue" ) || $.data( element, "previousValue", { + old: null, + valid: true, + message: this.defaultMessage( element, { method: method } ) + } ); + }, + + // Cleans up all forms and elements, removes validator-specific events + destroy: function() { + this.resetForm(); + + $( this.currentForm ) + .off( ".validate" ) + .removeData( "validator" ) + .find( ".validate-equalTo-blur" ) + .off( ".validate-equalTo" ) + .removeClass( "validate-equalTo-blur" ); + } + + }, + + classRuleSettings: { + required: { required: true }, + email: { email: true }, + url: { url: true }, + date: { date: true }, + dateISO: { dateISO: true }, + number: { number: true }, + digits: { digits: true }, + creditcard: { creditcard: true } + }, + + addClassRules: function( className, rules ) { + if ( className.constructor === String ) { + this.classRuleSettings[ className ] = rules; + } else { + $.extend( this.classRuleSettings, className ); + } + }, + + classRules: function( element ) { + var rules = {}, + classes = $( element ).attr( "class" ); + + if ( classes ) { + $.each( classes.split( " " ), function() { + if ( this in $.validator.classRuleSettings ) { + $.extend( rules, $.validator.classRuleSettings[ this ] ); + } + } ); + } + return rules; + }, + + normalizeAttributeRule: function( rules, type, method, value ) { + + // Convert the value to a number for number inputs, and for text for backwards compability + // allows type="date" and others to be compared as strings + if ( /min|max|step/.test( method ) && ( type === null || /number|range|text/.test( type ) ) ) { + value = Number( value ); + + // Support Opera Mini, which returns NaN for undefined minlength + if ( isNaN( value ) ) { + value = undefined; + } + } + + if ( value || value === 0 ) { + rules[ method ] = value; + } else if ( type === method && type !== "range" ) { + + // Exception: the jquery validate 'range' method + // does not test for the html5 'range' type + rules[ method ] = true; + } + }, + + attributeRules: function( element ) { + var rules = {}, + $element = $( element ), + type = element.getAttribute( "type" ), + method, value; + + for ( method in $.validator.methods ) { + + // Support for in both html5 and older browsers + if ( method === "required" ) { + value = element.getAttribute( method ); + + // Some browsers return an empty string for the required attribute + // and non-HTML5 browsers might have required="" markup + if ( value === "" ) { + value = true; + } + + // Force non-HTML5 browsers to return bool + value = !!value; + } else { + value = $element.attr( method ); + } + + this.normalizeAttributeRule( rules, type, method, value ); + } + + // 'maxlength' may be returned as -1, 2147483647 ( IE ) and 524288 ( safari ) for text inputs + if ( rules.maxlength && /-1|2147483647|524288/.test( rules.maxlength ) ) { + delete rules.maxlength; + } + + return rules; + }, + + dataRules: function( element ) { + var rules = {}, + $element = $( element ), + type = element.getAttribute( "type" ), + method, value; + + for ( method in $.validator.methods ) { + value = $element.data( "rule" + method.charAt( 0 ).toUpperCase() + method.substring( 1 ).toLowerCase() ); + this.normalizeAttributeRule( rules, type, method, value ); + } + return rules; + }, + + staticRules: function( element ) { + var rules = {}, + validator = $.data( element.form, "validator" ); + + if ( validator.settings.rules ) { + rules = $.validator.normalizeRule( validator.settings.rules[ element.name ] ) || {}; + } + return rules; + }, + + normalizeRules: function( rules, element ) { + + // Handle dependency check + $.each( rules, function( prop, val ) { + + // Ignore rule when param is explicitly false, eg. required:false + if ( val === false ) { + delete rules[ prop ]; + return; + } + if ( val.param || val.depends ) { + var keepRule = true; + switch ( typeof val.depends ) { + case "string": + keepRule = !!$( val.depends, element.form ).length; + break; + case "function": + keepRule = val.depends.call( element, element ); + break; + } + if ( keepRule ) { + rules[ prop ] = val.param !== undefined ? val.param : true; + } else { + $.data( element.form, "validator" ).resetElements( $( element ) ); + delete rules[ prop ]; + } + } + } ); + + // Evaluate parameters + $.each( rules, function( rule, parameter ) { + rules[ rule ] = $.isFunction( parameter ) && rule !== "normalizer" ? parameter( element ) : parameter; + } ); + + // Clean number parameters + $.each( [ "minlength", "maxlength" ], function() { + if ( rules[ this ] ) { + rules[ this ] = Number( rules[ this ] ); + } + } ); + $.each( [ "rangelength", "range" ], function() { + var parts; + if ( rules[ this ] ) { + if ( $.isArray( rules[ this ] ) ) { + rules[ this ] = [ Number( rules[ this ][ 0 ] ), Number( rules[ this ][ 1 ] ) ]; + } else if ( typeof rules[ this ] === "string" ) { + parts = rules[ this ].replace( /[\[\]]/g, "" ).split( /[\s,]+/ ); + rules[ this ] = [ Number( parts[ 0 ] ), Number( parts[ 1 ] ) ]; + } + } + } ); + + if ( $.validator.autoCreateRanges ) { + + // Auto-create ranges + if ( rules.min != null && rules.max != null ) { + rules.range = [ rules.min, rules.max ]; + delete rules.min; + delete rules.max; + } + if ( rules.minlength != null && rules.maxlength != null ) { + rules.rangelength = [ rules.minlength, rules.maxlength ]; + delete rules.minlength; + delete rules.maxlength; + } + } + + return rules; + }, + + // Converts a simple string to a {string: true} rule, e.g., "required" to {required:true} + normalizeRule: function( data ) { + if ( typeof data === "string" ) { + var transformed = {}; + $.each( data.split( /\s/ ), function() { + transformed[ this ] = true; + } ); + data = transformed; + } + return data; + }, + + // http://jqueryvalidation.org/jQuery.validator.addMethod/ + addMethod: function( name, method, message ) { + $.validator.methods[ name ] = method; + $.validator.messages[ name ] = message !== undefined ? message : $.validator.messages[ name ]; + if ( method.length < 3 ) { + $.validator.addClassRules( name, $.validator.normalizeRule( name ) ); + } + }, + + // http://jqueryvalidation.org/jQuery.validator.methods/ + methods: { + + // http://jqueryvalidation.org/required-method/ + required: function( value, element, param ) { + + // Check if dependency is met + if ( !this.depend( param, element ) ) { + return "dependency-mismatch"; + } + if ( element.nodeName.toLowerCase() === "select" ) { + + // Could be an array for select-multiple or a string, both are fine this way + var val = $( element ).val(); + return val && val.length > 0; + } + if ( this.checkable( element ) ) { + return this.getLength( value, element ) > 0; + } + return value.length > 0; + }, + + // http://jqueryvalidation.org/email-method/ + email: function( value, element ) { + + // From https://html.spec.whatwg.org/multipage/forms.html#valid-e-mail-address + // Retrieved 2014-01-14 + // If you have a problem with this implementation, report a bug against the above spec + // Or use custom methods to implement your own email validation + return this.optional( element ) || /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test( value ); + }, + + // http://jqueryvalidation.org/url-method/ + url: function( value, element ) { + + // Copyright (c) 2010-2013 Diego Perini, MIT licensed + // https://gist.github.com/dperini/729294 + // see also https://mathiasbynens.be/demo/url-regex + // modified to allow protocol-relative URLs + return this.optional( element ) || /^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})).?)(?::\d{2,5})?(?:[/?#]\S*)?$/i.test( value ); + }, + + // http://jqueryvalidation.org/date-method/ + date: function( value, element ) { + return this.optional( element ) || !/Invalid|NaN/.test( new Date( value ).toString() ); + }, + + // http://jqueryvalidation.org/dateISO-method/ + dateISO: function( value, element ) { + return this.optional( element ) || /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test( value ); + }, + + // http://jqueryvalidation.org/number-method/ + number: function( value, element ) { + return this.optional( element ) || /^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test( value ); + }, + + // http://jqueryvalidation.org/digits-method/ + digits: function( value, element ) { + return this.optional( element ) || /^\d+$/.test( value ); + }, + + // http://jqueryvalidation.org/minlength-method/ + minlength: function( value, element, param ) { + var length = $.isArray( value ) ? value.length : this.getLength( value, element ); + return this.optional( element ) || length >= param; + }, + + // http://jqueryvalidation.org/maxlength-method/ + maxlength: function( value, element, param ) { + var length = $.isArray( value ) ? value.length : this.getLength( value, element ); + return this.optional( element ) || length <= param; + }, + + // http://jqueryvalidation.org/rangelength-method/ + rangelength: function( value, element, param ) { + var length = $.isArray( value ) ? value.length : this.getLength( value, element ); + return this.optional( element ) || ( length >= param[ 0 ] && length <= param[ 1 ] ); + }, + + // http://jqueryvalidation.org/min-method/ + min: function( value, element, param ) { + return this.optional( element ) || value >= param; + }, + + // http://jqueryvalidation.org/max-method/ + max: function( value, element, param ) { + return this.optional( element ) || value <= param; + }, + + // http://jqueryvalidation.org/range-method/ + range: function( value, element, param ) { + return this.optional( element ) || ( value >= param[ 0 ] && value <= param[ 1 ] ); + }, + + // http://jqueryvalidation.org/step-method/ + step: function( value, element, param ) { + var type = $( element ).attr( "type" ), + errorMessage = "Step attribute on input type " + type + " is not supported.", + supportedTypes = [ "text", "number", "range" ], + re = new RegExp( "\\b" + type + "\\b" ), + notSupported = type && !re.test( supportedTypes.join() ), + decimalPlaces = function( num ) { + var match = ( "" + num ).match( /(?:\.(\d+))?$/ ); + if ( !match ) { + return 0; + } + + // Number of digits right of decimal point. + return match[ 1 ] ? match[ 1 ].length : 0; + }, + toInt = function( num ) { + return Math.round( num * Math.pow( 10, decimals ) ); + }, + valid = true, + decimals; + + // Works only for text, number and range input types + // TODO find a way to support input types date, datetime, datetime-local, month, time and week + if ( notSupported ) { + throw new Error( errorMessage ); + } + + decimals = decimalPlaces( param ); + + // Value can't have too many decimals + if ( decimalPlaces( value ) > decimals || toInt( value ) % toInt( param ) !== 0 ) { + valid = false; + } + + return this.optional( element ) || valid; + }, + + // http://jqueryvalidation.org/equalTo-method/ + equalTo: function( value, element, param ) { + + // Bind to the blur event of the target in order to revalidate whenever the target field is updated + var target = $( param ); + if ( this.settings.onfocusout && target.not( ".validate-equalTo-blur" ).length ) { + target.addClass( "validate-equalTo-blur" ).on( "blur.validate-equalTo", function() { + $( element ).valid(); + } ); + } + return value === target.val(); + }, + + // http://jqueryvalidation.org/remote-method/ + remote: function( value, element, param, method ) { + if ( this.optional( element ) ) { + return "dependency-mismatch"; + } + + method = typeof method === "string" && method || "remote"; + + var previous = this.previousValue( element, method ), + validator, data, optionDataString; + + if ( !this.settings.messages[ element.name ] ) { + this.settings.messages[ element.name ] = {}; + } + previous.originalMessage = previous.originalMessage || this.settings.messages[ element.name ][ method ]; + this.settings.messages[ element.name ][ method ] = previous.message; + + param = typeof param === "string" && { url: param } || param; + optionDataString = $.param( $.extend( { data: value }, param.data ) ); + if ( previous.old === optionDataString ) { + return previous.valid; + } + + previous.old = optionDataString; + validator = this; + this.startRequest( element ); + data = {}; + data[ element.name ] = value; + $.ajax( $.extend( true, { + mode: "abort", + port: "validate" + element.name, + dataType: "json", + data: data, + context: validator.currentForm, + success: function( response ) { + var valid = response === true || response === "true", + errors, message, submitted; + + validator.settings.messages[ element.name ][ method ] = previous.originalMessage; + if ( valid ) { + submitted = validator.formSubmitted; + validator.resetInternals(); + validator.toHide = validator.errorsFor( element ); + validator.formSubmitted = submitted; + validator.successList.push( element ); + validator.invalid[ element.name ] = false; + validator.showErrors(); + } else { + errors = {}; + message = response || validator.defaultMessage( element, { method: method, parameters: value } ); + errors[ element.name ] = previous.message = message; + validator.invalid[ element.name ] = true; + validator.showErrors( errors ); + } + previous.valid = valid; + validator.stopRequest( element, valid ); + } + }, param ) ); + return "pending"; + } + } + +} ); + +// Ajax mode: abort +// usage: $.ajax({ mode: "abort"[, port: "uniqueport"]}); +// if mode:"abort" is used, the previous request on that port (port can be undefined) is aborted via XMLHttpRequest.abort() + +var pendingRequests = {}, + ajax; + +// Use a prefilter if available (1.5+) +if ( $.ajaxPrefilter ) { + $.ajaxPrefilter( function( settings, _, xhr ) { + var port = settings.port; + if ( settings.mode === "abort" ) { + if ( pendingRequests[ port ] ) { + pendingRequests[ port ].abort(); + } + pendingRequests[ port ] = xhr; + } + } ); +} else { + + // Proxy ajax + ajax = $.ajax; + $.ajax = function( settings ) { + var mode = ( "mode" in settings ? settings : $.ajaxSettings ).mode, + port = ( "port" in settings ? settings : $.ajaxSettings ).port; + if ( mode === "abort" ) { + if ( pendingRequests[ port ] ) { + pendingRequests[ port ].abort(); + } + pendingRequests[ port ] = ajax.apply( this, arguments ); + return pendingRequests[ port ]; + } + return ajax.apply( this, arguments ); + }; +} + +})); \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/environments/environment.hmr.ts b/SystemKonkursow/4.2.1/angular/src/environments/environment.hmr.ts new file mode 100644 index 0000000..4b383d3 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/environments/environment.hmr.ts @@ -0,0 +1,7 @@ +// "Hot Module Replacement" enabled environment + +export const environment = { + production: false, + hmr: true, + appConfig: 'appconfig.json' +}; diff --git a/SystemKonkursow/4.2.1/angular/src/environments/environment.prod.ts b/SystemKonkursow/4.2.1/angular/src/environments/environment.prod.ts new file mode 100644 index 0000000..52429b1 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/environments/environment.prod.ts @@ -0,0 +1,7 @@ +// "Production" enabled environment + +export const environment = { + production: true, + hmr: false, + appConfig: 'appconfig.json' +}; diff --git a/SystemKonkursow/4.2.1/angular/src/environments/environment.ts b/SystemKonkursow/4.2.1/angular/src/environments/environment.ts new file mode 100644 index 0000000..ab6e6fc --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/environments/environment.ts @@ -0,0 +1,10 @@ +// The file contents for the current environment will overwrite these during build. +// The build system defaults to the dev environment which uses `environment.ts`, but if you do +// `ng build --env=prod` then `environment.prod.ts` will be used instead. +// The list of which env maps to which file can be found in `angular-cli.json`. + +export const environment = { + production: false, + hmr: false, + appConfig: 'appconfig.json' +}; diff --git a/SystemKonkursow/4.2.1/angular/src/favicon.ico b/SystemKonkursow/4.2.1/angular/src/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..8081c7ceaf2be08bf59010158c586170d9d2d517 GIT binary patch literal 5430 zcmc(je{54#6vvCoAI3i*G5%$U7!sA3wtMZ$fH6V9C`=eXGJb@R1%(I_{vnZtpD{6n z5Pl{DmxzBDbrB>}`90e12m8T*36WoeDLA&SD_hw{H^wM!cl_RWcVA!I+x87ee975; z@4kD^=bYPn&pmG@(+JZ`rqQEKxW<}RzhW}I!|ulN=fmjVi@x{p$cC`)5$a!)X&U+blKNvN5tg=uLvuLnuqRM;Yc*swiexsoh#XPNu{9F#c`G zQLe{yWA(Y6(;>y|-efAy11k<09(@Oo1B2@0`PtZSkqK&${ zgEY}`W@t{%?9u5rF?}Y7OL{338l*JY#P!%MVQY@oqnItpZ}?s z!r?*kwuR{A@jg2Chlf0^{q*>8n5Ir~YWf*wmsh7B5&EpHfd5@xVaj&gqsdui^spyL zB|kUoblGoO7G(MuKTfa9?pGH0@QP^b#!lM1yHWLh*2iq#`C1TdrnO-d#?Oh@XV2HK zKA{`eo{--^K&MW66Lgsktfvn#cCAc*(}qsfhrvOjMGLE?`dHVipu1J3Kgr%g?cNa8 z)pkmC8DGH~fG+dlrp(5^-QBeEvkOvv#q7MBVLtm2oD^$lJZx--_=K&Ttd=-krx(Bb zcEoKJda@S!%%@`P-##$>*u%T*mh+QjV@)Qa=Mk1?#zLk+M4tIt%}wagT{5J%!tXAE;r{@=bb%nNVxvI+C+$t?!VJ@0d@HIyMJTI{vEw0Ul ze(ha!e&qANbTL1ZneNl45t=#Ot??C0MHjjgY8%*mGisN|S6%g3;Hlx#fMNcL<87MW zZ>6moo1YD?P!fJ#Jb(4)_cc50X5n0KoDYfdPoL^iV`k&o{LPyaoqMqk92wVM#_O0l z09$(A-D+gVIlq4TA&{1T@BsUH`Bm=r#l$Z51J-U&F32+hfUP-iLo=jg7Xmy+WLq6_tWv&`wDlz#`&)Jp~iQf zZP)tu>}pIIJKuw+$&t}GQuqMd%Z>0?t%&BM&Wo^4P^Y z)c6h^f2R>X8*}q|bblAF?@;%?2>$y+cMQbN{X$)^R>vtNq_5AB|0N5U*d^T?X9{xQnJYeU{ zoZL#obI;~Pp95f1`%X3D$Mh*4^?O?IT~7HqlWguezmg?Ybq|7>qQ(@pPHbE9V?f|( z+0xo!#m@Np9PljsyxBY-UA*{U*la#8Wz2sO|48_-5t8%_!n?S$zlGe+NA%?vmxjS- zHE5O3ZarU=X}$7>;Okp(UWXJxI%G_J-@IH;%5#Rt$(WUX?6*Ux!IRd$dLP6+SmPn= z8zjm4jGjN772R{FGkXwcNv8GBcZI#@Y2m{RNF_w8(Z%^A*!bS*!}s6sh*NnURytky humW;*g7R+&|Ledvc- Promise>) => { + let ngModule: NgModuleRef; + module.hot.accept(); + bootstrap().then(mod => ngModule = mod); + module.hot.dispose(() => { + let appRef: ApplicationRef = ngModule.injector.get(ApplicationRef); + let elements = appRef.components.map(c => c.location.nativeElement); + let makeVisible = createNewHosts(elements); + ngModule.destroy(); + makeVisible(); + }); +}; \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/index.html b/SystemKonkursow/4.2.1/angular/src/index.html new file mode 100644 index 0000000..fd95db0 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/index.html @@ -0,0 +1,18 @@ + + + + + SystemKonkursow + + + + + + + + + + + + + \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/main.ts b/SystemKonkursow/4.2.1/angular/src/main.ts new file mode 100644 index 0000000..3d456a8 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/main.ts @@ -0,0 +1,33 @@ +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; +import { enableProdMode, ChangeDetectorRef } from '@angular/core'; +import { environment } from './environments/environment'; +import { RootModule } from './root.module'; +import { hmrBootstrap } from './hmr'; + +import * as moment from 'moment'; + +import 'moment/min/locales.min'; +import 'moment-timezone'; + +if (environment.production) { + enableProdMode(); +} + +const bootstrap = () => { + return platformBrowserDynamic().bootstrapModule(RootModule); +}; + +/* "Hot Module Replacement" is enabled as described on + * https://medium.com/@beeman/tutorial-enable-hrm-in-angular-cli-apps-1b0d13b80130#.sa87zkloh + */ + +if (environment.hmr) { + if (module['hot']) { + hmrBootstrap(module, bootstrap); //HMR enabled bootstrap + } else { + console.error('HMR is not enabled for webpack-dev-server!'); + console.log('Are you using the --hmr flag for ng serve?'); + } +} else { + bootstrap(); //Regular bootstrap +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/polyfills.ts b/SystemKonkursow/4.2.1/angular/src/polyfills.ts new file mode 100644 index 0000000..d2d65f7 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/polyfills.ts @@ -0,0 +1,68 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/docs/ts/latest/guide/browser-support.html + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** IE9, IE10 and IE11 requires all of the following polyfills. **/ +import 'core-js/es6/symbol'; +import 'core-js/es6/object'; +import 'core-js/es6/function'; +import 'core-js/es6/parse-int'; +import 'core-js/es6/parse-float'; +import 'core-js/es6/number'; +import 'core-js/es6/math'; +import 'core-js/es6/string'; +import 'core-js/es6/date'; +import 'core-js/es6/array'; +import 'core-js/es6/regexp'; +import 'core-js/es6/map'; +import 'core-js/es6/set'; + +/** IE10 and IE11 requires the following for NgClass support on SVG elements */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. + +/** IE10 and IE11 requires the following to support `@angular/animation`. */ +import 'web-animations-js'; // Run `npm install --save web-animations-js`. + + +/** Evergreen browsers require these. **/ +import 'core-js/es6/reflect'; +import 'core-js/es7/reflect'; + + +/** ALL Firefox browsers require the following to support `@angular/animation`. **/ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. + + + +/*************************************************************************************************** + * Zone JS is required by Angular itself. + */ +import 'zone.js/dist/zone'; // Included with Angular-CLI. + + + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ + +/** + * Date, currency, decimal and percent pipes. + * Needed for: All but Chrome, Firefox, Edge, IE11 and Safari 10 + */ +// import 'intl'; // Run `npm install --save intl`. diff --git a/SystemKonkursow/4.2.1/angular/src/root-routing.module.ts b/SystemKonkursow/4.2.1/angular/src/root-routing.module.ts new file mode 100644 index 0000000..1d4295c --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/root-routing.module.ts @@ -0,0 +1,23 @@ +import { NgModule } from '@angular/core'; +import { Routes, RouterModule } from '@angular/router'; + +const routes: Routes = [ + { path: '', redirectTo: '/app/home', pathMatch: 'full' }, + { + path: 'account', + loadChildren: 'account/account.module#AccountModule', //Lazy load account module + data: { preload: true } + }, + { + path: 'app', + loadChildren: 'app/app.module#AppModule', //Lazy load account module + data: { preload: true } + } +]; + +@NgModule({ + imports: [RouterModule.forRoot(routes)], + exports: [RouterModule], + providers: [] +}) +export class RootRoutingModule { } \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/root.component.ts b/SystemKonkursow/4.2.1/angular/src/root.component.ts new file mode 100644 index 0000000..1b54b0e --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/root.component.ts @@ -0,0 +1,9 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-root', + template: `` +}) +export class RootComponent { + +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/root.module.ts b/SystemKonkursow/4.2.1/angular/src/root.module.ts new file mode 100644 index 0000000..5aefd88 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/root.module.ts @@ -0,0 +1,137 @@ +import { BrowserModule } from '@angular/platform-browser'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { NgModule, Injector, APP_INITIALIZER, LOCALE_ID } from '@angular/core'; +import { PlatformLocation, registerLocaleData } from '@angular/common'; + +import { AbpModule } from '@abp/abp.module'; +import { AbpHttpInterceptor } from '@abp/abpHttpInterceptor'; +import { HTTP_INTERCEPTORS } from '@angular/common/http'; + +import { SharedModule } from '@shared/shared.module'; +import { ServiceProxyModule } from '@shared/service-proxies/service-proxy.module'; +import { RootRoutingModule } from './root-routing.module'; + +import { AppConsts } from '@shared/AppConsts'; +import { AppSessionService } from '@shared/session/app-session.service'; +import { API_BASE_URL } from '@shared/service-proxies/service-proxies'; + +import { RootComponent } from './root.component'; +import { AppPreBootstrap } from './AppPreBootstrap'; +import { ModalModule } from 'ngx-bootstrap'; +import { HttpClientModule } from '@angular/common/http'; + +import * as _ from 'lodash'; + +export function appInitializerFactory(injector: Injector, + platformLocation: PlatformLocation) { + return () => { + + abp.ui.setBusy(); + return new Promise((resolve, reject) => { + AppConsts.appBaseHref = getBaseHref(platformLocation); + let appBaseUrl = getDocumentOrigin() + AppConsts.appBaseHref; + + AppPreBootstrap.run(appBaseUrl, () => { + abp.event.trigger('abp.dynamicScriptsInitialized'); + var appSessionService: AppSessionService = injector.get(AppSessionService); + appSessionService.init().then( + (result) => { + abp.ui.clearBusy(); + + if (shouldLoadLocale()) { + let angularLocale = convertAbpLocaleToAngularLocale(abp.localization.currentLanguage.name); + import(`@angular/common/locales/${angularLocale}.js`) + .then(module => { + registerLocaleData(module.default); + resolve(result); + }, reject); + } else { + resolve(result); + } + }, + (err) => { + abp.ui.clearBusy(); + reject(err); + } + ); + }); + }); + } +} + +export function convertAbpLocaleToAngularLocale(locale: string): string { + if (!AppConsts.localeMappings) { + return locale; + } + + let localeMapings = _.filter(AppConsts.localeMappings, { from: locale }); + if (localeMapings && localeMapings.length) { + return localeMapings[0]['to']; + } + + return locale; +} + +export function shouldLoadLocale(): boolean { + return abp.localization.currentLanguage.name && abp.localization.currentLanguage.name !== 'en-US'; +} + +export function getRemoteServiceBaseUrl(): string { + return AppConsts.remoteServiceBaseUrl; +} + +export function getCurrentLanguage(): string { + return abp.localization.currentLanguage.name; +} + +@NgModule({ + imports: [ + BrowserModule, + BrowserAnimationsModule, + SharedModule.forRoot(), + ModalModule.forRoot(), + AbpModule, + ServiceProxyModule, + RootRoutingModule, + HttpClientModule + ], + declarations: [ + RootComponent + ], + providers: [ + { provide: HTTP_INTERCEPTORS, useClass: AbpHttpInterceptor, multi: true }, + { provide: API_BASE_URL, useFactory: getRemoteServiceBaseUrl }, + { + provide: APP_INITIALIZER, + useFactory: appInitializerFactory, + deps: [Injector, PlatformLocation], + multi: true + }, + { + provide: LOCALE_ID, + useFactory: getCurrentLanguage + } + ], + bootstrap: [RootComponent] +}) + +export class RootModule { + +} + +export function getBaseHref(platformLocation: PlatformLocation): string { + var baseUrl = platformLocation.getBaseHrefFromDOM(); + if (baseUrl) { + return baseUrl; + } + + return '/'; +} + +function getDocumentOrigin() { + if (!document.location.origin) { + return document.location.protocol + "//" + document.location.hostname + (document.location.port ? ':' + document.location.port : ''); + } + + return document.location.origin; +} diff --git a/SystemKonkursow/4.2.1/angular/src/shared/AppConsts.ts b/SystemKonkursow/4.2.1/angular/src/shared/AppConsts.ts new file mode 100644 index 0000000..956a4d3 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/AppConsts.ts @@ -0,0 +1,20 @@ +export class AppConsts { + + static remoteServiceBaseUrl: string; + static appBaseUrl: string; + static appBaseHref: string; // returns angular's base-href parameter value if used during the publish + + static localeMappings: any = []; + + static readonly userManagement = { + defaultAdminUserName: 'admin' + }; + + static readonly localization = { + defaultLocalizationSourceName: 'SystemKonkursow' + }; + + static readonly authorization = { + encrptedAuthTokenName: 'enc_auth_token' + }; +} diff --git a/SystemKonkursow/4.2.1/angular/src/shared/AppEnums.ts b/SystemKonkursow/4.2.1/angular/src/shared/AppEnums.ts new file mode 100644 index 0000000..bdd4027 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/AppEnums.ts @@ -0,0 +1,8 @@ +import { IsTenantAvailableOutputState } from '@shared/service-proxies/service-proxies'; + + +export class AppTenantAvailabilityState { + static Available: number = IsTenantAvailableOutputState._1; + static InActive: number = IsTenantAvailableOutputState._2; + static NotFound: number = IsTenantAvailableOutputState._3; +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/shared/animations/routerTransition.ts b/SystemKonkursow/4.2.1/angular/src/shared/animations/routerTransition.ts new file mode 100644 index 0000000..81d082f --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/animations/routerTransition.ts @@ -0,0 +1,29 @@ +import { trigger, state, animate, style, transition } from '@angular/animations'; + +export function appModuleAnimation() { + return slideFromBottom(); +} + +export function accountModuleAnimation() { + return slideFromUp(); +} + +export function slideFromBottom() { + return trigger('routerTransition', [ + state('void', style({ 'padding-top': '20px', opacity: '0' })), + state('*', style({ 'padding-top': '0px', opacity: '1' })), + transition(':enter', [ + animate('0.33s ease-out', style({ opacity: '1', 'padding-top': '0px' })) + ]) + ]); +} + +export function slideFromUp() { + return trigger('routerTransition', [ + state('void', style({ 'margin-top': '10px', opacity: '0' })), + state('*', style({ 'margin-top': '0px', opacity: '1' })), + transition(':enter', [ + animate('0.3s ease-out', style({ opacity: '1', 'margin-top': '0px' })) + ]) + ]); +} diff --git a/SystemKonkursow/4.2.1/angular/src/shared/app-component-base.ts b/SystemKonkursow/4.2.1/angular/src/shared/app-component-base.ts new file mode 100644 index 0000000..e5dd619 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/app-component-base.ts @@ -0,0 +1,56 @@ +import { Injector, ElementRef } from '@angular/core'; +import { AppConsts } from '@shared/AppConsts'; +import { LocalizationService } from '@abp/localization/localization.service'; +import { PermissionCheckerService } from '@abp/auth/permission-checker.service'; +import { FeatureCheckerService } from '@abp/features/feature-checker.service'; +import { NotifyService } from '@abp/notify/notify.service'; +import { SettingService } from '@abp/settings/setting.service'; +import { MessageService } from '@abp/message/message.service'; +import { AbpMultiTenancyService } from '@abp/multi-tenancy/abp-multi-tenancy.service'; +import { AppSessionService } from '@shared/session/app-session.service'; + +export abstract class AppComponentBase { + + localizationSourceName = AppConsts.localization.defaultLocalizationSourceName; + + localization: LocalizationService; + permission: PermissionCheckerService; + feature: FeatureCheckerService; + notify: NotifyService; + setting: SettingService; + message: MessageService; + multiTenancy: AbpMultiTenancyService; + appSession: AppSessionService; + elementRef: ElementRef; + + constructor(injector: Injector) { + this.localization = injector.get(LocalizationService); + this.permission = injector.get(PermissionCheckerService); + this.feature = injector.get(FeatureCheckerService); + this.notify = injector.get(NotifyService); + this.setting = injector.get(SettingService); + this.message = injector.get(MessageService); + this.multiTenancy = injector.get(AbpMultiTenancyService); + this.appSession = injector.get(AppSessionService); + this.elementRef = injector.get(ElementRef); + } + + l(key: string, ...args: any[]): string { + let localizedText = this.localization.localize(key, this.localizationSourceName); + + if (!localizedText) { + localizedText = key; + } + + if (!args || !args.length) { + return localizedText; + } + + args.unshift(localizedText); + return abp.utils.formatString.apply(this, args); + } + + isGranted(permissionName: string): boolean { + return this.permission.isGranted(permissionName); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/shared/auth/app-auth.service.ts b/SystemKonkursow/4.2.1/angular/src/shared/auth/app-auth.service.ts new file mode 100644 index 0000000..d99cad1 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/auth/app-auth.service.ts @@ -0,0 +1,13 @@ +import { Injectable } from '@angular/core'; +import { AppConsts } from '@shared/AppConsts'; + +@Injectable() +export class AppAuthService { + + logout(reload?: boolean): void { + abp.auth.clearToken(); + if (reload !== false) { + location.href = AppConsts.appBaseUrl; + } + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/shared/auth/auth-route-guard.ts b/SystemKonkursow/4.2.1/angular/src/shared/auth/auth-route-guard.ts new file mode 100644 index 0000000..314b73b --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/auth/auth-route-guard.ts @@ -0,0 +1,54 @@ +import { Injectable } from '@angular/core'; +import { PermissionCheckerService } from '@abp/auth/permission-checker.service'; +import { AppSessionService } from '../session/app-session.service'; + +import { + CanActivate, Router, + ActivatedRouteSnapshot, + RouterStateSnapshot, + CanActivateChild +} from '@angular/router'; + +@Injectable() +export class AppRouteGuard implements CanActivate, CanActivateChild { + + constructor( + private _permissionChecker: PermissionCheckerService, + private _router: Router, + private _sessionService: AppSessionService, + ) { } + + canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { + if (!this._sessionService.user) { + this._router.navigate(['/account/login']); + return false; + } + + if (!route.data || !route.data["permission"]) { + return true; + } + + if (this._permissionChecker.isGranted(route.data["permission"])) { + return true; + } + + this._router.navigate([this.selectBestRoute()]); + return false; + } + + canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { + return this.canActivate(route, state); + } + + selectBestRoute(): string { + if (!this._sessionService.user) { + return '/account/login'; + } + + if (this._permissionChecker.isGranted('Pages.Users')) { + return '/app/admin/users'; + } + + return '/app/home'; + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/shared/core.less b/SystemKonkursow/4.2.1/angular/src/shared/core.less new file mode 100644 index 0000000..25d78c4 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/core.less @@ -0,0 +1,39 @@ +/* General */ + +.clickable-item { + cursor: pointer; +} + +.text-bold { + font-weight: bold; +} + +/* Portlet */ +.portlet.light > .portlet-title .inputs.inputs-full-width { + display: block; + float: none; +} + +.famfamfam-flags { + display: inline-block; +} + +topbar-languageswitch { + float: left; + margin-top: 25px; + margin-left: 10px; + + a { + text-decoration: none; + color: #fff; + + &:hover { + text-decoration: none; + color: #fff; + } + } +} + +.swal-footer { + text-align: center; +} diff --git a/SystemKonkursow/4.2.1/angular/src/shared/directives/material-input.directive.ts b/SystemKonkursow/4.2.1/angular/src/shared/directives/material-input.directive.ts new file mode 100644 index 0000000..feb1f30 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/directives/material-input.directive.ts @@ -0,0 +1,15 @@ +import { Directive, ElementRef, Injectable, AfterViewInit } from '@angular/core'; + +@Directive({ + selector: '[materialInput]' +}) + +@Injectable() +export class MaterialInput implements AfterViewInit { + constructor(private _element: ElementRef) { + } + + ngAfterViewInit(): void { + $.AdminBSB.input.activate($(this._element.nativeElement).parent()); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/shared/helpers/SignalRAspNetCoreHelper.ts b/SystemKonkursow/4.2.1/angular/src/shared/helpers/SignalRAspNetCoreHelper.ts new file mode 100644 index 0000000..1f8c8ee --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/helpers/SignalRAspNetCoreHelper.ts @@ -0,0 +1,21 @@ +import { AppConsts } from '@shared/AppConsts'; +import { UtilsService } from '@abp/utils/utils.service'; + +export class SignalRAspNetCoreHelper { + static initSignalR(): void { + + var encryptedAuthToken = new UtilsService().getCookieValue(AppConsts.authorization.encrptedAuthTokenName); + + abp.signalr = { + autoConnect: true, + connect: undefined, + hubs: undefined, + qs: AppConsts.authorization.encrptedAuthTokenName + "=" + encodeURIComponent(encryptedAuthToken), + remoteServiceBaseUrl: AppConsts.remoteServiceBaseUrl, + startConnection: undefined, + url: '/signalr' + }; + + jQuery.getScript(AppConsts.appBaseUrl + '/assets/abp/abp.signalr-client.js'); + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/shared/helpers/UrlHelper.ts b/SystemKonkursow/4.2.1/angular/src/shared/helpers/UrlHelper.ts new file mode 100644 index 0000000..48dc09a --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/helpers/UrlHelper.ts @@ -0,0 +1,10 @@ +export class UrlHelper { + /** + * The URL requested, before initial routing. + */ + static readonly initialUrl = location.href; + + static getQueryParameters(): any { + return document.location.search.replace(/(^\?)/, '').split("&").map(function (n) { return n = n.split("="), this[n[0]] = n[1], this }.bind({}))[0]; + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/shared/layout/menu-item.ts b/SystemKonkursow/4.2.1/angular/src/shared/layout/menu-item.ts new file mode 100644 index 0000000..6e49115 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/layout/menu-item.ts @@ -0,0 +1,20 @@ +export class MenuItem { + name: string = ''; + permissionName: string = ''; + icon: string = ''; + route: string = ''; + items: MenuItem[]; + + constructor(name: string, permissionName: string, icon: string, route: string, childItems: MenuItem[] = null) { + this.name = name; + this.permissionName = permissionName; + this.icon = icon; + this.route = route; + + if (childItems) { + this.items = childItems; + } else { + this.items = []; + } + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/shared/nav/app-url.service.ts b/SystemKonkursow/4.2.1/angular/src/shared/nav/app-url.service.ts new file mode 100644 index 0000000..10ffae4 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/nav/app-url.service.ts @@ -0,0 +1,63 @@ +import { Injectable } from '@angular/core'; +import { AppConsts } from '@shared/AppConsts'; +import { AppSessionService } from '../session/app-session.service'; + +@Injectable() +export class AppUrlService { + + static tenancyNamePlaceHolder: string = '{TENANCY_NAME}'; + + constructor( + private readonly _appSessionService: AppSessionService + ) { + + } + + get appRootUrl(): string { + if (this._appSessionService.tenant) { + return this.getAppRootUrlOfTenant(this._appSessionService.tenant.tenancyName); + } else { + return this.getAppRootUrlOfTenant(null); + } + } + + /** + * Returning url ends with '/'. + */ + getAppRootUrlOfTenant(tenancyName?: string): string { + let baseUrl = this.ensureEndsWith(AppConsts.appBaseUrl, '/'); + + if (baseUrl.indexOf(AppUrlService.tenancyNamePlaceHolder) < 0) { + return baseUrl; + } + + if (baseUrl.indexOf(AppUrlService.tenancyNamePlaceHolder + '.') >= 0) { + baseUrl = baseUrl.replace(AppUrlService.tenancyNamePlaceHolder + ".", AppUrlService.tenancyNamePlaceHolder); + if (tenancyName) { + tenancyName = tenancyName + '.'; + } + } + + if (!tenancyName) { + return baseUrl.replace(AppUrlService.tenancyNamePlaceHolder, ''); + } + + return baseUrl.replace(AppUrlService.tenancyNamePlaceHolder, tenancyName); + } + + private ensureEndsWith(str: string, c: string) { + if (str.charAt(str.length - 1) !== c) { + str = str + c; + } + + return str; + } + + private removeFromEnd(str: string, c: string) { + if (str.charAt(str.length - 1) === c) { + str = str.substr(0, str.length - 1); + } + + return str; + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/shared/paged-listing-component-base.ts b/SystemKonkursow/4.2.1/angular/src/shared/paged-listing-component-base.ts new file mode 100644 index 0000000..889062a --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/paged-listing-component-base.ts @@ -0,0 +1,58 @@ +import { AppComponentBase } from 'shared/app-component-base'; +import { Injector, OnInit } from '@angular/core'; + +export class PagedResultDto { + items: any[]; + totalCount: number; +} + +export class EntityDto { + id: number; +} + +export class PagedRequestDto { + skipCount: number; + maxResultCount: number; +} + +export abstract class PagedListingComponentBase extends AppComponentBase implements OnInit { + + public pageSize: number = 10; + public pageNumber: number = 1; + public totalPages: number = 1; + public totalItems: number; + public isTableLoading = false; + + constructor(injector: Injector) { + super(injector); + } + + ngOnInit(): void { + this.refresh(); + } + + refresh(): void { + this.getDataPage(this.pageNumber); + } + + public showPaging(result: PagedResultDto, pageNumber: number): void { + this.totalPages = ((result.totalCount - (result.totalCount % this.pageSize)) / this.pageSize) + 1; + + this.totalItems = result.totalCount; + this.pageNumber = pageNumber; + } + + public getDataPage(page: number): void { + var req = new PagedRequestDto(); + req.maxResultCount = this.pageSize; + req.skipCount = (page - 1) * this.pageSize; + + this.isTableLoading = true; + this.list(req, page, () => { + this.isTableLoading = false; + }); + } + + protected abstract list(request: PagedRequestDto, pageNumber: number, finishedCallback: Function): void; + protected abstract delete(entity: EntityDto): void; +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/shared/service-proxies/service-proxies.ts b/SystemKonkursow/4.2.1/angular/src/shared/service-proxies/service-proxies.ts new file mode 100644 index 0000000..e8f016c --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/service-proxies/service-proxies.ts @@ -0,0 +1,3418 @@ +/* tslint:disable */ +//---------------------- +// +// Generated using the NSwag toolchain v11.17.14.0 (NJsonSchema v9.10.52.0 (Newtonsoft.Json v9.0.0.0)) (http://NSwag.org) +// +//---------------------- +// ReSharper disable InconsistentNaming + +import { mergeMap as _observableMergeMap, catchError as _observableCatch } from 'rxjs/operators'; +import { Observable, from as _observableFrom, throwError as _observableThrow, of as _observableOf } from 'rxjs'; +import { Injectable, Inject, Optional, InjectionToken } from '@angular/core'; +import { HttpClient, HttpHeaders, HttpResponse, HttpResponseBase } from '@angular/common/http'; + +import * as moment from 'moment'; + +export const API_BASE_URL = new InjectionToken('API_BASE_URL'); + +@Injectable() +export class AccountServiceProxy { + private http: HttpClient; + private baseUrl: string; + protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined; + + constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) { + this.http = http; + this.baseUrl = baseUrl ? baseUrl : ""; + } + + /** + * @input (optional) + * @return Success + */ + isTenantAvailable(input: IsTenantAvailableInput | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Account/IsTenantAvailable"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(input); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("post", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processIsTenantAvailable(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processIsTenantAvailable(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processIsTenantAvailable(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? IsTenantAvailableOutput.fromJS(resultData200) : new IsTenantAvailableOutput(); + return _observableOf(result200); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @input (optional) + * @return Success + */ + register(input: RegisterInput | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Account/Register"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(input); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("post", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processRegister(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processRegister(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processRegister(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? RegisterOutput.fromJS(resultData200) : new RegisterOutput(); + return _observableOf(result200); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } +} + +@Injectable() +export class ConfigurationServiceProxy { + private http: HttpClient; + private baseUrl: string; + protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined; + + constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) { + this.http = http; + this.baseUrl = baseUrl ? baseUrl : ""; + } + + /** + * @input (optional) + * @return Success + */ + changeUiTheme(input: ChangeUiThemeInput | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Configuration/ChangeUiTheme"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(input); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + }) + }; + + return this.http.request("post", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processChangeUiTheme(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processChangeUiTheme(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processChangeUiTheme(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return _observableOf(null); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } +} + +@Injectable() +export class RoleServiceProxy { + private http: HttpClient; + private baseUrl: string; + protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined; + + constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) { + this.http = http; + this.baseUrl = baseUrl ? baseUrl : ""; + } + + /** + * @input (optional) + * @return Success + */ + create(input: CreateRoleDto | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Role/Create"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(input); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("post", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processCreate(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processCreate(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processCreate(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? RoleDto.fromJS(resultData200) : new RoleDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @input (optional) + * @return Success + */ + update(input: RoleDto | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Role/Update"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(input); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("put", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processUpdate(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processUpdate(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processUpdate(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? RoleDto.fromJS(resultData200) : new RoleDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @id (optional) + * @return Success + */ + delete(id: number | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Role/Delete?"; + if (id !== undefined) + url_ += "Id=" + encodeURIComponent("" + id) + "&"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + }) + }; + + return this.http.request("delete", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processDelete(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processDelete(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processDelete(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return _observableOf(null); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @return Success + */ + getAllPermissions(): Observable { + let url_ = this.baseUrl + "/api/services/app/Role/GetAllPermissions"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGetAllPermissions(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGetAllPermissions(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGetAllPermissions(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? ListResultDtoOfPermissionDto.fromJS(resultData200) : new ListResultDtoOfPermissionDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @id (optional) + * @return Success + */ + getRoleForEdit(id: number | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Role/GetRoleForEdit?"; + if (id !== undefined) + url_ += "Id=" + encodeURIComponent("" + id) + "&"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGetRoleForEdit(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGetRoleForEdit(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGetRoleForEdit(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? GetRoleForEditOutput.fromJS(resultData200) : new GetRoleForEditOutput(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @id (optional) + * @return Success + */ + get(id: number | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Role/Get?"; + if (id !== undefined) + url_ += "Id=" + encodeURIComponent("" + id) + "&"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGet(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGet(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGet(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? RoleDto.fromJS(resultData200) : new RoleDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @skipCount (optional) + * @maxResultCount (optional) + * @return Success + */ + getAll(skipCount: number | null | undefined, maxResultCount: number | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Role/GetAll?"; + if (skipCount !== undefined) + url_ += "SkipCount=" + encodeURIComponent("" + skipCount) + "&"; + if (maxResultCount !== undefined) + url_ += "MaxResultCount=" + encodeURIComponent("" + maxResultCount) + "&"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGetAll(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGetAll(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGetAll(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? PagedResultDtoOfRoleDto.fromJS(resultData200) : new PagedResultDtoOfRoleDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } +} + +@Injectable() +export class SessionServiceProxy { + private http: HttpClient; + private baseUrl: string; + protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined; + + constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) { + this.http = http; + this.baseUrl = baseUrl ? baseUrl : ""; + } + + /** + * @return Success + */ + getCurrentLoginInformations(): Observable { + let url_ = this.baseUrl + "/api/services/app/Session/GetCurrentLoginInformations"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGetCurrentLoginInformations(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGetCurrentLoginInformations(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGetCurrentLoginInformations(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? GetCurrentLoginInformationsOutput.fromJS(resultData200) : new GetCurrentLoginInformationsOutput(); + return _observableOf(result200); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } +} + +@Injectable() +export class TenantServiceProxy { + private http: HttpClient; + private baseUrl: string; + protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined; + + constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) { + this.http = http; + this.baseUrl = baseUrl ? baseUrl : ""; + } + + /** + * @input (optional) + * @return Success + */ + create(input: CreateTenantDto | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Tenant/Create"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(input); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("post", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processCreate(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processCreate(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processCreate(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? TenantDto.fromJS(resultData200) : new TenantDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @id (optional) + * @return Success + */ + delete(id: number | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Tenant/Delete?"; + if (id !== undefined) + url_ += "Id=" + encodeURIComponent("" + id) + "&"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + }) + }; + + return this.http.request("delete", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processDelete(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processDelete(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processDelete(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return _observableOf(null); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @id (optional) + * @return Success + */ + get(id: number | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Tenant/Get?"; + if (id !== undefined) + url_ += "Id=" + encodeURIComponent("" + id) + "&"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGet(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGet(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGet(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? TenantDto.fromJS(resultData200) : new TenantDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @skipCount (optional) + * @maxResultCount (optional) + * @return Success + */ + getAll(skipCount: number | null | undefined, maxResultCount: number | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Tenant/GetAll?"; + if (skipCount !== undefined) + url_ += "SkipCount=" + encodeURIComponent("" + skipCount) + "&"; + if (maxResultCount !== undefined) + url_ += "MaxResultCount=" + encodeURIComponent("" + maxResultCount) + "&"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGetAll(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGetAll(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGetAll(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? PagedResultDtoOfTenantDto.fromJS(resultData200) : new PagedResultDtoOfTenantDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @input (optional) + * @return Success + */ + update(input: TenantDto | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/Tenant/Update"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(input); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("put", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processUpdate(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processUpdate(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processUpdate(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? TenantDto.fromJS(resultData200) : new TenantDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } +} + +@Injectable() +export class TokenAuthServiceProxy { + private http: HttpClient; + private baseUrl: string; + protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined; + + constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) { + this.http = http; + this.baseUrl = baseUrl ? baseUrl : ""; + } + + /** + * @model (optional) + * @return Success + */ + authenticate(model: AuthenticateModel | null | undefined): Observable { + let url_ = this.baseUrl + "/api/TokenAuth/Authenticate"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(model); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("post", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processAuthenticate(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processAuthenticate(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processAuthenticate(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? AuthenticateResultModel.fromJS(resultData200) : new AuthenticateResultModel(); + return _observableOf(result200); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @return Success + */ + getExternalAuthenticationProviders(): Observable { + let url_ = this.baseUrl + "/api/TokenAuth/GetExternalAuthenticationProviders"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGetExternalAuthenticationProviders(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGetExternalAuthenticationProviders(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGetExternalAuthenticationProviders(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + if (resultData200 && resultData200.constructor === Array) { + result200 = []; + for (let item of resultData200) + result200.push(ExternalLoginProviderInfoModel.fromJS(item)); + } + return _observableOf(result200); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @model (optional) + * @return Success + */ + externalAuthenticate(model: ExternalAuthenticateModel | null | undefined): Observable { + let url_ = this.baseUrl + "/api/TokenAuth/ExternalAuthenticate"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(model); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("post", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processExternalAuthenticate(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processExternalAuthenticate(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processExternalAuthenticate(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? ExternalAuthenticateResultModel.fromJS(resultData200) : new ExternalAuthenticateResultModel(); + return _observableOf(result200); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } +} + +@Injectable() +export class UserServiceProxy { + private http: HttpClient; + private baseUrl: string; + protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined; + + constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) { + this.http = http; + this.baseUrl = baseUrl ? baseUrl : ""; + } + + /** + * @input (optional) + * @return Success + */ + create(input: CreateUserDto | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/User/Create"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(input); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("post", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processCreate(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processCreate(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processCreate(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? UserDto.fromJS(resultData200) : new UserDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @input (optional) + * @return Success + */ + update(input: UserDto | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/User/Update"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(input); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("put", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processUpdate(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processUpdate(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processUpdate(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? UserDto.fromJS(resultData200) : new UserDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @id (optional) + * @return Success + */ + delete(id: number | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/User/Delete?"; + if (id !== undefined) + url_ += "Id=" + encodeURIComponent("" + id) + "&"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + }) + }; + + return this.http.request("delete", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processDelete(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processDelete(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processDelete(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return _observableOf(null); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @return Success + */ + getRoles(): Observable { + let url_ = this.baseUrl + "/api/services/app/User/GetRoles"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGetRoles(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGetRoles(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGetRoles(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? ListResultDtoOfRoleDto.fromJS(resultData200) : new ListResultDtoOfRoleDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @input (optional) + * @return Success + */ + changeLanguage(input: ChangeUserLanguageDto | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/User/ChangeLanguage"; + url_ = url_.replace(/[?&]$/, ""); + + const content_ = JSON.stringify(input); + + let options_ : any = { + body: content_, + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + }) + }; + + return this.http.request("post", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processChangeLanguage(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processChangeLanguage(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processChangeLanguage(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return _observableOf(null); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @id (optional) + * @return Success + */ + get(id: number | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/User/Get?"; + if (id !== undefined) + url_ += "Id=" + encodeURIComponent("" + id) + "&"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGet(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGet(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGet(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? UserDto.fromJS(resultData200) : new UserDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } + + /** + * @skipCount (optional) + * @maxResultCount (optional) + * @return Success + */ + getAll(skipCount: number | null | undefined, maxResultCount: number | null | undefined): Observable { + let url_ = this.baseUrl + "/api/services/app/User/GetAll?"; + if (skipCount !== undefined) + url_ += "SkipCount=" + encodeURIComponent("" + skipCount) + "&"; + if (maxResultCount !== undefined) + url_ += "MaxResultCount=" + encodeURIComponent("" + maxResultCount) + "&"; + url_ = url_.replace(/[?&]$/, ""); + + let options_ : any = { + observe: "response", + responseType: "blob", + headers: new HttpHeaders({ + "Content-Type": "application/json", + "Accept": "application/json" + }) + }; + + return this.http.request("get", url_, options_).pipe(_observableMergeMap((response_ : any) => { + return this.processGetAll(response_); + })).pipe(_observableCatch((response_: any) => { + if (response_ instanceof HttpResponseBase) { + try { + return this.processGetAll(response_); + } catch (e) { + return >_observableThrow(e); + } + } else + return >_observableThrow(response_); + })); + } + + protected processGetAll(response: HttpResponseBase): Observable { + const status = response.status; + const responseBlob = + response instanceof HttpResponse ? response.body : + (response).error instanceof Blob ? (response).error : undefined; + + let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}; + if (status === 200) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + let result200: any = null; + let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); + result200 = resultData200 ? PagedResultDtoOfUserDto.fromJS(resultData200) : new PagedResultDtoOfUserDto(); + return _observableOf(result200); + })); + } else if (status === 401) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status === 403) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("A server error occurred.", status, _responseText, _headers); + })); + } else if (status !== 200 && status !== 204) { + return blobToText(responseBlob).pipe(_observableMergeMap(_responseText => { + return throwException("An unexpected server error occurred.", status, _responseText, _headers); + })); + } + return _observableOf(null); + } +} + +export class IsTenantAvailableInput implements IIsTenantAvailableInput { + tenancyName: string; + + constructor(data?: IIsTenantAvailableInput) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.tenancyName = data["tenancyName"]; + } + } + + static fromJS(data: any): IsTenantAvailableInput { + data = typeof data === 'object' ? data : {}; + let result = new IsTenantAvailableInput(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["tenancyName"] = this.tenancyName; + return data; + } + + clone(): IsTenantAvailableInput { + const json = this.toJSON(); + let result = new IsTenantAvailableInput(); + result.init(json); + return result; + } +} + +export interface IIsTenantAvailableInput { + tenancyName: string; +} + +export class IsTenantAvailableOutput implements IIsTenantAvailableOutput { + state: IsTenantAvailableOutputState | undefined; + tenantId: number | undefined; + + constructor(data?: IIsTenantAvailableOutput) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.state = data["state"]; + this.tenantId = data["tenantId"]; + } + } + + static fromJS(data: any): IsTenantAvailableOutput { + data = typeof data === 'object' ? data : {}; + let result = new IsTenantAvailableOutput(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["state"] = this.state; + data["tenantId"] = this.tenantId; + return data; + } + + clone(): IsTenantAvailableOutput { + const json = this.toJSON(); + let result = new IsTenantAvailableOutput(); + result.init(json); + return result; + } +} + +export interface IIsTenantAvailableOutput { + state: IsTenantAvailableOutputState | undefined; + tenantId: number | undefined; +} + +export class RegisterInput implements IRegisterInput { + name: string; + surname: string; + userName: string; + emailAddress: string; + password: string; + captchaResponse: string | undefined; + + constructor(data?: IRegisterInput) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.name = data["name"]; + this.surname = data["surname"]; + this.userName = data["userName"]; + this.emailAddress = data["emailAddress"]; + this.password = data["password"]; + this.captchaResponse = data["captchaResponse"]; + } + } + + static fromJS(data: any): RegisterInput { + data = typeof data === 'object' ? data : {}; + let result = new RegisterInput(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["name"] = this.name; + data["surname"] = this.surname; + data["userName"] = this.userName; + data["emailAddress"] = this.emailAddress; + data["password"] = this.password; + data["captchaResponse"] = this.captchaResponse; + return data; + } + + clone(): RegisterInput { + const json = this.toJSON(); + let result = new RegisterInput(); + result.init(json); + return result; + } +} + +export interface IRegisterInput { + name: string; + surname: string; + userName: string; + emailAddress: string; + password: string; + captchaResponse: string | undefined; +} + +export class RegisterOutput implements IRegisterOutput { + canLogin: boolean | undefined; + + constructor(data?: IRegisterOutput) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.canLogin = data["canLogin"]; + } + } + + static fromJS(data: any): RegisterOutput { + data = typeof data === 'object' ? data : {}; + let result = new RegisterOutput(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["canLogin"] = this.canLogin; + return data; + } + + clone(): RegisterOutput { + const json = this.toJSON(); + let result = new RegisterOutput(); + result.init(json); + return result; + } +} + +export interface IRegisterOutput { + canLogin: boolean | undefined; +} + +export class ChangeUiThemeInput implements IChangeUiThemeInput { + theme: string; + + constructor(data?: IChangeUiThemeInput) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.theme = data["theme"]; + } + } + + static fromJS(data: any): ChangeUiThemeInput { + data = typeof data === 'object' ? data : {}; + let result = new ChangeUiThemeInput(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["theme"] = this.theme; + return data; + } + + clone(): ChangeUiThemeInput { + const json = this.toJSON(); + let result = new ChangeUiThemeInput(); + result.init(json); + return result; + } +} + +export interface IChangeUiThemeInput { + theme: string; +} + +export class CreateRoleDto implements ICreateRoleDto { + name: string; + displayName: string; + normalizedName: string | undefined; + description: string | undefined; + isStatic: boolean | undefined; + permissions: string[] | undefined; + + constructor(data?: ICreateRoleDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.name = data["name"]; + this.displayName = data["displayName"]; + this.normalizedName = data["normalizedName"]; + this.description = data["description"]; + this.isStatic = data["isStatic"]; + if (data["permissions"] && data["permissions"].constructor === Array) { + this.permissions = []; + for (let item of data["permissions"]) + this.permissions.push(item); + } + } + } + + static fromJS(data: any): CreateRoleDto { + data = typeof data === 'object' ? data : {}; + let result = new CreateRoleDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["name"] = this.name; + data["displayName"] = this.displayName; + data["normalizedName"] = this.normalizedName; + data["description"] = this.description; + data["isStatic"] = this.isStatic; + if (this.permissions && this.permissions.constructor === Array) { + data["permissions"] = []; + for (let item of this.permissions) + data["permissions"].push(item); + } + return data; + } + + clone(): CreateRoleDto { + const json = this.toJSON(); + let result = new CreateRoleDto(); + result.init(json); + return result; + } +} + +export interface ICreateRoleDto { + name: string; + displayName: string; + normalizedName: string | undefined; + description: string | undefined; + isStatic: boolean | undefined; + permissions: string[] | undefined; +} + +export class RoleDto implements IRoleDto { + name: string; + displayName: string; + normalizedName: string | undefined; + description: string | undefined; + isStatic: boolean | undefined; + permissions: string[] | undefined; + id: number | undefined; + + constructor(data?: IRoleDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.name = data["name"]; + this.displayName = data["displayName"]; + this.normalizedName = data["normalizedName"]; + this.description = data["description"]; + this.isStatic = data["isStatic"]; + if (data["permissions"] && data["permissions"].constructor === Array) { + this.permissions = []; + for (let item of data["permissions"]) + this.permissions.push(item); + } + this.id = data["id"]; + } + } + + static fromJS(data: any): RoleDto { + data = typeof data === 'object' ? data : {}; + let result = new RoleDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["name"] = this.name; + data["displayName"] = this.displayName; + data["normalizedName"] = this.normalizedName; + data["description"] = this.description; + data["isStatic"] = this.isStatic; + if (this.permissions && this.permissions.constructor === Array) { + data["permissions"] = []; + for (let item of this.permissions) + data["permissions"].push(item); + } + data["id"] = this.id; + return data; + } + + clone(): RoleDto { + const json = this.toJSON(); + let result = new RoleDto(); + result.init(json); + return result; + } +} + +export interface IRoleDto { + name: string; + displayName: string; + normalizedName: string | undefined; + description: string | undefined; + isStatic: boolean | undefined; + permissions: string[] | undefined; + id: number | undefined; +} + +export class ListResultDtoOfPermissionDto implements IListResultDtoOfPermissionDto { + items: PermissionDto[] | undefined; + + constructor(data?: IListResultDtoOfPermissionDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + if (data["items"] && data["items"].constructor === Array) { + this.items = []; + for (let item of data["items"]) + this.items.push(PermissionDto.fromJS(item)); + } + } + } + + static fromJS(data: any): ListResultDtoOfPermissionDto { + data = typeof data === 'object' ? data : {}; + let result = new ListResultDtoOfPermissionDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + if (this.items && this.items.constructor === Array) { + data["items"] = []; + for (let item of this.items) + data["items"].push(item.toJSON()); + } + return data; + } + + clone(): ListResultDtoOfPermissionDto { + const json = this.toJSON(); + let result = new ListResultDtoOfPermissionDto(); + result.init(json); + return result; + } +} + +export interface IListResultDtoOfPermissionDto { + items: PermissionDto[] | undefined; +} + +export class PermissionDto implements IPermissionDto { + name: string | undefined; + displayName: string | undefined; + description: string | undefined; + id: number | undefined; + + constructor(data?: IPermissionDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.name = data["name"]; + this.displayName = data["displayName"]; + this.description = data["description"]; + this.id = data["id"]; + } + } + + static fromJS(data: any): PermissionDto { + data = typeof data === 'object' ? data : {}; + let result = new PermissionDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["name"] = this.name; + data["displayName"] = this.displayName; + data["description"] = this.description; + data["id"] = this.id; + return data; + } + + clone(): PermissionDto { + const json = this.toJSON(); + let result = new PermissionDto(); + result.init(json); + return result; + } +} + +export interface IPermissionDto { + name: string | undefined; + displayName: string | undefined; + description: string | undefined; + id: number | undefined; +} + +export class GetRoleForEditOutput implements IGetRoleForEditOutput { + role: RoleEditDto | undefined; + permissions: FlatPermissionDto[] | undefined; + grantedPermissionNames: string[] | undefined; + + constructor(data?: IGetRoleForEditOutput) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.role = data["role"] ? RoleEditDto.fromJS(data["role"]) : undefined; + if (data["permissions"] && data["permissions"].constructor === Array) { + this.permissions = []; + for (let item of data["permissions"]) + this.permissions.push(FlatPermissionDto.fromJS(item)); + } + if (data["grantedPermissionNames"] && data["grantedPermissionNames"].constructor === Array) { + this.grantedPermissionNames = []; + for (let item of data["grantedPermissionNames"]) + this.grantedPermissionNames.push(item); + } + } + } + + static fromJS(data: any): GetRoleForEditOutput { + data = typeof data === 'object' ? data : {}; + let result = new GetRoleForEditOutput(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["role"] = this.role ? this.role.toJSON() : undefined; + if (this.permissions && this.permissions.constructor === Array) { + data["permissions"] = []; + for (let item of this.permissions) + data["permissions"].push(item.toJSON()); + } + if (this.grantedPermissionNames && this.grantedPermissionNames.constructor === Array) { + data["grantedPermissionNames"] = []; + for (let item of this.grantedPermissionNames) + data["grantedPermissionNames"].push(item); + } + return data; + } + + clone(): GetRoleForEditOutput { + const json = this.toJSON(); + let result = new GetRoleForEditOutput(); + result.init(json); + return result; + } +} + +export interface IGetRoleForEditOutput { + role: RoleEditDto | undefined; + permissions: FlatPermissionDto[] | undefined; + grantedPermissionNames: string[] | undefined; +} + +export class RoleEditDto implements IRoleEditDto { + name: string; + displayName: string; + description: string | undefined; + isStatic: boolean | undefined; + id: number | undefined; + + constructor(data?: IRoleEditDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.name = data["name"]; + this.displayName = data["displayName"]; + this.description = data["description"]; + this.isStatic = data["isStatic"]; + this.id = data["id"]; + } + } + + static fromJS(data: any): RoleEditDto { + data = typeof data === 'object' ? data : {}; + let result = new RoleEditDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["name"] = this.name; + data["displayName"] = this.displayName; + data["description"] = this.description; + data["isStatic"] = this.isStatic; + data["id"] = this.id; + return data; + } + + clone(): RoleEditDto { + const json = this.toJSON(); + let result = new RoleEditDto(); + result.init(json); + return result; + } +} + +export interface IRoleEditDto { + name: string; + displayName: string; + description: string | undefined; + isStatic: boolean | undefined; + id: number | undefined; +} + +export class FlatPermissionDto implements IFlatPermissionDto { + name: string | undefined; + displayName: string | undefined; + description: string | undefined; + + constructor(data?: IFlatPermissionDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.name = data["name"]; + this.displayName = data["displayName"]; + this.description = data["description"]; + } + } + + static fromJS(data: any): FlatPermissionDto { + data = typeof data === 'object' ? data : {}; + let result = new FlatPermissionDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["name"] = this.name; + data["displayName"] = this.displayName; + data["description"] = this.description; + return data; + } + + clone(): FlatPermissionDto { + const json = this.toJSON(); + let result = new FlatPermissionDto(); + result.init(json); + return result; + } +} + +export interface IFlatPermissionDto { + name: string | undefined; + displayName: string | undefined; + description: string | undefined; +} + +export class PagedResultDtoOfRoleDto implements IPagedResultDtoOfRoleDto { + totalCount: number | undefined; + items: RoleDto[] | undefined; + + constructor(data?: IPagedResultDtoOfRoleDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.totalCount = data["totalCount"]; + if (data["items"] && data["items"].constructor === Array) { + this.items = []; + for (let item of data["items"]) + this.items.push(RoleDto.fromJS(item)); + } + } + } + + static fromJS(data: any): PagedResultDtoOfRoleDto { + data = typeof data === 'object' ? data : {}; + let result = new PagedResultDtoOfRoleDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["totalCount"] = this.totalCount; + if (this.items && this.items.constructor === Array) { + data["items"] = []; + for (let item of this.items) + data["items"].push(item.toJSON()); + } + return data; + } + + clone(): PagedResultDtoOfRoleDto { + const json = this.toJSON(); + let result = new PagedResultDtoOfRoleDto(); + result.init(json); + return result; + } +} + +export interface IPagedResultDtoOfRoleDto { + totalCount: number | undefined; + items: RoleDto[] | undefined; +} + +export class GetCurrentLoginInformationsOutput implements IGetCurrentLoginInformationsOutput { + application: ApplicationInfoDto | undefined; + user: UserLoginInfoDto | undefined; + tenant: TenantLoginInfoDto | undefined; + + constructor(data?: IGetCurrentLoginInformationsOutput) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.application = data["application"] ? ApplicationInfoDto.fromJS(data["application"]) : undefined; + this.user = data["user"] ? UserLoginInfoDto.fromJS(data["user"]) : undefined; + this.tenant = data["tenant"] ? TenantLoginInfoDto.fromJS(data["tenant"]) : undefined; + } + } + + static fromJS(data: any): GetCurrentLoginInformationsOutput { + data = typeof data === 'object' ? data : {}; + let result = new GetCurrentLoginInformationsOutput(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["application"] = this.application ? this.application.toJSON() : undefined; + data["user"] = this.user ? this.user.toJSON() : undefined; + data["tenant"] = this.tenant ? this.tenant.toJSON() : undefined; + return data; + } + + clone(): GetCurrentLoginInformationsOutput { + const json = this.toJSON(); + let result = new GetCurrentLoginInformationsOutput(); + result.init(json); + return result; + } +} + +export interface IGetCurrentLoginInformationsOutput { + application: ApplicationInfoDto | undefined; + user: UserLoginInfoDto | undefined; + tenant: TenantLoginInfoDto | undefined; +} + +export class ApplicationInfoDto implements IApplicationInfoDto { + version: string | undefined; + releaseDate: moment.Moment | undefined; + features: { [key: string] : boolean; } | undefined; + + constructor(data?: IApplicationInfoDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.version = data["version"]; + this.releaseDate = data["releaseDate"] ? moment(data["releaseDate"].toString()) : undefined; + if (data["features"]) { + this.features = {}; + for (let key in data["features"]) { + if (data["features"].hasOwnProperty(key)) + this.features[key] = data["features"][key]; + } + } + } + } + + static fromJS(data: any): ApplicationInfoDto { + data = typeof data === 'object' ? data : {}; + let result = new ApplicationInfoDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["version"] = this.version; + data["releaseDate"] = this.releaseDate ? this.releaseDate.toISOString() : undefined; + if (this.features) { + data["features"] = {}; + for (let key in this.features) { + if (this.features.hasOwnProperty(key)) + data["features"][key] = this.features[key]; + } + } + return data; + } + + clone(): ApplicationInfoDto { + const json = this.toJSON(); + let result = new ApplicationInfoDto(); + result.init(json); + return result; + } +} + +export interface IApplicationInfoDto { + version: string | undefined; + releaseDate: moment.Moment | undefined; + features: { [key: string] : boolean; } | undefined; +} + +export class UserLoginInfoDto implements IUserLoginInfoDto { + name: string | undefined; + surname: string | undefined; + userName: string | undefined; + emailAddress: string | undefined; + id: number | undefined; + + constructor(data?: IUserLoginInfoDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.name = data["name"]; + this.surname = data["surname"]; + this.userName = data["userName"]; + this.emailAddress = data["emailAddress"]; + this.id = data["id"]; + } + } + + static fromJS(data: any): UserLoginInfoDto { + data = typeof data === 'object' ? data : {}; + let result = new UserLoginInfoDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["name"] = this.name; + data["surname"] = this.surname; + data["userName"] = this.userName; + data["emailAddress"] = this.emailAddress; + data["id"] = this.id; + return data; + } + + clone(): UserLoginInfoDto { + const json = this.toJSON(); + let result = new UserLoginInfoDto(); + result.init(json); + return result; + } +} + +export interface IUserLoginInfoDto { + name: string | undefined; + surname: string | undefined; + userName: string | undefined; + emailAddress: string | undefined; + id: number | undefined; +} + +export class TenantLoginInfoDto implements ITenantLoginInfoDto { + tenancyName: string | undefined; + name: string | undefined; + id: number | undefined; + + constructor(data?: ITenantLoginInfoDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.tenancyName = data["tenancyName"]; + this.name = data["name"]; + this.id = data["id"]; + } + } + + static fromJS(data: any): TenantLoginInfoDto { + data = typeof data === 'object' ? data : {}; + let result = new TenantLoginInfoDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["tenancyName"] = this.tenancyName; + data["name"] = this.name; + data["id"] = this.id; + return data; + } + + clone(): TenantLoginInfoDto { + const json = this.toJSON(); + let result = new TenantLoginInfoDto(); + result.init(json); + return result; + } +} + +export interface ITenantLoginInfoDto { + tenancyName: string | undefined; + name: string | undefined; + id: number | undefined; +} + +export class CreateTenantDto implements ICreateTenantDto { + tenancyName: string; + name: string; + adminEmailAddress: string; + connectionString: string | undefined; + isActive: boolean | undefined; + + constructor(data?: ICreateTenantDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.tenancyName = data["tenancyName"]; + this.name = data["name"]; + this.adminEmailAddress = data["adminEmailAddress"]; + this.connectionString = data["connectionString"]; + this.isActive = data["isActive"]; + } + } + + static fromJS(data: any): CreateTenantDto { + data = typeof data === 'object' ? data : {}; + let result = new CreateTenantDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["tenancyName"] = this.tenancyName; + data["name"] = this.name; + data["adminEmailAddress"] = this.adminEmailAddress; + data["connectionString"] = this.connectionString; + data["isActive"] = this.isActive; + return data; + } + + clone(): CreateTenantDto { + const json = this.toJSON(); + let result = new CreateTenantDto(); + result.init(json); + return result; + } +} + +export interface ICreateTenantDto { + tenancyName: string; + name: string; + adminEmailAddress: string; + connectionString: string | undefined; + isActive: boolean | undefined; +} + +export class TenantDto implements ITenantDto { + tenancyName: string; + name: string; + isActive: boolean | undefined; + id: number | undefined; + + constructor(data?: ITenantDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.tenancyName = data["tenancyName"]; + this.name = data["name"]; + this.isActive = data["isActive"]; + this.id = data["id"]; + } + } + + static fromJS(data: any): TenantDto { + data = typeof data === 'object' ? data : {}; + let result = new TenantDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["tenancyName"] = this.tenancyName; + data["name"] = this.name; + data["isActive"] = this.isActive; + data["id"] = this.id; + return data; + } + + clone(): TenantDto { + const json = this.toJSON(); + let result = new TenantDto(); + result.init(json); + return result; + } +} + +export interface ITenantDto { + tenancyName: string; + name: string; + isActive: boolean | undefined; + id: number | undefined; +} + +export class PagedResultDtoOfTenantDto implements IPagedResultDtoOfTenantDto { + totalCount: number | undefined; + items: TenantDto[] | undefined; + + constructor(data?: IPagedResultDtoOfTenantDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.totalCount = data["totalCount"]; + if (data["items"] && data["items"].constructor === Array) { + this.items = []; + for (let item of data["items"]) + this.items.push(TenantDto.fromJS(item)); + } + } + } + + static fromJS(data: any): PagedResultDtoOfTenantDto { + data = typeof data === 'object' ? data : {}; + let result = new PagedResultDtoOfTenantDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["totalCount"] = this.totalCount; + if (this.items && this.items.constructor === Array) { + data["items"] = []; + for (let item of this.items) + data["items"].push(item.toJSON()); + } + return data; + } + + clone(): PagedResultDtoOfTenantDto { + const json = this.toJSON(); + let result = new PagedResultDtoOfTenantDto(); + result.init(json); + return result; + } +} + +export interface IPagedResultDtoOfTenantDto { + totalCount: number | undefined; + items: TenantDto[] | undefined; +} + +export class AuthenticateModel implements IAuthenticateModel { + userNameOrEmailAddress: string; + password: string; + rememberClient: boolean | undefined; + + constructor(data?: IAuthenticateModel) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.userNameOrEmailAddress = data["userNameOrEmailAddress"]; + this.password = data["password"]; + this.rememberClient = data["rememberClient"]; + } + } + + static fromJS(data: any): AuthenticateModel { + data = typeof data === 'object' ? data : {}; + let result = new AuthenticateModel(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["userNameOrEmailAddress"] = this.userNameOrEmailAddress; + data["password"] = this.password; + data["rememberClient"] = this.rememberClient; + return data; + } + + clone(): AuthenticateModel { + const json = this.toJSON(); + let result = new AuthenticateModel(); + result.init(json); + return result; + } +} + +export interface IAuthenticateModel { + userNameOrEmailAddress: string; + password: string; + rememberClient: boolean | undefined; +} + +export class AuthenticateResultModel implements IAuthenticateResultModel { + accessToken: string | undefined; + encryptedAccessToken: string | undefined; + expireInSeconds: number | undefined; + userId: number | undefined; + + constructor(data?: IAuthenticateResultModel) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.accessToken = data["accessToken"]; + this.encryptedAccessToken = data["encryptedAccessToken"]; + this.expireInSeconds = data["expireInSeconds"]; + this.userId = data["userId"]; + } + } + + static fromJS(data: any): AuthenticateResultModel { + data = typeof data === 'object' ? data : {}; + let result = new AuthenticateResultModel(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["accessToken"] = this.accessToken; + data["encryptedAccessToken"] = this.encryptedAccessToken; + data["expireInSeconds"] = this.expireInSeconds; + data["userId"] = this.userId; + return data; + } + + clone(): AuthenticateResultModel { + const json = this.toJSON(); + let result = new AuthenticateResultModel(); + result.init(json); + return result; + } +} + +export interface IAuthenticateResultModel { + accessToken: string | undefined; + encryptedAccessToken: string | undefined; + expireInSeconds: number | undefined; + userId: number | undefined; +} + +export class ExternalLoginProviderInfoModel implements IExternalLoginProviderInfoModel { + name: string | undefined; + clientId: string | undefined; + + constructor(data?: IExternalLoginProviderInfoModel) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.name = data["name"]; + this.clientId = data["clientId"]; + } + } + + static fromJS(data: any): ExternalLoginProviderInfoModel { + data = typeof data === 'object' ? data : {}; + let result = new ExternalLoginProviderInfoModel(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["name"] = this.name; + data["clientId"] = this.clientId; + return data; + } + + clone(): ExternalLoginProviderInfoModel { + const json = this.toJSON(); + let result = new ExternalLoginProviderInfoModel(); + result.init(json); + return result; + } +} + +export interface IExternalLoginProviderInfoModel { + name: string | undefined; + clientId: string | undefined; +} + +export class ExternalAuthenticateModel implements IExternalAuthenticateModel { + authProvider: string; + providerKey: string; + providerAccessCode: string; + + constructor(data?: IExternalAuthenticateModel) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.authProvider = data["authProvider"]; + this.providerKey = data["providerKey"]; + this.providerAccessCode = data["providerAccessCode"]; + } + } + + static fromJS(data: any): ExternalAuthenticateModel { + data = typeof data === 'object' ? data : {}; + let result = new ExternalAuthenticateModel(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["authProvider"] = this.authProvider; + data["providerKey"] = this.providerKey; + data["providerAccessCode"] = this.providerAccessCode; + return data; + } + + clone(): ExternalAuthenticateModel { + const json = this.toJSON(); + let result = new ExternalAuthenticateModel(); + result.init(json); + return result; + } +} + +export interface IExternalAuthenticateModel { + authProvider: string; + providerKey: string; + providerAccessCode: string; +} + +export class ExternalAuthenticateResultModel implements IExternalAuthenticateResultModel { + accessToken: string | undefined; + encryptedAccessToken: string | undefined; + expireInSeconds: number | undefined; + waitingForActivation: boolean | undefined; + + constructor(data?: IExternalAuthenticateResultModel) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.accessToken = data["accessToken"]; + this.encryptedAccessToken = data["encryptedAccessToken"]; + this.expireInSeconds = data["expireInSeconds"]; + this.waitingForActivation = data["waitingForActivation"]; + } + } + + static fromJS(data: any): ExternalAuthenticateResultModel { + data = typeof data === 'object' ? data : {}; + let result = new ExternalAuthenticateResultModel(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["accessToken"] = this.accessToken; + data["encryptedAccessToken"] = this.encryptedAccessToken; + data["expireInSeconds"] = this.expireInSeconds; + data["waitingForActivation"] = this.waitingForActivation; + return data; + } + + clone(): ExternalAuthenticateResultModel { + const json = this.toJSON(); + let result = new ExternalAuthenticateResultModel(); + result.init(json); + return result; + } +} + +export interface IExternalAuthenticateResultModel { + accessToken: string | undefined; + encryptedAccessToken: string | undefined; + expireInSeconds: number | undefined; + waitingForActivation: boolean | undefined; +} + +export class CreateUserDto implements ICreateUserDto { + userName: string; + name: string; + surname: string; + emailAddress: string; + isActive: boolean | undefined; + roleNames: string[] | undefined; + password: string; + + constructor(data?: ICreateUserDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.userName = data["userName"]; + this.name = data["name"]; + this.surname = data["surname"]; + this.emailAddress = data["emailAddress"]; + this.isActive = data["isActive"]; + if (data["roleNames"] && data["roleNames"].constructor === Array) { + this.roleNames = []; + for (let item of data["roleNames"]) + this.roleNames.push(item); + } + this.password = data["password"]; + } + } + + static fromJS(data: any): CreateUserDto { + data = typeof data === 'object' ? data : {}; + let result = new CreateUserDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["userName"] = this.userName; + data["name"] = this.name; + data["surname"] = this.surname; + data["emailAddress"] = this.emailAddress; + data["isActive"] = this.isActive; + if (this.roleNames && this.roleNames.constructor === Array) { + data["roleNames"] = []; + for (let item of this.roleNames) + data["roleNames"].push(item); + } + data["password"] = this.password; + return data; + } + + clone(): CreateUserDto { + const json = this.toJSON(); + let result = new CreateUserDto(); + result.init(json); + return result; + } +} + +export interface ICreateUserDto { + userName: string; + name: string; + surname: string; + emailAddress: string; + isActive: boolean | undefined; + roleNames: string[] | undefined; + password: string; +} + +export class UserDto implements IUserDto { + userName: string; + name: string; + surname: string; + emailAddress: string; + isActive: boolean | undefined; + fullName: string | undefined; + lastLoginTime: moment.Moment | undefined; + creationTime: moment.Moment | undefined; + roleNames: string[] | undefined; + id: number | undefined; + + constructor(data?: IUserDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.userName = data["userName"]; + this.name = data["name"]; + this.surname = data["surname"]; + this.emailAddress = data["emailAddress"]; + this.isActive = data["isActive"]; + this.fullName = data["fullName"]; + this.lastLoginTime = data["lastLoginTime"] ? moment(data["lastLoginTime"].toString()) : undefined; + this.creationTime = data["creationTime"] ? moment(data["creationTime"].toString()) : undefined; + if (data["roleNames"] && data["roleNames"].constructor === Array) { + this.roleNames = []; + for (let item of data["roleNames"]) + this.roleNames.push(item); + } + this.id = data["id"]; + } + } + + static fromJS(data: any): UserDto { + data = typeof data === 'object' ? data : {}; + let result = new UserDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["userName"] = this.userName; + data["name"] = this.name; + data["surname"] = this.surname; + data["emailAddress"] = this.emailAddress; + data["isActive"] = this.isActive; + data["fullName"] = this.fullName; + data["lastLoginTime"] = this.lastLoginTime ? this.lastLoginTime.toISOString() : undefined; + data["creationTime"] = this.creationTime ? this.creationTime.toISOString() : undefined; + if (this.roleNames && this.roleNames.constructor === Array) { + data["roleNames"] = []; + for (let item of this.roleNames) + data["roleNames"].push(item); + } + data["id"] = this.id; + return data; + } + + clone(): UserDto { + const json = this.toJSON(); + let result = new UserDto(); + result.init(json); + return result; + } +} + +export interface IUserDto { + userName: string; + name: string; + surname: string; + emailAddress: string; + isActive: boolean | undefined; + fullName: string | undefined; + lastLoginTime: moment.Moment | undefined; + creationTime: moment.Moment | undefined; + roleNames: string[] | undefined; + id: number | undefined; +} + +export class ListResultDtoOfRoleDto implements IListResultDtoOfRoleDto { + items: RoleDto[] | undefined; + + constructor(data?: IListResultDtoOfRoleDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + if (data["items"] && data["items"].constructor === Array) { + this.items = []; + for (let item of data["items"]) + this.items.push(RoleDto.fromJS(item)); + } + } + } + + static fromJS(data: any): ListResultDtoOfRoleDto { + data = typeof data === 'object' ? data : {}; + let result = new ListResultDtoOfRoleDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + if (this.items && this.items.constructor === Array) { + data["items"] = []; + for (let item of this.items) + data["items"].push(item.toJSON()); + } + return data; + } + + clone(): ListResultDtoOfRoleDto { + const json = this.toJSON(); + let result = new ListResultDtoOfRoleDto(); + result.init(json); + return result; + } +} + +export interface IListResultDtoOfRoleDto { + items: RoleDto[] | undefined; +} + +export class ChangeUserLanguageDto implements IChangeUserLanguageDto { + languageName: string; + + constructor(data?: IChangeUserLanguageDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.languageName = data["languageName"]; + } + } + + static fromJS(data: any): ChangeUserLanguageDto { + data = typeof data === 'object' ? data : {}; + let result = new ChangeUserLanguageDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["languageName"] = this.languageName; + return data; + } + + clone(): ChangeUserLanguageDto { + const json = this.toJSON(); + let result = new ChangeUserLanguageDto(); + result.init(json); + return result; + } +} + +export interface IChangeUserLanguageDto { + languageName: string; +} + +export class PagedResultDtoOfUserDto implements IPagedResultDtoOfUserDto { + totalCount: number | undefined; + items: UserDto[] | undefined; + + constructor(data?: IPagedResultDtoOfUserDto) { + if (data) { + for (var property in data) { + if (data.hasOwnProperty(property)) + (this)[property] = (data)[property]; + } + } + } + + init(data?: any) { + if (data) { + this.totalCount = data["totalCount"]; + if (data["items"] && data["items"].constructor === Array) { + this.items = []; + for (let item of data["items"]) + this.items.push(UserDto.fromJS(item)); + } + } + } + + static fromJS(data: any): PagedResultDtoOfUserDto { + data = typeof data === 'object' ? data : {}; + let result = new PagedResultDtoOfUserDto(); + result.init(data); + return result; + } + + toJSON(data?: any) { + data = typeof data === 'object' ? data : {}; + data["totalCount"] = this.totalCount; + if (this.items && this.items.constructor === Array) { + data["items"] = []; + for (let item of this.items) + data["items"].push(item.toJSON()); + } + return data; + } + + clone(): PagedResultDtoOfUserDto { + const json = this.toJSON(); + let result = new PagedResultDtoOfUserDto(); + result.init(json); + return result; + } +} + +export interface IPagedResultDtoOfUserDto { + totalCount: number | undefined; + items: UserDto[] | undefined; +} + +export enum IsTenantAvailableOutputState { + _1 = 1, + _2 = 2, + _3 = 3, +} + +export class SwaggerException extends Error { + message: string; + status: number; + response: string; + headers: { [key: string]: any; }; + result: any; + + constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) { + super(); + + this.message = message; + this.status = status; + this.response = response; + this.headers = headers; + this.result = result; + } + + protected isSwaggerException = true; + + static isSwaggerException(obj: any): obj is SwaggerException { + return obj.isSwaggerException === true; + } +} + +function throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): Observable { + if(result !== null && result !== undefined) + return _observableThrow(result); + else + return _observableThrow(new SwaggerException(message, status, response, headers, null)); +} + +function blobToText(blob: any): Observable { + return new Observable((observer: any) => { + if (!blob) { + observer.next(""); + observer.complete(); + } else { + let reader = new FileReader(); + reader.onload = function() { + observer.next(this.result); + observer.complete(); + } + reader.readAsText(blob); + } + }); +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/shared/service-proxies/service-proxy.module.ts b/SystemKonkursow/4.2.1/angular/src/shared/service-proxies/service-proxy.module.ts new file mode 100644 index 0000000..c63fa4d --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/service-proxies/service-proxy.module.ts @@ -0,0 +1,19 @@ +import { NgModule } from '@angular/core'; +import { HTTP_INTERCEPTORS } from '@angular/common/http'; +import { AbpHttpInterceptor } from '@abp/abpHttpInterceptor'; + +import * as ApiServiceProxies from './service-proxies'; + +@NgModule({ + providers: [ + ApiServiceProxies.RoleServiceProxy, + ApiServiceProxies.SessionServiceProxy, + ApiServiceProxies.TenantServiceProxy, + ApiServiceProxies.UserServiceProxy, + ApiServiceProxies.TokenAuthServiceProxy, + ApiServiceProxies.AccountServiceProxy, + ApiServiceProxies.ConfigurationServiceProxy, + { provide: HTTP_INTERCEPTORS, useClass: AbpHttpInterceptor, multi: true } + ] +}) +export class ServiceProxyModule { } diff --git a/SystemKonkursow/4.2.1/angular/src/shared/session/app-session.service.ts b/SystemKonkursow/4.2.1/angular/src/shared/session/app-session.service.ts new file mode 100644 index 0000000..b480739 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/session/app-session.service.ts @@ -0,0 +1,79 @@ +import { Injectable } from '@angular/core'; +import { SessionServiceProxy, UserLoginInfoDto, TenantLoginInfoDto, ApplicationInfoDto, GetCurrentLoginInformationsOutput } from '@shared/service-proxies/service-proxies' +import { AbpMultiTenancyService } from '@abp/multi-tenancy/abp-multi-tenancy.service' + +@Injectable() +export class AppSessionService { + + private _user: UserLoginInfoDto; + private _tenant: TenantLoginInfoDto; + private _application: ApplicationInfoDto; + + constructor( + private _sessionService: SessionServiceProxy, + private _abpMultiTenancyService: AbpMultiTenancyService) { + } + + get application(): ApplicationInfoDto { + return this._application; + } + + get user(): UserLoginInfoDto { + return this._user; + } + + get userId(): number { + return this.user ? this.user.id : null; + } + + get tenant(): TenantLoginInfoDto { + return this._tenant; + } + + get tenantId(): number { + return this.tenant ? this.tenant.id : null; + } + + getShownLoginName(): string { + let userName = this._user.userName; + if (!this._abpMultiTenancyService.isEnabled) { + return userName; + } + + return (this._tenant ? this._tenant.tenancyName : ".") + "\\" + userName; + } + + init(): Promise { + return new Promise((resolve, reject) => { + this._sessionService.getCurrentLoginInformations().toPromise().then((result: GetCurrentLoginInformationsOutput) => { + this._application = result.application; + this._user = result.user; + this._tenant = result.tenant; + + resolve(true); + }, (err) => { + reject(err); + }); + }); + } + + changeTenantIfNeeded(tenantId?: number): boolean { + if (this.isCurrentTenant(tenantId)) { + return false; + } + + abp.multiTenancy.setTenantIdCookie(tenantId); + location.reload(); + return true; + } + + private isCurrentTenant(tenantId?: number) { + if (!tenantId && this.tenant) { + return false; + } else if (tenantId && (!this.tenant || this.tenant.id !== tenantId)) { + return false; + } + + return true; + } +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/shared/shared.module.ts b/SystemKonkursow/4.2.1/angular/src/shared/shared.module.ts new file mode 100644 index 0000000..365814f --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/shared/shared.module.ts @@ -0,0 +1,37 @@ +import { CommonModule } from '@angular/common'; +import { NgModule, ModuleWithProviders } from '@angular/core'; +import { AbpModule } from '@abp/abp.module'; +import { RouterModule } from '@angular/router'; + +import { AppSessionService } from './session/app-session.service'; +import { AppUrlService } from './nav/app-url.service'; +import { AppAuthService } from './auth/app-auth.service'; +import { AppRouteGuard } from './auth/auth-route-guard'; +import { MaterialInput } from 'shared/directives/material-input.directive'; + +@NgModule({ + imports: [ + CommonModule, + AbpModule, + RouterModule + ], + declarations: [ + MaterialInput + ], + exports: [ + MaterialInput + ] +}) +export class SharedModule { + static forRoot(): ModuleWithProviders { + return { + ngModule: SharedModule, + providers: [ + AppSessionService, + AppUrlService, + AppAuthService, + AppRouteGuard + ] + } + } +} diff --git a/SystemKonkursow/4.2.1/angular/src/test.ts b/SystemKonkursow/4.2.1/angular/src/test.ts new file mode 100644 index 0000000..9bf7226 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/test.ts @@ -0,0 +1,32 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/dist/long-stack-trace-zone'; +import 'zone.js/dist/proxy.js'; +import 'zone.js/dist/sync-test'; +import 'zone.js/dist/jasmine-patch'; +import 'zone.js/dist/async-test'; +import 'zone.js/dist/fake-async-test'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +// Unfortunately there's no typing for the `__karma__` variable. Just declare it as any. +declare var __karma__: any; +declare var require: any; + +// Prevent Karma from running prematurely. +__karma__.loaded = function () {}; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() +); +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); +// Finally, start Karma to run the tests. +__karma__.start(); diff --git a/SystemKonkursow/4.2.1/angular/src/tsconfig.json b/SystemKonkursow/4.2.1/angular/src/tsconfig.json new file mode 100644 index 0000000..36c9d81 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/tsconfig.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "declaration": false, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "lib": [ "es6", "dom" ], + "mapRoot": "./", + "module": "esnext", + "moduleResolution": "node", + "outDir": "../dist/out-tsc", + "sourceMap": true, + "target": "es5", + "typeRoots": [ + "../node_modules/@types" + ], + "baseUrl": ".", + "paths": { + "@abp/*": [ "../node_modules/abp-ng2-module/dist/src/*" ], + "@app/*": [ "./app/*" ], + "@shared/*": [ "./shared/*" ], + "@node_modules/*": [ "../node_modules/*" ] + } + }, + "exclude": [ + "node_modules" + ] +} diff --git a/SystemKonkursow/4.2.1/angular/src/typings.d.ts b/SystemKonkursow/4.2.1/angular/src/typings.d.ts new file mode 100644 index 0000000..05e5446 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/typings.d.ts @@ -0,0 +1,31 @@ +/// +/// +/// +/// +/// +/// +/// +/// + +// Typings reference file, see links for more information +// https://github.com/typings/typings +// https://www.typescriptlang.org/docs/handbook/writing-declaration-files.html + +declare var System: any; + +declare var App: any; //Related to Metronic +declare var Layout: any; //Related to Metronic + +declare var Push: any; + +interface JQuery { + countTo(...any): any; +} + +interface JQuery { + sparkline(...any): any; +} + +interface JQueryStatic { + AdminBSB: any; +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/tslint.json b/SystemKonkursow/4.2.1/angular/tslint.json new file mode 100644 index 0000000..5ea4427 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/tslint.json @@ -0,0 +1,116 @@ +{ + "rulesDirectory": [ + "node_modules/codelyzer" + ], + "rules": { + "callable-types": true, + "class-name": true, + "comment-format": [ + true, + "check-space" + ], + "curly": true, + "eofline": true, + "forin": true, + "import-blacklist": [true], + "import-spacing": true, + "indent": [ + true, + "spaces" + ], + "interface-over-type-literal": true, + "label-position": true, + "max-line-length": [ + true, + 140 + ], + "member-access": false, + "member-ordering": [ + true, + "static-before-instance", + "variables-before-functions" + ], + "no-arg": true, + "no-bitwise": true, + "no-console": [ + true, + "debug", + "info", + "time", + "timeEnd", + "trace" + ], + "no-construct": true, + "no-debugger": true, + "no-duplicate-variable": true, + "no-empty": false, + "no-empty-interface": true, + "no-eval": true, + "no-inferrable-types": true, + "no-shadowed-variable": true, + "no-string-literal": false, + "no-string-throw": true, + "no-switch-case-fall-through": true, + "no-trailing-whitespace": true, + "no-unused-expression": true, + "no-use-before-declare": true, + "no-var-keyword": true, + "object-literal-sort-keys": false, + "one-line": [ + true, + "check-open-brace", + "check-catch", + "check-else", + "check-whitespace" + ], + "prefer-const": true, + "quotemark": [ + true, + "single" + ], + "radix": true, + "semicolon": [ + "always" + ], + "triple-equals": [ + true, + "allow-null-check" + ], + "typedef-whitespace": [ + true, + { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + } + ], + "typeof-compare": true, + "unified-signatures": true, + "variable-name": false, + "whitespace": [ + true, + "check-branch", + "check-decl", + "check-operator", + "check-separator", + "check-type" + ], + + "directive-selector": [true, "attribute", "app", "camelCase"], + "component-selector": [true, "element", "app", "kebab-case"], + "use-input-property-decorator": true, + "use-output-property-decorator": true, + "use-host-property-decorator": true, + "no-input-rename": true, + "no-output-rename": true, + "use-life-cycle-interface": true, + "use-pipe-transform-interface": true, + "component-class-suffix": true, + "directive-class-suffix": true, + "no-access-missing-member": true, + "templates-use-public": true, + "invoke-injectable": true + } +} diff --git a/SystemKonkursow/4.2.1/angular/web.config b/SystemKonkursow/4.2.1/angular/web.config new file mode 100644 index 0000000..019dc82 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/web.config @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/yarn.lock b/SystemKonkursow/4.2.1/angular/yarn.lock new file mode 100644 index 0000000..b6eb4f5 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/yarn.lock @@ -0,0 +1,6829 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@angular-devkit/architect@0.6.8": + version "0.6.8" + resolved "https://registry.yarnpkg.com/@angular-devkit/architect/-/architect-0.6.8.tgz#977acc605aba45d21b95ca704cc99492e14299dd" + dependencies: + "@angular-devkit/core" "0.6.8" + rxjs "^6.0.0" + +"@angular-devkit/build-angular@~0.6.8": + version "0.6.8" + resolved "https://registry.yarnpkg.com/@angular-devkit/build-angular/-/build-angular-0.6.8.tgz#ea108509f970efc9cd9087a47894c0164dd2d0c0" + dependencies: + "@angular-devkit/architect" "0.6.8" + "@angular-devkit/build-optimizer" "0.6.8" + "@angular-devkit/core" "0.6.8" + "@ngtools/webpack" "6.0.8" + ajv "~6.4.0" + autoprefixer "^8.4.1" + cache-loader "^1.2.2" + chalk "~2.2.2" + circular-dependency-plugin "^5.0.2" + clean-css "^4.1.11" + copy-webpack-plugin "^4.5.1" + file-loader "^1.1.11" + glob "^7.0.3" + html-webpack-plugin "^3.0.6" + istanbul "^0.4.5" + istanbul-instrumenter-loader "^3.0.1" + karma-source-map-support "^1.2.0" + less "^3.0.4" + less-loader "^4.1.0" + license-webpack-plugin "^1.3.1" + lodash "^4.17.4" + memory-fs "^0.4.1" + mini-css-extract-plugin "~0.4.0" + minimatch "^3.0.4" + opn "^5.1.0" + parse5 "^4.0.0" + portfinder "^1.0.13" + postcss "^6.0.22" + postcss-import "^11.1.0" + postcss-loader "^2.1.5" + postcss-url "^7.3.2" + raw-loader "^0.5.1" + resolve "^1.5.0" + rxjs "^6.0.0" + sass-loader "^7.0.1" + silent-error "^1.1.0" + source-map-support "^0.5.0" + stats-webpack-plugin "^0.6.2" + style-loader "^0.21.0" + stylus "^0.54.5" + stylus-loader "^3.0.2" + tree-kill "^1.2.0" + uglifyjs-webpack-plugin "^1.2.5" + url-loader "^1.0.1" + webpack "~4.8.1" + webpack-dev-middleware "^3.1.3" + webpack-dev-server "^3.1.4" + webpack-merge "^4.1.2" + webpack-sources "^1.1.0" + webpack-subresource-integrity "^1.1.0-rc.4" + optionalDependencies: + node-sass "^4.9.0" + +"@angular-devkit/build-optimizer@0.6.8": + version "0.6.8" + resolved "https://registry.yarnpkg.com/@angular-devkit/build-optimizer/-/build-optimizer-0.6.8.tgz#9e18a4f447290d3a8e32df1110aac8b98b80dec2" + dependencies: + loader-utils "^1.1.0" + source-map "^0.5.6" + typescript "~2.9.1" + webpack-sources "^1.1.0" + +"@angular-devkit/core@0.6.8": + version "0.6.8" + resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-0.6.8.tgz#3b09d97bd2588f0091df11921f7ed772431806aa" + dependencies: + ajv "~6.4.0" + chokidar "^2.0.3" + rxjs "^6.0.0" + source-map "^0.5.6" + +"@angular-devkit/schematics@0.6.8": + version "0.6.8" + resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-0.6.8.tgz#6360a0271f1f422862bf932a03b3741e76ac5ff0" + dependencies: + "@angular-devkit/core" "0.6.8" + rxjs "^6.0.0" + +"@angular/animations@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-6.0.5.tgz#3964bc2a60facf3c3b417925c4a395b3f44abb94" + dependencies: + tslib "^1.9.0" + +"@angular/cli@^6.0.8": + version "6.0.8" + resolved "https://registry.yarnpkg.com/@angular/cli/-/cli-6.0.8.tgz#65070958b944be30053232c51f8449b7ddd4d92a" + dependencies: + "@angular-devkit/architect" "0.6.8" + "@angular-devkit/core" "0.6.8" + "@angular-devkit/schematics" "0.6.8" + "@schematics/angular" "0.6.8" + "@schematics/update" "0.6.8" + opn "~5.3.0" + resolve "^1.1.7" + rxjs "^6.0.0" + semver "^5.1.0" + silent-error "^1.0.0" + symbol-observable "^1.2.0" + yargs-parser "^10.0.0" + +"@angular/common@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@angular/common/-/common-6.0.5.tgz#7960e1cfc180afb4a1bd56371c48840173cc5a92" + dependencies: + tslib "^1.9.0" + +"@angular/compiler-cli@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-6.0.5.tgz#e3ae6a1042e4a08c43f2554685718a4402710958" + dependencies: + chokidar "^1.4.2" + minimist "^1.2.0" + reflect-metadata "^0.1.2" + tsickle "^0.29.0" + +"@angular/compiler@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-6.0.5.tgz#cb8fdb17b0d736c9054c1c9ab382c9cd2cc7ba5d" + dependencies: + tslib "^1.9.0" + +"@angular/core@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@angular/core/-/core-6.0.5.tgz#5846f1b3143f43657dc704fe4bcf9e75b94ec325" + dependencies: + tslib "^1.9.0" + +"@angular/forms@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-6.0.5.tgz#d3ec7886d8b61a97b2c0b7501b304b449a2dcae6" + dependencies: + tslib "^1.9.0" + +"@angular/http@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@angular/http/-/http-6.0.5.tgz#53835564bb5c7a4eac7893a28bcaaf0e73fec2cd" + dependencies: + tslib "^1.9.0" + +"@angular/platform-browser-dynamic@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-6.0.5.tgz#21c9a702fbd4a153ae8aa35fef89ca1a6dfaa658" + dependencies: + tslib "^1.9.0" + +"@angular/platform-browser@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-6.0.5.tgz#b6b15424a7aa9342284ce7fba6a700f7aad2fd9c" + dependencies: + tslib "^1.9.0" + +"@angular/router@^6.0.5": + version "6.0.5" + resolved "https://registry.yarnpkg.com/@angular/router/-/router-6.0.5.tgz#e9e9e5986e238588020d0531aff3362e836db2a8" + dependencies: + tslib "^1.9.0" + +"@angularclass/hmr@^2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@angularclass/hmr/-/hmr-2.1.3.tgz#34e658ed3da37f23b0a200e2da5a89be92bb209f" + +"@aspnet/signalr@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@aspnet/signalr/-/signalr-1.0.0.tgz#26b10a32014a65c540cc5053cffa883c320788ce" + +"@ngtools/webpack@6.0.8": + version "6.0.8" + resolved "https://registry.yarnpkg.com/@ngtools/webpack/-/webpack-6.0.8.tgz#a05bce526aee9da62bb230a95fba83fee99d0bca" + dependencies: + "@angular-devkit/core" "0.6.8" + tree-kill "^1.0.0" + webpack-sources "^1.1.0" + +"@schematics/angular@0.6.8": + version "0.6.8" + resolved "https://registry.yarnpkg.com/@schematics/angular/-/angular-0.6.8.tgz#a8d1afc33e77160296b0a8b3d02f0ee4dfe9d1d2" + dependencies: + "@angular-devkit/core" "0.6.8" + "@angular-devkit/schematics" "0.6.8" + typescript ">=2.6.2 <2.8" + +"@schematics/update@0.6.8": + version "0.6.8" + resolved "https://registry.yarnpkg.com/@schematics/update/-/update-0.6.8.tgz#3b4f897dd3b28335acc53a49d9f0dc10ebd934a7" + dependencies: + "@angular-devkit/core" "0.6.8" + "@angular-devkit/schematics" "0.6.8" + npm-registry-client "^8.5.1" + rxjs "^6.0.0" + semver "^5.3.0" + semver-intersect "^1.1.2" + +"@types/bootstrap@^3.3.33": + version "3.3.39" + resolved "https://registry.yarnpkg.com/@types/bootstrap/-/bootstrap-3.3.39.tgz#aa0d208999e4a4f941de9468ff928c05507830f8" + dependencies: + "@types/jquery" "*" + +"@types/jasmine@^2.5.38": + version "2.8.8" + resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-2.8.8.tgz#bf53a7d193ea8b03867a38bfdb4fbb0e0bf066c9" + +"@types/jquery.blockui@0.0.28": + version "0.0.28" + resolved "https://registry.yarnpkg.com/@types/jquery.blockui/-/jquery.blockui-0.0.28.tgz#fd24a6e3330ad8ddd1f8e5b5578f3ef5608a6a92" + dependencies: + "@types/jquery" "*" + +"@types/jquery.validation@^1.16.3": + version "1.16.4" + resolved "https://registry.yarnpkg.com/@types/jquery.validation/-/jquery.validation-1.16.4.tgz#4306dbf0630bb252648d75734c8cbd097122e78c" + dependencies: + "@types/jquery" "*" + +"@types/jquery@*", "@types/jquery@^3.2.12": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.3.2.tgz#8700226bdde24b6f98e3a60126dbaab3b2a3ab41" + +"@types/lodash@^4.14.62": + version "4.14.109" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.109.tgz#b1c4442239730bf35cabaf493c772b18c045886d" + +"@types/moment-timezone@^0.2.34": + version "0.2.35" + resolved "https://registry.yarnpkg.com/@types/moment-timezone/-/moment-timezone-0.2.35.tgz#3fbbcb035e66aa5589a9198a6eec8d4dd9a701a5" + dependencies: + moment ">=2.14.0" + +"@types/moment@^2.13.0": + version "2.13.0" + resolved "https://registry.yarnpkg.com/@types/moment/-/moment-2.13.0.tgz#604ebd189bc3bc34a1548689404e61a2a4aac896" + dependencies: + moment "*" + +"@types/node@^6.0.46": + version "6.0.113" + resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.113.tgz#4b41f38ad03e4b41f9dc259b3b58aecb22c9aebc" + +"@types/node@^8.0.27": + version "8.10.20" + resolved "https://registry.yarnpkg.com/@types/node/-/node-8.10.20.tgz#fe674ea52e13950ab10954433a7824438aabbcac" + +"@types/q@^0.0.32": + version "0.0.32" + resolved "https://registry.yarnpkg.com/@types/q/-/q-0.0.32.tgz#bd284e57c84f1325da702babfc82a5328190c0c5" + +"@types/selenium-webdriver@^2.53.35", "@types/selenium-webdriver@~2.53.39": + version "2.53.43" + resolved "https://registry.yarnpkg.com/@types/selenium-webdriver/-/selenium-webdriver-2.53.43.tgz#2de3d718819bc20165754c4a59afb7e9833f6707" + +"@types/toastr@^2.1.33": + version "2.1.35" + resolved "https://registry.yarnpkg.com/@types/toastr/-/toastr-2.1.35.tgz#9b29ee786744994c4f7eafee415b125f835dd854" + dependencies: + "@types/jquery" "*" + +"@webassemblyjs/ast@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.4.3.tgz#3b3f6fced944d8660273347533e6d4d315b5934a" + dependencies: + "@webassemblyjs/helper-wasm-bytecode" "1.4.3" + "@webassemblyjs/wast-parser" "1.4.3" + debug "^3.1.0" + webassemblyjs "1.4.3" + +"@webassemblyjs/floating-point-hex-parser@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.4.3.tgz#f5aee4c376a717c74264d7bacada981e7e44faad" + +"@webassemblyjs/helper-buffer@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.4.3.tgz#0434b55958519bf503697d3824857b1dea80b729" + dependencies: + debug "^3.1.0" + +"@webassemblyjs/helper-code-frame@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.4.3.tgz#f1349ca3e01a8e29ee2098c770773ef97af43641" + dependencies: + "@webassemblyjs/wast-printer" "1.4.3" + +"@webassemblyjs/helper-fsm@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.4.3.tgz#65a921db48fb43e868f17b27497870bdcae22b79" + +"@webassemblyjs/helper-wasm-bytecode@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.4.3.tgz#0e5b4b5418e33f8a26e940b7809862828c3721a5" + +"@webassemblyjs/helper-wasm-section@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.4.3.tgz#9ceedd53a3f152c3412e072887ade668d0b1acbf" + dependencies: + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/helper-buffer" "1.4.3" + "@webassemblyjs/helper-wasm-bytecode" "1.4.3" + "@webassemblyjs/wasm-gen" "1.4.3" + debug "^3.1.0" + +"@webassemblyjs/leb128@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.4.3.tgz#5a5e5949dbb5adfe3ae95664d0439927ac557fb8" + dependencies: + leb "^0.3.0" + +"@webassemblyjs/validation@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/validation/-/validation-1.4.3.tgz#9e66c9b3079d7bbcf2070c1bf52a54af2a09aac9" + dependencies: + "@webassemblyjs/ast" "1.4.3" + +"@webassemblyjs/wasm-edit@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.4.3.tgz#87febd565e0ffb5ae25f6495bb3958d17aa0a779" + dependencies: + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/helper-buffer" "1.4.3" + "@webassemblyjs/helper-wasm-bytecode" "1.4.3" + "@webassemblyjs/helper-wasm-section" "1.4.3" + "@webassemblyjs/wasm-gen" "1.4.3" + "@webassemblyjs/wasm-opt" "1.4.3" + "@webassemblyjs/wasm-parser" "1.4.3" + "@webassemblyjs/wast-printer" "1.4.3" + debug "^3.1.0" + +"@webassemblyjs/wasm-gen@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.4.3.tgz#8553164d0154a6be8f74d653d7ab355f73240aa4" + dependencies: + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/helper-wasm-bytecode" "1.4.3" + "@webassemblyjs/leb128" "1.4.3" + +"@webassemblyjs/wasm-opt@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.4.3.tgz#26c7a23bfb136aa405b1d3410e63408ec60894b8" + dependencies: + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/helper-buffer" "1.4.3" + "@webassemblyjs/wasm-gen" "1.4.3" + "@webassemblyjs/wasm-parser" "1.4.3" + debug "^3.1.0" + +"@webassemblyjs/wasm-parser@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.4.3.tgz#7ddd3e408f8542647ed612019cfb780830993698" + dependencies: + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/helper-wasm-bytecode" "1.4.3" + "@webassemblyjs/leb128" "1.4.3" + "@webassemblyjs/wasm-parser" "1.4.3" + webassemblyjs "1.4.3" + +"@webassemblyjs/wast-parser@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.4.3.tgz#3250402e2c5ed53dbe2233c9de1fe1f9f0d51745" + dependencies: + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/floating-point-hex-parser" "1.4.3" + "@webassemblyjs/helper-code-frame" "1.4.3" + "@webassemblyjs/helper-fsm" "1.4.3" + long "^3.2.0" + webassemblyjs "1.4.3" + +"@webassemblyjs/wast-printer@1.4.3": + version "1.4.3" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.4.3.tgz#3d59aa8d0252d6814a3ef4e6d2a34c9ded3904e0" + dependencies: + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/wast-parser" "1.4.3" + long "^3.2.0" + +abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + +abbrev@1.0.x: + version "1.0.9" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" + +abp-ng2-module@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/abp-ng2-module/-/abp-ng2-module-3.2.2.tgz#e82ed131795e2f11f7540e8396adcfedd9718e72" + +abp-web-resources@^3.8.2: + version "3.8.2" + resolved "https://registry.yarnpkg.com/abp-web-resources/-/abp-web-resources-3.8.2.tgz#b7768eb0757cff0266fd3c4e789af81e15c9dc96" + +accepts@1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.3.tgz#c3ca7434938648c3e0d9c1e328dd68b622c284ca" + dependencies: + mime-types "~2.1.11" + negotiator "0.6.1" + +accepts@~1.3.4, accepts@~1.3.5: + version "1.3.5" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" + dependencies: + mime-types "~2.1.18" + negotiator "0.6.1" + +acorn-dynamic-import@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz#901ceee4c7faaef7e07ad2a47e890675da50a278" + dependencies: + acorn "^5.0.0" + +acorn@^5.0.0: + version "5.6.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.6.2.tgz#b1da1d7be2ac1b4a327fb9eab851702c5045b4e7" + +adm-zip@0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.4.tgz#a61ed5ae6905c3aea58b3a657d25033091052736" + +adm-zip@^0.4.7: + version "0.4.11" + resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.11.tgz#2aa54c84c4b01a9d0fb89bb11982a51f13e3d62a" + +after@0.8.2: + version "0.8.2" + resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" + +agent-base@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.0.tgz#9838b5c3392b962bad031e6a4c5e1024abec45ce" + dependencies: + es6-promisify "^5.0.0" + +ajv-keywords@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.2.0.tgz#e86b819c602cf8821ad637413698f1dec021847a" + +ajv@^4.9.1: + version "4.11.8" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" + dependencies: + co "^4.6.0" + json-stable-stringify "^1.0.1" + +ajv@^5.0.0, ajv@^5.1.0: + version "5.5.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" + dependencies: + co "^4.6.0" + fast-deep-equal "^1.0.0" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.3.0" + +ajv@^6.1.0: + version "6.5.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.5.1.tgz#88ebc1263c7133937d108b80c5572e64e1d9322d" + dependencies: + fast-deep-equal "^2.0.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.1" + +ajv@~6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.4.0.tgz#d3aff78e9277549771daf0164cff48482b754fc6" + dependencies: + fast-deep-equal "^1.0.0" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.3.0" + uri-js "^3.0.2" + +align-text@^0.1.1, align-text@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" + dependencies: + kind-of "^3.0.2" + longest "^1.0.1" + repeat-string "^1.5.2" + +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + +animate.css@^3.5.2: + version "3.6.1" + resolved "https://registry.yarnpkg.com/animate.css/-/animate.css-3.6.1.tgz#4ea8a48556378bc8d7535224296c4c0dac9229de" + +ansi-html@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + +ansi-styles@^3.1.0, ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + dependencies: + color-convert "^1.9.0" + +anymatch@^1.3.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" + dependencies: + micromatch "^2.1.5" + normalize-path "^2.0.0" + +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +app-root-path@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/app-root-path/-/app-root-path-2.0.1.tgz#cd62dcf8e4fd5a417efc664d2e5b10653c651b46" + +append-transform@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-1.0.0.tgz#046a52ae582a228bd72f58acfbe2967c678759ab" + dependencies: + default-require-extensions "^2.0.0" + +aproba@^1.0.3, aproba@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + +are-we-there-yet@~1.1.2: + version "1.1.5" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + dependencies: + sprintf-js "~1.0.2" + +arr-diff@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" + dependencies: + arr-flatten "^1.0.1" + +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + +arr-flatten@^1.0.1, arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + +array-flatten@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.1.tgz#426bb9da84090c1838d812c8150af20a8331e296" + +array-includes@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.7.0" + +array-slice@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-0.2.3.tgz#dd3cfb80ed7973a75117cdac69b0b99ec86186f5" + +array-union@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + dependencies: + array-uniq "^1.0.1" + +array-uniq@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + +array-unique@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + +arraybuffer.slice@0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz#f33b2159f0532a3f3107a272c0ccfbd1ad2979ca" + +arrify@^1.0.0, arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + +asap@~2.0.3: + version "2.0.6" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + +asn1.js@^4.0.0: + version "4.10.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +asn1@~0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + +assert-plus@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" + +assert@^1.1.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" + dependencies: + util "0.10.3" + +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + +async-each@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" + +async-foreach@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" + +async@1.x, async@^1.4.0, async@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" + +async@^2.1.4: + version "2.6.1" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" + dependencies: + lodash "^4.17.10" + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + +atob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.1.tgz#ae2d5a729477f289d60dd7f96a6314a22dd6c22a" + +autoprefixer@^8.4.1: + version "8.6.2" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-8.6.2.tgz#51d42ff13243820a582a53ecca20dedaeb7f2efd" + dependencies: + browserslist "^3.2.8" + caniuse-lite "^1.0.30000851" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^6.0.22" + postcss-value-parser "^3.2.3" + +aws-sign2@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + +aws4@^1.2.1, aws4@^1.6.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.7.0.tgz#d4d0e9b9dbfca77bf08eeb0a8a471550fe39e289" + +babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" + dependencies: + chalk "^1.1.3" + esutils "^2.0.2" + js-tokens "^3.0.2" + +babel-generator@^6.18.0: + version "6.26.1" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" + dependencies: + babel-messages "^6.23.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + detect-indent "^4.0.0" + jsesc "^1.3.0" + lodash "^4.17.4" + source-map "^0.5.7" + trim-right "^1.0.1" + +babel-messages@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" + dependencies: + babel-runtime "^6.22.0" + +babel-runtime@^6.22.0, babel-runtime@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.11.0" + +babel-template@^6.16.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" + dependencies: + babel-runtime "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + lodash "^4.17.4" + +babel-traverse@^6.18.0, babel-traverse@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" + dependencies: + babel-code-frame "^6.26.0" + babel-messages "^6.23.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + debug "^2.6.8" + globals "^9.18.0" + invariant "^2.2.2" + lodash "^4.17.4" + +babel-types@^6.18.0, babel-types@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" + dependencies: + babel-runtime "^6.26.0" + esutils "^2.0.2" + lodash "^4.17.4" + to-fast-properties "^1.0.3" + +babylon@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" + +backo2@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" + +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + +base64-arraybuffer@0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8" + +base64-js@^1.0.2: + version "1.3.0" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" + +base64id@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/base64id/-/base64id-1.0.0.tgz#47688cb99bb6804f0e06d3e763b1c32e57d8e6b6" + +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + dependencies: + 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" + +batch@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" + +bcrypt-pbkdf@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" + dependencies: + tweetnacl "^0.14.3" + +better-assert@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/better-assert/-/better-assert-1.0.2.tgz#40866b9e1b9e0b55b481894311e68faffaebc522" + dependencies: + callsite "1.0.0" + +big.js@^3.1.3: + version "3.2.0" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" + +binary-extensions@^1.0.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205" + +blob@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.4.tgz#bcf13052ca54463f30f9fc7e95b9a47630a94921" + +block-stream@*: + version "0.0.9" + resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" + dependencies: + inherits "~2.0.0" + +block-ui@^2.70.1: + version "2.70.1" + resolved "https://registry.yarnpkg.com/block-ui/-/block-ui-2.70.1.tgz#c862d64ee6288fb78123377c6680bc7ab262103f" + dependencies: + jquery ">=1.7.x" + +blocking-proxy@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/blocking-proxy/-/blocking-proxy-1.0.1.tgz#81d6fd1fe13a4c0d6957df7f91b75e98dac40cb2" + dependencies: + minimist "^1.2.0" + +bluebird@^3.3.0, bluebird@^3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" + +bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: + version "4.11.8" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" + +body-parser@1.18.2: + version "1.18.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" + dependencies: + bytes "3.0.0" + content-type "~1.0.4" + debug "2.6.9" + depd "~1.1.1" + http-errors "~1.6.2" + iconv-lite "0.4.19" + on-finished "~2.3.0" + qs "6.5.1" + raw-body "2.3.2" + type-is "~1.6.15" + +body-parser@^1.16.1: + version "1.18.3" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.3.tgz#5b292198ffdd553b3a0f20ded0592b956955c8b4" + dependencies: + bytes "3.0.0" + content-type "~1.0.4" + debug "2.6.9" + depd "~1.1.2" + http-errors "~1.6.3" + iconv-lite "0.4.23" + on-finished "~2.3.0" + qs "6.5.2" + raw-body "2.3.3" + type-is "~1.6.16" + +bonjour@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" + dependencies: + array-flatten "^2.1.0" + deep-equal "^1.0.1" + dns-equal "^1.0.0" + dns-txt "^2.0.2" + multicast-dns "^6.0.1" + multicast-dns-service-types "^1.1.0" + +boolbase@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + +boom@2.x.x: + version "2.10.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" + dependencies: + hoek "2.x.x" + +bootstrap-select@^1.12.2: + version "1.13.1" + resolved "https://registry.yarnpkg.com/bootstrap-select/-/bootstrap-select-1.13.1.tgz#f59c02926fb5ac6356b9d1cdbc5384c2f013d9ba" + +bootstrap@^3.3.7: + version "3.3.7" + resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-3.3.7.tgz#5a389394549f23330875a3b150656574f8a9eb71" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^0.1.2: + version "0.1.5" + resolved "https://registry.yarnpkg.com/braces/-/braces-0.1.5.tgz#c085711085291d8b75fdd74eab0f8597280711e6" + dependencies: + expand-range "^0.1.0" + +braces@^1.8.2: + version "1.8.5" + resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" + dependencies: + expand-range "^1.8.1" + preserve "^0.2.0" + repeat-element "^1.1.2" + +braces@^2.3.0, braces@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + dependencies: + 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" + +brorand@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + +browserify-aes@^1.0.0, browserify-aes@^1.0.4: + version "1.2.0" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" + dependencies: + buffer-xor "^1.0.3" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.3" + inherits "^2.0.1" + safe-buffer "^5.0.1" + +browserify-cipher@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" + dependencies: + browserify-aes "^1.0.4" + browserify-des "^1.0.0" + evp_bytestokey "^1.0.0" + +browserify-des@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.1.tgz#3343124db6d7ad53e26a8826318712bdc8450f9c" + dependencies: + cipher-base "^1.0.1" + des.js "^1.0.0" + inherits "^2.0.1" + +browserify-rsa@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" + dependencies: + bn.js "^4.1.0" + randombytes "^2.0.1" + +browserify-sign@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" + dependencies: + bn.js "^4.1.1" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.2" + elliptic "^6.0.0" + inherits "^2.0.1" + parse-asn1 "^5.0.0" + +browserify-zlib@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" + dependencies: + pako "~1.0.5" + +browserslist@^3.2.8: + version "3.2.8" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.8.tgz#b0005361d6471f0f5952797a76fc985f1f978fc6" + dependencies: + caniuse-lite "^1.0.30000844" + electron-to-chromium "^1.3.47" + +buffer-from@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.0.tgz#87fcaa3a298358e0ade6e442cfce840740d1ad04" + +buffer-indexof@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" + +buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + +buffer@^4.3.0: + version "4.9.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + +builtin-modules@^1.0.0, builtin-modules@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" + +builtin-status-codes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" + +builtins@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" + +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + +cacache@^10.0.4: + version "10.0.4" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.4.tgz#6452367999eff9d4188aefd9a14e9d7c6a263460" + dependencies: + bluebird "^3.5.1" + chownr "^1.0.1" + glob "^7.1.2" + graceful-fs "^4.1.11" + lru-cache "^4.1.1" + mississippi "^2.0.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.2" + ssri "^5.2.4" + unique-filename "^1.1.0" + y18n "^4.0.0" + +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + dependencies: + 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" + +cache-loader@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/cache-loader/-/cache-loader-1.2.2.tgz#6d5c38ded959a09cc5d58190ab5af6f73bd353f5" + dependencies: + loader-utils "^1.1.0" + mkdirp "^0.5.1" + neo-async "^2.5.0" + schema-utils "^0.4.2" + +callsite@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20" + +camel-case@3.0.x: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" + dependencies: + no-case "^2.2.0" + upper-case "^1.1.1" + +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + +camelcase@^1.0.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" + +camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + +camelcase@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" + +camelcase@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" + +caniuse-lite@^1.0.30000844, caniuse-lite@^1.0.30000851: + version "1.0.30000855" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000855.tgz#d5a26a9093b932d6266bf4ed9294b41b84945d14" + +caseless@~0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" + +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + +center-align@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" + dependencies: + align-text "^0.1.3" + lazy-cache "^1.0.3" + +chalk@^1.1.1, chalk@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + dependencies: + 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" + +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@~2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.2.2.tgz#4403f5cf18f35c05f51fbdf152bf588f956cf7cb" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + +chart.js@^2.6.0: + version "2.7.2" + resolved "https://registry.yarnpkg.com/chart.js/-/chart.js-2.7.2.tgz#3c9fde4dc5b95608211bdefeda7e5d33dffa5714" + dependencies: + chartjs-color "^2.1.0" + moment "^2.10.2" + +chartjs-color-string@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/chartjs-color-string/-/chartjs-color-string-0.5.0.tgz#8d3752d8581d86687c35bfe2cb80ac5213ceb8c1" + dependencies: + color-name "^1.0.0" + +chartjs-color@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/chartjs-color/-/chartjs-color-2.2.0.tgz#84a2fb755787ed85c39dd6dd8c7b1d88429baeae" + dependencies: + chartjs-color-string "^0.5.0" + color-convert "^0.5.3" + +chokidar@^1.4.1, chokidar@^1.4.2: + version "1.7.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" + dependencies: + anymatch "^1.3.0" + async-each "^1.0.0" + glob-parent "^2.0.0" + inherits "^2.0.1" + is-binary-path "^1.0.0" + is-glob "^2.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.0.0" + optionalDependencies: + fsevents "^1.0.0" + +chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.3.tgz#dcbd4f6cbb2a55b4799ba8a840ac527e5f4b1176" + dependencies: + anymatch "^2.0.0" + async-each "^1.0.0" + braces "^2.3.0" + glob-parent "^3.1.0" + inherits "^2.0.1" + is-binary-path "^1.0.0" + is-glob "^4.0.0" + normalize-path "^2.1.1" + path-is-absolute "^1.0.0" + readdirp "^2.0.0" + upath "^1.0.0" + optionalDependencies: + fsevents "^1.1.2" + +chownr@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" + +chrome-trace-event@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz#d395af2d31c87b90a716c831fe326f69768ec084" + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +circular-dependency-plugin@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/circular-dependency-plugin/-/circular-dependency-plugin-5.0.2.tgz#da168c0b37e7b43563fb9f912c1c007c213389ef" + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + +clean-css@4.1.x, clean-css@^4.1.11: + version "4.1.11" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.1.11.tgz#2ecdf145aba38f54740f26cefd0ff3e03e125d6a" + dependencies: + source-map "0.5.x" + +cliui@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" + dependencies: + center-align "^0.1.1" + right-align "^0.1.1" + wordwrap "0.0.2" + +cliui@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + wrap-ansi "^2.0.0" + +cliui@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" + dependencies: + string-width "^2.1.1" + strip-ansi "^4.0.0" + wrap-ansi "^2.0.0" + +clone-deep@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" + dependencies: + for-own "^1.0.0" + is-plain-object "^2.0.4" + kind-of "^6.0.0" + shallow-clone "^1.0.0" + +clone@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.1.tgz#d217d1e961118e3ac9a4b8bba3285553bf647cdb" + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + +codelyzer@^4.0.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/codelyzer/-/codelyzer-4.3.0.tgz#6bf3ba68efd9d655a451ecaa14a2852001a43dfb" + dependencies: + app-root-path "^2.0.1" + css-selector-tokenizer "^0.7.0" + cssauron "^1.4.0" + semver-dsl "^1.0.1" + source-map "^0.5.7" + sprintf-js "^1.0.3" + +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" + +color-convert@^1.9.0: + version "1.9.2" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.2.tgz#49881b8fba67df12a96bdf3f56c0aab9e7913147" + dependencies: + color-name "1.1.1" + +color-name@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.1.tgz#4b1415304cf50028ea81643643bd82ea05803689" + +color-name@^1.0.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + +colors@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" + +colors@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.3.0.tgz#5f20c9fef6945cb1134260aab33bfbdc8295e04e" + +combine-lists@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/combine-lists/-/combine-lists-1.0.1.tgz#458c07e09e0d900fc28b70a3fec2dacd1d2cb7f6" + dependencies: + lodash "^4.5.0" + +combined-stream@1.0.6, combined-stream@^1.0.5, combined-stream@~1.0.5: + version "1.0.6" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" + dependencies: + delayed-stream "~1.0.0" + +commander@2.15.x, commander@^2.12.1, commander@^2.9.0, commander@~2.15.0: + version "2.15.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f" + +commander@~2.13.0: + version "2.13.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + +compare-versions@^3.1.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.3.0.tgz#af93ea705a96943f622ab309578b9b90586f39c3" + +component-bind@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1" + +component-emitter@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.1.2.tgz#296594f2753daa63996d2af08d15a95116c9aec3" + +component-emitter@1.2.1, component-emitter@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" + +component-inherit@0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/component-inherit/-/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143" + +compressible@~2.0.13: + version "2.0.14" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.14.tgz#326c5f507fbb055f54116782b969a81b67a29da7" + dependencies: + mime-db ">= 1.34.0 < 2" + +compression@^1.5.2: + version "1.7.2" + resolved "http://registry.npmjs.org/compression/-/compression-1.7.2.tgz#aaffbcd6aaf854b44ebb280353d5ad1651f59a69" + dependencies: + accepts "~1.3.4" + bytes "3.0.0" + compressible "~2.0.13" + debug "2.6.9" + on-headers "~1.0.1" + safe-buffer "5.1.1" + vary "~1.1.2" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + +concat-stream@^1.5.0, concat-stream@^1.5.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + +connect-history-api-fallback@^1.3.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a" + +connect@^3.6.0: + version "3.6.6" + resolved "https://registry.yarnpkg.com/connect/-/connect-3.6.6.tgz#09eff6c55af7236e137135a72574858b6786f524" + dependencies: + debug "2.6.9" + finalhandler "1.1.0" + parseurl "~1.3.2" + utils-merge "1.0.1" + +console-browserify@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" + dependencies: + date-now "^0.1.4" + +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + +constants-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" + +content-disposition@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" + +content-type@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + +convert-source-map@^1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5" + +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + +cookie@0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" + +copy-concurrently@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" + dependencies: + aproba "^1.1.1" + fs-write-stream-atomic "^1.0.8" + iferr "^0.1.5" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.0" + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + +copy-webpack-plugin@^4.5.1: + version "4.5.1" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-4.5.1.tgz#fc4f68f4add837cc5e13d111b20715793225d29c" + dependencies: + cacache "^10.0.4" + find-cache-dir "^1.0.0" + globby "^7.1.1" + is-glob "^4.0.0" + loader-utils "^1.1.0" + minimatch "^3.0.4" + p-limit "^1.0.0" + serialize-javascript "^1.4.0" + +core-js@^2.2.0, core-js@^2.4.0, core-js@^2.4.1: + version "2.5.7" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" + +core-js@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.3.0.tgz#fab83fbb0b2d8dc85fa636c4b9d34c75420c6d65" + +core-util-is@1.0.2, core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + +cosmiconfig@^2.1.0, cosmiconfig@^2.1.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-2.2.2.tgz#6173cebd56fac042c1f4390edf7af6c07c7cb892" + dependencies: + is-directory "^0.3.1" + js-yaml "^3.4.3" + minimist "^1.2.0" + object-assign "^4.1.0" + os-homedir "^1.0.1" + parse-json "^2.2.0" + require-from-string "^1.1.0" + +create-ecdh@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" + dependencies: + bn.js "^4.1.0" + elliptic "^6.0.0" + +create-hash@^1.1.0, create-hash@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + md5.js "^1.3.4" + ripemd160 "^2.0.1" + sha.js "^2.4.0" + +create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: + version "1.1.7" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +cross-spawn@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" + dependencies: + lru-cache "^4.0.1" + which "^1.2.9" + +cross-spawn@^5.0.1: + version "5.1.0" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + dependencies: + lru-cache "^4.0.1" + shebang-command "^1.2.0" + which "^1.2.9" + +cryptiles@2.x.x: + version "2.0.5" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" + dependencies: + boom "2.x.x" + +crypto-browserify@^3.11.0: + version "3.12.0" + resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" + dependencies: + browserify-cipher "^1.0.0" + browserify-sign "^4.0.0" + create-ecdh "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.0" + diffie-hellman "^5.0.0" + inherits "^2.0.1" + pbkdf2 "^3.0.3" + public-encrypt "^4.0.0" + randombytes "^2.0.0" + randomfill "^1.0.3" + +css-parse@1.7.x: + version "1.7.0" + resolved "https://registry.yarnpkg.com/css-parse/-/css-parse-1.7.0.tgz#321f6cf73782a6ff751111390fc05e2c657d8c9b" + +css-select@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" + dependencies: + boolbase "~1.0.0" + css-what "2.1" + domutils "1.5.1" + nth-check "~1.0.1" + +css-selector-tokenizer@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz#e6988474ae8c953477bf5e7efecfceccd9cf4c86" + dependencies: + cssesc "^0.1.0" + fastparse "^1.1.1" + regexpu-core "^1.0.0" + +css-what@2.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" + +cssauron@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/cssauron/-/cssauron-1.4.0.tgz#a6602dff7e04a8306dc0db9a551e92e8b5662ad8" + dependencies: + through X.X.X + +cssesc@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" + +cuint@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cuint/-/cuint-0.2.2.tgz#408086d409550c2631155619e9fa7bcadc3b991b" + +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + dependencies: + array-find-index "^1.0.1" + +custom-event@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/custom-event/-/custom-event-1.0.1.tgz#5d02a46850adf1b4a317946a3928fccb5bfd0425" + +cyclist@~0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" + +d@1: + version "1.0.0" + resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" + dependencies: + es5-ext "^0.10.9" + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + dependencies: + assert-plus "^1.0.0" + +date-now@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" + +debug@*, debug@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + dependencies: + ms "2.0.0" + +debug@2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" + dependencies: + ms "0.7.1" + +debug@2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.3.3.tgz#40c453e67e6e13c901ddec317af8986cda9eff8c" + dependencies: + ms "0.7.2" + +debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.6, debug@^2.6.8: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + dependencies: + ms "2.0.0" + +decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + +decode-uri-component@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" + +deep-equal@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + +deep-is@~0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + +default-require-extensions@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-2.0.0.tgz#f5f8fbb18a7d6d50b21f641f649ebb522cfe24f7" + dependencies: + strip-bom "^3.0.0" + +define-properties@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" + dependencies: + foreach "^2.0.5" + object-keys "^1.0.8" + +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + +del@^2.2.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" + dependencies: + globby "^5.0.0" + is-path-cwd "^1.0.0" + is-path-in-cwd "^1.0.0" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + rimraf "^2.2.8" + +del@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" + dependencies: + globby "^6.1.0" + is-path-cwd "^1.0.0" + is-path-in-cwd "^1.0.0" + p-map "^1.1.1" + pify "^3.0.0" + rimraf "^2.2.8" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + +depd@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" + +depd@~1.1.1, depd@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + +des.js@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" + dependencies: + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + +detect-indent@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" + dependencies: + repeating "^2.0.0" + +detect-libc@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + +detect-node@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127" + +di@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/di/-/di-0.0.1.tgz#806649326ceaa7caa3306d75d985ea2748ba913c" + +diff@^3.1.0, diff@^3.2.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" + +diffie-hellman@^5.0.0: + version "5.0.3" + resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" + dependencies: + bn.js "^4.1.0" + miller-rabin "^4.0.0" + randombytes "^2.0.0" + +dir-glob@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" + dependencies: + arrify "^1.0.1" + path-type "^3.0.0" + +dns-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" + +dns-packet@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" + dependencies: + ip "^1.1.0" + safe-buffer "^5.0.1" + +dns-txt@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" + dependencies: + buffer-indexof "^1.0.0" + +dom-converter@~0.1: + version "0.1.4" + resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.1.4.tgz#a45ef5727b890c9bffe6d7c876e7b19cb0e17f3b" + dependencies: + utila "~0.3" + +dom-serialize@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/dom-serialize/-/dom-serialize-2.2.1.tgz#562ae8999f44be5ea3076f5419dcd59eb43ac95b" + dependencies: + custom-event "~1.0.0" + ent "~2.2.0" + extend "^3.0.0" + void-elements "^2.0.0" + +dom-serializer@0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" + dependencies: + domelementtype "~1.1.1" + entities "~1.1.1" + +domain-browser@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" + +domelementtype@1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" + +domelementtype@~1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" + +domhandler@2.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594" + dependencies: + domelementtype "1" + +domutils@1.1: + version "1.1.6" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485" + dependencies: + domelementtype "1" + +domutils@1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" + dependencies: + dom-serializer "0" + domelementtype "1" + +duplexify@^3.4.2, duplexify@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.6.0.tgz#592903f5d80b38d037220541264d69a198fb3410" + dependencies: + end-of-stream "^1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + +ecc-jsbn@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" + dependencies: + jsbn "~0.1.0" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + +ejs@^2.5.7: + version "2.6.1" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.6.1.tgz#498ec0d495655abc6f23cd61868d926464071aa0" + +electron-to-chromium@^1.3.47: + version "1.3.48" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.48.tgz#d3b0d8593814044e092ece2108fc3ac9aea4b900" + +elliptic@^6.0.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" + dependencies: + bn.js "^4.4.0" + brorand "^1.0.1" + hash.js "^1.0.0" + hmac-drbg "^1.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.0" + +emojis-list@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" + +encodeurl@~1.0.1, encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + +end-of-stream@^1.0.0, end-of-stream@^1.1.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" + dependencies: + once "^1.4.0" + +engine.io-client@1.8.3: + version "1.8.3" + resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-1.8.3.tgz#1798ed93451246453d4c6f635d7a201fe940d5ab" + dependencies: + component-emitter "1.2.1" + component-inherit "0.0.3" + debug "2.3.3" + engine.io-parser "1.3.2" + has-cors "1.1.0" + indexof "0.0.1" + parsejson "0.0.3" + parseqs "0.0.5" + parseuri "0.0.5" + ws "1.1.2" + xmlhttprequest-ssl "1.5.3" + yeast "0.1.2" + +engine.io-parser@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-1.3.2.tgz#937b079f0007d0893ec56d46cb220b8cb435220a" + dependencies: + after "0.8.2" + arraybuffer.slice "0.0.6" + base64-arraybuffer "0.1.5" + blob "0.0.4" + has-binary "0.1.7" + wtf-8 "1.0.0" + +engine.io@1.8.3: + version "1.8.3" + resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-1.8.3.tgz#8de7f97895d20d39b85f88eeee777b2bd42b13d4" + dependencies: + accepts "1.3.3" + base64id "1.0.0" + cookie "0.3.1" + debug "2.3.3" + engine.io-parser "1.3.2" + ws "1.1.2" + +enhanced-resolve@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.0.0.tgz#e34a6eaa790f62fccd71d93959f56b2b432db10a" + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.4.0" + tapable "^1.0.0" + +ent@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d" + +entities@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" + +errno@^0.1.1, errno@^0.1.3, errno@~0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" + dependencies: + prr "~1.0.1" + +error-ex@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" + dependencies: + is-arrayish "^0.2.1" + +es-abstract@^1.5.1, es-abstract@^1.7.0: + version "1.12.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.12.0.tgz#9dbbdd27c6856f0001421ca18782d786bf8a6165" + dependencies: + es-to-primitive "^1.1.1" + function-bind "^1.1.1" + has "^1.0.1" + is-callable "^1.1.3" + is-regex "^1.0.4" + +es-to-primitive@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" + dependencies: + is-callable "^1.1.1" + is-date-object "^1.0.1" + is-symbol "^1.0.1" + +es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: + version "0.10.45" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.45.tgz#0bfdf7b473da5919d5adf3bd25ceb754fccc3653" + dependencies: + es6-iterator "~2.0.3" + es6-symbol "~3.1.1" + next-tick "1" + +es6-iterator@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" + dependencies: + d "1" + es5-ext "^0.10.35" + es6-symbol "^3.1.1" + +es6-object-assign@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/es6-object-assign/-/es6-object-assign-1.1.0.tgz#c2c3582656247c39ea107cb1e6652b6f9f24523c" + +es6-promise@^4.0.3: + version "4.2.4" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.4.tgz#dc4221c2b16518760bd8c39a52d8f356fc00ed29" + +es6-promise@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.0.2.tgz#010d5858423a5f118979665f46486a95c6ee2bb6" + +es6-promisify@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" + dependencies: + es6-promise "^4.0.3" + +es6-symbol@^3.1.1, es6-symbol@~3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" + dependencies: + d "1" + es5-ext "~0.10.14" + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + +escodegen@1.8.x: + version "1.8.1" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.8.1.tgz#5a5b53af4693110bebb0867aa3430dd3b70a1018" + dependencies: + esprima "^2.7.1" + estraverse "^1.9.1" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.2.0" + +eslint-scope@^3.7.1: + version "3.7.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" + dependencies: + esrecurse "^4.1.0" + estraverse "^4.1.1" + +esprima@2.7.x, esprima@^2.7.1: + version "2.7.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" + +esprima@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" + +esrecurse@^4.1.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" + dependencies: + estraverse "^4.1.0" + +estraverse@^1.9.1: + version "1.9.3" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.9.3.tgz#af67f2dc922582415950926091a4005d29c9bb44" + +estraverse@^4.1.0, estraverse@^4.1.1: + version "4.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" + +esutils@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" + +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + +eve-raphael@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/eve-raphael/-/eve-raphael-0.5.0.tgz#17c754b792beef3fa6684d79cf5a47c63c4cda30" + +eventemitter3@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" + +events@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" + +eventsource@0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232" + dependencies: + original ">=0.0.5" + +evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + +execa@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +exit@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + +expand-braces@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/expand-braces/-/expand-braces-0.1.2.tgz#488b1d1d2451cb3d3a6b192cfc030f44c5855fea" + dependencies: + array-slice "^0.2.3" + array-unique "^0.2.1" + braces "^0.1.2" + +expand-brackets@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" + dependencies: + is-posix-bracket "^0.1.0" + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + dependencies: + 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" + +expand-range@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-0.1.1.tgz#4cb8eda0993ca56fa4f41fc42f3cbb4ccadff044" + dependencies: + is-number "^0.1.1" + repeat-string "^0.2.2" + +expand-range@^1.8.1: + version "1.8.2" + resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" + dependencies: + fill-range "^2.1.0" + +express@^4.16.2: + version "4.16.3" + resolved "https://registry.yarnpkg.com/express/-/express-4.16.3.tgz#6af8a502350db3246ecc4becf6b5a34d22f7ed53" + dependencies: + accepts "~1.3.5" + array-flatten "1.1.1" + body-parser "1.18.2" + content-disposition "0.5.2" + content-type "~1.0.4" + cookie "0.3.1" + cookie-signature "1.0.6" + debug "2.6.9" + depd "~1.1.2" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "1.1.1" + fresh "0.5.2" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "~2.3.0" + parseurl "~1.3.2" + path-to-regexp "0.1.7" + proxy-addr "~2.0.3" + qs "6.5.1" + range-parser "~1.2.0" + safe-buffer "5.1.1" + send "0.16.2" + serve-static "1.13.2" + setprototypeof "1.1.0" + statuses "~1.4.0" + type-is "~1.6.16" + utils-merge "1.0.1" + vary "~1.1.2" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extend@^3.0.0, extend@~3.0.0, extend@~3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" + +extglob@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" + dependencies: + is-extglob "^1.0.0" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + dependencies: + 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" + +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + +extsprintf@^1.2.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + +famfamfam-flags@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/famfamfam-flags/-/famfamfam-flags-1.0.0.tgz#cd78f776173a2c5962713310dd70c1b141d1103c" + +fast-deep-equal@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" + +fast-deep-equal@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" + +fast-json-stable-stringify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" + +fast-levenshtein@~2.0.4: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + +fastparse@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8" + +faye-websocket@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" + dependencies: + websocket-driver ">=0.5.1" + +faye-websocket@~0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" + dependencies: + websocket-driver ">=0.5.1" + +file-loader@^1.1.11: + version "1.1.11" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-1.1.11.tgz#6fe886449b0f2a936e43cabaac0cdbfb369506f8" + dependencies: + loader-utils "^1.0.2" + schema-utils "^0.4.5" + +filename-regex@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" + +fileset@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0" + dependencies: + glob "^7.0.3" + minimatch "^3.0.3" + +fill-range@^2.1.0: + version "2.2.4" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" + dependencies: + is-number "^2.1.0" + isobject "^2.0.0" + randomatic "^3.0.0" + repeat-element "^1.1.2" + repeat-string "^1.5.2" + +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + +finalhandler@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5" + dependencies: + debug "2.6.9" + encodeurl "~1.0.1" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.2" + statuses "~1.3.1" + unpipe "~1.0.0" + +finalhandler@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" + dependencies: + debug "2.6.9" + encodeurl "~1.0.2" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.2" + statuses "~1.4.0" + unpipe "~1.0.0" + +find-cache-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" + dependencies: + commondir "^1.0.1" + make-dir "^1.0.0" + pkg-dir "^2.0.0" + +find-up@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" + dependencies: + path-exists "^2.0.0" + pinkie-promise "^2.0.0" + +find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + dependencies: + locate-path "^2.0.0" + +flot@^0.8.0-alpha: + version "0.8.0-alpha" + resolved "https://registry.yarnpkg.com/flot/-/flot-0.8.0-alpha.tgz#9cbbc7147c10a47d2549db90bd2987ec1ba784ba" + +flush-write-stream@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.3.tgz#c5d586ef38af6097650b49bc41b55fabb19f35bd" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.4" + +follow-redirects@^1.0.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.0.tgz#234f49cf770b7f35b40e790f636ceba0c3a0ab77" + dependencies: + debug "^3.1.0" + +font-awesome@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/font-awesome/-/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133" + +for-in@^0.1.3: + version "0.1.8" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" + +for-in@^1.0.1, for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + +for-own@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" + dependencies: + for-in "^1.0.1" + +for-own@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" + dependencies: + for-in "^1.0.1" + +foreach@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" + +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + +form-data@~2.1.1: + version "2.1.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.12" + +form-data@~2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099" + dependencies: + asynckit "^0.4.0" + combined-stream "1.0.6" + mime-types "^2.1.12" + +forwarded@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + dependencies: + map-cache "^0.2.2" + +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + +from2@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + +fs-access@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fs-access/-/fs-access-1.0.1.tgz#d6a87f262271cefebec30c553407fb995da8777a" + dependencies: + null-check "^1.0.0" + +fs-minipass@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.5.tgz#06c277218454ec288df77ada54a03b8702aacb9d" + dependencies: + minipass "^2.2.1" + +fs-write-stream-atomic@^1.0.8: + version "1.0.10" + resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" + dependencies: + graceful-fs "^4.1.2" + iferr "^0.1.5" + imurmurhash "^0.1.4" + readable-stream "1 || 2" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + +fsevents@^1.0.0, fsevents@^1.1.2: + version "1.2.4" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.4.tgz#f41dcb1af2582af3692da36fc55cbd8e1041c426" + dependencies: + nan "^2.9.2" + node-pre-gyp "^0.10.0" + +fstream@^1.0.0, fstream@^1.0.2: + version "1.0.11" + resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" + dependencies: + graceful-fs "^4.1.2" + inherits "~2.0.0" + mkdirp ">=0.5 0" + rimraf "2" + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + dependencies: + 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@^1.0.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a" + dependencies: + globule "^1.0.0" + +generate-function@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" + +generate-object-property@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" + dependencies: + is-property "^1.0.0" + +get-caller-file@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" + +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + +get-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + dependencies: + assert-plus "^1.0.0" + +glob-base@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" + dependencies: + glob-parent "^2.0.0" + is-glob "^2.0.0" + +glob-parent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" + dependencies: + is-glob "^2.0.0" + +glob-parent@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + dependencies: + is-glob "^3.1.0" + path-dirname "^1.0.0" + +glob@7.0.x: + version "7.0.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.2" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^5.0.15: + version "5.0.15" + resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "2 || 3" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "2 || 3" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.0.6, glob@^7.1.1, glob@^7.1.2, glob@~7.1.1: + version "7.1.2" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" + dependencies: + 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" + +globals@^9.18.0: + version "9.18.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" + +globby@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" + dependencies: + array-union "^1.0.1" + arrify "^1.0.0" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +globby@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" + dependencies: + array-union "^1.0.1" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +globby@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680" + dependencies: + array-union "^1.0.1" + dir-glob "^2.0.0" + glob "^7.1.2" + ignore "^3.3.5" + pify "^3.0.0" + slash "^1.0.0" + +globule@^1.0.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d" + dependencies: + glob "~7.1.1" + lodash "~4.17.10" + minimatch "~3.0.2" + +graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: + version "4.1.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" + +handle-thing@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" + +handlebars@^4.0.1, handlebars@^4.0.3: + version "4.0.11" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.11.tgz#630a35dfe0294bc281edae6ffc5d329fc7982dcc" + dependencies: + async "^1.4.0" + optimist "^0.6.1" + source-map "^0.4.4" + optionalDependencies: + uglify-js "^2.6" + +har-schema@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + +har-validator@~2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" + dependencies: + chalk "^1.1.1" + commander "^2.9.0" + is-my-json-valid "^2.12.4" + pinkie-promise "^2.0.0" + +har-validator@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" + dependencies: + ajv "^4.9.1" + har-schema "^1.0.5" + +har-validator@~5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" + dependencies: + ajv "^5.1.0" + har-schema "^2.0.0" + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + dependencies: + ansi-regex "^2.0.0" + +has-binary@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/has-binary/-/has-binary-0.1.7.tgz#68e61eb16210c9545a0a5cce06a873912fe1e68c" + dependencies: + isarray "0.0.1" + +has-cors@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39" + +has-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" + +has-flag@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + +has-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" + +has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +has@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + dependencies: + function-bind "^1.1.1" + +hash-base@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.4" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.4.tgz#8b50e1f35d51bd01e5ed9ece4dbe3549ccfa0a3c" + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.0" + +hawk@~3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" + dependencies: + boom "2.x.x" + cryptiles "2.x.x" + hoek "2.x.x" + sntp "1.x.x" + +he@1.1.x: + version "1.1.1" + resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" + +hmac-drbg@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hoek@2.x.x: + version "2.16.3" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" + +homedir-polyfill@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" + dependencies: + parse-passwd "^1.0.0" + +hosted-git-info@^2.1.4, hosted-git-info@^2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.6.0.tgz#23235b29ab230c576aab0d4f13fc046b0b038222" + +hpack.js@^2.1.6: + version "2.1.6" + resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + dependencies: + inherits "^2.0.1" + obuf "^1.0.0" + readable-stream "^2.0.1" + wbuf "^1.1.0" + +html-entities@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" + +html-minifier@^3.2.3: + version "3.5.16" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.16.tgz#39f5aabaf78bdfc057fe67334226efd7f3851175" + dependencies: + camel-case "3.0.x" + clean-css "4.1.x" + commander "2.15.x" + he "1.1.x" + param-case "2.1.x" + relateurl "0.2.x" + uglify-js "3.3.x" + +html-webpack-plugin@^3.0.6: + version "3.2.0" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz#b01abbd723acaaa7b37b6af4492ebda03d9dd37b" + dependencies: + html-minifier "^3.2.3" + loader-utils "^0.2.16" + lodash "^4.17.3" + pretty-error "^2.0.2" + tapable "^1.0.0" + toposort "^1.0.0" + util.promisify "1.0.0" + +htmlparser2@~3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe" + dependencies: + domelementtype "1" + domhandler "2.1" + domutils "1.1" + readable-stream "1.0" + +http-deceiver@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" + +http-errors@1.6.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" + dependencies: + depd "1.1.1" + inherits "2.0.3" + setprototypeof "1.0.3" + statuses ">= 1.3.1 < 2" + +http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: + version "1.6.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + +http-parser-js@>=0.4.0: + version "0.4.13" + resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.13.tgz#3bd6d6fde6e3172c9334c3b33b6c193d80fe1137" + +http-proxy-middleware@~0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz#0987e6bb5a5606e5a69168d8f967a87f15dd8aab" + dependencies: + http-proxy "^1.16.2" + is-glob "^4.0.0" + lodash "^4.17.5" + micromatch "^3.1.9" + +http-proxy@^1.13.0, http-proxy@^1.16.2: + version "1.17.0" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a" + dependencies: + eventemitter3 "^3.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" + +http-signature@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" + dependencies: + assert-plus "^0.2.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +https-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" + +https-proxy-agent@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz#51552970fa04d723e04c56d04178c3f92592bbc0" + dependencies: + agent-base "^4.1.0" + debug "^3.1.0" + +iconv-lite@0.4.19: + version "0.4.19" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" + +iconv-lite@0.4.23, iconv-lite@^0.4.4: + version "0.4.23" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ieee754@^1.1.4: + version "1.1.12" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.12.tgz#50bf24e5b9c8bb98af4964c941cdb0918da7b60b" + +iferr@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" + +ignore-walk@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8" + dependencies: + minimatch "^3.0.4" + +ignore@^3.3.5: + version "3.3.8" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.8.tgz#3f8e9c35d38708a3a7e0e9abb6c73e7ee7707b2b" + +image-size@~0.5.0: + version "0.5.5" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c" + +immediate@~3.0.5: + version "3.0.6" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" + +import-local@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" + dependencies: + pkg-dir "^2.0.0" + resolve-cwd "^2.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + +in-publish@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" + +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + dependencies: + repeating "^2.0.0" + +indexof@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + +inherits@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" + +ini@^1.3.4, ini@~1.3.0: + version "1.3.5" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" + +internal-ip@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-1.2.0.tgz#ae9fbf93b984878785d50a8de1b356956058cf5c" + dependencies: + meow "^3.3.0" + +invariant@^2.2.2: + version "2.2.4" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" + dependencies: + loose-envify "^1.0.0" + +invert-kv@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" + +ip@^1.1.0, ip@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + +ipaddr.js@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.6.0.tgz#e3fa357b773da619f26e95f049d055c72796f86b" + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + dependencies: + kind-of "^6.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + dependencies: + binary-extensions "^1.0.0" + +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + +is-builtin-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" + dependencies: + builtin-modules "^1.0.0" + +is-callable@^1.1.1, is-callable@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + dependencies: + kind-of "^6.0.0" + +is-date-object@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + +is-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + +is-dotfile@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" + +is-equal-shallow@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" + dependencies: + is-primitive "^2.0.0" + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" + +is-extglob@^2.1.0, is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + +is-finite@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + +is-glob@^2.0.0, is-glob@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" + dependencies: + is-extglob "^1.0.0" + +is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + dependencies: + is-extglob "^2.1.0" + +is-glob@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" + dependencies: + is-extglob "^2.1.1" + +is-my-ip-valid@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz#7b351b8e8edd4d3995d4d066680e664d94696824" + +is-my-json-valid@^2.12.4: + version "2.17.2" + resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz#6b2103a288e94ef3de5cf15d29dd85fc4b78d65c" + dependencies: + generate-function "^2.0.0" + generate-object-property "^1.1.0" + is-my-ip-valid "^1.0.0" + jsonpointer "^4.0.0" + xtend "^4.0.0" + +is-number@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-0.1.1.tgz#69a7af116963d47206ec9bd9b48a14216f1e3806" + +is-number@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" + dependencies: + kind-of "^3.0.2" + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + dependencies: + kind-of "^3.0.2" + +is-number@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" + +is-odd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24" + dependencies: + is-number "^4.0.0" + +is-path-cwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" + +is-path-in-cwd@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52" + dependencies: + is-path-inside "^1.0.0" + +is-path-inside@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" + dependencies: + path-is-inside "^1.0.1" + +is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + dependencies: + isobject "^3.0.1" + +is-posix-bracket@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" + +is-primitive@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" + +is-property@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" + +is-regex@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" + dependencies: + has "^1.0.1" + +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + +is-symbol@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" + +is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + +is-utf8@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + +is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + +is-wsl@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" + +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + +isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + +isbinaryfile@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.2.tgz#4a3e974ec0cba9004d3fc6cde7209ea69368a621" + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + +istanbul-api@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.3.1.tgz#4c3b05d18c0016d1022e079b98dc82c40f488954" + dependencies: + async "^2.1.4" + compare-versions "^3.1.0" + fileset "^2.0.2" + istanbul-lib-coverage "^1.2.0" + istanbul-lib-hook "^1.2.0" + istanbul-lib-instrument "^1.10.1" + istanbul-lib-report "^1.1.4" + istanbul-lib-source-maps "^1.2.4" + istanbul-reports "^1.3.0" + js-yaml "^3.7.0" + mkdirp "^0.5.1" + once "^1.4.0" + +istanbul-instrumenter-loader@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/istanbul-instrumenter-loader/-/istanbul-instrumenter-loader-3.0.1.tgz#9957bd59252b373fae5c52b7b5188e6fde2a0949" + dependencies: + convert-source-map "^1.5.0" + istanbul-lib-instrument "^1.7.3" + loader-utils "^1.1.0" + schema-utils "^0.3.0" + +istanbul-lib-coverage@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.0.tgz#f7d8f2e42b97e37fe796114cb0f9d68b5e3a4341" + +istanbul-lib-hook@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.2.1.tgz#f614ec45287b2a8fc4f07f5660af787575601805" + dependencies: + append-transform "^1.0.0" + +istanbul-lib-instrument@^1.10.1, istanbul-lib-instrument@^1.7.3: + version "1.10.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.1.tgz#724b4b6caceba8692d3f1f9d0727e279c401af7b" + dependencies: + babel-generator "^6.18.0" + babel-template "^6.16.0" + babel-traverse "^6.18.0" + babel-types "^6.18.0" + babylon "^6.18.0" + istanbul-lib-coverage "^1.2.0" + semver "^5.3.0" + +istanbul-lib-report@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.4.tgz#e886cdf505c4ebbd8e099e4396a90d0a28e2acb5" + dependencies: + istanbul-lib-coverage "^1.2.0" + mkdirp "^0.5.1" + path-parse "^1.0.5" + supports-color "^3.1.2" + +istanbul-lib-source-maps@^1.2.4: + version "1.2.5" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.5.tgz#ffe6be4e7ab86d3603e4290d54990b14506fc9b1" + dependencies: + debug "^3.1.0" + istanbul-lib-coverage "^1.2.0" + mkdirp "^0.5.1" + rimraf "^2.6.1" + source-map "^0.5.3" + +istanbul-reports@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.3.0.tgz#2f322e81e1d9520767597dca3c20a0cce89a3554" + dependencies: + handlebars "^4.0.3" + +istanbul@^0.4.5: + version "0.4.5" + resolved "https://registry.yarnpkg.com/istanbul/-/istanbul-0.4.5.tgz#65c7d73d4c4da84d4f3ac310b918fb0b8033733b" + dependencies: + abbrev "1.0.x" + async "1.x" + escodegen "1.8.x" + esprima "2.7.x" + glob "^5.0.15" + handlebars "^4.0.1" + js-yaml "3.x" + mkdirp "0.5.x" + nopt "3.x" + once "1.x" + resolve "1.1.x" + supports-color "^3.1.0" + which "^1.1.1" + wordwrap "^1.0.0" + +jasmine-core@^2.5.2: + version "2.99.1" + resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.99.1.tgz#e6400df1e6b56e130b61c4bcd093daa7f6e8ca15" + +jasmine-core@~2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.8.0.tgz#bcc979ae1f9fd05701e45e52e65d3a5d63f1a24e" + +jasmine-spec-reporter@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz#1d632aec0341670ad324f92ba84b4b32b35e9e22" + dependencies: + colors "1.1.2" + +jasmine@2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/jasmine/-/jasmine-2.8.0.tgz#6b089c0a11576b1f16df11b80146d91d4e8b8a3e" + dependencies: + exit "^0.1.2" + glob "^7.0.6" + jasmine-core "~2.8.0" + +jasminewd2@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/jasminewd2/-/jasminewd2-2.2.0.tgz#e37cf0b17f199cce23bea71b2039395246b4ec4e" + +jquery-countto@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/jquery-countto/-/jquery-countto-1.2.0.tgz#49f17fcb24a746a168b84321e50e9b7751819660" + +jquery-migrate@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/jquery-migrate/-/jquery-migrate-3.0.1.tgz#141de3abfe6d301baaa4130b0ec7b9a839845e72" + +jquery-slimscroll@^1.3.8: + version "1.3.8" + resolved "https://registry.yarnpkg.com/jquery-slimscroll/-/jquery-slimscroll-1.3.8.tgz#8481c44e7a47687653908a28f7f70aed64c84e36" + dependencies: + jquery ">= 1.7" + +jquery-sparkline@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/jquery-sparkline/-/jquery-sparkline-2.4.0.tgz#1be8b7b704dd3857152708aefb1d4a4b3a69fb33" + +"jquery@>= 1.7", jquery@>=1.12.0, jquery@>=1.7.x, jquery@^3.1.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.3.1.tgz#958ce29e81c9790f31be7792df5d4d95fc57fbca" + +js-base64@^2.1.8: + version "2.4.5" + resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.5.tgz#e293cd3c7c82f070d700fc7a1ca0a2e69f101f92" + +js-cookie@^2.1.4: + version "2.2.0" + resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-2.2.0.tgz#1b2c279a6eece380a12168b92485265b35b1effb" + +js-tokens@^3.0.0, js-tokens@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" + +js-yaml@3.x, js-yaml@^3.4.3, js-yaml@^3.7.0: + version "3.12.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + +jsesc@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" + +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + +json-schema-traverse@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + +json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + +json-stable-stringify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" + dependencies: + jsonify "~0.0.0" + +json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + +json3@3.3.2, json3@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" + +json5@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" + +jsonify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" + +jsonpointer@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" + +jsprim@^1.2.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.2.3" + verror "1.10.0" + +jszip@^3.1.3: + version "3.1.5" + resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.1.5.tgz#e3c2a6c6d706ac6e603314036d43cd40beefdf37" + dependencies: + core-js "~2.3.0" + es6-promise "~3.0.2" + lie "~3.1.0" + pako "~1.0.2" + readable-stream "~2.0.6" + +karma-chrome-launcher@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/karma-chrome-launcher/-/karma-chrome-launcher-2.2.0.tgz#cf1b9d07136cc18fe239327d24654c3dbc368acf" + dependencies: + fs-access "^1.0.0" + which "^1.2.1" + +karma-cli@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/karma-cli/-/karma-cli-1.0.1.tgz#ae6c3c58a313a1d00b45164c455b9b86ce17f960" + dependencies: + resolve "^1.1.6" + +karma-coverage-istanbul-reporter@^1.3.0: + version "1.4.3" + resolved "https://registry.yarnpkg.com/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-1.4.3.tgz#3b5dff4664fa5b8d5196b9889e3f61c1fa2b80d9" + dependencies: + istanbul-api "^1.3.1" + minimatch "^3.0.4" + +karma-jasmine-html-reporter@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-0.2.2.tgz#48a8e5ef18807617ee2b5e33c1194c35b439524c" + dependencies: + karma-jasmine "^1.0.2" + +karma-jasmine@^1.0.2, karma-jasmine@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/karma-jasmine/-/karma-jasmine-1.1.2.tgz#394f2b25ffb4a644b9ada6f22d443e2fd08886c3" + +karma-source-map-support@^1.2.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/karma-source-map-support/-/karma-source-map-support-1.3.0.tgz#36dd4d8ca154b62ace95696236fae37caf0a7dde" + dependencies: + source-map-support "^0.5.5" + +karma@^1.4.1: + version "1.7.1" + resolved "https://registry.yarnpkg.com/karma/-/karma-1.7.1.tgz#85cc08e9e0a22d7ce9cca37c4a1be824f6a2b1ae" + dependencies: + bluebird "^3.3.0" + body-parser "^1.16.1" + chokidar "^1.4.1" + colors "^1.1.0" + combine-lists "^1.0.0" + connect "^3.6.0" + core-js "^2.2.0" + di "^0.0.1" + dom-serialize "^2.2.0" + expand-braces "^0.1.1" + glob "^7.1.1" + graceful-fs "^4.1.2" + http-proxy "^1.13.0" + isbinaryfile "^3.0.0" + lodash "^3.8.0" + log4js "^0.6.31" + mime "^1.3.4" + minimatch "^3.0.2" + optimist "^0.6.1" + qjobs "^1.1.4" + range-parser "^1.2.0" + rimraf "^2.6.0" + safe-buffer "^5.0.1" + socket.io "1.7.3" + source-map "^0.5.3" + tmp "0.0.31" + useragent "^2.1.12" + +killable@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.0.tgz#da8b84bd47de5395878f95d64d02f2449fe05e6b" + +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + +kind-of@^6.0.0, kind-of@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" + +lazy-cache@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" + +lcid@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" + dependencies: + invert-kv "^1.0.0" + +leb@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/leb/-/leb-0.3.0.tgz#32bee9fad168328d6aea8522d833f4180eed1da3" + +less-loader@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/less-loader/-/less-loader-4.1.0.tgz#2c1352c5b09a4f84101490274fd51674de41363e" + dependencies: + clone "^2.1.1" + loader-utils "^1.1.0" + pify "^3.0.0" + +less@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/less/-/less-3.0.4.tgz#d27dcedbac96031c9e7b76f1da1e4b7d83760814" + optionalDependencies: + errno "^0.1.1" + graceful-fs "^4.1.2" + image-size "~0.5.0" + mime "^1.4.1" + mkdirp "^0.5.0" + promise "^7.1.1" + request "^2.83.0" + source-map "~0.6.0" + +levn@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + +license-webpack-plugin@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-1.3.1.tgz#688b76472188ef597918b7cae3eec7dc2fa5a0e8" + dependencies: + ejs "^2.5.7" + +lie@~3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lie/-/lie-3.1.1.tgz#9a436b2cc7746ca59de7a41fa469b3efb76bd87e" + dependencies: + immediate "~3.0.5" + +load-json-file@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + pinkie-promise "^2.0.0" + strip-bom "^2.0.0" + +loader-runner@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2" + +loader-utils@^0.2.16: + version "0.2.17" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" + dependencies: + big.js "^3.1.3" + emojis-list "^2.0.0" + json5 "^0.5.0" + object-assign "^4.0.1" + +loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" + dependencies: + big.js "^3.1.3" + emojis-list "^2.0.0" + json5 "^0.5.0" + +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + +lodash.assign@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" + +lodash.clonedeep@^4.3.2, lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + +lodash.mergewith@^4.6.0: + version "4.6.1" + resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927" + +lodash.tail@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" + +lodash@^3.8.0: + version "3.10.1" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" + +lodash@^4.0.0, lodash@^4.17.10, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.5.0, lodash@~4.17.10: + version "4.17.10" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" + +log-symbols@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" + dependencies: + chalk "^2.0.1" + +log4js@^0.6.31: + version "0.6.38" + resolved "https://registry.yarnpkg.com/log4js/-/log4js-0.6.38.tgz#2c494116695d6fb25480943d3fc872e662a522fd" + dependencies: + readable-stream "~1.0.2" + semver "~4.3.3" + +loglevel@^1.4.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa" + +loglevelnext@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/loglevelnext/-/loglevelnext-1.0.5.tgz#36fc4f5996d6640f539ff203ba819641680d75a2" + dependencies: + es6-symbol "^3.1.1" + object.assign "^4.1.0" + +long@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/long/-/long-3.2.0.tgz#d821b7138ca1cb581c172990ef14db200b5c474b" + +longest@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" + +loose-envify@^1.0.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" + dependencies: + js-tokens "^3.0.0" + +loud-rejection@^1.0.0, loud-rejection@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + +lower-case@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" + +lru-cache@4.1.x, lru-cache@^4.0.1, lru-cache@^4.1.1: + version "4.1.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.3.tgz#a1175cf3496dfc8436c156c334b4955992bce69c" + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + +make-dir@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" + dependencies: + pify "^3.0.0" + +make-error@^1.1.1: + version "1.3.4" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.4.tgz#19978ed575f9e9545d2ff8c13e33b5d18a67d535" + +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + +map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + dependencies: + object-visit "^1.0.0" + +math-random@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac" + +md5.js@^1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.4.tgz#e9bdbde94a20a5ac18b04340fc5764d5b09d901d" + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + +mem@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" + dependencies: + mimic-fn "^1.0.0" + +memory-fs@^0.4.0, memory-fs@^0.4.1, memory-fs@~0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + +meow@^3.3.0, meow@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + dependencies: + 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-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + +micromatch@^2.1.5: + version "2.3.11" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" + dependencies: + arr-diff "^2.0.0" + array-unique "^0.2.1" + braces "^1.8.2" + expand-brackets "^0.1.4" + extglob "^0.3.1" + filename-regex "^2.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.1" + kind-of "^3.0.2" + normalize-path "^2.0.1" + object.omit "^2.0.0" + parse-glob "^3.0.4" + regex-cache "^0.4.2" + +micromatch@^3.1.4, micromatch@^3.1.8, micromatch@^3.1.9: + version "3.1.10" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + dependencies: + 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" + +miller-rabin@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + +"mime-db@>= 1.34.0 < 2": + version "1.34.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.34.0.tgz#452d0ecff5c30346a6dc1e64b1eaee0d3719ff9a" + +mime-db@~1.33.0: + version "1.33.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" + +mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.7: + version "2.1.18" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" + dependencies: + mime-db "~1.33.0" + +mime@1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" + +mime@^1.3.4, mime@^1.4.1: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + +mime@^2.0.3, mime@^2.1.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.3.1.tgz#b1621c54d63b97c47d3cfe7f7215f7d64517c369" + +mimic-fn@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" + +mini-css-extract-plugin@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.0.tgz#ff3bf08bee96e618e177c16ca6131bfecef707f9" + dependencies: + loader-utils "^1.1.0" + webpack-sources "^1.1.0" + +minimalistic-assert@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + +minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + +"minimatch@2 || 3", minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + dependencies: + brace-expansion "^1.1.7" + +minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + +minimist@^1.1.3, minimist@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + +minimist@~0.0.1: + version "0.0.10" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" + +minipass@^2.2.1, minipass@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.3.tgz#a7dcc8b7b833f5d368759cce544dccb55f50f233" + dependencies: + safe-buffer "^5.1.2" + yallist "^3.0.0" + +minizlib@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.1.0.tgz#11e13658ce46bc3a70a267aac58359d1e0c29ceb" + dependencies: + minipass "^2.2.1" + +mississippi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" + dependencies: + concat-stream "^1.5.0" + duplexify "^3.4.2" + end-of-stream "^1.1.0" + flush-write-stream "^1.0.0" + from2 "^2.1.0" + parallel-transform "^1.1.0" + pump "^2.0.1" + pumpify "^1.3.3" + stream-each "^1.1.0" + through2 "^2.0.0" + +mixin-deep@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + +mixin-object@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" + dependencies: + for-in "^0.1.3" + is-extendable "^0.1.1" + +mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + dependencies: + minimist "0.0.8" + +moment-timezone@^0.5.13: + version "0.5.17" + resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.17.tgz#3c8fef32051d84c3af174d91dc52977dcb0ad7e5" + dependencies: + moment ">= 2.9.0" + +moment@*, "moment@>= 2.9.0", moment@>=2.14.0, moment@^2.10.2, moment@^2.18.1: + version "2.22.2" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.22.2.tgz#3c257f9839fc0e93ff53149632239eb90783ff66" + +morris.js@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/morris.js/-/morris.js-0.5.0.tgz#725767135cfae059aae75999bb2ce6a1c5d1b44b" + +move-concurrently@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" + dependencies: + aproba "^1.1.1" + copy-concurrently "^1.0.0" + fs-write-stream-atomic "^1.0.8" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.3" + +ms@0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" + +ms@0.7.2: + version "0.7.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + +multicast-dns-service-types@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" + +multicast-dns@^6.0.1: + version "6.2.3" + resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" + dependencies: + dns-packet "^1.3.1" + thunky "^1.0.2" + +nan@^2.10.0, nan@^2.9.2: + version "2.10.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.10.0.tgz#96d0cd610ebd58d4b4de9cc0c6828cda99c7548f" + +nanomatch@^1.2.9: + version "1.2.9" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.9.tgz#879f7150cb2dab7a471259066c104eee6e0fa7c2" + dependencies: + 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-odd "^2.0.0" + 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" + +needle@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.1.tgz#b5e325bd3aae8c2678902fa296f729455d1d3a7d" + dependencies: + debug "^2.1.2" + iconv-lite "^0.4.4" + sax "^1.2.4" + +negotiator@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" + +neo-async@^2.5.0: + version "2.5.1" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.5.1.tgz#acb909e327b1e87ec9ef15f41b8a269512ad41ee" + +next-tick@1: + version "1.0.0" + resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" + +ngx-bootstrap@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ngx-bootstrap/-/ngx-bootstrap-3.0.0.tgz#563368404dd71962e2ef8eee21794c6aeaab4490" + +ngx-pagination@^3.0.3: + version "3.1.1" + resolved "https://registry.yarnpkg.com/ngx-pagination/-/ngx-pagination-3.1.1.tgz#fcde5cb5fd4a1bd6aa785ff062a55f3deefcd3ac" + +no-case@^2.2.0: + version "2.3.2" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" + dependencies: + lower-case "^1.1.1" + +node-forge@0.7.5: + version "0.7.5" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" + +node-gyp@^3.3.1: + version "3.7.0" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.7.0.tgz#789478e8f6c45e277aa014f3e28f958f286f9203" + dependencies: + 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.9.0 <2.82.0" + rimraf "2" + semver "~5.3.0" + tar "^2.0.0" + which "1" + +node-libs-browser@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df" + dependencies: + assert "^1.1.1" + browserify-zlib "^0.2.0" + buffer "^4.3.0" + console-browserify "^1.1.0" + constants-browserify "^1.0.0" + crypto-browserify "^3.11.0" + domain-browser "^1.1.1" + events "^1.0.0" + https-browserify "^1.0.0" + os-browserify "^0.3.0" + path-browserify "0.0.0" + process "^0.11.10" + punycode "^1.2.4" + querystring-es3 "^0.2.0" + readable-stream "^2.3.3" + stream-browserify "^2.0.1" + stream-http "^2.7.2" + string_decoder "^1.0.0" + timers-browserify "^2.0.4" + tty-browserify "0.0.0" + url "^0.11.0" + util "^0.10.3" + vm-browserify "0.0.4" + +node-pre-gyp@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.0.tgz#6e4ef5bb5c5203c6552448828c852c40111aac46" + dependencies: + detect-libc "^1.0.2" + mkdirp "^0.5.1" + needle "^2.2.0" + nopt "^4.0.1" + npm-packlist "^1.1.6" + npmlog "^4.0.2" + rc "^1.1.7" + rimraf "^2.6.1" + semver "^5.3.0" + tar "^4" + +node-sass@^4.9.0: + version "4.9.0" + resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.9.0.tgz#d1b8aa855d98ed684d6848db929a20771cc2ae52" + dependencies: + 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.assign "^4.2.0" + lodash.clonedeep "^4.3.2" + lodash.mergewith "^4.6.0" + meow "^3.7.0" + mkdirp "^0.5.1" + nan "^2.10.0" + node-gyp "^3.3.1" + npmlog "^4.0.0" + request "~2.79.0" + sass-graph "^2.2.4" + stdout-stream "^1.4.0" + "true-case-path" "^1.0.2" + +node-waves@^0.7.5: + version "0.7.6" + resolved "https://registry.yarnpkg.com/node-waves/-/node-waves-0.7.6.tgz#f04890961925e8daab875daa97d154734e7735ff" + +"nopt@2 || 3", nopt@3.x: + version "3.0.6" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" + dependencies: + abbrev "1" + +nopt@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + dependencies: + abbrev "1" + osenv "^0.1.4" + +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, "normalize-package-data@~1.0.1 || ^2.0.0": + version "2.4.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" + dependencies: + hosted-git-info "^2.1.4" + is-builtin-module "^1.0.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-path@^2.0.0, normalize-path@^2.0.1, normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + +npm-bundled@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.3.tgz#7e71703d973af3370a9591bafe3a63aca0be2308" + +"npm-package-arg@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0": + version "6.1.0" + resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-6.1.0.tgz#15ae1e2758a5027efb4c250554b85a737db7fcc1" + dependencies: + hosted-git-info "^2.6.0" + osenv "^0.1.5" + semver "^5.5.0" + validate-npm-package-name "^3.0.0" + +npm-packlist@^1.1.6: + version "1.1.10" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.10.tgz#1039db9e985727e464df066f4cf0ab6ef85c398a" + dependencies: + ignore-walk "^3.0.1" + npm-bundled "^1.0.1" + +npm-registry-client@^8.5.1: + version "8.5.1" + resolved "https://registry.yarnpkg.com/npm-registry-client/-/npm-registry-client-8.5.1.tgz#8115809c0a4b40938b8a109b8ea74d26c6f5d7f1" + dependencies: + concat-stream "^1.5.2" + graceful-fs "^4.1.6" + normalize-package-data "~1.0.1 || ^2.0.0" + npm-package-arg "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0" + once "^1.3.3" + request "^2.74.0" + retry "^0.10.0" + safe-buffer "^5.1.1" + semver "2 >=2.2.1 || 3.x || 4 || 5" + slide "^1.1.3" + ssri "^5.2.4" + optionalDependencies: + npmlog "2 || ^3.1.0 || ^4.0.0" + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + dependencies: + path-key "^2.0.0" + +"npmlog@0 || 1 || 2 || 3 || 4", "npmlog@2 || ^3.1.0 || ^4.0.0", npmlog@^4.0.0, npmlog@^4.0.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + +nswag@^11.17.10: + version "11.17.14" + resolved "https://registry.yarnpkg.com/nswag/-/nswag-11.17.14.tgz#82b47f842be2832c7fc16423002aaa2e49831a04" + +nth-check@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" + dependencies: + boolbase "~1.0.0" + +null-check@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd" + +num2fraction@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + +oauth-sign@~0.8.1, oauth-sign@~0.8.2: + version "0.8.2" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" + +object-assign@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0" + +object-assign@^4.0.1, object-assign@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + +object-component@0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/object-component/-/object-component-0.0.3.tgz#f0c69aa50efc95b866c186f400a33769cb2f1291" + +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-keys@^1.0.11, object-keys@^1.0.8: + version "1.0.11" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" + +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + dependencies: + isobject "^3.0.0" + +object.assign@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.1" + has-symbols "^1.0.0" + object-keys "^1.0.11" + +object.getownpropertydescriptors@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.5.1" + +object.omit@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" + dependencies: + for-own "^0.1.4" + is-extendable "^0.1.1" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + dependencies: + isobject "^3.0.1" + +obuf@^1.0.0, obuf@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" + +on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + dependencies: + ee-first "1.1.1" + +on-headers@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" + +once@1.x, once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + dependencies: + wrappy "1" + +opn@^5.1.0, opn@~5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/opn/-/opn-5.3.0.tgz#64871565c863875f052cfdf53d3e3cb5adb53b1c" + dependencies: + is-wsl "^1.1.0" + +optimist@^0.6.1, optimist@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" + dependencies: + minimist "~0.0.1" + wordwrap "~0.0.2" + +optionator@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.4" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + wordwrap "~1.0.0" + +options@>=0.0.5: + version "0.0.6" + resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" + +original@>=0.0.5: + version "1.0.1" + resolved "https://registry.yarnpkg.com/original/-/original-1.0.1.tgz#b0a53ff42ba997a8c9cd1fb5daaeb42b9d693190" + dependencies: + url-parse "~1.4.0" + +os-browserify@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" + +os-homedir@^1.0.0, os-homedir@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + +os-locale@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" + dependencies: + lcid "^1.0.0" + +os-locale@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" + dependencies: + execa "^0.7.0" + lcid "^1.0.0" + mem "^1.1.0" + +os-tmpdir@^1.0.0, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + +osenv@0, osenv@^0.1.4, osenv@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + +p-limit@^1.0.0, p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + dependencies: + p-try "^1.0.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + dependencies: + p-limit "^1.1.0" + +p-map@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" + +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + +pako@~1.0.2, pako@~1.0.5: + version "1.0.6" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258" + +parallel-transform@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" + dependencies: + cyclist "~0.2.2" + inherits "^2.0.3" + readable-stream "^2.1.5" + +param-case@2.1.x: + version "2.1.1" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" + dependencies: + no-case "^2.2.0" + +parse-asn1@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.1.tgz#f6bf293818332bd0dab54efb16087724745e6ca8" + dependencies: + asn1.js "^4.0.0" + browserify-aes "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.0" + pbkdf2 "^3.0.3" + +parse-glob@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" + dependencies: + glob-base "^0.3.0" + is-dotfile "^1.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.0" + +parse-json@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" + dependencies: + error-ex "^1.2.0" + +parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + +parse5@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" + +parsejson@0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/parsejson/-/parsejson-0.0.3.tgz#ab7e3759f209ece99437973f7d0f1f64ae0e64ab" + dependencies: + better-assert "~1.0.0" + +parseqs@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.5.tgz#d5208a3738e46766e291ba2ea173684921a8b89d" + dependencies: + better-assert "~1.0.0" + +parseuri@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a" + dependencies: + better-assert "~1.0.0" + +parseurl@~1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" + +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + +path-browserify@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" + +path-dirname@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + +path-exists@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" + dependencies: + pinkie-promise "^2.0.0" + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + +path-is-inside@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" + +path-key@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + +path-parse@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" + +path-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + +path-type@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" + dependencies: + graceful-fs "^4.1.2" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + dependencies: + pify "^3.0.0" + +pbkdf2@^3.0.3: + version "3.0.16" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.16.tgz#7404208ec6b01b62d85bf83853a8064f8d9c2a5c" + dependencies: + create-hash "^1.1.2" + create-hmac "^1.1.4" + ripemd160 "^2.0.1" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +performance-now@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + +pify@^2.0.0, pify@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + +pkg-dir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" + dependencies: + find-up "^2.1.0" + +portfinder@^1.0.13, portfinder@^1.0.9: + version "1.0.13" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.13.tgz#bb32ecd87c27104ae6ee44b5a3ccbf0ebb1aede9" + dependencies: + async "^1.5.2" + debug "^2.2.0" + mkdirp "0.5.x" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + +postcss-import@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-11.1.0.tgz#55c9362c9192994ec68865d224419df1db2981f0" + dependencies: + postcss "^6.0.1" + postcss-value-parser "^3.2.3" + read-cache "^1.0.0" + resolve "^1.1.7" + +postcss-load-config@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-1.2.0.tgz#539e9afc9ddc8620121ebf9d8c3673e0ce50d28a" + dependencies: + cosmiconfig "^2.1.0" + object-assign "^4.1.0" + postcss-load-options "^1.2.0" + postcss-load-plugins "^2.3.0" + +postcss-load-options@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-load-options/-/postcss-load-options-1.2.0.tgz#b098b1559ddac2df04bc0bb375f99a5cfe2b6d8c" + dependencies: + cosmiconfig "^2.1.0" + object-assign "^4.1.0" + +postcss-load-plugins@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz#745768116599aca2f009fad426b00175049d8d92" + dependencies: + cosmiconfig "^2.1.1" + object-assign "^4.1.0" + +postcss-loader@^2.1.5: + version "2.1.5" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.1.5.tgz#3c6336ee641c8f95138172533ae461a83595e788" + dependencies: + loader-utils "^1.1.0" + postcss "^6.0.0" + postcss-load-config "^1.2.0" + schema-utils "^0.4.0" + +postcss-url@^7.3.2: + version "7.3.2" + resolved "https://registry.yarnpkg.com/postcss-url/-/postcss-url-7.3.2.tgz#5fea273807fb84b38c461c3c9a9e8abd235f7120" + dependencies: + mime "^1.4.1" + minimatch "^3.0.4" + mkdirp "^0.5.0" + postcss "^6.0.1" + xxhashjs "^0.2.1" + +postcss-value-parser@^3.2.3: + version "3.3.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15" + +postcss@^6.0.0, postcss@^6.0.1, postcss@^6.0.22: + version "6.0.22" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.22.tgz#e23b78314905c3b90cbd61702121e7a78848f2a3" + dependencies: + chalk "^2.4.1" + source-map "^0.6.1" + supports-color "^5.4.0" + +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + +preserve@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" + +pretty-error@^2.0.2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" + dependencies: + renderkid "^2.0.1" + utila "~0.4" + +process-nextick-args@~1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" + +process-nextick-args@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" + +process@^0.11.10: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + +promise-polyfill@^6.0.2: + version "6.1.0" + resolved "https://registry.yarnpkg.com/promise-polyfill/-/promise-polyfill-6.1.0.tgz#dfa96943ea9c121fca4de9b5868cb39d3472e057" + +promise@^7.1.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" + dependencies: + asap "~2.0.3" + +protractor@^5.1.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/protractor/-/protractor-5.3.2.tgz#b8278f3131d9d52fa1172ed0f7fec03085fbe0ce" + dependencies: + "@types/node" "^6.0.46" + "@types/q" "^0.0.32" + "@types/selenium-webdriver" "~2.53.39" + blocking-proxy "^1.0.0" + chalk "^1.1.3" + glob "^7.0.3" + jasmine "2.8.0" + jasminewd2 "^2.1.0" + optimist "~0.6.0" + q "1.4.1" + saucelabs "^1.5.0" + selenium-webdriver "3.6.0" + source-map-support "~0.4.0" + webdriver-js-extender "^1.0.0" + webdriver-manager "^12.0.6" + +proxy-addr@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.3.tgz#355f262505a621646b3130a728eb647e22055341" + dependencies: + forwarded "~0.1.2" + ipaddr.js "1.6.0" + +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + +public-encrypt@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.2.tgz#46eb9107206bf73489f8b85b69d91334c6610994" + dependencies: + bn.js "^4.1.0" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + parse-asn1 "^5.0.0" + randombytes "^2.0.1" + +pump@^2.0.0, pump@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pumpify@^1.3.3: + version "1.5.1" + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" + dependencies: + duplexify "^3.6.0" + inherits "^2.0.3" + pump "^2.0.0" + +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + +punycode@^1.2.4, punycode@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + +punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + +push.js@1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/push.js/-/push.js-1.0.4.tgz#ebe590360329174150c724f71d6be57f9e84841d" + +q@1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.4.1.tgz#55705bcd93c5f3673530c2c2cbc0c2b3addc286e" + +q@^1.4.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + +qjobs@^1.1.4: + version "1.2.0" + resolved "https://registry.yarnpkg.com/qjobs/-/qjobs-1.2.0.tgz#c45e9c61800bd087ef88d7e256423bdd49e5d071" + +qs@6.5.1: + version "6.5.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" + +qs@6.5.2, qs@~6.5.1: + version "6.5.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + +qs@~6.3.0: + version "6.3.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" + +qs@~6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" + +querystring-es3@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" + +querystring@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + +querystringify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.0.0.tgz#fa3ed6e68eb15159457c89b37bc6472833195755" + +randomatic@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.0.0.tgz#d35490030eb4f7578de292ce6dfb04a91a128923" + dependencies: + is-number "^4.0.0" + kind-of "^6.0.0" + math-random "^1.0.1" + +randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80" + dependencies: + safe-buffer "^5.1.0" + +randomfill@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" + dependencies: + randombytes "^2.0.5" + safe-buffer "^5.1.0" + +range-parser@^1.0.3, range-parser@^1.2.0, range-parser@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" + +raphael@^2.2.7: + version "2.2.7" + resolved "https://registry.yarnpkg.com/raphael/-/raphael-2.2.7.tgz#231b19141f8d086986d8faceb66f8b562ee2c810" + dependencies: + eve-raphael "0.5.0" + +raw-body@2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89" + dependencies: + bytes "3.0.0" + http-errors "1.6.2" + iconv-lite "0.4.19" + unpipe "1.0.0" + +raw-body@2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.3.tgz#1b324ece6b5706e153855bc1148c65bb7f6ea0c3" + dependencies: + bytes "3.0.0" + http-errors "1.6.3" + iconv-lite "0.4.23" + unpipe "1.0.0" + +raw-loader@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa" + +rc@^1.1.7: + version "1.2.8" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + dependencies: + deep-extend "^0.6.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +read-cache@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" + dependencies: + pify "^2.3.0" + +read-pkg-up@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" + dependencies: + find-up "^1.0.0" + read-pkg "^1.0.0" + +read-pkg@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" + dependencies: + load-json-file "^1.0.0" + normalize-package-data "^2.3.2" + path-type "^1.0.0" + +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3, readable-stream@^2.3.6: + version "2.3.6" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" + dependencies: + 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" + +readable-stream@1.0, readable-stream@~1.0.2: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@~2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "~1.0.0" + process-nextick-args "~1.0.6" + string_decoder "~0.10.x" + util-deprecate "~1.0.1" + +readdirp@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" + dependencies: + graceful-fs "^4.1.2" + minimatch "^3.0.2" + readable-stream "^2.0.2" + set-immediate-shim "^1.0.1" + +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + +reflect-metadata@^0.1.2: + version "0.1.12" + resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.12.tgz#311bf0c6b63cd782f228a81abe146a2bfa9c56f2" + +regenerate@^1.2.1: + version "1.4.0" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" + +regenerator-runtime@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" + +regex-cache@^0.4.2: + version "0.4.4" + resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" + dependencies: + is-equal-shallow "^0.1.3" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regexpu-core@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" + dependencies: + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" + +regjsgen@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" + +regjsparser@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" + dependencies: + jsesc "~0.5.0" + +relateurl@0.2.x: + version "0.2.7" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + +renderkid@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.1.tgz#898cabfc8bede4b7b91135a3ffd323e58c0db319" + dependencies: + css-select "^1.1.0" + dom-converter "~0.1" + htmlparser2 "~3.3.0" + strip-ansi "^3.0.0" + utila "~0.3" + +repeat-element@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" + +repeat-string@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-0.2.2.tgz#c7a8d3236068362059a7e4651fc6884e8b1fb4ae" + +repeat-string@^1.5.2, repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + +repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" + dependencies: + is-finite "^1.0.0" + +"request@>=2.9.0 <2.82.0": + version "2.81.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.1.1" + har-validator "~4.2.1" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + oauth-sign "~0.8.1" + performance-now "^0.2.0" + qs "~6.4.0" + safe-buffer "^5.0.1" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "^0.6.0" + uuid "^3.0.0" + +request@^2.74.0, request@^2.78.0, request@^2.83.0: + version "2.87.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.87.0.tgz#32f00235cd08d482b4d0d68db93a829c0ed5756e" + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.6.0" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.1" + forever-agent "~0.6.1" + form-data "~2.3.1" + har-validator "~5.0.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.17" + oauth-sign "~0.8.2" + performance-now "^2.1.0" + qs "~6.5.1" + safe-buffer "^5.1.1" + tough-cookie "~2.3.3" + tunnel-agent "^0.6.0" + uuid "^3.1.0" + +request@~2.79.0: + version "2.79.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + caseless "~0.11.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.1.1" + har-validator "~2.0.6" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + oauth-sign "~0.8.1" + qs "~6.3.0" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "~0.4.1" + uuid "^3.0.0" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + +require-from-string@^1.1.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418" + +require-main-filename@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" + +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + +resolve-cwd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" + dependencies: + resolve-from "^3.0.0" + +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + +resolve@1.1.x: + version "1.1.7" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" + +resolve@^1.1.6, resolve@^1.1.7, resolve@^1.3.2, resolve@^1.5.0: + version "1.7.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.7.1.tgz#aadd656374fd298aee895bc026b8297418677fd3" + dependencies: + path-parse "^1.0.5" + +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + +retry@^0.10.0: + version "0.10.1" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" + +right-align@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" + dependencies: + align-text "^0.1.1" + +rimraf@2, rimraf@^2.2.8, rimraf@^2.5.2, rimraf@^2.5.4, rimraf@^2.6.0, rimraf@^2.6.1, rimraf@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" + dependencies: + glob "^7.0.5" + +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + +run-queue@^1.0.0, run-queue@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" + dependencies: + aproba "^1.1.1" + +rxjs@^6.0.0, rxjs@^6.2.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.2.1.tgz#246cebec189a6cbc143a3ef9f62d6f4c91813ca1" + dependencies: + tslib "^1.9.0" + +safe-buffer@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" + +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + dependencies: + ret "~0.1.10" + +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + +sass-graph@^2.2.4: + version "2.2.4" + resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49" + dependencies: + glob "^7.0.0" + lodash "^4.0.0" + scss-tokenizer "^0.2.3" + yargs "^7.0.0" + +sass-loader@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.0.3.tgz#6ca10871a1cc7549f8143db5a9958242c4e4ca2a" + dependencies: + clone-deep "^2.0.1" + loader-utils "^1.0.1" + lodash.tail "^4.1.1" + neo-async "^2.5.0" + pify "^3.0.0" + +saucelabs@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/saucelabs/-/saucelabs-1.5.0.tgz#9405a73c360d449b232839919a86c396d379fd9d" + dependencies: + https-proxy-agent "^2.2.1" + +sax@0.5.x: + version "0.5.8" + resolved "https://registry.yarnpkg.com/sax/-/sax-0.5.8.tgz#d472db228eb331c2506b0e8c15524adb939d12c1" + +sax@0.6.x: + version "0.6.1" + resolved "https://registry.yarnpkg.com/sax/-/sax-0.6.1.tgz#563b19c7c1de892e09bfc4f2fc30e3c27f0952b9" + +sax@>=0.6.0, sax@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + +schema-utils@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.3.0.tgz#f5877222ce3e931edae039f17eb3716e7137f8cf" + dependencies: + ajv "^5.0.0" + +schema-utils@^0.4.0, schema-utils@^0.4.2, schema-utils@^0.4.3, schema-utils@^0.4.4, schema-utils@^0.4.5: + version "0.4.5" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.5.tgz#21836f0608aac17b78f9e3e24daff14a5ca13a3e" + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + +scss-tokenizer@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" + dependencies: + js-base64 "^2.1.8" + source-map "^0.4.2" + +select-hose@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + +selenium-webdriver@3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-3.6.0.tgz#2ba87a1662c020b8988c981ae62cb2a01298eafc" + dependencies: + jszip "^3.1.3" + rimraf "^2.5.4" + tmp "0.0.30" + xml2js "^0.4.17" + +selenium-webdriver@^2.53.2: + version "2.53.3" + resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-2.53.3.tgz#d29ff5a957dff1a1b49dc457756e4e4bfbdce085" + dependencies: + adm-zip "0.4.4" + rimraf "^2.2.8" + tmp "0.0.24" + ws "^1.0.1" + xml2js "0.4.4" + +selfsigned@^1.9.1: + version "1.10.3" + resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.3.tgz#d628ecf9e3735f84e8bafba936b3cf85bea43823" + dependencies: + node-forge "0.7.5" + +semver-dsl@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/semver-dsl/-/semver-dsl-1.0.1.tgz#d3678de5555e8a61f629eed025366ae5f27340a0" + dependencies: + semver "^5.3.0" + +semver-intersect@^1.1.2: + version "1.3.1" + resolved "https://registry.yarnpkg.com/semver-intersect/-/semver-intersect-1.3.1.tgz#8fa84a9e1028bd239e4530d1a3e181e698d884ba" + dependencies: + semver "^5.0.0" + +"semver@2 >=2.2.1 || 3.x || 4 || 5", "semver@2 || 3 || 4 || 5", semver@^5.0.0, semver@^5.1.0, semver@^5.3.0, semver@^5.5.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" + +semver@~4.3.3: + version "4.3.6" + resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" + +semver@~5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" + +send@0.16.2: + version "0.16.2" + resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" + dependencies: + debug "2.6.9" + depd "~1.1.2" + destroy "~1.0.4" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "~1.6.2" + mime "1.4.1" + ms "2.0.0" + on-finished "~2.3.0" + range-parser "~1.2.0" + statuses "~1.4.0" + +serialize-javascript@^1.4.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.5.0.tgz#1aa336162c88a890ddad5384baebc93a655161fe" + +serve-index@^1.7.2: + version "1.9.1" + resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" + dependencies: + accepts "~1.3.4" + batch "0.6.1" + debug "2.6.9" + escape-html "~1.0.3" + http-errors "~1.6.2" + mime-types "~2.1.17" + parseurl "~1.3.2" + +serve-static@1.13.2: + version "1.13.2" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" + dependencies: + encodeurl "~1.0.2" + escape-html "~1.0.3" + parseurl "~1.3.2" + send "0.16.2" + +set-blocking@^2.0.0, set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + +set-immediate-shim@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" + +set-value@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.1" + to-object-path "^0.3.0" + +set-value@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + +setimmediate@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + +setprototypeof@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" + +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + +sha.js@^2.4.0, sha.js@^2.4.8: + version "2.4.11" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +shallow-clone@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-1.0.0.tgz#4480cd06e882ef68b2ad88a3ea54832e2c48b571" + dependencies: + is-extendable "^0.1.1" + kind-of "^5.0.0" + mixin-object "^2.0.1" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + dependencies: + shebang-regex "^1.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + +signal-exit@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + +silent-error@^1.0.0, silent-error@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/silent-error/-/silent-error-1.1.0.tgz#2209706f1c850a9f1d10d0d840918b46f26e1bc9" + dependencies: + debug "^2.2.0" + +simple-line-icons@^2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/simple-line-icons/-/simple-line-icons-2.4.1.tgz#b75bc5a0d87e530928c2ccda5735274bb256f234" + +slash@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" + +slide@^1.1.3: + version "1.1.6" + resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" + +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + dependencies: + 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" + +sntp@1.x.x: + version "1.0.9" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" + dependencies: + hoek "2.x.x" + +socket.io-adapter@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-0.5.0.tgz#cb6d4bb8bec81e1078b99677f9ced0046066bb8b" + dependencies: + debug "2.3.3" + socket.io-parser "2.3.1" + +socket.io-client@1.7.3: + version "1.7.3" + resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-1.7.3.tgz#b30e86aa10d5ef3546601c09cde4765e381da377" + dependencies: + backo2 "1.0.2" + component-bind "1.0.0" + component-emitter "1.2.1" + debug "2.3.3" + engine.io-client "1.8.3" + has-binary "0.1.7" + indexof "0.0.1" + object-component "0.0.3" + parseuri "0.0.5" + socket.io-parser "2.3.1" + to-array "0.1.4" + +socket.io-parser@2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-2.3.1.tgz#dd532025103ce429697326befd64005fcfe5b4a0" + dependencies: + component-emitter "1.1.2" + debug "2.2.0" + isarray "0.0.1" + json3 "3.3.2" + +socket.io@1.7.3: + version "1.7.3" + resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-1.7.3.tgz#b8af9caba00949e568e369f1327ea9be9ea2461b" + dependencies: + debug "2.3.3" + engine.io "1.8.3" + has-binary "0.1.7" + object-assign "4.1.0" + socket.io-adapter "0.5.0" + socket.io-client "1.7.3" + socket.io-parser "2.3.1" + +sockjs-client@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.4.tgz#5babe386b775e4cf14e7520911452654016c8b12" + dependencies: + debug "^2.6.6" + eventsource "0.1.6" + faye-websocket "~0.11.0" + inherits "^2.0.1" + json3 "^3.3.2" + url-parse "^1.1.8" + +sockjs@0.3.19: + version "0.3.19" + resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" + dependencies: + faye-websocket "^0.10.0" + uuid "^3.0.1" + +source-list-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085" + +source-list-map@~0.1.7: + version "0.1.8" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106" + +source-map-resolve@^0.5.0: + version "0.5.2" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" + dependencies: + atob "^2.1.1" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + +source-map-support@^0.4.0, source-map-support@~0.4.0: + version "0.4.18" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" + dependencies: + source-map "^0.5.6" + +source-map-support@^0.5.0, source-map-support@^0.5.5: + version "0.5.6" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.6.tgz#4435cee46b1aab62b8e8610ce60f788091c51c13" + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-url@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" + +source-map@0.1.x: + version "0.1.43" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" + dependencies: + amdefine ">=0.0.4" + +source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.1: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + +source-map@^0.4.2, source-map@^0.4.4, source-map@~0.4.1: + version "0.4.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" + dependencies: + amdefine ">=0.0.4" + +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + +source-map@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.2.0.tgz#dab73fbcfc2ba819b4de03bd6f6eaa48164b3f9d" + dependencies: + amdefine ">=0.0.4" + +spdx-correct@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.0.tgz#05a5b4d7153a195bc92c3c425b69f3b2a9524c82" + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz#2c7ae61056c714a5b9b9b2b2af7d311ef5c78fe9" + +spdx-expression-parse@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz#7a7cd28470cc6d3a1cfe6d66886f6bc430d3ac87" + +spdy-transport@^2.0.18: + version "2.1.0" + resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.1.0.tgz#4bbb15aaffed0beefdd56ad61dbdc8ba3e2cb7a1" + dependencies: + debug "^2.6.8" + detect-node "^2.0.3" + hpack.js "^2.1.6" + obuf "^1.1.1" + readable-stream "^2.2.9" + safe-buffer "^5.0.1" + wbuf "^1.7.2" + +spdy@^3.4.1: + version "3.4.7" + resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" + dependencies: + debug "^2.6.8" + handle-thing "^1.2.5" + http-deceiver "^1.2.7" + safe-buffer "^5.0.1" + select-hose "^2.0.0" + spdy-transport "^2.0.18" + +spin.js@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/spin.js/-/spin.js-2.3.2.tgz#6caa56d520673450fd5cfbc6971e6d0772c37a1a" + +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + dependencies: + extend-shallow "^3.0.0" + +sprintf-js@^1.0.3: + version "1.1.1" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.1.tgz#36be78320afe5801f6cea3ee78b6e5aab940ea0c" + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + +sshpk@^1.7.0: + version "1.14.2" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.2.tgz#c6fc61648a3d9c4e764fd3fcdf4ea105e492ba98" + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + dashdash "^1.12.0" + getpass "^0.1.1" + safer-buffer "^2.0.2" + optionalDependencies: + bcrypt-pbkdf "^1.0.0" + ecc-jsbn "~0.1.1" + jsbn "~0.1.0" + tweetnacl "~0.14.0" + +ssri@^5.2.4: + version "5.3.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.3.0.tgz#ba3872c9c6d33a0704a7d71ff045e5ec48999d06" + dependencies: + safe-buffer "^5.1.1" + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + +stats-webpack-plugin@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/stats-webpack-plugin/-/stats-webpack-plugin-0.6.2.tgz#2c5949b531e07f87a88e6ea4dcfac53aa8c75a2b" + dependencies: + lodash "^4.17.4" + +"statuses@>= 1.3.1 < 2", "statuses@>= 1.4.0 < 2": + version "1.5.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + +statuses@~1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" + +statuses@~1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" + +stdout-stream@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b" + dependencies: + readable-stream "^2.0.1" + +stream-browserify@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" + dependencies: + inherits "~2.0.1" + readable-stream "^2.0.2" + +stream-each@^1.1.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.2.tgz#8e8c463f91da8991778765873fe4d960d8f616bd" + dependencies: + end-of-stream "^1.1.0" + stream-shift "^1.0.0" + +stream-http@^2.7.2: + version "2.8.3" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" + dependencies: + builtin-status-codes "^3.0.0" + inherits "^2.0.1" + readable-stream "^2.3.6" + to-arraybuffer "^1.0.0" + xtend "^4.0.0" + +stream-shift@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" + +string-width@^1.0.1, string-width@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string_decoder@^1.0.0, string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + dependencies: + safe-buffer "~5.1.0" + +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + +stringstream@~0.0.4: + version "0.0.6" + resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.6.tgz#7880225b0d4ad10e30927d167a1d6f2fd3b33a72" + +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + dependencies: + ansi-regex "^3.0.0" + +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + dependencies: + is-utf8 "^0.2.0" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + dependencies: + get-stdin "^4.0.1" + +strip-json-comments@^2.0.0, strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + +style-loader@^0.21.0: + version "0.21.0" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.21.0.tgz#68c52e5eb2afc9ca92b6274be277ee59aea3a852" + dependencies: + loader-utils "^1.1.0" + schema-utils "^0.4.5" + +stylus-loader@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/stylus-loader/-/stylus-loader-3.0.2.tgz#27a706420b05a38e038e7cacb153578d450513c6" + dependencies: + loader-utils "^1.0.2" + lodash.clonedeep "^4.5.0" + when "~3.6.x" + +stylus@^0.54.5: + version "0.54.5" + resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.5.tgz#42b9560931ca7090ce8515a798ba9e6aa3d6dc79" + dependencies: + css-parse "1.7.x" + debug "*" + glob "7.0.x" + mkdirp "0.5.x" + sax "0.5.x" + source-map "0.1.x" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + +supports-color@^3.1.0, supports-color@^3.1.2: + version "3.2.3" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" + dependencies: + has-flag "^1.0.0" + +supports-color@^4.0.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" + dependencies: + has-flag "^2.0.0" + +supports-color@^5.1.0, supports-color@^5.3.0, supports-color@^5.4.0: + version "5.4.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.4.0.tgz#1c6b337402c2137605efe19f10fec390f6faab54" + dependencies: + has-flag "^3.0.0" + +sweetalert@^2.0.8: + version "2.1.0" + resolved "https://registry.yarnpkg.com/sweetalert/-/sweetalert-2.1.0.tgz#d605dec840058fa8ad4a1f7c2c8c194bc72c27fa" + dependencies: + es6-object-assign "^1.1.0" + promise-polyfill "^6.0.2" + +symbol-observable@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" + +tapable@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.0.0.tgz#cbb639d9002eed9c6b5975eb20598d7936f1f9f2" + +tar@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" + dependencies: + block-stream "*" + fstream "^1.0.2" + inherits "2" + +tar@^4: + version "4.4.4" + resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.4.tgz#ec8409fae9f665a4355cc3b4087d0820232bb8cd" + dependencies: + chownr "^1.0.1" + fs-minipass "^1.2.5" + minipass "^2.3.3" + minizlib "^1.1.0" + mkdirp "^0.5.0" + safe-buffer "^5.1.2" + yallist "^3.0.2" + +through2@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" + dependencies: + readable-stream "^2.1.5" + xtend "~4.0.1" + +through@X.X.X: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + +thunky@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.2.tgz#a862e018e3fb1ea2ec3fce5d55605cf57f247371" + +timers-browserify@^2.0.4: + version "2.0.10" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz#1d28e3d2aadf1d5a5996c4e9f95601cd053480ae" + dependencies: + setimmediate "^1.0.4" + +tmp@0.0.24: + version "0.0.24" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.24.tgz#d6a5e198d14a9835cc6f2d7c3d9e302428c8cf12" + +tmp@0.0.30: + version "0.0.30" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.30.tgz#72419d4a8be7d6ce75148fd8b324e593a711c2ed" + dependencies: + os-tmpdir "~1.0.1" + +tmp@0.0.31: + version "0.0.31" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7" + dependencies: + os-tmpdir "~1.0.1" + +tmp@0.0.x: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + dependencies: + os-tmpdir "~1.0.2" + +to-array@0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/to-array/-/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890" + +to-arraybuffer@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" + +to-fast-properties@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" + +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + +toastr@^2.1.2: + version "2.1.4" + resolved "https://registry.yarnpkg.com/toastr/-/toastr-2.1.4.tgz#8b43be64fb9d0c414871446f2db8e8ca4e95f181" + dependencies: + jquery ">=1.12.0" + +toposort@^1.0.0: + version "1.0.7" + resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.7.tgz#2e68442d9f64ec720b8cc89e6443ac6caa950029" + +tough-cookie@~2.3.0, tough-cookie@~2.3.3: + version "2.3.4" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" + dependencies: + punycode "^1.4.1" + +tree-kill@^1.0.0, tree-kill@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.0.tgz#5846786237b4239014f05db156b643212d4c6f36" + +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + +trim-right@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" + +"true-case-path@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.2.tgz#7ec91130924766c7f573be3020c34f8fdfd00d62" + dependencies: + glob "^6.0.4" + +ts-helpers@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/ts-helpers/-/ts-helpers-1.1.2.tgz#fc69be9f1f3baed01fb1a0ef8d4cfe748814d835" + +ts-node@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-3.3.0.tgz#c13c6a3024e30be1180dd53038fc209289d4bf69" + dependencies: + arrify "^1.0.0" + chalk "^2.0.0" + diff "^3.1.0" + make-error "^1.1.1" + minimist "^1.2.0" + mkdirp "^0.5.1" + source-map-support "^0.4.0" + tsconfig "^6.0.0" + v8flags "^3.0.0" + yn "^2.0.0" + +tsconfig@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/tsconfig/-/tsconfig-6.0.0.tgz#6b0e8376003d7af1864f8df8f89dd0059ffcd032" + dependencies: + strip-bom "^3.0.0" + strip-json-comments "^2.0.0" + +tsickle@^0.29.0: + version "0.29.0" + resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.29.0.tgz#812806554bb46c1aa16eb0fe2a051da95ca8f5a4" + dependencies: + minimist "^1.2.0" + mkdirp "^0.5.1" + source-map "^0.6.0" + source-map-support "^0.5.0" + +tslib@^1.8.0, tslib@^1.8.1, tslib@^1.9.0: + version "1.9.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.2.tgz#8be0cc9a1f6dc7727c38deb16c2ebd1a2892988e" + +tslint@^5.7.0: + version "5.10.0" + resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.10.0.tgz#11e26bccb88afa02dd0d9956cae3d4540b5f54c3" + dependencies: + babel-code-frame "^6.22.0" + builtin-modules "^1.1.1" + chalk "^2.3.0" + commander "^2.12.1" + diff "^3.2.0" + glob "^7.1.1" + js-yaml "^3.7.0" + minimatch "^3.0.4" + resolve "^1.3.2" + semver "^5.3.0" + tslib "^1.8.0" + tsutils "^2.12.1" + +tsutils@^2.12.1: + version "2.27.1" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.27.1.tgz#ab0276ac23664f36ce8fd4414daec4aebf4373ee" + dependencies: + tslib "^1.8.1" + +tty-browserify@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + dependencies: + safe-buffer "^5.0.1" + +tunnel-agent@~0.4.1: + version "0.4.3" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + +type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + dependencies: + prelude-ls "~1.1.2" + +type-is@~1.6.15, type-is@~1.6.16: + version "1.6.16" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" + dependencies: + media-typer "0.3.0" + mime-types "~2.1.18" + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + +typescript@2.7.2, "typescript@>=2.6.2 <2.8": + version "2.7.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.7.2.tgz#2d615a1ef4aee4f574425cdff7026edf81919836" + +typescript@~2.9.1: + version "2.9.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.9.2.tgz#1cbf61d05d6b96269244eb6a3bce4bd914e0f00c" + +uglify-es@^3.3.4: + version "3.3.9" + resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" + dependencies: + commander "~2.13.0" + source-map "~0.6.1" + +uglify-js@3.3.x: + version "3.3.28" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.3.28.tgz#0efb9a13850e11303361c1051f64d2ec68d9be06" + dependencies: + commander "~2.15.0" + source-map "~0.6.1" + +uglify-js@^2.6: + version "2.8.29" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" + dependencies: + source-map "~0.5.1" + yargs "~3.10.0" + optionalDependencies: + uglify-to-browserify "~1.0.0" + +uglify-to-browserify@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" + +uglifyjs-webpack-plugin@^1.2.4, uglifyjs-webpack-plugin@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.5.tgz#2ef8387c8f1a903ec5e44fa36f9f3cbdcea67641" + dependencies: + cacache "^10.0.4" + find-cache-dir "^1.0.0" + schema-utils "^0.4.5" + serialize-javascript "^1.4.0" + source-map "^0.6.1" + uglify-es "^3.3.4" + webpack-sources "^1.1.0" + worker-farm "^1.5.2" + +ultron@1.0.x: + version "1.0.2" + resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" + +union-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^0.4.3" + +unique-filename@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.0.tgz#d05f2fe4032560871f30e93cbe735eea201514f3" + dependencies: + unique-slug "^2.0.0" + +unique-slug@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.0.tgz#db6676e7c7cc0629878ff196097c78855ae9f4ab" + dependencies: + imurmurhash "^0.1.4" + +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +upath@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.0.tgz#35256597e46a581db4793d0ce47fa9aebfc9fabd" + +upper-case@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" + +uri-js@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-3.0.2.tgz#f90b858507f81dea4dcfbb3c4c3dbfa2b557faaa" + dependencies: + punycode "^2.1.0" + +uri-js@^4.2.1: + version "4.2.2" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" + dependencies: + punycode "^2.1.0" + +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + +url-join@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.0.tgz#4d3340e807d3773bda9991f8305acdcc2a665d2a" + +url-loader@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-1.0.1.tgz#61bc53f1f184d7343da2728a1289ef8722ea45ee" + dependencies: + loader-utils "^1.1.0" + mime "^2.0.3" + schema-utils "^0.4.3" + +url-parse@^1.1.8, url-parse@~1.4.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.1.tgz#4dec9dad3dc8585f862fed461d2e19bbf623df30" + dependencies: + querystringify "^2.0.0" + requires-port "^1.0.0" + +url@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" + dependencies: + punycode "1.3.2" + querystring "0.2.0" + +use@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.0.tgz#14716bf03fdfefd03040aef58d8b4b85f3a7c544" + dependencies: + kind-of "^6.0.2" + +useragent@^2.1.12: + version "2.3.0" + resolved "https://registry.yarnpkg.com/useragent/-/useragent-2.3.0.tgz#217f943ad540cb2128658ab23fc960f6a88c9972" + dependencies: + lru-cache "4.1.x" + tmp "0.0.x" + +util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + +util.promisify@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + dependencies: + define-properties "^1.1.2" + object.getownpropertydescriptors "^2.0.3" + +util@0.10.3: + version "0.10.3" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" + dependencies: + inherits "2.0.1" + +util@^0.10.3: + version "0.10.4" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" + dependencies: + inherits "2.0.3" + +utila@~0.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.3.3.tgz#d7e8e7d7e309107092b05f8d9688824d633a4226" + +utila@~0.4: + version "0.4.0" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + +uuid@^3.0.0, uuid@^3.0.1, uuid@^3.1.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" + +v8flags@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.1.1.tgz#42259a1461c08397e37fe1d4f1cfb59cad85a053" + dependencies: + homedir-polyfill "^1.0.1" + +validate-npm-package-license@^3.0.1: + version "3.0.3" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz#81643bcbef1bdfecd4623793dc4648948ba98338" + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +validate-npm-package-name@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" + dependencies: + builtins "^1.0.3" + +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +vm-browserify@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" + dependencies: + indexof "0.0.1" + +void-elements@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" + +watchpack@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.6.0.tgz#4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00" + dependencies: + chokidar "^2.0.2" + graceful-fs "^4.1.2" + neo-async "^2.5.0" + +wbuf@^1.1.0, wbuf@^1.7.2: + version "1.7.3" + resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" + dependencies: + minimalistic-assert "^1.0.0" + +web-animations-js@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/web-animations-js/-/web-animations-js-2.3.1.tgz#3a6d9bc15196377a90f8e2803fa5262165b04510" + +webassemblyjs@1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/webassemblyjs/-/webassemblyjs-1.4.3.tgz#0591893efb8fbde74498251cbe4b2d83df9239cb" + dependencies: + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/validation" "1.4.3" + "@webassemblyjs/wasm-parser" "1.4.3" + "@webassemblyjs/wast-parser" "1.4.3" + long "^3.2.0" + +webdriver-js-extender@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/webdriver-js-extender/-/webdriver-js-extender-1.0.0.tgz#81c533a9e33d5bfb597b4e63e2cdb25b54777515" + dependencies: + "@types/selenium-webdriver" "^2.53.35" + selenium-webdriver "^2.53.2" + +webdriver-manager@^12.0.6: + version "12.0.6" + resolved "https://registry.yarnpkg.com/webdriver-manager/-/webdriver-manager-12.0.6.tgz#3df1a481977010b4cbf8c9d85c7a577828c0e70b" + dependencies: + adm-zip "^0.4.7" + chalk "^1.1.1" + del "^2.2.0" + glob "^7.0.3" + ini "^1.3.4" + minimist "^1.2.0" + q "^1.4.1" + request "^2.78.0" + rimraf "^2.5.2" + semver "^5.3.0" + xml2js "^0.4.17" + +webpack-core@^0.6.8: + version "0.6.9" + resolved "https://registry.yarnpkg.com/webpack-core/-/webpack-core-0.6.9.tgz#fc571588c8558da77be9efb6debdc5a3b172bdc2" + dependencies: + source-list-map "~0.1.7" + source-map "~0.4.1" + +webpack-dev-middleware@3.1.3, webpack-dev-middleware@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.1.3.tgz#8b32aa43da9ae79368c1bf1183f2b6cf5e1f39ed" + dependencies: + loud-rejection "^1.6.0" + memory-fs "~0.4.1" + mime "^2.1.0" + path-is-absolute "^1.0.0" + range-parser "^1.0.3" + url-join "^4.0.0" + webpack-log "^1.0.1" + +webpack-dev-server@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.1.4.tgz#9a08d13c4addd1e3b6d8ace116e86715094ad5b4" + dependencies: + ansi-html "0.0.7" + array-includes "^3.0.3" + bonjour "^3.5.0" + chokidar "^2.0.0" + compression "^1.5.2" + connect-history-api-fallback "^1.3.0" + debug "^3.1.0" + del "^3.0.0" + express "^4.16.2" + html-entities "^1.2.0" + http-proxy-middleware "~0.18.0" + import-local "^1.0.0" + internal-ip "1.2.0" + ip "^1.1.5" + killable "^1.0.0" + loglevel "^1.4.1" + opn "^5.1.0" + portfinder "^1.0.9" + selfsigned "^1.9.1" + serve-index "^1.7.2" + sockjs "0.3.19" + sockjs-client "1.1.4" + spdy "^3.4.1" + strip-ansi "^3.0.0" + supports-color "^5.1.0" + webpack-dev-middleware "3.1.3" + webpack-log "^1.1.2" + yargs "11.0.0" + +webpack-log@^1.0.1, webpack-log@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-1.2.0.tgz#a4b34cda6b22b518dbb0ab32e567962d5c72a43d" + dependencies: + chalk "^2.1.0" + log-symbols "^2.1.0" + loglevelnext "^1.0.1" + uuid "^3.1.0" + +webpack-merge@^4.1.2: + version "4.1.3" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.1.3.tgz#8aaff2108a19c29849bc9ad2a7fd7fce68e87c4a" + dependencies: + lodash "^4.17.5" + +webpack-sources@^1.0.1, webpack-sources@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.1.0.tgz#a101ebae59d6507354d71d8013950a3a8b7a5a54" + dependencies: + source-list-map "^2.0.0" + source-map "~0.6.1" + +webpack-subresource-integrity@^1.1.0-rc.4: + version "1.1.0-rc.4" + resolved "https://registry.yarnpkg.com/webpack-subresource-integrity/-/webpack-subresource-integrity-1.1.0-rc.4.tgz#c5c4e3d690f9d2f64a9550e07a8767f9796aa5d8" + dependencies: + webpack-core "^0.6.8" + +webpack@~4.8.1: + version "4.8.3" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.8.3.tgz#957c8e80000f9e5cc03d775e78b472d8954f4eeb" + dependencies: + "@webassemblyjs/ast" "1.4.3" + "@webassemblyjs/wasm-edit" "1.4.3" + "@webassemblyjs/wasm-parser" "1.4.3" + acorn "^5.0.0" + acorn-dynamic-import "^3.0.0" + ajv "^6.1.0" + ajv-keywords "^3.1.0" + chrome-trace-event "^0.1.1" + enhanced-resolve "^4.0.0" + eslint-scope "^3.7.1" + loader-runner "^2.3.0" + loader-utils "^1.1.0" + memory-fs "~0.4.1" + micromatch "^3.1.8" + mkdirp "~0.5.0" + neo-async "^2.5.0" + node-libs-browser "^2.0.0" + schema-utils "^0.4.4" + tapable "^1.0.0" + uglifyjs-webpack-plugin "^1.2.4" + watchpack "^1.5.0" + webpack-sources "^1.0.1" + +websocket-driver@>=0.5.1: + version "0.7.0" + resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" + dependencies: + http-parser-js ">=0.4.0" + websocket-extensions ">=0.1.1" + +websocket-extensions@>=0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" + +when@~3.6.x: + version "3.6.4" + resolved "https://registry.yarnpkg.com/when/-/when-3.6.4.tgz#473b517ec159e2b85005497a13983f095412e34e" + +which-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" + +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + +which@1, which@^1.1.1, which@^1.2.1, which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + dependencies: + isexe "^2.0.0" + +wide-align@^1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" + dependencies: + string-width "^1.0.2 || 2" + +window-size@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" + +wordwrap@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" + +wordwrap@^1.0.0, wordwrap@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + +wordwrap@~0.0.2: + version "0.0.3" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" + +worker-farm@^1.5.2: + version "1.6.0" + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.6.0.tgz#aecc405976fab5a95526180846f0dba288f3a4a0" + dependencies: + errno "~0.1.7" + +wrap-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + +ws@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.2.tgz#8a244fa052401e08c9886cf44a85189e1fd4067f" + dependencies: + options ">=0.0.5" + ultron "1.0.x" + +ws@^1.0.1: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.5.tgz#cbd9e6e75e09fc5d2c90015f21f0c40875e0dd51" + dependencies: + options ">=0.0.5" + ultron "1.0.x" + +wtf-8@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/wtf-8/-/wtf-8-1.0.0.tgz#392d8ba2d0f1c34d1ee2d630f15d0efb68e1048a" + +xml2js@0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.4.tgz#3111010003008ae19240eba17497b57c729c555d" + dependencies: + sax "0.6.x" + xmlbuilder ">=1.0.0" + +xml2js@^0.4.17: + version "0.4.19" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" + dependencies: + sax ">=0.6.0" + xmlbuilder "~9.0.1" + +xmlbuilder@>=1.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-10.0.0.tgz#c64e52f8ae097fe5fd46d1c38adaade071ee1b55" + +xmlbuilder@~9.0.1: + version "9.0.7" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" + +xmlhttprequest-ssl@1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.3.tgz#185a888c04eca46c3e4070d99f7b49de3528992d" + +xtend@^4.0.0, xtend@~4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" + +xxhashjs@^0.2.1: + version "0.2.2" + resolved "https://registry.yarnpkg.com/xxhashjs/-/xxhashjs-0.2.2.tgz#8a6251567621a1c46a5ae204da0249c7f8caa9d8" + dependencies: + cuint "^0.2.2" + +y18n@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" + +y18n@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" + +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + +yallist@^3.0.0, yallist@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.2.tgz#8452b4bb7e83c7c188d8041c1a837c773d6d8bb9" + +yargs-parser@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.0.0.tgz#c737c93de2567657750cb1f2c00be639fd19c994" + dependencies: + camelcase "^4.1.0" + +yargs-parser@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" + dependencies: + camelcase "^3.0.0" + +yargs-parser@^9.0.2: + version "9.0.2" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" + dependencies: + camelcase "^4.1.0" + +yargs@11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.0.0.tgz#c052931006c5eee74610e5fc0354bedfd08a201b" + dependencies: + cliui "^4.0.0" + decamelize "^1.1.1" + find-up "^2.1.0" + get-caller-file "^1.0.1" + os-locale "^2.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1" + yargs-parser "^9.0.2" + +yargs@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" + dependencies: + 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" + +yargs@~3.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" + dependencies: + camelcase "^1.0.2" + cliui "^2.1.0" + decamelize "^1.0.0" + window-size "0.1.0" + +yeast@0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419" + +yn@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/yn/-/yn-2.0.0.tgz#e5adabc8acf408f6385fc76495684c88e6af689a" + +zone.js@0.8.26: + version "0.8.26" + resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.8.26.tgz#7bdd72f7668c5a7ad6b118148b4ea39c59d08d2d" diff --git a/SystemKonkursow/4.2.1/aspnet-core/.gitattributes b/SystemKonkursow/4.2.1/aspnet-core/.gitattributes new file mode 100644 index 0000000..1ff0c42 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/.gitattributes @@ -0,0 +1,63 @@ +############################################################################### +# Set default behavior to automatically normalize line endings. +############################################################################### +* text=auto + +############################################################################### +# Set default behavior for command prompt diff. +# +# This is need for earlier builds of msysgit that does not have it on by +# default for csharp files. +# Note: This is only used by command line +############################################################################### +#*.cs diff=csharp + +############################################################################### +# Set the merge driver for project and solution files +# +# Merging from the command prompt will add diff markers to the files if there +# are conflicts (Merging from VS is not affected by the settings below, in VS +# the diff markers are never inserted). Diff markers may cause the following +# file extensions to fail to load in VS. An alternative would be to treat +# these files as binary and thus will always conflict and require user +# intervention with every merge. To do so, just uncomment the entries below +############################################################################### +#*.sln merge=binary +#*.csproj merge=binary +#*.vbproj merge=binary +#*.vcxproj merge=binary +#*.vcproj merge=binary +#*.dbproj merge=binary +#*.fsproj merge=binary +#*.lsproj merge=binary +#*.wixproj merge=binary +#*.modelproj merge=binary +#*.sqlproj merge=binary +#*.wwaproj merge=binary + +############################################################################### +# behavior for image files +# +# image files are treated as binary by default. +############################################################################### +#*.jpg binary +#*.png binary +#*.gif binary + +############################################################################### +# diff behavior for common document formats +# +# Convert binary document formats to text before diffing them. This feature +# is only available from the command line. Turn it on by uncommenting the +# entries below. +############################################################################### +#*.doc diff=astextplain +#*.DOC diff=astextplain +#*.docx diff=astextplain +#*.DOCX diff=astextplain +#*.dot diff=astextplain +#*.DOT diff=astextplain +#*.pdf diff=astextplain +#*.PDF diff=astextplain +#*.rtf diff=astextplain +#*.RTF diff=astextplain diff --git a/SystemKonkursow/4.2.1/aspnet-core/.gitignore b/SystemKonkursow/4.2.1/aspnet-core/.gitignore new file mode 100644 index 0000000..f1e3d20 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/.gitignore @@ -0,0 +1,252 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. + +# User-specific files +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ + +# Visual Studio 2015 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUNIT +*.VisualState.xml +TestResult.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# DNX +project.lock.json +artifacts/ + +*_i.c +*_p.c +*_i.h +*.ilk +*.meta +*.obj +*.pch +*.pdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# TODO: Comment the next line if you want to checkin your web deploy settings +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# The packages folder can be ignored because of Package Restore +**/packages/* +# except build/, which is used as an MSBuild target. +!**/packages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/packages/repositories.config +# NuGet v3's project.json files produces more ignoreable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.pfx +*.publishsettings +node_modules/ +orleans.codegen.cs + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm + +# SQL Server files +*.mdf +*.ldf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# JetBrains Rider +.idea/ +*.sln.iml diff --git a/SystemKonkursow/4.2.1/aspnet-core/SystemKonkursow.sln b/SystemKonkursow/4.2.1/aspnet-core/SystemKonkursow.sln new file mode 100644 index 0000000..73487ca --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/SystemKonkursow.sln @@ -0,0 +1,71 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26228.9 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{AFAA0841-BD93-466F-B8F4-FB4EEC86F1FC}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{F10AA149-2626-486E-85BB-9CD5365F3016}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SystemKonkursow.Core", "src\SystemKonkursow.Core\SystemKonkursow.Core.csproj", "{0FA75A5B-AB83-4FD0-B545-279774C01E87}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SystemKonkursow.Application", "src\SystemKonkursow.Application\SystemKonkursow.Application.csproj", "{3870C648-4AEA-4B85-BA3F-F2F63B96136A}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SystemKonkursow.Tests", "test\SystemKonkursow.Tests\SystemKonkursow.Tests.csproj", "{0D4C5D00-C144-4213-A007-4B8944113AB1}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SystemKonkursow.Migrator", "src\SystemKonkursow.Migrator\SystemKonkursow.Migrator.csproj", "{880B3591-E057-46FE-B525-10BD83828B93}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SystemKonkursow.Web.Host", "src\SystemKonkursow.Web.Host\SystemKonkursow.Web.Host.csproj", "{38E184BD-E874-4633-A947-AED4FDB73F40}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SystemKonkursow.Web.Core", "src\SystemKonkursow.Web.Core\SystemKonkursow.Web.Core.csproj", "{22CFE0D2-8DCA-42D7-AD7D-784C3862493F}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SystemKonkursow.EntityFrameworkCore", "src\SystemKonkursow.EntityFrameworkCore\SystemKonkursow.EntityFrameworkCore.csproj", "{E0580562-F8F2-4EBB-B07A-ABFC6F2C314F}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {0FA75A5B-AB83-4FD0-B545-279774C01E87}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0FA75A5B-AB83-4FD0-B545-279774C01E87}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0FA75A5B-AB83-4FD0-B545-279774C01E87}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0FA75A5B-AB83-4FD0-B545-279774C01E87}.Release|Any CPU.Build.0 = Release|Any CPU + {3870C648-4AEA-4B85-BA3F-F2F63B96136A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3870C648-4AEA-4B85-BA3F-F2F63B96136A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3870C648-4AEA-4B85-BA3F-F2F63B96136A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3870C648-4AEA-4B85-BA3F-F2F63B96136A}.Release|Any CPU.Build.0 = Release|Any CPU + {0D4C5D00-C144-4213-A007-4B8944113AB1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0D4C5D00-C144-4213-A007-4B8944113AB1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0D4C5D00-C144-4213-A007-4B8944113AB1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0D4C5D00-C144-4213-A007-4B8944113AB1}.Release|Any CPU.Build.0 = Release|Any CPU + {880B3591-E057-46FE-B525-10BD83828B93}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {880B3591-E057-46FE-B525-10BD83828B93}.Debug|Any CPU.Build.0 = Debug|Any CPU + {880B3591-E057-46FE-B525-10BD83828B93}.Release|Any CPU.ActiveCfg = Release|Any CPU + {880B3591-E057-46FE-B525-10BD83828B93}.Release|Any CPU.Build.0 = Release|Any CPU + {38E184BD-E874-4633-A947-AED4FDB73F40}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {38E184BD-E874-4633-A947-AED4FDB73F40}.Debug|Any CPU.Build.0 = Debug|Any CPU + {38E184BD-E874-4633-A947-AED4FDB73F40}.Release|Any CPU.ActiveCfg = Release|Any CPU + {38E184BD-E874-4633-A947-AED4FDB73F40}.Release|Any CPU.Build.0 = Release|Any CPU + {22CFE0D2-8DCA-42D7-AD7D-784C3862493F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {22CFE0D2-8DCA-42D7-AD7D-784C3862493F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {22CFE0D2-8DCA-42D7-AD7D-784C3862493F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {22CFE0D2-8DCA-42D7-AD7D-784C3862493F}.Release|Any CPU.Build.0 = Release|Any CPU + {E0580562-F8F2-4EBB-B07A-ABFC6F2C314F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E0580562-F8F2-4EBB-B07A-ABFC6F2C314F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E0580562-F8F2-4EBB-B07A-ABFC6F2C314F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E0580562-F8F2-4EBB-B07A-ABFC6F2C314F}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {0FA75A5B-AB83-4FD0-B545-279774C01E87} = {AFAA0841-BD93-466F-B8F4-FB4EEC86F1FC} + {3870C648-4AEA-4B85-BA3F-F2F63B96136A} = {AFAA0841-BD93-466F-B8F4-FB4EEC86F1FC} + {0D4C5D00-C144-4213-A007-4B8944113AB1} = {F10AA149-2626-486E-85BB-9CD5365F3016} + {880B3591-E057-46FE-B525-10BD83828B93} = {AFAA0841-BD93-466F-B8F4-FB4EEC86F1FC} + {38E184BD-E874-4633-A947-AED4FDB73F40} = {AFAA0841-BD93-466F-B8F4-FB4EEC86F1FC} + {22CFE0D2-8DCA-42D7-AD7D-784C3862493F} = {AFAA0841-BD93-466F-B8F4-FB4EEC86F1FC} + {E0580562-F8F2-4EBB-B07A-ABFC6F2C314F} = {AFAA0841-BD93-466F-B8F4-FB4EEC86F1FC} + EndGlobalSection +EndGlobal diff --git a/SystemKonkursow/4.2.1/aspnet-core/build/build-with-ng.ps1 b/SystemKonkursow/4.2.1/aspnet-core/build/build-with-ng.ps1 new file mode 100644 index 0000000..aec3dc1 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/build/build-with-ng.ps1 @@ -0,0 +1,57 @@ +# COMMON PATHS + +$buildFolder = (Get-Item -Path "./" -Verbose).FullName +$slnFolder = Join-Path $buildFolder "../" +$outputFolder = Join-Path $buildFolder "outputs" +$webHostFolder = Join-Path $slnFolder "src/SystemKonkursow.Web.Host" +$ngFolder = Join-Path $buildFolder "../../angular" + +## CLEAR ###################################################################### + +Remove-Item $outputFolder -Force -Recurse -ErrorAction Ignore +New-Item -Path $outputFolder -ItemType Directory + +## RESTORE NUGET PACKAGES ##################################################### + +Set-Location $slnFolder +dotnet restore + +## PUBLISH WEB HOST PROJECT ################################################### + +Set-Location $webHostFolder +dotnet publish --output (Join-Path $outputFolder "Host") + +## PUBLISH ANGULAR UI PROJECT ################################################# + +Set-Location $ngFolder +& yarn +& ng build -prod +Copy-Item (Join-Path $ngFolder "dist") (Join-Path $outputFolder "ng") -Recurse +Copy-Item (Join-Path $ngFolder "Dockerfile") (Join-Path $outputFolder "ng") + +# Change UI configuration +$ngConfigPath = Join-Path $outputFolder "ng/assets/appconfig.json" +(Get-Content $ngConfigPath) -replace "21021", "9901" | Set-Content $ngConfigPath +(Get-Content $ngConfigPath) -replace "4200", "9902" | Set-Content $ngConfigPath + +## CREATE DOCKER IMAGES ####################################################### + +# Host +Set-Location (Join-Path $outputFolder "Host") + +docker rmi abp/host -f +docker build -t abp/host . + +# Angular UI +Set-Location (Join-Path $outputFolder "ng") + +docker rmi abp/ng -f +docker build -t abp/ng . + +## DOCKER COMPOSE FILES ####################################################### + +Copy-Item (Join-Path $slnFolder "docker/ng/*.*") $outputFolder + +## FINALIZE ################################################################### + +Set-Location $outputFolder \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/aspnet-core/docker/ng/docker-compose.yml b/SystemKonkursow/4.2.1/aspnet-core/docker/ng/docker-compose.yml new file mode 100644 index 0000000..4eaba31 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/docker/ng/docker-compose.yml @@ -0,0 +1,17 @@ +version: '2' + +services: + + abp_host: + image: abp/host + environment: + - ASPNETCORE_ENVIRONMENT=Staging + ports: + - "9901:80" + volumes: + - "./Host-Logs:/app/App_Data/Logs" + + abp_ng: + image: abp/ng + ports: + - "9902:80" \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/aspnet-core/docker/ng/down.ps1 b/SystemKonkursow/4.2.1/aspnet-core/docker/ng/down.ps1 new file mode 100644 index 0000000..508a7c4 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/docker/ng/down.ps1 @@ -0,0 +1 @@ +docker-compose down -v --rmi local \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/aspnet-core/docker/ng/up.ps1 b/SystemKonkursow/4.2.1/aspnet-core/docker/ng/up.ps1 new file mode 100644 index 0000000..5177d11 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/docker/ng/up.ps1 @@ -0,0 +1 @@ +docker-compose up -d \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/AppConsts.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/AppConsts.cs new file mode 100644 index 0000000..d9016e5 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/AppConsts.cs @@ -0,0 +1,10 @@ +namespace SystemKonkursow +{ + public class AppConsts + { + ///

+ /// Default pass phrase for SimpleStringCipher decrypt/encrypt operations + /// + public const string DefaultPassPhrase = "gsKxGZ012HLL3MI5"; + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/AbpLoginResultTypeHelper.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/AbpLoginResultTypeHelper.cs new file mode 100644 index 0000000..fe80a7a --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/AbpLoginResultTypeHelper.cs @@ -0,0 +1,64 @@ +using System; +using Abp; +using Abp.Authorization; +using Abp.Dependency; +using Abp.UI; + +namespace SystemKonkursow.Authorization +{ + public class AbpLoginResultTypeHelper : AbpServiceBase, ITransientDependency + { + public AbpLoginResultTypeHelper() + { + LocalizationSourceName = SystemKonkursowConsts.LocalizationSourceName; + } + + public Exception CreateExceptionForFailedLoginAttempt(AbpLoginResultType result, string usernameOrEmailAddress, string tenancyName) + { + switch (result) + { + case AbpLoginResultType.Success: + return new Exception("Don't call this method with a success result!"); + case AbpLoginResultType.InvalidUserNameOrEmailAddress: + case AbpLoginResultType.InvalidPassword: + return new UserFriendlyException(L("LoginFailed"), L("InvalidUserNameOrPassword")); + case AbpLoginResultType.InvalidTenancyName: + return new UserFriendlyException(L("LoginFailed"), L("ThereIsNoTenantDefinedWithName{0}", tenancyName)); + case AbpLoginResultType.TenantIsNotActive: + return new UserFriendlyException(L("LoginFailed"), L("TenantIsNotActive", tenancyName)); + case AbpLoginResultType.UserIsNotActive: + return new UserFriendlyException(L("LoginFailed"), L("UserIsNotActiveAndCanNotLogin", usernameOrEmailAddress)); + case AbpLoginResultType.UserEmailIsNotConfirmed: + return new UserFriendlyException(L("LoginFailed"), L("UserEmailIsNotConfirmedAndCanNotLogin")); + case AbpLoginResultType.LockedOut: + return new UserFriendlyException(L("LoginFailed"), L("UserLockedOutMessage")); + default: // Can not fall to default actually. But other result types can be added in the future and we may forget to handle it + Logger.Warn("Unhandled login fail reason: " + result); + return new UserFriendlyException(L("LoginFailed")); + } + } + + public string CreateLocalizedMessageForFailedLoginAttempt(AbpLoginResultType result, string usernameOrEmailAddress, string tenancyName) + { + switch (result) + { + case AbpLoginResultType.Success: + throw new Exception("Don't call this method with a success result!"); + case AbpLoginResultType.InvalidUserNameOrEmailAddress: + case AbpLoginResultType.InvalidPassword: + return L("InvalidUserNameOrPassword"); + case AbpLoginResultType.InvalidTenancyName: + return L("ThereIsNoTenantDefinedWithName{0}", tenancyName); + case AbpLoginResultType.TenantIsNotActive: + return L("TenantIsNotActive", tenancyName); + case AbpLoginResultType.UserIsNotActive: + return L("UserIsNotActiveAndCanNotLogin", usernameOrEmailAddress); + case AbpLoginResultType.UserEmailIsNotConfirmed: + return L("UserEmailIsNotConfirmedAndCanNotLogin"); + default: // Can not fall to default actually. But other result types can be added in the future and we may forget to handle it + Logger.Warn("Unhandled login fail reason: " + result); + return L("LoginFailed"); + } + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/AccountAppService.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/AccountAppService.cs new file mode 100644 index 0000000..c3b2582 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/AccountAppService.cs @@ -0,0 +1,54 @@ +using System.Threading.Tasks; +using Abp.Configuration; +using Abp.Zero.Configuration; +using SystemKonkursow.Authorization.Accounts.Dto; +using SystemKonkursow.Authorization.Users; + +namespace SystemKonkursow.Authorization.Accounts +{ + public class AccountAppService : SystemKonkursowAppServiceBase, IAccountAppService + { + private readonly UserRegistrationManager _userRegistrationManager; + + public AccountAppService( + UserRegistrationManager userRegistrationManager) + { + _userRegistrationManager = userRegistrationManager; + } + + public async Task IsTenantAvailable(IsTenantAvailableInput input) + { + var tenant = await TenantManager.FindByTenancyNameAsync(input.TenancyName); + if (tenant == null) + { + return new IsTenantAvailableOutput(TenantAvailabilityState.NotFound); + } + + if (!tenant.IsActive) + { + return new IsTenantAvailableOutput(TenantAvailabilityState.InActive); + } + + return new IsTenantAvailableOutput(TenantAvailabilityState.Available, tenant.Id); + } + + public async Task Register(RegisterInput input) + { + var user = await _userRegistrationManager.RegisterAsync( + input.Name, + input.Surname, + input.EmailAddress, + input.UserName, + input.Password, + true // Assumed email address is always confirmed. Change this if you want to implement email confirmation. + ); + + var isEmailConfirmationRequiredForLogin = await SettingManager.GetSettingValueAsync(AbpZeroSettingNames.UserManagement.IsEmailConfirmationRequiredForLogin); + + return new RegisterOutput + { + CanLogin = user.IsActive && (user.IsEmailConfirmed || !isEmailConfirmationRequiredForLogin) + }; + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/IsTenantAvailableInput.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/IsTenantAvailableInput.cs new file mode 100644 index 0000000..4b1e0eb --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/IsTenantAvailableInput.cs @@ -0,0 +1,12 @@ +using System.ComponentModel.DataAnnotations; +using Abp.MultiTenancy; + +namespace SystemKonkursow.Authorization.Accounts.Dto +{ + public class IsTenantAvailableInput + { + [Required] + [StringLength(AbpTenantBase.MaxTenancyNameLength)] + public string TenancyName { get; set; } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/IsTenantAvailableOutput.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/IsTenantAvailableOutput.cs new file mode 100644 index 0000000..2e9de6d --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/IsTenantAvailableOutput.cs @@ -0,0 +1,19 @@ +namespace SystemKonkursow.Authorization.Accounts.Dto +{ + public class IsTenantAvailableOutput + { + public TenantAvailabilityState State { get; set; } + + public int? TenantId { get; set; } + + public IsTenantAvailableOutput() + { + } + + public IsTenantAvailableOutput(TenantAvailabilityState state, int? tenantId = null) + { + State = state; + TenantId = tenantId; + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/RegisterInput.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/RegisterInput.cs new file mode 100644 index 0000000..49954fc --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/RegisterInput.cs @@ -0,0 +1,48 @@ +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using Abp.Auditing; +using Abp.Authorization.Users; +using Abp.Extensions; +using SystemKonkursow.Validation; + +namespace SystemKonkursow.Authorization.Accounts.Dto +{ + public class RegisterInput : IValidatableObject + { + [Required] + [StringLength(AbpUserBase.MaxNameLength)] + public string Name { get; set; } + + [Required] + [StringLength(AbpUserBase.MaxSurnameLength)] + public string Surname { get; set; } + + [Required] + [StringLength(AbpUserBase.MaxUserNameLength)] + public string UserName { get; set; } + + [Required] + [EmailAddress] + [StringLength(AbpUserBase.MaxEmailAddressLength)] + public string EmailAddress { get; set; } + + [Required] + [StringLength(AbpUserBase.MaxPlainPasswordLength)] + [DisableAuditing] + public string Password { get; set; } + + [DisableAuditing] + public string CaptchaResponse { get; set; } + + public IEnumerable Validate(ValidationContext validationContext) + { + if (!UserName.IsNullOrEmpty()) + { + if (!UserName.Equals(EmailAddress) && ValidationHelper.IsEmail(UserName)) + { + yield return new ValidationResult("Username cannot be an email address unless it's the same as your email address!"); + } + } + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/RegisterOutput.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/RegisterOutput.cs new file mode 100644 index 0000000..ca097bc --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/RegisterOutput.cs @@ -0,0 +1,7 @@ +namespace SystemKonkursow.Authorization.Accounts.Dto +{ + public class RegisterOutput + { + public bool CanLogin { get; set; } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/TenantAvailabilityState.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/TenantAvailabilityState.cs new file mode 100644 index 0000000..64b1910 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/Dto/TenantAvailabilityState.cs @@ -0,0 +1,9 @@ +namespace SystemKonkursow.Authorization.Accounts.Dto +{ + public enum TenantAvailabilityState + { + Available = 1, + InActive, + NotFound + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/IAccountAppService.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/IAccountAppService.cs new file mode 100644 index 0000000..c848525 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Authorization/Accounts/IAccountAppService.cs @@ -0,0 +1,13 @@ +using System.Threading.Tasks; +using Abp.Application.Services; +using SystemKonkursow.Authorization.Accounts.Dto; + +namespace SystemKonkursow.Authorization.Accounts +{ + public interface IAccountAppService : IApplicationService + { + Task IsTenantAvailable(IsTenantAvailableInput input); + + Task Register(RegisterInput input); + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/ConfigurationAppService.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/ConfigurationAppService.cs new file mode 100644 index 0000000..aab5642 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/ConfigurationAppService.cs @@ -0,0 +1,16 @@ +using System.Threading.Tasks; +using Abp.Authorization; +using Abp.Runtime.Session; +using SystemKonkursow.Configuration.Dto; + +namespace SystemKonkursow.Configuration +{ + [AbpAuthorize] + public class ConfigurationAppService : SystemKonkursowAppServiceBase, IConfigurationAppService + { + public async Task ChangeUiTheme(ChangeUiThemeInput input) + { + await SettingManager.ChangeSettingForUserAsync(AbpSession.ToUserIdentifier(), AppSettingNames.UiTheme, input.Theme); + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Dto/ChangeUiThemeInput.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Dto/ChangeUiThemeInput.cs new file mode 100644 index 0000000..bd9c01d --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Dto/ChangeUiThemeInput.cs @@ -0,0 +1,11 @@ +using System.ComponentModel.DataAnnotations; + +namespace SystemKonkursow.Configuration.Dto +{ + public class ChangeUiThemeInput + { + [Required] + [StringLength(32)] + public string Theme { get; set; } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/IConfigurationAppService.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/IConfigurationAppService.cs new file mode 100644 index 0000000..5f6f0bb --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/IConfigurationAppService.cs @@ -0,0 +1,10 @@ +using System.Threading.Tasks; +using SystemKonkursow.Configuration.Dto; + +namespace SystemKonkursow.Configuration +{ + public interface IConfigurationAppService + { + Task ChangeUiTheme(ChangeUiThemeInput input); + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Ui/UiThemeInfo.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Ui/UiThemeInfo.cs new file mode 100644 index 0000000..2f376da --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Ui/UiThemeInfo.cs @@ -0,0 +1,14 @@ +namespace SystemKonkursow.Configuration.Ui +{ + public class UiThemeInfo + { + public string Name { get; } + public string CssClass { get; } + + public UiThemeInfo(string name, string cssClass) + { + Name = name; + CssClass = cssClass; + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Ui/UiThemes.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Ui/UiThemes.cs new file mode 100644 index 0000000..8ae7e39 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Configuration/Ui/UiThemes.cs @@ -0,0 +1,36 @@ +using System.Collections.Generic; + +namespace SystemKonkursow.Configuration.Ui +{ + public static class UiThemes + { + public static List All { get; } + + static UiThemes() + { + All = new List + { + new UiThemeInfo("Red", "red"), + new UiThemeInfo("Pink", "pink"), + new UiThemeInfo("Purple", "purple"), + new UiThemeInfo("Deep Purple", "deep-purple"), + new UiThemeInfo("Indigo", "indigo"), + new UiThemeInfo("Blue", "blue"), + new UiThemeInfo("Light Blue", "light-blue"), + new UiThemeInfo("Cyan", "cyan"), + new UiThemeInfo("Teal", "teal"), + new UiThemeInfo("Green", "green"), + new UiThemeInfo("Light Green", "light-green"), + new UiThemeInfo("Lime", "lime"), + new UiThemeInfo("Yellow", "yellow"), + new UiThemeInfo("Amber", "amber"), + new UiThemeInfo("Orange", "orange"), + new UiThemeInfo("Deep Orange", "deep-orange"), + new UiThemeInfo("Brown", "brown"), + new UiThemeInfo("Grey", "grey"), + new UiThemeInfo("Blue Grey", "blue-grey"), + new UiThemeInfo("Black", "black") + }; + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/Dto/CreateTenantDto.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/Dto/CreateTenantDto.cs new file mode 100644 index 0000000..2db2723 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/Dto/CreateTenantDto.cs @@ -0,0 +1,29 @@ +using System.ComponentModel.DataAnnotations; +using Abp.Authorization.Users; +using Abp.AutoMapper; +using Abp.MultiTenancy; + +namespace SystemKonkursow.MultiTenancy.Dto +{ + [AutoMapTo(typeof(Tenant))] + public class CreateTenantDto + { + [Required] + [StringLength(AbpTenantBase.MaxTenancyNameLength)] + [RegularExpression(AbpTenantBase.TenancyNameRegex)] + public string TenancyName { get; set; } + + [Required] + [StringLength(AbpTenantBase.MaxNameLength)] + public string Name { get; set; } + + [Required] + [StringLength(AbpUserBase.MaxEmailAddressLength)] + public string AdminEmailAddress { get; set; } + + [StringLength(AbpTenantBase.MaxConnectionStringLength)] + public string ConnectionString { get; set; } + + public bool IsActive {get; set;} + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/Dto/TenantDto.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/Dto/TenantDto.cs new file mode 100644 index 0000000..2377278 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/Dto/TenantDto.cs @@ -0,0 +1,22 @@ +using System.ComponentModel.DataAnnotations; +using Abp.Application.Services.Dto; +using Abp.AutoMapper; +using Abp.MultiTenancy; + +namespace SystemKonkursow.MultiTenancy.Dto +{ + [AutoMapFrom(typeof(Tenant))] + public class TenantDto : EntityDto + { + [Required] + [StringLength(AbpTenantBase.MaxTenancyNameLength)] + [RegularExpression(AbpTenantBase.TenancyNameRegex)] + public string TenancyName { get; set; } + + [Required] + [StringLength(AbpTenantBase.MaxNameLength)] + public string Name { get; set; } + + public bool IsActive {get; set;} + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/ITenantAppService.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/ITenantAppService.cs new file mode 100644 index 0000000..0ed1bd3 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/ITenantAppService.cs @@ -0,0 +1,10 @@ +using Abp.Application.Services; +using Abp.Application.Services.Dto; +using SystemKonkursow.MultiTenancy.Dto; + +namespace SystemKonkursow.MultiTenancy +{ + public interface ITenantAppService : IAsyncCrudAppService + { + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/TenantAppService.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/TenantAppService.cs new file mode 100644 index 0000000..861052d --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/MultiTenancy/TenantAppService.cs @@ -0,0 +1,117 @@ +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Identity; +using Abp.Application.Services; +using Abp.Application.Services.Dto; +using Abp.Authorization; +using Abp.Domain.Repositories; +using Abp.Extensions; +using Abp.IdentityFramework; +using Abp.MultiTenancy; +using Abp.Runtime.Security; +using SystemKonkursow.Authorization; +using SystemKonkursow.Authorization.Roles; +using SystemKonkursow.Authorization.Users; +using SystemKonkursow.Editions; +using SystemKonkursow.MultiTenancy.Dto; + +namespace SystemKonkursow.MultiTenancy +{ + [AbpAuthorize(PermissionNames.Pages_Tenants)] + public class TenantAppService : AsyncCrudAppService, ITenantAppService + { + private readonly TenantManager _tenantManager; + private readonly EditionManager _editionManager; + private readonly UserManager _userManager; + private readonly RoleManager _roleManager; + private readonly IAbpZeroDbMigrator _abpZeroDbMigrator; + private readonly IPasswordHasher _passwordHasher; + + public TenantAppService( + IRepository repository, + TenantManager tenantManager, + EditionManager editionManager, + UserManager userManager, + RoleManager roleManager, + IAbpZeroDbMigrator abpZeroDbMigrator, + IPasswordHasher passwordHasher) + : base(repository) + { + _tenantManager = tenantManager; + _editionManager = editionManager; + _userManager = userManager; + _roleManager = roleManager; + _abpZeroDbMigrator = abpZeroDbMigrator; + _passwordHasher = passwordHasher; + } + + public override async Task Create(CreateTenantDto input) + { + CheckCreatePermission(); + + // Create tenant + var tenant = ObjectMapper.Map(input); + tenant.ConnectionString = input.ConnectionString.IsNullOrEmpty() + ? null + : SimpleStringCipher.Instance.Encrypt(input.ConnectionString); + + var defaultEdition = await _editionManager.FindByNameAsync(EditionManager.DefaultEditionName); + if (defaultEdition != null) + { + tenant.EditionId = defaultEdition.Id; + } + + await _tenantManager.CreateAsync(tenant); + await CurrentUnitOfWork.SaveChangesAsync(); // To get new tenant's id. + + // Create tenant database + _abpZeroDbMigrator.CreateOrMigrateForTenant(tenant); + + // We are working entities of new tenant, so changing tenant filter + using (CurrentUnitOfWork.SetTenantId(tenant.Id)) + { + // Create static roles for new tenant + CheckErrors(await _roleManager.CreateStaticRoles(tenant.Id)); + + await CurrentUnitOfWork.SaveChangesAsync(); // To get static role ids + + // Grant all permissions to admin role + var adminRole = _roleManager.Roles.Single(r => r.Name == StaticRoleNames.Tenants.Admin); + await _roleManager.GrantAllPermissionsAsync(adminRole); + + // Create admin user for the tenant + var adminUser = User.CreateTenantAdminUser(tenant.Id, input.AdminEmailAddress); + await _userManager.InitializeOptionsAsync(tenant.Id); + CheckErrors(await _userManager.CreateAsync(adminUser, User.DefaultPassword)); + await CurrentUnitOfWork.SaveChangesAsync(); // To get admin user's id + + // Assign admin user to role! + CheckErrors(await _userManager.AddToRoleAsync(adminUser, adminRole.Name)); + await CurrentUnitOfWork.SaveChangesAsync(); + } + + return MapToEntityDto(tenant); + } + + protected override void MapToEntity(TenantDto updateInput, Tenant entity) + { + // Manually mapped since TenantDto contains non-editable properties too. + entity.Name = updateInput.Name; + entity.TenancyName = updateInput.TenancyName; + entity.IsActive = updateInput.IsActive; + } + + public override async Task Delete(EntityDto input) + { + CheckDeletePermission(); + + var tenant = await _tenantManager.GetByIdAsync(input.Id); + await _tenantManager.DeleteAsync(tenant); + } + + private void CheckErrors(IdentityResult identityResult) + { + identityResult.CheckErrors(LocalizationManager); + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Net/MimeTypes/MimeTypeNames.cs b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Net/MimeTypes/MimeTypeNames.cs new file mode 100644 index 0000000..acd5fa9 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/src/SystemKonkursow.Application/Net/MimeTypes/MimeTypeNames.cs @@ -0,0 +1,311 @@ +using System; + +namespace SystemKonkursow.Net.MimeTypes +{ + /* Copied from: + * http://stackoverflow.com/questions/10362140/asp-mvc-are-there-any-constants-for-the-default-content-types */ + + /// + /// Common mime types. + /// + public static class MimeTypeNames + { + ///Used to denote the encoding necessary for files containing JavaScript source code. The alternative MIME type for this file type is text/javascript. + public const string ApplicationXJavascript = "application/x-javascript"; + + ///24bit Linear PCM audio at 8-48kHz, 1-N channels; Defined in RFC 3190 + public const string AudioL24 = "audio/L24"; + + ///Adobe Flash files for example with the extension .swf + public const string ApplicationXShockwaveFlash = "application/x-shockwave-flash"; + + ///Arbitrary binary data.[5] Generally speaking this type identifies files that are not associated with a specific application. Contrary to past assumptions by software packages such as Apache this is not a type that should be applied to unknown files. In such a case, a server or application should not indicate a content type, as it may be incorrect, but rather, should omit the type in order to allow the recipient to guess the type.[6] + public const string ApplicationOctetStream = "application/octet-stream"; + + ///Atom feeds + public const string ApplicationAtomXml = "application/atom+xml"; + + ///Cascading Style Sheets; Defined in RFC 2318 + public const string TextCss = "text/css"; + + ///commands; subtype resident in Gecko browsers like Firefox 3.5 + public const string TextCmd = "text/cmd"; + + ///Comma-separated values; Defined in RFC 4180 + public const string TextCsv = "text/csv"; + + ///deb (file format), a software package format used by the Debian project + public const string ApplicationXDeb = "application/x-deb"; + + ///Defined in RFC 1847 + public const string MultipartEncrypted = "multipart/encrypted"; + + ///Defined in RFC 1847 + public const string MultipartSigned = "multipart/signed"; + + ///Defined in RFC 2616 + public const string MessageHttp = "message/http"; + + ///Defined in RFC 4735 + public const string ModelExample = "model/example"; + + ///device-independent document in DVI format + public const string ApplicationXDvi = "application/x-dvi"; + + ///DTD files; Defined by RFC 3023 + public const string ApplicationXmlDtd = "application/xml-dtd"; + + ///ECMAScript/JavaScript; Defined in RFC 4329 (equivalent to application/ecmascript but with looser processing rules) It is not accepted in IE 8 or earlier - text/javascript is accepted but it is defined as obsolete in RFC 4329. The "type" attribute of the + + + + + + + diff --git a/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/DependencyInjection/ServiceCollectionRegistrar.cs b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/DependencyInjection/ServiceCollectionRegistrar.cs new file mode 100644 index 0000000..9985dbc --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/DependencyInjection/ServiceCollectionRegistrar.cs @@ -0,0 +1,35 @@ +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.Extensions.DependencyInjection; +using Castle.MicroKernel.Registration; +using Castle.Windsor.MsDependencyInjection; +using Abp.Dependency; +using SystemKonkursow.EntityFrameworkCore; +using SystemKonkursow.Identity; + +namespace SystemKonkursow.Tests.DependencyInjection +{ + public static class ServiceCollectionRegistrar + { + public static void Register(IIocManager iocManager) + { + var services = new ServiceCollection(); + + IdentityRegistrar.Register(services); + + services.AddEntityFrameworkInMemoryDatabase(); + + var serviceProvider = WindsorRegistrationHelper.CreateServiceProvider(iocManager.IocContainer, services); + + var builder = new DbContextOptionsBuilder(); + builder.UseInMemoryDatabase(Guid.NewGuid().ToString()).UseInternalServiceProvider(serviceProvider); + + iocManager.IocContainer.Register( + Component + .For>() + .Instance(builder.Options) + .LifestyleSingleton() + ); + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/MultiTenantFactAttribute.cs b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/MultiTenantFactAttribute.cs new file mode 100644 index 0000000..bacb7d5 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/MultiTenantFactAttribute.cs @@ -0,0 +1,15 @@ +using Xunit; + +namespace SystemKonkursow.Tests +{ + public sealed class MultiTenantFactAttribute : FactAttribute + { + public MultiTenantFactAttribute() + { + if (!SystemKonkursowConsts.MultiTenancyEnabled) + { + Skip = "MultiTenancy is disabled."; + } + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Properties/AssemblyInfo.cs b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..d06fb8b --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Properties/AssemblyInfo.cs @@ -0,0 +1,18 @@ +using System.Reflection; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("SystemKonkursow.Tests")] +[assembly: AssemblyTrademark("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("0d4c5d00-c144-4213-a007-4b8944113ab1")] diff --git a/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Sessions/SessionAppService_Tests.cs b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Sessions/SessionAppService_Tests.cs new file mode 100644 index 0000000..030f079 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Sessions/SessionAppService_Tests.cs @@ -0,0 +1,52 @@ +using System.Threading.Tasks; +using Shouldly; +using Xunit; +using SystemKonkursow.Sessions; + +namespace SystemKonkursow.Tests.Sessions +{ + public class SessionAppService_Tests : SystemKonkursowTestBase + { + private readonly ISessionAppService _sessionAppService; + + public SessionAppService_Tests() + { + _sessionAppService = Resolve(); + } + + [MultiTenantFact] + public async Task Should_Get_Current_User_When_Logged_In_As_Host() + { + // Arrange + LoginAsHostAdmin(); + + // Act + var output = await _sessionAppService.GetCurrentLoginInformations(); + + // Assert + var currentUser = await GetCurrentUserAsync(); + output.User.ShouldNotBe(null); + output.User.Name.ShouldBe(currentUser.Name); + output.User.Surname.ShouldBe(currentUser.Surname); + + output.Tenant.ShouldBe(null); + } + + [Fact] + public async Task Should_Get_Current_User_And_Tenant_When_Logged_In_As_Tenant() + { + // Act + var output = await _sessionAppService.GetCurrentLoginInformations(); + + // Assert + var currentUser = await GetCurrentUserAsync(); + var currentTenant = await GetCurrentTenantAsync(); + + output.User.ShouldNotBe(null); + output.User.Name.ShouldBe(currentUser.Name); + + output.Tenant.ShouldNotBe(null); + output.Tenant.Name.ShouldBe(currentTenant.Name); + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursow.Tests.csproj b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursow.Tests.csproj new file mode 100644 index 0000000..d84bec2 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursow.Tests.csproj @@ -0,0 +1,39 @@ + + + 1.0.0.0 + netcoreapp2.1 + $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; + SystemKonkursow.Tests + SystemKonkursow.Tests + true + false + false + false + + + + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers + + + + + + + + Always + + + + + + \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursowTestBase.cs b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursowTestBase.cs new file mode 100644 index 0000000..7d3b651 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursowTestBase.cs @@ -0,0 +1,210 @@ +using System; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.EntityFrameworkCore; +using Abp; +using Abp.Authorization.Users; +using Abp.Events.Bus; +using Abp.Events.Bus.Entities; +using Abp.MultiTenancy; +using Abp.Runtime.Session; +using Abp.TestBase; +using SystemKonkursow.Authorization.Users; +using SystemKonkursow.EntityFrameworkCore; +using SystemKonkursow.EntityFrameworkCore.Seed.Host; +using SystemKonkursow.EntityFrameworkCore.Seed.Tenants; +using SystemKonkursow.MultiTenancy; + +namespace SystemKonkursow.Tests +{ + public abstract class SystemKonkursowTestBase : AbpIntegratedTestBase + { + protected SystemKonkursowTestBase() + { + void NormalizeDbContext(SystemKonkursowDbContext context) + { + context.EntityChangeEventHelper = NullEntityChangeEventHelper.Instance; + context.EventBus = NullEventBus.Instance; + context.SuppressAutoSetTenantId = true; + } + + // Seed initial data for host + AbpSession.TenantId = null; + UsingDbContext(context => + { + NormalizeDbContext(context); + new InitialHostDbBuilder(context).Create(); + new DefaultTenantBuilder(context).Create(); + }); + + // Seed initial data for default tenant + AbpSession.TenantId = 1; + UsingDbContext(context => + { + NormalizeDbContext(context); + new TenantRoleAndUserBuilder(context, 1).Create(); + }); + + LoginAsDefaultTenantAdmin(); + } + + #region UsingDbContext + + protected IDisposable UsingTenantId(int? tenantId) + { + var previousTenantId = AbpSession.TenantId; + AbpSession.TenantId = tenantId; + return new DisposeAction(() => AbpSession.TenantId = previousTenantId); + } + + protected void UsingDbContext(Action action) + { + UsingDbContext(AbpSession.TenantId, action); + } + + protected Task UsingDbContextAsync(Func action) + { + return UsingDbContextAsync(AbpSession.TenantId, action); + } + + protected T UsingDbContext(Func func) + { + return UsingDbContext(AbpSession.TenantId, func); + } + + protected Task UsingDbContextAsync(Func> func) + { + return UsingDbContextAsync(AbpSession.TenantId, func); + } + + protected void UsingDbContext(int? tenantId, Action action) + { + using (UsingTenantId(tenantId)) + { + using (var context = LocalIocManager.Resolve()) + { + action(context); + context.SaveChanges(); + } + } + } + + protected async Task UsingDbContextAsync(int? tenantId, Func action) + { + using (UsingTenantId(tenantId)) + { + using (var context = LocalIocManager.Resolve()) + { + await action(context); + await context.SaveChangesAsync(); + } + } + } + + protected T UsingDbContext(int? tenantId, Func func) + { + T result; + + using (UsingTenantId(tenantId)) + { + using (var context = LocalIocManager.Resolve()) + { + result = func(context); + context.SaveChanges(); + } + } + + return result; + } + + protected async Task UsingDbContextAsync(int? tenantId, Func> func) + { + T result; + + using (UsingTenantId(tenantId)) + { + using (var context = LocalIocManager.Resolve()) + { + result = await func(context); + await context.SaveChangesAsync(); + } + } + + return result; + } + + #endregion + + #region Login + + protected void LoginAsHostAdmin() + { + LoginAsHost(AbpUserBase.AdminUserName); + } + + protected void LoginAsDefaultTenantAdmin() + { + LoginAsTenant(AbpTenantBase.DefaultTenantName, AbpUserBase.AdminUserName); + } + + protected void LoginAsHost(string userName) + { + AbpSession.TenantId = null; + + var user = + UsingDbContext( + context => + context.Users.FirstOrDefault(u => u.TenantId == AbpSession.TenantId && u.UserName == userName)); + if (user == null) + { + throw new Exception("There is no user: " + userName + " for host."); + } + + AbpSession.UserId = user.Id; + } + + protected void LoginAsTenant(string tenancyName, string userName) + { + var tenant = UsingDbContext(context => context.Tenants.FirstOrDefault(t => t.TenancyName == tenancyName)); + if (tenant == null) + { + throw new Exception("There is no tenant: " + tenancyName); + } + + AbpSession.TenantId = tenant.Id; + + var user = + UsingDbContext( + context => + context.Users.FirstOrDefault(u => u.TenantId == AbpSession.TenantId && u.UserName == userName)); + if (user == null) + { + throw new Exception("There is no user: " + userName + " for tenant: " + tenancyName); + } + + AbpSession.UserId = user.Id; + } + + #endregion + + /// + /// Gets current user if is not null. + /// Throws exception if it's null. + /// + protected async Task GetCurrentUserAsync() + { + var userId = AbpSession.GetUserId(); + return await UsingDbContext(context => context.Users.SingleAsync(u => u.Id == userId)); + } + + /// + /// Gets current tenant if is not null. + /// Throws exception if there is no current tenant. + /// + protected async Task GetCurrentTenantAsync() + { + var tenantId = AbpSession.GetTenantId(); + return await UsingDbContext(context => context.Tenants.SingleAsync(t => t.Id == tenantId)); + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursowTestModule.cs b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursowTestModule.cs new file mode 100644 index 0000000..6aa9594 --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/SystemKonkursowTestModule.cs @@ -0,0 +1,62 @@ +using System; +using Castle.MicroKernel.Registration; +using NSubstitute; +using Abp.AutoMapper; +using Abp.Dependency; +using Abp.Modules; +using Abp.Configuration.Startup; +using Abp.Net.Mail; +using Abp.TestBase; +using Abp.Zero.Configuration; +using Abp.Zero.EntityFrameworkCore; +using SystemKonkursow.EntityFrameworkCore; +using SystemKonkursow.Tests.DependencyInjection; + +namespace SystemKonkursow.Tests +{ + [DependsOn( + typeof(SystemKonkursowApplicationModule), + typeof(SystemKonkursowEntityFrameworkModule), + typeof(AbpTestBaseModule) + )] + public class SystemKonkursowTestModule : AbpModule + { + public SystemKonkursowTestModule(SystemKonkursowEntityFrameworkModule abpProjectNameEntityFrameworkModule) + { + abpProjectNameEntityFrameworkModule.SkipDbContextRegistration = true; + abpProjectNameEntityFrameworkModule.SkipDbSeed = true; + } + + public override void PreInitialize() + { + Configuration.UnitOfWork.Timeout = TimeSpan.FromMinutes(30); + Configuration.UnitOfWork.IsTransactional = false; + + // Disable static mapper usage since it breaks unit tests (see https://github.com/aspnetboilerplate/aspnetboilerplate/issues/2052) + Configuration.Modules.AbpAutoMapper().UseStaticMapper = false; + + Configuration.BackgroundJobs.IsJobExecutionEnabled = false; + + // Use database for language management + Configuration.Modules.Zero().LanguageManagement.EnableDbLocalization(); + + RegisterFakeService>(); + + Configuration.ReplaceService(DependencyLifeStyle.Transient); + } + + public override void Initialize() + { + ServiceCollectionRegistrar.Register(IocManager); + } + + private void RegisterFakeService() where TService : class + { + IocManager.IocContainer.Register( + Component.For() + .UsingFactoryMethod(() => Substitute.For()) + .LifestyleSingleton() + ); + } + } +} diff --git a/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Users/UserAppService_Tests.cs b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Users/UserAppService_Tests.cs new file mode 100644 index 0000000..103fa1e --- /dev/null +++ b/SystemKonkursow/4.2.1/aspnet-core/test/SystemKonkursow.Tests/Users/UserAppService_Tests.cs @@ -0,0 +1,52 @@ +using System.Threading.Tasks; +using Microsoft.EntityFrameworkCore; +using Shouldly; +using Xunit; +using Abp.Application.Services.Dto; +using SystemKonkursow.Users; +using SystemKonkursow.Users.Dto; + +namespace SystemKonkursow.Tests.Users +{ + public class UserAppService_Tests : SystemKonkursowTestBase + { + private readonly IUserAppService _userAppService; + + public UserAppService_Tests() + { + _userAppService = Resolve(); + } + + [Fact] + public async Task GetUsers_Test() + { + // Act + var output = await _userAppService.GetAll(new PagedResultRequestDto{MaxResultCount=20, SkipCount=0} ); + + // Assert + output.Items.Count.ShouldBeGreaterThan(0); + } + + [Fact] + public async Task CreateUser_Test() + { + // Act + await _userAppService.Create( + new CreateUserDto + { + EmailAddress = "john@volosoft.com", + IsActive = true, + Name = "John", + Surname = "Nash", + Password = "123qwe", + UserName = "john.nash" + }); + + await UsingDbContextAsync(async context => + { + var johnNashUser = await context.Users.FirstOrDefaultAsync(u => u.UserName == "john.nash"); + johnNashUser.ShouldNotBeNull(); + }); + } + } +}