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 0000000..3ca00b6 Binary files /dev/null and b/SystemKonkursow/4.2.1/_screenshots/Thumbs.db differ 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 0000000..b4f3940 Binary files /dev/null and b/SystemKonkursow/4.2.1/_screenshots/ui-home.png differ 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 0000000..1530042 Binary files /dev/null and b/SystemKonkursow/4.2.1/_screenshots/ui-login.png differ diff --git a/SystemKonkursow/4.2.1/_screenshots/ui-user-create-modal.png b/SystemKonkursow/4.2.1/_screenshots/ui-user-create-modal.png new file mode 100644 index 0000000..1497ea2 Binary files /dev/null and b/SystemKonkursow/4.2.1/_screenshots/ui-user-create-modal.png differ 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 0000000..5e21058 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/app-logo-small.png differ 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 0000000..870072d Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/-2n2p-_Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2 differ 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 0000000..e1202e2 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/77FXFjRbGzN4aCrSFhlh3hJtnKITppOI_IvcXXDNrsc.woff2 differ 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 0000000..ee2737a Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/97uahxiqZRoncBaCEI3aWxJtnKITppOI_IvcXXDNrsc.woff2 differ 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 0000000..e44dd20 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/CWB0XYA8bzo0kSThX0UTuA.woff2 differ 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 0000000..719f810 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/Fcx7Wwv8OzT71A3E1XOAjvesZW2xOQ-xsNqO47m55DA.woff2 differ 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 0000000..8857742 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/NdF9MtnOpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2 differ 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 0000000..95629d2 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/PwZc-YbIL414wB9rB1IAPRJtnKITppOI_IvcXXDNrsc.woff2 differ diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/UX6i4JxQDm3fVTc1CPuwqhJtnKITppOI_IvcXXDNrsc.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/UX6i4JxQDm3fVTc1CPuwqhJtnKITppOI_IvcXXDNrsc.woff2 new file mode 100644 index 0000000..7183027 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/UX6i4JxQDm3fVTc1CPuwqhJtnKITppOI_IvcXXDNrsc.woff2 differ 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 0000000..ec60976 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/d-6IYplOFocCacKzxwXSOFtXRa8TVwTICgirnJhmVJw.woff2 differ 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 0000000..e7d54f2 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/ek4gzZ-GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2 differ diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/isZ-wbCXNKAbnjo6_TwHThJtnKITppOI_IvcXXDNrsc.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/isZ-wbCXNKAbnjo6_TwHThJtnKITppOI_IvcXXDNrsc.woff2 new file mode 100644 index 0000000..29ee886 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/isZ-wbCXNKAbnjo6_TwHThJtnKITppOI_IvcXXDNrsc.woff2 differ diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/jSN2CGVDbcVyCnfJfjSdfBJtnKITppOI_IvcXXDNrsc.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/jSN2CGVDbcVyCnfJfjSdfBJtnKITppOI_IvcXXDNrsc.woff2 new file mode 100644 index 0000000..4b44334 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/jSN2CGVDbcVyCnfJfjSdfBJtnKITppOI_IvcXXDNrsc.woff2 differ diff --git a/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/mErvLBYg_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2 b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/mErvLBYg_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2 new file mode 100644 index 0000000..ee9f1a4 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/mErvLBYg_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2 differ 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 0000000..e1b700c Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/fonts/roboto/u0TOpm082MNkS5K0Q4rhqvesZW2xOQ-xsNqO47m55DA.woff2 differ diff --git a/SystemKonkursow/4.2.1/angular/src/assets/images/user.png b/SystemKonkursow/4.2.1/angular/src/assets/images/user.png new file mode 100644 index 0000000..5825ce6 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/assets/images/user.png differ diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/materialize.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/materialize.css new file mode 100644 index 0000000..9515953 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/materialize.css @@ -0,0 +1,416 @@ +/*! + * Materialize v0.97.7 (http://materializecss.com) + * Copyright 2014-2015 Materialize + * MIT License (https://raw.githubusercontent.com/Dogfalo/materialize/master/LICENSE) + */ + +/* Radio Buttons + ========================================================================== */ +[type="radio"]:not(:checked), +[type="radio"]:checked { + position: absolute; + left: -9999px; + opacity: 0; +} + +[type="radio"]:not(:checked) + label, +[type="radio"]:checked + label { + position: relative; + padding-left: 35px; + cursor: pointer; + display: inline-block; + height: 25px; + line-height: 25px; + font-size: 1rem; + transition: .28s ease; + /* webkit (konqueror) browsers */ + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +[type="radio"] + label:before, +[type="radio"] + label:after { + content: ''; + position: absolute; + left: 0; + top: 0; + margin: 4px; + width: 16px; + height: 16px; + z-index: 0; + transition: .28s ease; +} + +/* Unchecked styles */ +[type="radio"]:not(:checked) + label:before, +[type="radio"]:not(:checked) + label:after, +[type="radio"]:checked + label:before, +[type="radio"]:checked + label:after, +[type="radio"].with-gap:checked + label:before, +[type="radio"].with-gap:checked + label:after { + border-radius: 50%; +} + +[type="radio"]:not(:checked) + label:before, +[type="radio"]:not(:checked) + label:after { + border: 2px solid #5a5a5a; +} + +[type="radio"]:not(:checked) + label:after { + z-index: -1; + -webkit-transform: scale(0); + transform: scale(0); +} + +/* Checked styles */ +[type="radio"]:checked + label:before { + border: 2px solid transparent; +} + +[type="radio"]:checked + label:after, +[type="radio"].with-gap:checked + label:before, +[type="radio"].with-gap:checked + label:after { + border: 2px solid #26a69a; +} + +[type="radio"]:checked + label:after, +[type="radio"].with-gap:checked + label:after { + background-color: #26a69a; + z-index: 0; +} + +[type="radio"]:checked + label:after { + -webkit-transform: scale(1.02); + transform: scale(1.02); +} + +/* Radio With gap */ +[type="radio"].with-gap:checked + label:after { + -webkit-transform: scale(0.5); + transform: scale(0.5); +} + +/* Focused styles */ +[type="radio"].tabbed:focus + label:before { + box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1); +} + +/* Disabled Radio With gap */ +[type="radio"].with-gap:disabled:checked + label:before { + border: 2px solid rgba(0, 0, 0, 0.26); +} + +[type="radio"].with-gap:disabled:checked + label:after { + border: none; + background-color: rgba(0, 0, 0, 0.26); +} + +/* Disabled style */ +[type="radio"]:disabled:not(:checked) + label:before, +[type="radio"]:disabled:checked + label:before { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.26); +} + +[type="radio"]:disabled + label { + color: rgba(0, 0, 0, 0.26); +} + +[type="radio"]:disabled:not(:checked) + label:before { + border-color: rgba(0, 0, 0, 0.26); +} + +[type="radio"]:disabled:checked + label:after { + background-color: rgba(0, 0, 0, 0.26); + border-color: #BDBDBD; +} + +/* Checkboxes + ========================================================================== */ +/* CUSTOM CSS CHECKBOXES */ +form p { + margin-bottom: 10px; + text-align: left; +} + +form p:last-child { + margin-bottom: 0; +} + +/* Remove default checkbox */ +[type="checkbox"]:not(:checked), +[type="checkbox"]:checked { + position: absolute; + left: -9999px; + opacity: 0; +} + +[type="checkbox"] { + /* checkbox aspect */ +} + +[type="checkbox"] + label { + position: relative; + padding-left: 35px; + cursor: pointer; + display: inline-block; + height: 25px; + line-height: 25px; + font-size: 1rem; + -webkit-user-select: none; + /* webkit (safari, chrome) browsers */ + -moz-user-select: none; + /* mozilla browsers */ + -khtml-user-select: none; + /* webkit (konqueror) browsers */ + -ms-user-select: none; + /* IE10+ */ +} + +[type="checkbox"] + label:before, +[type="checkbox"]:not(.filled-in) + label:after { + content: ''; + position: absolute; + top: 0; + left: 0; + width: 18px; + height: 18px; + z-index: 0; + border: 2px solid #5a5a5a; + border-radius: 1px; + margin-top: 2px; + transition: .2s; +} + +[type="checkbox"]:not(.filled-in) + label:after { + border: 0; + -webkit-transform: scale(0); + transform: scale(0); +} + +[type="checkbox"]:not(:checked):disabled + label:before { + border: none; + background-color: rgba(0, 0, 0, 0.26); +} + +[type="checkbox"].tabbed:focus + label:after { + -webkit-transform: scale(1); + transform: scale(1); + border: 0; + border-radius: 50%; + box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1); + background-color: rgba(0, 0, 0, 0.1); +} + +[type="checkbox"]:checked + label:before { + top: -4px; + left: -5px; + width: 12px; + height: 22px; + border-top: 2px solid transparent; + border-left: 2px solid transparent; + border-right: 2px solid #26a69a; + border-bottom: 2px solid #26a69a; + -webkit-transform: rotate(40deg); + transform: rotate(40deg); + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-transform-origin: 100% 100%; + transform-origin: 100% 100%; +} + +[type="checkbox"]:checked:disabled + label:before { + border-right: 2px solid rgba(0, 0, 0, 0.26); + border-bottom: 2px solid rgba(0, 0, 0, 0.26); +} + +/* Indeterminate checkbox */ +[type="checkbox"]:indeterminate + label:before { + top: -11px; + left: -12px; + width: 10px; + height: 22px; + border-top: none; + border-left: none; + border-right: 2px solid #26a69a; + border-bottom: none; + -webkit-transform: rotate(90deg); + transform: rotate(90deg); + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-transform-origin: 100% 100%; + transform-origin: 100% 100%; +} + +[type="checkbox"]:indeterminate:disabled + label:before { + border-right: 2px solid rgba(0, 0, 0, 0.26); + background-color: transparent; +} + +[type="checkbox"].filled-in + label:after { + border-radius: 2px; +} + +[type="checkbox"].filled-in + label:before, +[type="checkbox"].filled-in + label:after { + content: ''; + left: 0; + position: absolute; + /* .1s delay is for check animation */ + transition: border .25s, background-color .25s, width .20s .1s, height .20s .1s, top .20s .1s, left .20s .1s; + z-index: 1; +} + +[type="checkbox"].filled-in:not(:checked) + label:before { + width: 0; + height: 0; + border: 3px solid transparent; + left: 6px; + top: 10px; + -webkit-transform: rotateZ(37deg); + transform: rotateZ(37deg); + -webkit-transform-origin: 20% 40%; + transform-origin: 100% 100%; +} + +[type="checkbox"].filled-in:not(:checked) + label:after { + height: 20px; + width: 20px; + background-color: transparent; + border: 2px solid #5a5a5a; + top: 0px; + z-index: 0; +} + +[type="checkbox"].filled-in:checked + label:before { + top: 0; + left: 1px; + width: 8px; + height: 13px; + border-top: 2px solid transparent; + border-left: 2px solid transparent; + border-right: 2px solid #fff; + border-bottom: 2px solid #fff; + -webkit-transform: rotateZ(37deg); + transform: rotateZ(37deg); + -webkit-transform-origin: 100% 100%; + transform-origin: 100% 100%; +} + +[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.tabbed:focus + label:after { + border-radius: 2px; + border-color: #5a5a5a; + background-color: rgba(0, 0, 0, 0.1); +} + +[type="checkbox"].filled-in.tabbed:checked:focus + label:after { + border-radius: 2px; + background-color: #26a69a; + border-color: #26a69a; +} + +[type="checkbox"].filled-in:disabled:not(:checked) + label:before { + background-color: transparent; + border: 2px solid transparent; +} + +[type="checkbox"].filled-in:disabled:not(:checked) + label:after { + border-color: transparent; + background-color: #BDBDBD; +} + +[type="checkbox"].filled-in:disabled:checked + label:before { + background-color: transparent; +} + +[type="checkbox"].filled-in:disabled:checked + label:after { + background-color: #BDBDBD; + border-color: #BDBDBD; +} + +/* Switch + ========================================================================== */ +.switch, +.switch * { + -webkit-user-select: none; + -moz-user-select: none; + -khtml-user-select: none; + -ms-user-select: none; +} + +.switch label { + cursor: pointer; +} + +.switch label input[type=checkbox] { + opacity: 0; + width: 0; + height: 0; +} + +.switch label input[type=checkbox]:checked + .lever { + background-color: #84c7c1; +} + +.switch label input[type=checkbox]:checked + .lever:after { + background-color: #26a69a; + left: 24px; +} + +.switch label .lever { + content: ""; + display: inline-block; + position: relative; + width: 40px; + height: 15px; + background-color: #818181; + border-radius: 15px; + margin-right: 10px; + transition: background 0.3s ease; + vertical-align: middle; + margin: 0 16px; +} + +.switch label .lever:after { + content: ""; + position: absolute; + display: inline-block; + width: 21px; + height: 21px; + background-color: #F1F1F1; + border-radius: 21px; + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4); + left: -5px; + top: -3px; + transition: left 0.3s ease, background .3s ease, box-shadow 0.1s ease; +} + +input[type=checkbox]:checked:not(:disabled) ~ .lever:active::after, +input[type=checkbox]:checked:not(:disabled).tabbed:focus ~ .lever::after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(38, 166, 154, 0.1); +} + +input[type=checkbox]:not(:disabled) ~ .lever:active:after, +input[type=checkbox]:not(:disabled).tabbed:focus ~ .lever::after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 0, 0, 0.08); +} + +.switch input[type=checkbox][disabled] + .lever { + cursor: default; +} + +.switch label input[type=checkbox][disabled] + .lever:after, +.switch label input[type=checkbox][disabled]:checked + .lever:after { + background-color: #BDBDBD; +} \ No newline at end of file diff --git a/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/style.css b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/style.css new file mode 100644 index 0000000..122c329 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/bsb-theme/css/style.css @@ -0,0 +1,8109 @@ +/* Show Fieldset and Legend ==================== */ +.show-fieldset { + margin: 10px; + padding: 10px; + border: 1px solid silver !important; +} + +.show-legend { + padding: 5px !important; + width: initial !important; + margin: initial !important; + border: 0px transparent !important; +} + +/* Ngx Pagination ============================== */ +a{cursor: pointer; + text-decoration: none; + transition: none 86ms ease-out; +} + +.ngx-pagination { + text-align: center; + margin-left: 0; + margin-bottom: 1rem; } + .ngx-pagination::before, .ngx-pagination::after { + content: ' '; + display: table; } + .ngx-pagination::after { + clear: both; } + .ngx-pagination li { + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + margin-right: 0.0625rem; + border-radius: 0; } + .ngx-pagination li { + display: inline-block; } + .ngx-pagination a, + .ngx-pagination button { + color: #0a0a0a; + display: block; + padding: 0.1875rem 0.625rem; + border-radius: 0; } + .ngx-pagination a:hover, + .ngx-pagination button:hover { + background: #e6e6e6; } + .ngx-pagination .current { + padding: 0.1875rem 0.625rem; + background: #2199e8; + color: #fefefe; + cursor: default; } + .ngx-pagination .disabled { + padding: 0.1875rem 0.625rem; + color: #cacaca; + cursor: default; } + .ngx-pagination .disabled:hover { + background: transparent; } + .ngx-pagination .ellipsis::after { + content: '…'; + padding: 0.1875rem 0.625rem; + color: #0a0a0a; } + +.ngx-pagination .pagination-previous a::before, +.ngx-pagination .pagination-previous.disabled::before { + content: '«'; + display: inline-block; + margin-right: 0.5rem; } + +.ngx-pagination .pagination-next a::after, +.ngx-pagination .pagination-next.disabled::after { + content: '»'; + display: inline-block; + margin-left: 0.5rem; } + +.ngx-pagination .show-for-sr { + position: absolute !important; + width: 1px; + height: 1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); } + +/* Navbar ====================================== */ +.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); } + +/* 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 0000000..3870108 Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/bsb-theme/images/user-img-background.jpg differ 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 0000000..8081c7c Binary files /dev/null and b/SystemKonkursow/4.2.1/angular/src/favicon.ico differ diff --git a/SystemKonkursow/4.2.1/angular/src/hmr.ts b/SystemKonkursow/4.2.1/angular/src/hmr.ts new file mode 100644 index 0000000..2f2e399 --- /dev/null +++ b/SystemKonkursow/4.2.1/angular/src/hmr.ts @@ -0,0 +1,15 @@ +import { NgModuleRef, ApplicationRef } from '@angular/core'; +import { createNewHosts } from '@angularclass/hmr'; + +export const hmrBootstrap = (module: any, bootstrap: () => 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(); + }); + } + } +}