From bc3c72ed47ad4c7b8b53569eda518a87754f1a0c Mon Sep 17 00:00:00 2001 From: Vincent Nadoll Date: Sun, 7 Jan 2018 14:10:27 +0100 Subject: [PATCH] Release 1.0.0 - Added Favicon - Updated Dependencies - Rewrote express server - Updated README --- .gitignore | 2 +- README.md | 37 ++- app.js | 49 +++- bin/www | 20 +- package-lock.json | 583 +++++++++++++++++++++++++++++++--------------- package.json | 34 +-- src/favicon.ico | Bin 5430 -> 2238 bytes 7 files changed, 490 insertions(+), 235 deletions(-) mode change 100644 => 100755 bin/www diff --git a/.gitignore b/.gitignore index 843fd60..b40f086 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ # Logs -logs +log/ *.log npm-debug.log* yarn-debug.log* diff --git a/README.md b/README.md index a6f64c0..e5718ce 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,9 @@ # asciii GUI -... simplifies. asciii GUI is built with [Angular 5](https://angular.io). +... provides an alternative to the CLI of [asciii](https://github.com/ascii-dresden/asciii). The project helps our +members to evaluate and review our projects, clients, offers and clients. + +asciii GUI is built with [Angular 5](https://angular.io) and was inspired by [InvoicePlane](https://github.com/InvoicePlane/InvoicePlane). [![travis](https://travis-ci.org/ascii-dresden/ascii-hub.svg?branch=master)](https://travis-ci.org/ascii-dresden/ascii-hub/) [![dependency Status](https://david-dm.org/ascii-dresden/ascii-hub.svg)](https://david-dm.org/ascii-dresden/ascii-hub) @@ -9,30 +12,30 @@ [![GitHub forks](https://img.shields.io/github/forks/ascii-dresden/ascii-hub.svg?style=social&label=Fork)](https://github.com/ascii-dresden/ascii-hub/fork) [![GitHub stars](https://img.shields.io/github/stars/ascii-dresden/ascii-hub.svg?style=social&label=Star)](https://github.com/ascii-dresden/ascii-hub) -> Build with :heart: in Dresden +> Built with :heart: in Dresden -## Preparation +## Setup In order to build the project, you'll need NodeJS and NPM. Install the dependencies. -``` -npm install +```sh +$ npm install ``` -## Development server +### Development For a dev server run -``` -ng serve +```sh +$ npm run start ``` To use the RESTful API from asciii you need to run a local instance of [rocket](https://github.com/SergioBenitez/Rocket). Checkout the asciii project and switch to [feature/server](https://github.com/ascii-dresden/asciii/tree/feature/server) branch. Run ``` -cargo run --example server --features server +$ cargo run --example server --features server ``` to setup a local server instance. Read the asciii documentation for more information. @@ -40,16 +43,28 @@ to setup a local server instance. Read the asciii documentation for more informa Since rocket runs on port 8000 by default, your browser will block Cross-Origin request. You'll have to allow Cross-Origin requests to use the asciii REST API. -### i18n +#### i18n To change your interface language to german run ``` -npm run start:de +$ npm run start:de ``` Change currency and locale by editing `src/environments/environment.ts`. +### Production + +1. Dowload the latest release from the [release](https://github.com/ascii-dresden/asciii-gui/releases/latest) section +2. Extract the package and copy all files to your webserver or destination machine +3. Start the asciii server as described [here](#dev) +4. Start the asciii GUI. + +```sh +$ chmod +x ./bin/www +$ ./bin/www +``` + ## License MIT - [ascii Dresden](https://github.com/ascii-dresden) - :heart: diff --git a/app.js b/app.js index 85c3bc9..96fd33b 100644 --- a/app.js +++ b/app.js @@ -1,30 +1,61 @@ const express = require('express'); const path = require('path'); +const fs = require('fs'); const favicon = require('serve-favicon'); -const logger = require('morgan'); +const morgan = require('morgan'); const bodyParser = require('body-parser'); +const rfs = require('rotating-file-stream'); const app = express(); +const logDirectory = path.join(__dirname, 'log'); +const accessLogStream = rfs('access.log', { + interval: '1d', + path: logDirectory +}); + +fs.existsSync(logDirectory) || fs.mkdirSync(logDirectory); -app.use(logger('dev')); +app.use(morgan('dev', { skip: (req, res) => res.statusCode < 400 })); +app.use(morgan('common', { skip: (req, res) => app.get('env') !== 'production', stream: accessLogStream })); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); app.use(express.static(path.join(__dirname, 'dist'))); +app.use(notFound); +app.use(logErrors); +app.use(clientErrorHandler); +app.use(errorHandler); -app.use((req, res, next) => { +function notFound(req, res, next) { const err = new Error('Not Found'); err.status = 404; next(err); -}); +} -app.use((err, req, res, next) => { - // set locals, only providing error in development +function logErrors(err, req, res, next) { + console.error(err.stack); + next(err); +} + +function clientErrorHandler(err, req, res, next) { + if (req.xhr) { + res.status(500).send({ error: 'Something failed!' }); + } else { + next(err); + } +} + +function errorHandler(err, req, res, next) { + if (res.headersSent) { + return next(err); + } res.locals.message = err.message; res.locals.error = req.app.get('env') === 'development' ? err : {}; - // render the error page res.status(err.status || 500); - res.render('error'); -}); + res.json({ + message: err.message, + error: err + }); +} module.exports = app; diff --git a/bin/www b/bin/www old mode 100644 new mode 100755 index a929a8c..a76e815 --- a/bin/www +++ b/bin/www @@ -1,11 +1,14 @@ #!/usr/bin/env node const app = require('../app'); -const debug = require('debug')('mean-app:server'); const http = require('http'); +const argv = require('minimist')(process.argv.slice(2)); -const port = normalizePort(process.env.PORT || '3000'); +const env = normalizeEnv(process.env.NODE_ENV || argv.prod || 'development'); +app.set('env', env); + +const port = normalizePort(process.env.PORT || argv.port || '3000'); app.set('port', port); const server = http.createServer(app); @@ -13,16 +16,22 @@ server.listen(port); server.on('error', onError); server.on('listening', onListening); +function normalizeEnv(val) { + if (val === true) { + return 'production'; + } else { + return val; + } +} + function normalizePort(val) { const port = parseInt(val, 10); if (isNaN(port)) { - // named pipe return val; } if (port >= 0) { - // port number return port; } @@ -38,7 +47,6 @@ function onError(error) { ? 'Pipe ' + port : 'Port ' + port; - // handle specific listen errors with friendly messages switch (error.code) { case 'EACCES': console.error(bind + ' requires elevated privileges'); @@ -58,5 +66,5 @@ function onListening() { const bind = typeof addr === 'string' ? 'pipe ' + addr : 'port ' + addr.port; - debug('Listening on ' + bind); + console.log(`Express server listening on port ${bind} in ${app.get('env')} mode.`); } diff --git a/package-lock.json b/package-lock.json index fc29369..9209963 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,9 +47,9 @@ } }, "@angular/animations": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-5.1.2.tgz", - "integrity": "sha512-so2i0He4Fh5YuvujC68k2/Hzyy56/vZAUmLTXHE+9f4RatjqV68LISseFXqcS8bhVuT7AD2ZEbHnM7nWhgDaTg==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-5.1.3.tgz", + "integrity": "sha512-DlcANlrQ2aaspCZZ6yHdEx1PaLKT1q3/xkdTgoKNTJfj9eautcrEuar8NoH0dkzXuQT0i9GewK6+zsF581rpdQ==", "requires": { "tslib": "1.8.1" } @@ -71,7 +71,7 @@ "common-tags": "1.6.0", "copy-webpack-plugin": "4.3.1", "core-object": "3.1.5", - "css-loader": "0.28.7", + "css-loader": "0.28.8", "cssnano": "3.10.0", "denodeify": "1.2.1", "ember-cli-string-utils": "1.1.0", @@ -96,7 +96,7 @@ "opn": "5.1.0", "portfinder": "1.0.13", "postcss-custom-properties": "6.2.0", - "postcss-loader": "2.0.9", + "postcss-loader": "2.0.10", "postcss-url": "7.3.0", "raw-loader": "0.5.1", "resolve": "1.5.0", @@ -109,7 +109,7 @@ "style-loader": "0.13.2", "stylus": "0.54.5", "stylus-loader": "3.0.1", - "uglifyjs-webpack-plugin": "1.1.5", + "uglifyjs-webpack-plugin": "1.1.6", "url-loader": "0.6.2", "webpack": "3.10.0", "webpack-dev-middleware": "1.12.2", @@ -121,25 +121,25 @@ } }, "@angular/common": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-5.1.2.tgz", - "integrity": "sha512-MqgMwsHXxxx8vmQrUFwhNcAg29eqClJdnMJ81DlD7XvEexyXxxoFrxnNea+aB3BUC1AzU0fEy24ngygmhjRmfw==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-5.1.3.tgz", + "integrity": "sha512-n0bzjfOVZH7+FPHQ3nnE3aAgMWebz4afO/Wh01LZNfVgcjdBxHblAYcMaoJeR7zW7f1zm51P6aDa4XlVtsVupQ==", "requires": { "tslib": "1.8.1" } }, "@angular/compiler": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.1.2.tgz", - "integrity": "sha512-asTrlMWRe24EzejBwBFVSfq3ZbYI9Xr9NbNtkHK4DRHutDA1wn5PQE5lHuUTNW2B/dmm9pm+5JTVtcbue0nEug==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.1.3.tgz", + "integrity": "sha512-YQyL52+CtduFqyodv3m+s8qNDRbmEyEv/ZZHEWNKxKFr7RQ5n7+pbjdincwGf2c2mBw4EqWLgyCdd9SFmjJd0w==", "requires": { "tslib": "1.8.1" } }, "@angular/compiler-cli": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-5.1.2.tgz", - "integrity": "sha512-dtSVF8RnxYCDSCDbWNv3xg379xAN/1s6odpF5lFyemUi/p2U9mkeXtHo5Y74PX/kdoVnXrTY8bCNnQPm3sHVZA==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-5.1.3.tgz", + "integrity": "sha512-5pmVgFch67qYxl04PitagfUgiw0k7Ak1Cvj5LY2gs0961SHo8qLRA2/4xUKAxv4rFy+fx2Qr9KD99YB+wbsb3A==", "dev": true, "requires": { "chokidar": "1.7.0", @@ -149,55 +149,55 @@ } }, "@angular/core": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.1.2.tgz", - "integrity": "sha512-nHQWvhdxg7RbhRcfV5EhWURUZBqtcBFajXTBYA2rVHPhm0lGqEUi38VW0ddO8MpPGz0pK2PNpgR3GwXp/egaNw==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.1.3.tgz", + "integrity": "sha512-lGlILYCumA5s8Pf+egDW6kjlrEQwnpUG2fBQ4SNRChzzRoTWeJ1XPCrEI9YyFvC8qUsYcDIZwHWBXQQqhdEvmQ==", "requires": { "tslib": "1.8.1" } }, "@angular/forms": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.1.2.tgz", - "integrity": "sha512-IQRZ2KF4303ga9nTzjU223steFLcaRrFyakM/+x8Hu1otzLeIoFiyDaFPBHtUvoRN14JlKusIi9m407mM2oNJQ==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.1.3.tgz", + "integrity": "sha512-DTUg7agXPjvacWHojl0vXuvyJ0Ik9I0D23KKWyzHZHlxXb4vfN7KYP9qIOMwadLLIog8MEu4a6EGgKAoPsZ/Ng==", "requires": { "tslib": "1.8.1" } }, "@angular/http": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/http/-/http-5.1.2.tgz", - "integrity": "sha512-LvOgVPCxOii2TH8r8UrXQJjqrbgrt/HTNOtqqT1/CmemsnbGcBiYAnt5yiZ2aYQuop4RZLhQ/UpuSMLur9XPtg==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/http/-/http-5.1.3.tgz", + "integrity": "sha512-Ptnu15yjYnvKucLBRKrJqneFMkQYjfwDFgVASLb+YJhRzNFBnqcK8JdfilhP7f0WESANDcwtC/YoaShpiyugNA==", "requires": { "tslib": "1.8.1" } }, "@angular/language-service": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-5.1.2.tgz", - "integrity": "sha512-oFov/UQyvW3CJESJvC1nI0xSsWOc4Mx5N0Tbah9g2cryShT5PoFGDUE8+Pu5Yjl3uu+iNMnQ4F+J2DDRmyJTWQ==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-5.1.3.tgz", + "integrity": "sha512-qj5K02LdG637YzqgtQVHVwZbzLHWm2WZOHPthu0M04RjS6bZxD4Ng828IXxFydrxoyTcDO/x0Uy2OAb7+rbBQw==", "dev": true }, "@angular/platform-browser": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.1.2.tgz", - "integrity": "sha512-L78ijQ81tEh6nnOq2BqCDtbhqLbARs/2A9QZvEhMTTFu5MOQH0yk0VrjNv58Lch9yOj04EH/Qi7Wep2vFqb57g==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.1.3.tgz", + "integrity": "sha512-APMYMgEith68hsuSS8PpE0Dn1dEhJN1IkaIeL+ZlmhZQ4GktVAvMV2ySFYHoQofT5QIWEnvbT2r/cvgW9+8IUQ==", "requires": { "tslib": "1.8.1" } }, "@angular/platform-browser-dynamic": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.1.2.tgz", - "integrity": "sha512-LMMgG1RRngIMvU19+NFRUe2+2gKgzMpwddBVDondi71EqcfumD6NN343lNcHv5/5oWuJdaAx94A29qpAjyVt5Q==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.1.3.tgz", + "integrity": "sha512-LKyHzN0LZqcw8nL19yJsbqPMBZ2nxPYFDkbsBicxfr9RHWbWbDuIZXY5l742guzAFBPHhccx9Lpjd3Gwxi7syg==", "requires": { "tslib": "1.8.1" } }, "@angular/router": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-5.1.2.tgz", - "integrity": "sha512-gNP2vPTQLlpiRE6tRdZY9CHYs+XhYsiR6wAfUInMvJAocA6a2mQs4qPILJjus8WbcASDzU51C+sgHF++4gz+Qg==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-5.1.3.tgz", + "integrity": "sha512-dhrrk2jfbIQEGWkonRyAjrJSt/a3aLmRRWiSL3UUZhfUqMUGhaxwJn7hYB1uQyvhqTGKYncBvjMrdGFmsQInNQ==", "requires": { "tslib": "1.8.1" } @@ -261,9 +261,9 @@ "dev": true }, "@types/node": { - "version": "8.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.5.2.tgz", - "integrity": "sha512-KA4GKOpgXnrqEH2eCVhiv2CsxgXGQJgV1X0vsGlh+WCnxbeAE1GT44ZsTU1IN5dEeV/gDupKa7gWo08V5IxWVQ==", + "version": "8.5.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.5.7.tgz", + "integrity": "sha512-+1ZfzGIq8Y3EV7hPF7bs3i+Gi2mqYOiEGGRxGYPrn+hTYLMmzg+/5TkMkCHiRtLB38XSNvr/43aQ9+cUq4BbBg==", "dev": true }, "@types/strip-bom": { @@ -304,9 +304,9 @@ } }, "acorn": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.2.1.tgz", - "integrity": "sha512-jG0u7c4Ly+3QkkW18V+NRDN+4bWHdln30NL1ZL2AvFZZmQe/BfopYCtghCKKVBUSetZ4QKcyA0pY6/4Gw8Pv8w==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.3.0.tgz", + "integrity": "sha512-Yej+zOJ1Dm/IMZzzj78OntP/r3zHEaKcyNoU2lAaxPtrseM6rF0xwqoz5Q5ysAiED9hTjI2hgtvLXitlCN1/Ug==", "dev": true }, "acorn-dynamic-import": { @@ -497,10 +497,9 @@ "dev": 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 + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" }, "array-includes": { "version": "3.0.3", @@ -552,9 +551,9 @@ "dev": true }, "arraybuffer.slice": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz", - "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=", + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", + "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", "dev": true }, "arrify": { @@ -667,7 +666,7 @@ "dev": true, "requires": { "browserslist": "1.7.7", - "caniuse-db": "1.0.30000784", + "caniuse-db": "1.0.30000787", "normalize-range": "0.1.2", "num2fraction": "1.2.2", "postcss": "5.2.18", @@ -977,13 +976,6 @@ "qs": "6.5.1", "raw-body": "2.3.2", "type-is": "1.6.15" - }, - "dependencies": { - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" - } } }, "bonjour": { @@ -998,6 +990,14 @@ "dns-txt": "2.0.2", "multicast-dns": "6.2.1", "multicast-dns-service-types": "1.1.0" + }, + "dependencies": { + "array-flatten": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.1.tgz", + "integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=", + "dev": true + } } }, "boolbase": { @@ -1262,7 +1262,7 @@ "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=", "dev": true, "requires": { - "caniuse-db": "1.0.30000784", + "caniuse-db": "1.0.30000787", "electron-to-chromium": "1.3.30" } }, @@ -1388,15 +1388,15 @@ "dev": true, "requires": { "browserslist": "1.7.7", - "caniuse-db": "1.0.30000784", + "caniuse-db": "1.0.30000787", "lodash.memoize": "4.1.2", "lodash.uniq": "4.5.0" } }, "caniuse-db": { - "version": "1.0.30000784", - "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000784.tgz", - "integrity": "sha1-G+lQEtlInHcZB0+BruV9vf/mNhs=", + "version": "1.0.30000787", + "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000787.tgz", + "integrity": "sha1-ygeigb5Taoi9f6yWuolfPPU/gRs=", "dev": true }, "caseless": { @@ -1807,6 +1807,12 @@ "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 } } }, @@ -1890,7 +1896,7 @@ "loader-utils": "0.2.17", "lodash": "4.17.4", "minimatch": "3.0.4", - "p-limit": "1.1.0", + "p-limit": "1.2.0", "pify": "3.0.0", "serialize-javascript": "1.4.0" }, @@ -2026,9 +2032,9 @@ "dev": true }, "css-loader": { - "version": "0.28.7", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-0.28.7.tgz", - "integrity": "sha512-GxMpax8a/VgcfRrVy0gXD6yLd5ePYbXX/5zGgTVYp4wXtJklS8Z2VaUArJgc//f6/Dzil7BaJObdSv8eKKCPgg==", + "version": "0.28.8", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-0.28.8.tgz", + "integrity": "sha512-4jGj7Ag6WUZ5lQyE4te9sJLn0lgkz6HI3WDE4aw98AkW1IAKXPP4blTpPeorlLDpNsYvojo0SYgRJOdz2KbuAw==", "dev": true, "requires": { "babel-code-frame": "6.26.0", @@ -2147,6 +2153,12 @@ "source-map": "0.5.7" } }, + "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", @@ -2394,7 +2406,7 @@ "integrity": "sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig==", "dev": true, "requires": { - "acorn": "5.2.1", + "acorn": "5.3.0", "defined": "1.0.0" } }, @@ -2649,7 +2661,7 @@ "base64id": "1.0.0", "cookie": "0.3.1", "debug": "2.6.9", - "engine.io-parser": "2.1.1", + "engine.io-parser": "2.1.2", "uws": "0.14.5", "ws": "3.3.3" }, @@ -2675,7 +2687,7 @@ "component-emitter": "1.2.1", "component-inherit": "0.0.3", "debug": "2.6.9", - "engine.io-parser": "2.1.1", + "engine.io-parser": "2.1.2", "has-cors": "1.1.0", "indexof": "0.0.1", "parseqs": "0.0.5", @@ -2686,13 +2698,13 @@ } }, "engine.io-parser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.1.tgz", - "integrity": "sha1-4Ps/DgRi9/WLt3waUun1p+JuRmg=", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.2.tgz", + "integrity": "sha512-dInLFzr80RijZ1rGpx1+56/uFoH7/7InhH3kZt+Ms6hT8tNx3NGW/WNSA/f8As1WkOfkuyb3tnRyuXGxusclMw==", "dev": true, "requires": { "after": "0.8.2", - "arraybuffer.slice": "0.0.6", + "arraybuffer.slice": "0.0.7", "base64-arraybuffer": "0.1.5", "blob": "0.0.4", "has-binary2": "1.0.2" @@ -3091,15 +3103,15 @@ "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=" + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" } } }, @@ -3247,6 +3259,13 @@ "parseurl": "1.3.2", "statuses": "1.3.1", "unpipe": "1.0.0" + }, + "dependencies": { + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" + } } }, "find-cache-dir": { @@ -3941,7 +3960,7 @@ "ncname": "1.0.0", "param-case": "2.1.1", "relateurl": "0.2.7", - "uglify-js": "3.3.3" + "uglify-js": "3.3.4" } }, "html-webpack-plugin": { @@ -4039,14 +4058,7 @@ "depd": "1.1.1", "inherits": "2.0.3", "setprototypeof": "1.0.3", - "statuses": "1.3.1" - }, - "dependencies": { - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" - } + "statuses": "1.4.0" } }, "http-parser-js": { @@ -4160,7 +4172,7 @@ "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", "dev": true, "requires": { - "postcss": "6.0.14" + "postcss": "6.0.16" }, "dependencies": { "chalk": { @@ -4172,17 +4184,28 @@ "ansi-styles": "3.2.0", "escape-string-regexp": "1.0.5", "supports-color": "4.5.0" + }, + "dependencies": { + "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" + } + } } }, "postcss": { - "version": "6.0.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", - "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", "dev": true, "requires": { "chalk": "2.3.0", "source-map": "0.6.1", - "supports-color": "4.5.0" + "supports-color": "5.1.0" } }, "source-map": { @@ -4190,6 +4213,15 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } } } }, @@ -4958,7 +4990,7 @@ "isbinaryfile": "3.0.2", "lodash": "4.17.4", "log4js": "2.4.1", - "mime": "1.6.0", + "mime": "1.4.1", "minimatch": "3.0.4", "optimist": "0.6.1", "qjobs": "1.1.5", @@ -5096,7 +5128,7 @@ "errno": "0.1.6", "graceful-fs": "4.1.11", "image-size": "0.5.5", - "mime": "1.6.0", + "mime": "1.4.1", "mkdirp": "0.5.1", "promise": "7.3.1", "request": "2.81.0", @@ -5579,9 +5611,9 @@ } }, "make-error": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.0.tgz", - "integrity": "sha1-Uq06M5zPEM5itAQLcI/nByRLi5Y=", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.2.tgz", + "integrity": "sha512-l9ra35l5VWLF24y75Tg8XgfGLX0ueRhph118WKM6H5denx4bB5QF59+4UAm9oJ2qsPQZas/CQUDdtDdfvYHBdQ==", "dev": true }, "map-obj": { @@ -5719,10 +5751,9 @@ } }, "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" }, "mime-db": { "version": "1.30.0", @@ -5767,8 +5798,7 @@ "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" }, "mississippi": { "version": "1.3.0", @@ -6543,10 +6573,13 @@ "dev": true }, "p-limit": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz", - "integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=", - "dev": true + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", + "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", + "dev": true, + "requires": { + "p-try": "1.0.0" + } }, "p-locate": { "version": "2.0.0", @@ -6554,7 +6587,7 @@ "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { - "p-limit": "1.1.0" + "p-limit": "1.2.0" } }, "p-map": { @@ -6563,6 +6596,12 @@ "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 + }, "pac-proxy-agent": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-1.1.0.tgz", @@ -6970,7 +7009,7 @@ "dev": true, "requires": { "balanced-match": "1.0.0", - "postcss": "6.0.14" + "postcss": "6.0.16" }, "dependencies": { "chalk": { @@ -6982,17 +7021,28 @@ "ansi-styles": "3.2.0", "escape-string-regexp": "1.0.5", "supports-color": "4.5.0" + }, + "dependencies": { + "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" + } + } } }, "postcss": { - "version": "6.0.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", - "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", "dev": true, "requires": { "chalk": "2.3.0", "source-map": "0.6.1", - "supports-color": "4.5.0" + "supports-color": "5.1.0" } }, "source-map": { @@ -7000,6 +7050,15 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } } } }, @@ -7092,13 +7151,13 @@ } }, "postcss-loader": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.0.9.tgz", - "integrity": "sha512-sgoXPtmgVT3aBAhU47Kig8oPF+mbXl8Unjvtz1Qj1q2D2EvSVJW2mKJNzxv5y/LvA9xWwuvdysvhc7Zn80UWWw==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.0.10.tgz", + "integrity": "sha512-xQaDcEgJ/2JqFY18zpFkik8vyYs7oS5ZRbrjvDqkP97k2wYWfPT4+qA0m4o3pTSCsz0u26PNqs8ZO9FRUWAqrA==", "dev": true, "requires": { "loader-utils": "1.1.0", - "postcss": "6.0.14", + "postcss": "6.0.16", "postcss-load-config": "1.2.0", "schema-utils": "0.3.0" }, @@ -7112,17 +7171,28 @@ "ansi-styles": "3.2.0", "escape-string-regexp": "1.0.5", "supports-color": "4.5.0" + }, + "dependencies": { + "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" + } + } } }, "postcss": { - "version": "6.0.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", - "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", "dev": true, "requires": { "chalk": "2.3.0", "source-map": "0.6.1", - "supports-color": "4.5.0" + "supports-color": "5.1.0" } }, "source-map": { @@ -7130,6 +7200,15 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } } } }, @@ -7223,7 +7302,7 @@ "integrity": "sha1-thTJcgvmgW6u41+zpfqh26agXds=", "dev": true, "requires": { - "postcss": "6.0.14" + "postcss": "6.0.16" }, "dependencies": { "chalk": { @@ -7235,17 +7314,28 @@ "ansi-styles": "3.2.0", "escape-string-regexp": "1.0.5", "supports-color": "4.5.0" + }, + "dependencies": { + "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" + } + } } }, "postcss": { - "version": "6.0.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", - "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", "dev": true, "requires": { "chalk": "2.3.0", "source-map": "0.6.1", - "supports-color": "4.5.0" + "supports-color": "5.1.0" } }, "source-map": { @@ -7253,6 +7343,15 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } } } }, @@ -7263,7 +7362,7 @@ "dev": true, "requires": { "css-selector-tokenizer": "0.7.0", - "postcss": "6.0.14" + "postcss": "6.0.16" }, "dependencies": { "chalk": { @@ -7275,17 +7374,28 @@ "ansi-styles": "3.2.0", "escape-string-regexp": "1.0.5", "supports-color": "4.5.0" + }, + "dependencies": { + "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" + } + } } }, "postcss": { - "version": "6.0.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", - "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", "dev": true, "requires": { "chalk": "2.3.0", "source-map": "0.6.1", - "supports-color": "4.5.0" + "supports-color": "5.1.0" } }, "source-map": { @@ -7293,6 +7403,15 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } } } }, @@ -7303,7 +7422,7 @@ "dev": true, "requires": { "css-selector-tokenizer": "0.7.0", - "postcss": "6.0.14" + "postcss": "6.0.16" }, "dependencies": { "chalk": { @@ -7315,17 +7434,28 @@ "ansi-styles": "3.2.0", "escape-string-regexp": "1.0.5", "supports-color": "4.5.0" + }, + "dependencies": { + "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" + } + } } }, "postcss": { - "version": "6.0.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", - "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", "dev": true, "requires": { "chalk": "2.3.0", "source-map": "0.6.1", - "supports-color": "4.5.0" + "supports-color": "5.1.0" } }, "source-map": { @@ -7333,6 +7463,15 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } } } }, @@ -7343,7 +7482,7 @@ "dev": true, "requires": { "icss-replace-symbols": "1.1.0", - "postcss": "6.0.14" + "postcss": "6.0.16" }, "dependencies": { "chalk": { @@ -7355,17 +7494,28 @@ "ansi-styles": "3.2.0", "escape-string-regexp": "1.0.5", "supports-color": "4.5.0" + }, + "dependencies": { + "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" + } + } } }, "postcss": { - "version": "6.0.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", - "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", "dev": true, "requires": { "chalk": "2.3.0", "source-map": "0.6.1", - "supports-color": "4.5.0" + "supports-color": "5.1.0" } }, "source-map": { @@ -7373,6 +7523,15 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } } } }, @@ -7477,10 +7636,10 @@ "integrity": "sha512-VBP6uf6iL3AZra23nkPkOEkS/5azj1xf/toRrjfkolfFEgg9Gyzg9UhJZeIsz12EGKZTNVeGbPa2XtaZm/iZvg==", "dev": true, "requires": { - "mime": "1.6.0", + "mime": "1.4.1", "minimatch": "3.0.4", "mkdirp": "0.5.1", - "postcss": "6.0.14", + "postcss": "6.0.16", "xxhashjs": "0.2.1" }, "dependencies": { @@ -7493,17 +7652,28 @@ "ansi-styles": "3.2.0", "escape-string-regexp": "1.0.5", "supports-color": "4.5.0" + }, + "dependencies": { + "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" + } + } } }, "postcss": { - "version": "6.0.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.14.tgz", - "integrity": "sha512-NJ1z0f+1offCgadPhz+DvGm5Mkci+mmV5BqD13S992o0Xk9eElxUfPPF+t2ksH5R/17gz4xVK8KWocUQ5o3Rog==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", "dev": true, "requires": { "chalk": "2.3.0", "source-map": "0.6.1", - "supports-color": "4.5.0" + "supports-color": "5.1.0" } }, "source-map": { @@ -7511,6 +7681,15 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } } } }, @@ -7687,11 +7866,9 @@ "dev": true }, "qs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", - "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=", - "dev": true, - "optional": true + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" }, "query-string": { "version": "4.3.4", @@ -8108,6 +8285,15 @@ "tough-cookie": "2.3.3", "tunnel-agent": "0.6.0", "uuid": "3.1.0" + }, + "dependencies": { + "qs": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", + "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=", + "dev": true, + "optional": true + } } }, "requestretry": { @@ -8208,6 +8394,11 @@ "inherits": "2.0.3" } }, + "rotating-file-stream": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/rotating-file-stream/-/rotating-file-stream-1.3.4.tgz", + "integrity": "sha512-pgTamdhrvX72IKR51TNpQ+FeN4A3CqzFHsxRy3YcMo2wdvUMNlD54ZZAKaD8EZMqIrCWWZHSaGrR3pQoS3X21w==" + }, "run-queue": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", @@ -8344,10 +8535,10 @@ "statuses": "1.3.1" }, "dependencies": { - "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" } } }, @@ -8414,9 +8605,9 @@ "dev": true }, "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" }, "sha.js": { "version": "2.4.9", @@ -8830,9 +9021,9 @@ } }, "statuses": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", - "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" }, "stdout-stream": { "version": "1.4.0", @@ -9281,7 +9472,7 @@ "arrify": "1.0.1", "chalk": "2.3.0", "diff": "3.4.0", - "make-error": "1.3.0", + "make-error": "1.3.2", "minimist": "1.2.0", "mkdirp": "0.5.1", "source-map-support": "0.5.0", @@ -9371,7 +9562,7 @@ "resolve": "1.5.0", "semver": "5.4.1", "tslib": "1.8.1", - "tsutils": "2.14.0" + "tsutils": "2.15.0" } }, "tsscmp": { @@ -9382,9 +9573,9 @@ "optional": true }, "tsutils": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.14.0.tgz", - "integrity": "sha512-f6axSMV0RoUufiKiRQgmRlN1c+Ag+mDaZjcd6bHdvplT/zyhuMCGqw3pJS8s3+0x4EVkdoQajs9PchdDZlguvw==", + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.15.0.tgz", + "integrity": "sha512-kKb1mSqRMwF0GHKya5/hZsI2m7Flg4ONZDeYu4e6Gx+kYAu86zsLNCHcUmNWhCRaUcKshNI272hOzuaCQDzJ2g==", "dev": true, "requires": { "tslib": "1.8.1" @@ -9444,9 +9635,9 @@ "dev": true }, "uglify-js": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.3.3.tgz", - "integrity": "sha512-blnyad6BpMsz0H4P2Ck863hy0aORNb75ty+o4h0JwMFKeRvrUkmaY7USQWRTsGE2uHcj9F2uAPCJBNVISknH/g==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.3.4.tgz", + "integrity": "sha512-hfIwuAQI5dlXP30UtdmWoYF9k+ypVqBXIdmd6ZKBiaNHHvA8ty7ZloMe3+7S5AEKVkxHbjByl4DfRHQ7QpZquw==", "dev": true, "requires": { "commander": "2.12.2", @@ -9469,21 +9660,31 @@ "optional": true }, "uglifyjs-webpack-plugin": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.1.5.tgz", - "integrity": "sha512-YBGc9G7dv12Vjx8vUQs54DZgAXVf04LlG6dNNiEbTZjL3PbUqiY4uPB9Kv+fUJaqRskEGva/lS7sh08yJr7jnA==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.1.6.tgz", + "integrity": "sha512-VUja+7rYbznEvUaeb8IxOCTUrq4BCb1ml0vffa+mfwKtrAwlqnU0ENF14DtYltV1cxd/HSuK51CCA/D/8kMQVw==", "dev": true, "requires": { "cacache": "10.0.1", "find-cache-dir": "1.0.0", - "schema-utils": "0.3.0", + "schema-utils": "0.4.3", "serialize-javascript": "1.4.0", "source-map": "0.6.1", - "uglify-es": "3.2.2", + "uglify-es": "3.3.4", "webpack-sources": "1.1.0", "worker-farm": "1.5.2" }, "dependencies": { + "schema-utils": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.3.tgz", + "integrity": "sha512-sgv/iF/T4/SewJkaVpldKC4WjSkz0JsOh2eKtxCPpCO1oR05+7MOF+H476HVRbLArkgA7j5TRJJ4p2jdFkUGQQ==", + "dev": true, + "requires": { + "ajv": "5.5.2", + "ajv-keywords": "2.1.1" + } + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -9491,9 +9692,9 @@ "dev": true }, "uglify-es": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.2.2.tgz", - "integrity": "sha512-l+s5VLzFwGJfS+fbqaGf/Dfwo1MF13jLOF2ekL0PytzqEqQ6cVppvHf4jquqFok+35USMpKjqkYxy6pQyUcuug==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.4.tgz", + "integrity": "sha512-vDOyDaf7LcABZI5oJt8bin5FD8kYONux5jd8FY6SsV2SfD+MMXaPeGUotysbycSxdu170y5IQ8FvlKzU/TUryw==", "dev": true, "requires": { "commander": "2.12.2", @@ -9601,7 +9802,7 @@ "dev": true, "requires": { "loader-utils": "1.1.0", - "mime": "1.6.0", + "mime": "1.4.1", "schema-utils": "0.3.0" } }, @@ -9784,7 +9985,7 @@ "integrity": "sha512-fxxKXoicjdXNUMY7LIdY89tkJJJ0m1Oo8PQutZ5rLgWbV5QVKI15Cn7+/IHnRTd3vfKfiwBx6SBqlorAuNA8LA==", "dev": true, "requires": { - "acorn": "5.2.1", + "acorn": "5.3.0", "acorn-dynamic-import": "2.0.2", "ajv": "5.5.2", "ajv-keywords": "2.1.1", @@ -10075,6 +10276,14 @@ "path-is-absolute": "1.0.1", "range-parser": "1.2.0", "time-stamp": "2.0.0" + }, + "dependencies": { + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + } } }, "webpack-dev-server": { @@ -10328,14 +10537,6 @@ "dev": true, "requires": { "cuint": "0.2.2" - }, - "dependencies": { - "cuint": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", - "integrity": "sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs=", - "dev": true - } } }, "y18n": { diff --git a/package.json b/package.json index 8e8ae7c..47e2e0a 100644 --- a/package.json +++ b/package.json @@ -1,13 +1,11 @@ { - "name": "ascii-hub", + "name": "asciii-gui", "version": "1.0.0", "license": "MIT", "scripts": { "ng": "ng", - "start": "ng build --aot && node ./bin/www", - "start:de": "ng build --aot --locale de --i18n-format xlf2 --i18n-file src/i18n/messages.de.xlf --missing-translation error && node ./bin/www", - "dev": "ng serve --aot", - "dev:de": "ng serve --aot --locale de --i18n-format xlf2 --i18n-file src/i18n/messages.de.xlf --missing-translation error", + "start": "ng serve --aot", + "start:de": "ng serve --aot --locale de --i18n-format xlf2 --i18n-file src/i18n/messages.de.xlf --missing-translation error", "build": "ng build --prod --aot", "build:de": "ng build --prod --aot --locale de --i18n-format xlf2 --i18n-file src/i18n/messages.de.xlf --missing-translation error", "test": "ng test", @@ -16,36 +14,38 @@ }, "private": true, "dependencies": { - "@angular/animations": "^5.1.2", - "@angular/common": "^5.1.2", - "@angular/compiler": "^5.1.2", - "@angular/core": "^5.1.2", - "@angular/forms": "^5.1.2", - "@angular/http": "^5.1.2", - "@angular/platform-browser": "^5.1.2", - "@angular/platform-browser-dynamic": "^5.1.2", - "@angular/router": "^5.1.2", + "@angular/animations": "^5.1.3", + "@angular/common": "^5.1.3", + "@angular/compiler": "^5.1.3", + "@angular/core": "^5.1.3", + "@angular/forms": "^5.1.3", + "@angular/http": "^5.1.3", + "@angular/platform-browser": "^5.1.3", + "@angular/platform-browser-dynamic": "^5.1.3", + "@angular/router": "^5.1.3", "body-parser": "^1.18.2", "bootstrap": "^4.0.0-beta.2", "core-js": "^2.5.3", "express": "^4.16.2", "font-awesome": "^4.7.0", "jquery": "^3.2.1", + "minimist": "^1.2.0", "moment": "^2.20.1", "morgan": "^1.9.0", "popper.js": "^1.13.0", + "rotating-file-stream": "^1.3.4", "rxjs": "^5.5.6", "serve-favicon": "^2.4.5", "zone.js": "^0.8.19" }, "devDependencies": { "@angular/cli": "^1.6.3", - "@angular/compiler-cli": "^5.1.2", - "@angular/language-service": "^5.1.2", + "@angular/compiler-cli": "^5.1.3", + "@angular/language-service": "^5.1.3", "@types/jasmine": "~2.8.3", "@types/jasminewd2": "~2.0.3", "@types/jquery": "^3.2.17", - "@types/node": "^8.5.2", + "@types/node": "^8.5.7", "codelyzer": "^4.0.2", "jasmine-core": "~2.8.0", "jasmine-spec-reporter": "~4.2.1", diff --git a/src/favicon.ico b/src/favicon.ico index 8081c7ceaf2be08bf59010158c586170d9d2d517..ab63a341287503917ba1843f7a145936bc21faef 100644 GIT binary patch literal 2238 zcmeH{T})GF7{~tz7y|N9#PU@tXj?v{K(RmxsDP9TI!!>Ug|?$m=m#sSAO+fU*g7nT zb%SPLG1f5VVRE9z>E*U$CNp!%%pl=nCSJ_AOK;t++1pcET6Vi+H+xUs_xboe&pFTg zKIa@Dj$DO>AZrrVlK?(|5;BPkO=JfB+(-xsZjB==nelsol;pkGmy(1`UMjNrS;)`J zhOi(H2eNoX=0hOJLE%9GVf%^9M^TXwVo?#q5($nq)s>+INpFyKcV6E&cWlE#?0(BT$`Q2 z^|@JiZ`{EA`~v0|7O=GRC7Fxx`^%6!jmUY@Wc1t;px*K@yqj{@#4j=c=qfk{I;=)&5aFgZf;;}YYQ)5{*G6#Ug7oY zKk(<9H+cK@E&h7<4)5Q;M`h&^R99DW^_G=NP+L>Y^`xk<05X}B==Izl>Pc@;ww!>H z^r@Ykf%-xxq|#EHBRvZCP=2%u!TjJEesHFp@GdkrAIEXB|KNF^QYksR_d_k$udMw% zuD`*41$#R>Vn=y-8P{){&5FF-986EU;dW1P{5jd*!-o&JSN8wq-#-DCWp8(N3Nn+E z6Ud(+G~(hDb29f&rLGc4Mpt~i!e+JABvi>{@+!GZCaV(1?};l&oe%NAV!=nW(_yV1 z)pJ8vSF1aesm$?i=d-M@fp!%4Oc>2(!%&~uYBYBr3#D$a%oih+hN6vneVuMdFY2@E zjxjL-evK>0O(vtUMxU-DJO;CD#;}Z{ZMspj(P%PWl-HEc#Rg1S6vOo8I=$RjqtjJX zT&gwl0?`q^-bty^<(P1dQ_gX6>71s;XdY;w#!E9Q*Y)s2lh@s(bovgBnqB z2-DIYmu!b$t#UdB`z7*mgKV3N%Uzn4$OA-9+G$m2Q$>b}?fVy3I5iQxG(gi=D5sn! zqv>s4KjJKnaG!;yG?SEE&>i7A=SWAGGkZ-m?XuW)86y#{9jjPp!e^{fxM<3588px# zPDDeqH=NG0cZHSK%OkzL)DAE4?O>J-sNM4-2PrL*-xQ5mmSLHU0fWIXFkl-TFc3`` z%SpuD1>YU-+S1g@{4Mv*JO16AC8zoIdFJ+cW@&~*hf9wMOA#_^b)euvj5Eqmc^STE z_3*7ISB#qLUP<%a+4s+9Z%4J9Vfemvp(iFO%J2yNZFzw<)i+VTXf+`4`V)P=^vHJ+ z4THL>jm_~fg1O!PuzjYD5p*(w&%^dE$q3Z`^s9dU`YwOi^b6M(GXkD8e^i0tZ~niM Fe*>@y#0dZZ literal 5430 zcmc(je{54#6vvCoAI3i*G5%$U7!sA3wtMZ$fH6V9C`=eXGJb@R1%(I_{vnZtpD{6n z5Pl{DmxzBDbrB>}`90e12m8T*36WoeDLA&SD_hw{H^wM!cl_RWcVA!I+x87ee975; z@4kD^=bYPn&pmG@(+JZ`rqQEKxW<}RzhW}I!|ulN=fmjVi@x{p$cC`)5$a!)X&U+blKNvN5tg=uLvuLnuqRM;Yc*swiexsoh#XPNu{9F#c`G zQLe{yWA(Y6(;>y|-efAy11k<09(@Oo1B2@0`PtZSkqK&${ zgEY}`W@t{%?9u5rF?}Y7OL{338l*JY#P!%MVQY@oqnItpZ}?s z!r?*kwuR{A@jg2Chlf0^{q*>8n5Ir~YWf*wmsh7B5&EpHfd5@xVaj&gqsdui^spyL zB|kUoblGoO7G(MuKTfa9?pGH0@QP^b#!lM1yHWLh*2iq#`C1TdrnO-d#?Oh@XV2HK zKA{`eo{--^K&MW66Lgsktfvn#cCAc*(}qsfhrvOjMGLE?`dHVipu1J3Kgr%g?cNa8 z)pkmC8DGH~fG+dlrp(5^-QBeEvkOvv#q7MBVLtm2oD^$lJZx--_=K&Ttd=-krx(Bb zcEoKJda@S!%%@`P-##$>*u%T*mh+QjV@)Qa=Mk1?#zLk+M4tIt%}wagT{5J%!tXAE;r{@=bb%nNVxvI+C+$t?!VJ@0d@HIyMJTI{vEw0Ul ze(ha!e&qANbTL1ZneNl45t=#Ot??C0MHjjgY8%*mGisN|S6%g3;Hlx#fMNcL<87MW zZ>6moo1YD?P!fJ#Jb(4)_cc50X5n0KoDYfdPoL^iV`k&o{LPyaoqMqk92wVM#_O0l z09$(A-D+gVIlq4TA&{1T@BsUH`Bm=r#l$Z51J-U&F32+hfUP-iLo=jg7Xmy+WLq6_tWv&`wDlz#`&)Jp~iQf zZP)tu>}pIIJKuw+$&t}GQuqMd%Z>0?t%&BM&Wo^4P^Y z)c6h^f2R>X8*}q|bblAF?@;%?2>$y+cMQbN{X$)^R>vtNq_5AB|0N5U*d^T?X9{xQnJYeU{ zoZL#obI;~Pp95f1`%X3D$Mh*4^?O?IT~7HqlWguezmg?Ybq|7>qQ(@pPHbE9V?f|( z+0xo!#m@Np9PljsyxBY-UA*{U*la#8Wz2sO|48_-5t8%_!n?S$zlGe+NA%?vmxjS- zHE5O3ZarU=X}$7>;Okp(UWXJxI%G_J-@IH;%5#Rt$(WUX?6*Ux!IRd$dLP6+SmPn= z8zjm4jGjN772R{FGkXwcNv8GBcZI#@Y2m{RNF_w8(Z%^A*!bS*!}s6sh*NnURytky humW;*g7R+&|Ledvc-