From 40916a0c83db435639fd898bf735ad8cf5b41e7c Mon Sep 17 00:00:00 2001 From: Henry Whitaker Date: Wed, 8 Jul 2020 12:05:47 +0100 Subject: [PATCH] Copied over changed files from `dev` --- README.md | 29 ++- conf/site/README.md | 25 +++ .../Commands/SpeedtestLatestCommand.php | 19 +- conf/site/changelog.json | 10 + conf/site/composer.json | 2 +- conf/site/composer.lock | 199 +++++++++++++----- conf/site/config/speedtest.php | 2 +- conf/site/package-lock.json | 69 ++++-- conf/site/package.json | 4 +- 9 files changed, 269 insertions(+), 90 deletions(-) diff --git a/README.md b/README.md index 8a3fe754..74b746b7 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Speedtest Tracker -[![Docker pulls](https://img.shields.io/docker/pulls/henrywhitaker3/speedtest-tracker?style=flat-square)](https://hub.docker.com/r/henrywhitaker3/speedtest-tracker) [![last_commit](https://img.shields.io/github/last-commit/henrywhitaker3/Speedtest-Tracker?style=flat-square)](https://github.com/henrywhitaker3/Speedtest-Tracker/commits) [![issues](https://img.shields.io/github/issues/henrywhitaker3/Speedtest-Tracker?style=flat-square)](https://github.com/henrywhitaker3/Speedtest-Tracker/issues) [![commit_freq](https://img.shields.io/github/commit-activity/m/henrywhitaker3/Speedtest-Tracker?style=flat-square)](https://github.com/henrywhitaker3/Speedtest-Tracker/commits) ![version](https://img.shields.io/badge/version-v1.7.6-success?style=flat-square) [![license](https://img.shields.io/github/license/henrywhitaker3/Speedtest-Tracker?style=flat-square)](https://github.com/henrywhitaker3/Speedtest-Tracker/blob/master/LICENSE) +[![Docker pulls](https://img.shields.io/docker/pulls/henrywhitaker3/speedtest-tracker?style=flat-square)](https://hub.docker.com/r/henrywhitaker3/speedtest-tracker) [![last_commit](https://img.shields.io/github/last-commit/henrywhitaker3/Speedtest-Tracker?style=flat-square)](https://github.com/henrywhitaker3/Speedtest-Tracker/commits) [![issues](https://img.shields.io/github/issues/henrywhitaker3/Speedtest-Tracker?style=flat-square)](https://github.com/henrywhitaker3/Speedtest-Tracker/issues) [![commit_freq](https://img.shields.io/github/commit-activity/m/henrywhitaker3/Speedtest-Tracker?style=flat-square)](https://github.com/henrywhitaker3/Speedtest-Tracker/commits) ![version](https://img.shields.io/badge/version-v1.7.7-success?style=flat-square) [![license](https://img.shields.io/github/license/henrywhitaker3/Speedtest-Tracker?style=flat-square)](https://github.com/henrywhitaker3/Speedtest-Tracker/blob/master/LICENSE) This program runs a speedtest check every hour and graphs the results. The back-end is written in [Laravel](https://laravel.com/) and the front-end uses [React](https://reactjs.org/). It uses [Ookla's Speedtest cli](https://www.speedtest.net/apps/cli) to get the data and uses [Chart.js](https://www.chartjs.org/) to plot the results. @@ -31,7 +31,32 @@ docker create \ henrywhitaker3/speedtest-tracker ``` -## Parameters +### Docker compose + +```yml + speedtest: + container_name: speedtest + image: henrywhitaker3/speedtest-tracker:dev + ports: + - 8765:80 + volumes: + - /path/to/data:/config + environment: + - TZ= + - PGID= + - PUID= + - SLACK_WEBHOOK= + - BASE_PATH=/speedtest + - OOKLA_EULA_GDPR=true + logging: + driver: json-file + options: + max-file: 10 + max-size: 200k + restart: unless-stopped +``` + +### Parameters Container images are configured using parameters passed at runtime (such as those above). These parameters are separated by a colon and indicate `:` respectively. For example, `-p 8080:80` would expose port `80` from inside the container to be accessible from the host's IP on port `8080` outside the container. diff --git a/conf/site/README.md b/conf/site/README.md index 3b5dcce5..7dd45200 100644 --- a/conf/site/README.md +++ b/conf/site/README.md @@ -35,6 +35,31 @@ docker create \ henrywhitaker3/speedtest-tracker ``` +### Using Docker Compose + +```yml + speedtest: + container_name: speedtest + image: henrywhitaker3/speedtest-tracker:dev + ports: + - 8765:80 + volumes: + - /path/to/data:/config + environment: + - TZ= + - PGID= + - PUID= + - SLACK_WEBHOOK= + - BASE_PATH=/speedtest + - OOKLA_EULA_GDPR=true + logging: + driver: json-file + options: + max-file: 10 + max-size: 200k + restart: unless-stopped +``` + #### Parameters Container images are configured using parameters passed at runtime (such as those above). These parameters are separated by a colon and indicate `:` respectively. For example, `-p 8080:80` would expose port `80` from inside the container to be accessible from the host's IP on port `8080` outside the container. diff --git a/conf/site/app/Console/Commands/SpeedtestLatestCommand.php b/conf/site/app/Console/Commands/SpeedtestLatestCommand.php index c96eacc6..57d04e55 100644 --- a/conf/site/app/Console/Commands/SpeedtestLatestCommand.php +++ b/conf/site/app/Console/Commands/SpeedtestLatestCommand.php @@ -42,10 +42,21 @@ class SpeedtestLatestCommand extends Command $latest = SpeedtestHelper::latest(); if($latest) { - $this->info('Last speedtest run at: ' . $latest->created_at); - $this->info('Ping: ' . $latest->ping . ' ms'); - $this->info('Download: ' . $latest->download . ' Mbit/s'); - $this->info('Upload: ' . $latest->upload . ' Mbit/s'); + if($latest->scheduled) { + $extra = '(scheduled)'; + } else { + $extra = '(manual)'; + } + + $this->info('Last speedtest run at: ' . $latest->created_at . ' ' . $extra); + + if($latest->failed) { + $this->error('Speedtest failed'); + } else { + $this->info('Ping: ' . $latest->ping . ' ms'); + $this->info('Download: ' . $latest->download . ' Mbit/s'); + $this->info('Upload: ' . $latest->upload . ' Mbit/s'); + } } else { $this->info('No speedtests have been run yet.'); diff --git a/conf/site/changelog.json b/conf/site/changelog.json index a9813517..ee8f793c 100644 --- a/conf/site/changelog.json +++ b/conf/site/changelog.json @@ -1,4 +1,14 @@ { + "1.7.7": [ + { + "description": "Fixed speedtest:latest output", + "link": "" + }, + { + "description": "Updated dependencies", + "link": "" + } + ], "1.7.6": [ { "description": "Fixed issue with page failing to load", diff --git a/conf/site/composer.json b/conf/site/composer.json index 8d1bb40a..4105f9cb 100644 --- a/conf/site/composer.json +++ b/conf/site/composer.json @@ -13,7 +13,7 @@ "dragonmantank/cron-expression": "^2", "fideloper/proxy": "^4.2", "fruitcake/laravel-cors": "^2.0", - "guzzlehttp/guzzle": "^6.3", + "guzzlehttp/guzzle": "^7.0", "laravel-notification-channels/telegram": "^0.4.0", "laravel/framework": "^7.0", "laravel/slack-notification-channel": "^2.0", diff --git a/conf/site/composer.lock b/conf/site/composer.lock index 2493670a..5b6947b9 100644 --- a/conf/site/composer.lock +++ b/conf/site/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "1f8e2d768bdcfbd5bf18db3f114479c8", + "content-hash": "d1d54df76d42dd6744e4fb47afdf6045", "packages": [ { "name": "asm89/stack-cors", @@ -834,37 +834,44 @@ }, { "name": "guzzlehttp/guzzle", - "version": "6.5.5", + "version": "7.0.1", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e" + "reference": "2d9d3c186a6637a43193e66b097c50e4451eaab2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", - "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/2d9d3c186a6637a43193e66b097c50e4451eaab2", + "reference": "2d9d3c186a6637a43193e66b097c50e4451eaab2", "shasum": "" }, "require": { "ext-json": "*", "guzzlehttp/promises": "^1.0", "guzzlehttp/psr7": "^1.6.1", - "php": ">=5.5", - "symfony/polyfill-intl-idn": "^1.17.0" + "php": "^7.2.5", + "psr/http-client": "^1.0" + }, + "provide": { + "psr/http-client-implementation": "1.0" }, "require-dev": { + "ergebnis/composer-normalize": "^2.0", "ext-curl": "*", - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.4 || ^7.0", + "php-http/client-integration-tests": "dev-phpunit8", + "phpunit/phpunit": "^8.5.5", "psr/log": "^1.1" }, "suggest": { + "ext-curl": "Required for CURL handler support", + "ext-intl": "Required for Internationalized Domain Name (IDN) support", "psr/log": "Required for using the Log middleware" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "6.5-dev" + "dev-master": "7.0-dev" } }, "autoload": { @@ -884,6 +891,11 @@ "name": "Michael Dowling", "email": "mtdowling@gmail.com", "homepage": "https://github.com/mtdowling" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" } ], "description": "Guzzle is a PHP HTTP client library", @@ -894,10 +906,12 @@ "framework", "http", "http client", + "psr-18", + "psr-7", "rest", "web service" ], - "time": "2020-06-16T21:01:06+00:00" + "time": "2020-06-27T10:33:25+00:00" }, { "name": "guzzlehttp/promises", @@ -1084,16 +1098,16 @@ }, { "name": "laravel/framework", - "version": "v7.18.0", + "version": "v7.19.0", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "116b508bafd81de97b1c09744445d32a91076b60" + "reference": "67d6d9688122dcf6c449b74ddc873fc9934e81e6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/116b508bafd81de97b1c09744445d32a91076b60", - "reference": "116b508bafd81de97b1c09744445d32a91076b60", + "url": "https://api.github.com/repos/laravel/framework/zipball/67d6d9688122dcf6c449b74ddc873fc9934e81e6", + "reference": "67d6d9688122dcf6c449b74ddc873fc9934e81e6", "shasum": "" }, "require": { @@ -1237,7 +1251,7 @@ "framework", "laravel" ], - "time": "2020-06-30T13:52:36+00:00" + "time": "2020-07-07T14:11:36+00:00" }, { "name": "laravel/slack-notification-channel", @@ -1298,16 +1312,16 @@ }, { "name": "laravel/tinker", - "version": "v2.4.0", + "version": "v2.4.1", "source": { "type": "git", "url": "https://github.com/laravel/tinker.git", - "reference": "cde90a7335a2130a4488beb68f4b2141869241db" + "reference": "3c9ef136ca59366bc1b50b7f2500a946d5149c62" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/tinker/zipball/cde90a7335a2130a4488beb68f4b2141869241db", - "reference": "cde90a7335a2130a4488beb68f4b2141869241db", + "url": "https://api.github.com/repos/laravel/tinker/zipball/3c9ef136ca59366bc1b50b7f2500a946d5149c62", + "reference": "3c9ef136ca59366bc1b50b7f2500a946d5149c62", "shasum": "" }, "require": { @@ -1358,7 +1372,7 @@ "laravel", "psysh" ], - "time": "2020-04-07T15:01:31+00:00" + "time": "2020-07-07T15:10:00+00:00" }, { "name": "laravel/ui", @@ -1811,16 +1825,16 @@ }, { "name": "nesbot/carbon", - "version": "2.35.0", + "version": "2.36.1", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "4b9bd835261ef23d36397a46a76b496a458305e5" + "reference": "ee7378a36cc62952100e718bcc58be4c7210e55f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4b9bd835261ef23d36397a46a76b496a458305e5", - "reference": "4b9bd835261ef23d36397a46a76b496a458305e5", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/ee7378a36cc62952100e718bcc58be4c7210e55f", + "reference": "ee7378a36cc62952100e718bcc58be4c7210e55f", "shasum": "" }, "require": { @@ -1832,9 +1846,10 @@ "require-dev": { "doctrine/orm": "^2.7", "friendsofphp/php-cs-fixer": "^2.14 || ^3.0", - "kylekatarnls/multi-tester": "^1.1", + "kylekatarnls/multi-tester": "^2.0", "phpmd/phpmd": "^2.8", - "phpstan/phpstan": "^0.11", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12.30", "phpunit/phpunit": "^7.5 || ^8.0", "squizlabs/php_codesniffer": "^3.4" }, @@ -1851,6 +1866,11 @@ "providers": [ "Carbon\\Laravel\\ServiceProvider" ] + }, + "phpstan": { + "includes": [ + "extension.neon" + ] } }, "autoload": { @@ -1890,20 +1910,20 @@ "type": "tidelift" } ], - "time": "2020-05-24T18:27:52+00:00" + "time": "2020-07-04T12:29:56+00:00" }, { "name": "nikic/php-parser", - "version": "v4.4.0", + "version": "v4.6.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120" + "reference": "c346bbfafe2ff60680258b631afb730d186ed864" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120", - "reference": "bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/c346bbfafe2ff60680258b631afb730d186ed864", + "reference": "c346bbfafe2ff60680258b631afb730d186ed864", "shasum": "" }, "require": { @@ -1942,7 +1962,7 @@ "parser", "php" ], - "time": "2020-04-10T16:34:50+00:00" + "time": "2020-07-02T17:12:47+00:00" }, { "name": "opis/closure", @@ -2165,6 +2185,55 @@ ], "time": "2019-01-08T18:20:26+00:00" }, + { + "name": "psr/http-client", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "time": "2020-06-29T06:28:15+00:00" + }, { "name": "psr/http-message", "version": "1.0.1", @@ -2312,16 +2381,16 @@ }, { "name": "psy/psysh", - "version": "v0.10.3", + "version": "v0.10.4", "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "2bde2fa03e05dff0aee834598b951d6fc7c6fe02" + "reference": "a8aec1b2981ab66882a01cce36a49b6317dc3560" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/2bde2fa03e05dff0aee834598b951d6fc7c6fe02", - "reference": "2bde2fa03e05dff0aee834598b951d6fc7c6fe02", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/a8aec1b2981ab66882a01cce36a49b6317dc3560", + "reference": "a8aec1b2981ab66882a01cce36a49b6317dc3560", "shasum": "" }, "require": { @@ -2380,7 +2449,7 @@ "interactive", "shell" ], - "time": "2020-04-07T06:44:48+00:00" + "time": "2020-05-03T19:32:03+00:00" }, { "name": "ralouphie/getallheaders", @@ -2794,16 +2863,16 @@ }, { "name": "symfony/deprecation-contracts", - "version": "v2.1.2", + "version": "v2.1.3", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "dd99cb3a0aff6cadd2a8d7d7ed72c2161e218337" + "reference": "5e20b83385a77593259c9f8beb2c43cd03b2ac14" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/dd99cb3a0aff6cadd2a8d7d7ed72c2161e218337", - "reference": "dd99cb3a0aff6cadd2a8d7d7ed72c2161e218337", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5e20b83385a77593259c9f8beb2c43cd03b2ac14", + "reference": "5e20b83385a77593259c9f8beb2c43cd03b2ac14", "shasum": "" }, "require": { @@ -2813,6 +2882,10 @@ "extra": { "branch-alias": { "dev-master": "2.1-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -2850,7 +2923,7 @@ "type": "tidelift" } ], - "time": "2020-05-27T08:34:37+00:00" + "time": "2020-06-06T08:49:21+00:00" }, { "name": "symfony/error-handler", @@ -3011,16 +3084,16 @@ }, { "name": "symfony/event-dispatcher-contracts", - "version": "v2.1.2", + "version": "v2.1.3", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "405952c4e90941a17e52ef7489a2bd94870bb290" + "reference": "f6f613d74cfc5a623fc36294d3451eb7fa5a042b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/405952c4e90941a17e52ef7489a2bd94870bb290", - "reference": "405952c4e90941a17e52ef7489a2bd94870bb290", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/f6f613d74cfc5a623fc36294d3451eb7fa5a042b", + "reference": "f6f613d74cfc5a623fc36294d3451eb7fa5a042b", "shasum": "" }, "require": { @@ -3034,6 +3107,10 @@ "extra": { "branch-alias": { "dev-master": "2.1-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -3079,7 +3156,7 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2020-07-06T13:23:11+00:00" }, { "name": "symfony/finder", @@ -4397,16 +4474,16 @@ }, { "name": "symfony/service-contracts", - "version": "v2.1.2", + "version": "v2.1.3", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "66a8f0957a3ca54e4f724e49028ab19d75a8918b" + "reference": "58c7475e5457c5492c26cc740cc0ad7464be9442" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/66a8f0957a3ca54e4f724e49028ab19d75a8918b", - "reference": "66a8f0957a3ca54e4f724e49028ab19d75a8918b", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/58c7475e5457c5492c26cc740cc0ad7464be9442", + "reference": "58c7475e5457c5492c26cc740cc0ad7464be9442", "shasum": "" }, "require": { @@ -4420,6 +4497,10 @@ "extra": { "branch-alias": { "dev-master": "2.1-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4465,7 +4546,7 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2020-07-06T13:23:11+00:00" }, { "name": "symfony/string", @@ -4646,16 +4727,16 @@ }, { "name": "symfony/translation-contracts", - "version": "v2.1.2", + "version": "v2.1.3", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "e5ca07c8f817f865f618aa072c2fe8e0e637340e" + "reference": "616a9773c853097607cf9dd6577d5b143ffdcd63" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/e5ca07c8f817f865f618aa072c2fe8e0e637340e", - "reference": "e5ca07c8f817f865f618aa072c2fe8e0e637340e", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/616a9773c853097607cf9dd6577d5b143ffdcd63", + "reference": "616a9773c853097607cf9dd6577d5b143ffdcd63", "shasum": "" }, "require": { @@ -4668,6 +4749,10 @@ "extra": { "branch-alias": { "dev-master": "2.1-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4713,7 +4798,7 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2020-07-06T13:23:11+00:00" }, { "name": "symfony/var-dumper", diff --git a/conf/site/config/speedtest.php b/conf/site/config/speedtest.php index cfd7f337..3bc1c209 100644 --- a/conf/site/config/speedtest.php +++ b/conf/site/config/speedtest.php @@ -7,7 +7,7 @@ return [ |-------------------------------------------------------------------------- */ - 'version' => '1.7.6', + 'version' => '1.7.7', /* |-------------------------------------------------------------------------- diff --git a/conf/site/package-lock.json b/conf/site/package-lock.json index 94a59c81..cfd8699b 100644 --- a/conf/site/package-lock.json +++ b/conf/site/package-lock.json @@ -1406,9 +1406,9 @@ "dev": true }, "@popperjs/core": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.3.3.tgz", - "integrity": "sha512-yEvVC8RfhRPkD9TUn7cFcLcgoJePgZRAOR7T21rcRY5I8tpuhzeWfGa7We7tB14fe9R7wENdqUABcMdwD4SQLw==" + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.4.4.tgz", + "integrity": "sha512-1oO6+dN5kdIA3sKPZhRGJTfGVP4SWV6KqlMOwry4J3HfyD68sl/3KmG7DeYUzvN+RbhXDnv/D8vNNB8168tAMg==" }, "@restart/context": { "version": "2.1.4", @@ -1416,14 +1416,19 @@ "integrity": "sha512-INJYZQJP7g+IoDUh/475NlGiTeMfwTXUEr3tmRneckHIxNolGOW9CTq83S8cxq0CgJwwcMzMJFchxvlwe7Rk8Q==" }, "@restart/hooks": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/@restart/hooks/-/hooks-0.3.22.tgz", - "integrity": "sha512-tW0T3hP6emYNOc76/iC96rlu+f7JYLSVk/Wnn+7dj1gJUcw4CkQNLy16vx2mBLtVKsFMZ9miVEZXat8blruDHQ==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@restart/hooks/-/hooks-0.3.25.tgz", + "integrity": "sha512-m2v3N5pxTsIiSH74/sb1yW8D9RxkJidGW+5Mfwn/lHb2QzhZNlaU1su7abSyT9EGf0xS/0waLjrf7/XxQHUk7w==", "requires": { "lodash": "^4.17.15", "lodash-es": "^4.17.15" } }, + "@types/classnames": { + "version": "2.2.10", + "resolved": "https://registry.npmjs.org/@types/classnames/-/classnames-2.2.10.tgz", + "integrity": "sha512-1UzDldn9GfYYEsWWnn/P4wkTlkZDH7lDb0wBMGbtIQc9zXEQq7FlKBdZUn6OBqD8sKZZ2RQO2mAjGpXiDGoRmQ==" + }, "@types/events": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", @@ -1441,6 +1446,11 @@ "@types/node": "*" } }, + "@types/invariant": { + "version": "2.2.33", + "resolved": "https://registry.npmjs.org/@types/invariant/-/invariant-2.2.33.tgz", + "integrity": "sha512-/jUNmS8d4bCKdqslfxW6dg/9Gksfzxz67IYfqApHn+HvHlMVXwYv2zpTDnS/yaK9BB0i0GlBTaYci0EFE62Hmw==" + }, "@types/json-schema": { "version": "7.0.5", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", @@ -1471,14 +1481,22 @@ "dev": true }, "@types/react": { - "version": "16.9.34", - "resolved": "https://registry.npmjs.org/@types/react/-/react-16.9.34.tgz", - "integrity": "sha512-8AJlYMOfPe1KGLKyHpflCg5z46n0b5DbRfqDksxBLBTUpB75ypDBAO9eCUcjNwE6LCUslwTz00yyG/X9gaVtow==", + "version": "16.9.41", + "resolved": "https://registry.npmjs.org/@types/react/-/react-16.9.41.tgz", + "integrity": "sha512-6cFei7F7L4wwuM+IND/Q2cV1koQUvJ8iSV+Gwn0c3kvABZ691g7sp3hfEQHOUBJtccl1gPi+EyNjMIl9nGA0ug==", "requires": { "@types/prop-types": "*", "csstype": "^2.2.0" } }, + "@types/react-transition-group": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.0.tgz", + "integrity": "sha512-/QfLHGpu+2fQOqQaXh8MG9q03bFENooTb/it4jr5kKaZlDQfWvjqWZg48AwzPVMBHlRuTRAY7hRHCEOXz5kV6w==", + "requires": { + "@types/react": "*" + } + }, "@types/warning": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/warning/-/warning-3.0.0.tgz", @@ -8324,20 +8342,25 @@ } }, "react-bootstrap": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-1.0.1.tgz", - "integrity": "sha512-xMHwsvDN7sIv26P9wWiosWjITZije2dRCjEJHVfV2KFoSJY+8uv2zttEw0XMB7xviQcW3zuIGLJXuj8vf6lYEg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-1.1.1.tgz", + "integrity": "sha512-DsJ1aaXQPa3ob/Bh2JXnbWmZJHNxS18HbiJdyBhumf6OHk6rVXo329uwa2lHI0ZuxPO3mA8OJLOT0lighV/e8Q==", "requires": { "@babel/runtime": "^7.4.2", "@restart/context": "^2.1.4", "@restart/hooks": "^0.3.21", - "@types/react": "^16.9.23", + "@types/classnames": "^2.2.10", + "@types/invariant": "^2.2.33", + "@types/prop-types": "^15.7.3", + "@types/react": "^16.9.35", + "@types/react-transition-group": "^4.2.4", + "@types/warning": "^3.0.0", "classnames": "^2.2.6", "dom-helpers": "^5.1.2", "invariant": "^2.2.4", "prop-types": "^15.7.2", "prop-types-extra": "^1.1.0", - "react-overlays": "^3.1.2", + "react-overlays": "^3.2.0", "react-transition-group": "^4.0.0", "uncontrollable": "^7.0.0", "warning": "^4.0.3" @@ -8375,9 +8398,9 @@ "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" }, "react-overlays": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-3.1.3.tgz", - "integrity": "sha512-FH82W0R9lFJm/YCTDeSvEKQxXyTaZmjMEQlAjRhgjQhknTkyMsft+X4Wep5l95QveqdxGVxl/P41WUOzTGJUcw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-3.2.0.tgz", + "integrity": "sha512-YTgCmw6l4uBOYylSnc3V8WLX+A0EoGnzDrqkYz0K7MUKbMBZFpaxLXH4EF9eZbspd+syZHQ5XAABI7n/zak1EA==", "requires": { "@babel/runtime": "^7.4.5", "@popperjs/core": "^2.0.0", @@ -8500,9 +8523,9 @@ } }, "react-transition-group": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.3.0.tgz", - "integrity": "sha512-1qRV1ZuVSdxPlPf4O8t7inxUGpdyO5zG9IoNfJxSO0ImU2A1YWkEQvFPuIPZmMLkg5hYs7vv5mMOyfgSkvAwvw==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.1.tgz", + "integrity": "sha512-Djqr7OQ2aPUiYurhPalTrVy9ddmFCCzwhqQmtN+J3+3DzLO209Fdr70QrN8Z3DsglWql6iY1lDWAfpFiBtuKGw==", "requires": { "@babel/runtime": "^7.5.5", "dom-helpers": "^5.0.1", @@ -8926,9 +8949,9 @@ } }, "sass-loader": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-9.0.1.tgz", - "integrity": "sha512-wXFo2VAAzAUsUApOXr5PkGXDa1ad20RYhdJTubopY04i+Suk8b8g3Vtobu3kfMk48S0n5rQyAQeGBdg8WzL8gA==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-9.0.2.tgz", + "integrity": "sha512-nphcum3jNI442njnrZ5wJgSNX5lfEOHOKHCLf+PrTIaleploKqAMUuT9CVKjf+lyi6c2MCGPHh1vb9nGsjnZJA==", "dev": true, "requires": { "klona": "^1.1.1", diff --git a/conf/site/package.json b/conf/site/package.json index 8dc35797..e1125092 100644 --- a/conf/site/package.json +++ b/conf/site/package.json @@ -22,13 +22,13 @@ "react-dom": "^16.2.0", "resolve-url-loader": "^3.1.0", "sass": "^1.26.10", - "sass-loader": "^9.0.1" + "sass-loader": "^9.0.2" }, "dependencies": { "@babel/plugin-proposal-class-properties": "^7.10.4", "chart.js": "^2.9.3", "csv-file-validator": "^1.8.0", - "react-bootstrap": "^1.0.1", + "react-bootstrap": "^1.1.1", "react-chartjs-2": "^2.9.0", "react-router": "^5.2.0", "react-router-dom": "^5.2.0",