mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-05 18:23:48 +00:00
backend notifications implementation
This commit is contained in:
338
composer.lock
generated
338
composer.lock
generated
@@ -280,16 +280,16 @@
|
||||
},
|
||||
{
|
||||
"name": "aws/aws-sdk-php",
|
||||
"version": "3.211.1",
|
||||
"version": "3.212.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/aws/aws-sdk-php.git",
|
||||
"reference": "fa6b2cc2df7563b775b346d60da4d36c06062ce1"
|
||||
"reference": "ed69594b385233bb895342e18008cd811e8225e7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/fa6b2cc2df7563b775b346d60da4d36c06062ce1",
|
||||
"reference": "fa6b2cc2df7563b775b346d60da4d36c06062ce1",
|
||||
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/ed69594b385233bb895342e18008cd811e8225e7",
|
||||
"reference": "ed69594b385233bb895342e18008cd811e8225e7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -365,9 +365,9 @@
|
||||
"support": {
|
||||
"forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
|
||||
"issues": "https://github.com/aws/aws-sdk-php/issues",
|
||||
"source": "https://github.com/aws/aws-sdk-php/tree/3.211.1"
|
||||
"source": "https://github.com/aws/aws-sdk-php/tree/3.212.5"
|
||||
},
|
||||
"time": "2022-03-01T19:17:13+00:00"
|
||||
"time": "2022-03-09T19:19:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "bacon/bacon-qr-code",
|
||||
@@ -1413,16 +1413,16 @@
|
||||
},
|
||||
{
|
||||
"name": "doctrine/dbal",
|
||||
"version": "2.13.7",
|
||||
"version": "2.13.8",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/doctrine/dbal.git",
|
||||
"reference": "6e22f6012b42d7932674857989fcf184e9e9b1c3"
|
||||
"reference": "dc9b3c3c8592c935a6e590441f9abc0f9eba335b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/doctrine/dbal/zipball/6e22f6012b42d7932674857989fcf184e9e9b1c3",
|
||||
"reference": "6e22f6012b42d7932674857989fcf184e9e9b1c3",
|
||||
"url": "https://api.github.com/repos/doctrine/dbal/zipball/dc9b3c3c8592c935a6e590441f9abc0f9eba335b",
|
||||
"reference": "dc9b3c3c8592c935a6e590441f9abc0f9eba335b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -1435,13 +1435,13 @@
|
||||
"require-dev": {
|
||||
"doctrine/coding-standard": "9.0.0",
|
||||
"jetbrains/phpstorm-stubs": "2021.1",
|
||||
"phpstan/phpstan": "1.3.0",
|
||||
"phpunit/phpunit": "^7.5.20|^8.5|9.5.11",
|
||||
"phpstan/phpstan": "1.4.6",
|
||||
"phpunit/phpunit": "^7.5.20|^8.5|9.5.16",
|
||||
"psalm/plugin-phpunit": "0.16.1",
|
||||
"squizlabs/php_codesniffer": "3.6.2",
|
||||
"symfony/cache": "^4.4",
|
||||
"symfony/console": "^2.0.5|^3.0|^4.0|^5.0",
|
||||
"vimeo/psalm": "4.16.1"
|
||||
"vimeo/psalm": "4.22.0"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/console": "For helpful console commands such as SQL execution and import of files."
|
||||
@@ -1502,7 +1502,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/doctrine/dbal/issues",
|
||||
"source": "https://github.com/doctrine/dbal/tree/2.13.7"
|
||||
"source": "https://github.com/doctrine/dbal/tree/2.13.8"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -1518,7 +1518,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-01-06T09:08:04+00:00"
|
||||
"time": "2022-03-09T15:25:46+00:00"
|
||||
},
|
||||
{
|
||||
"name": "doctrine/deprecations",
|
||||
@@ -1750,29 +1750,30 @@
|
||||
},
|
||||
{
|
||||
"name": "doctrine/instantiator",
|
||||
"version": "1.4.0",
|
||||
"version": "1.4.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/doctrine/instantiator.git",
|
||||
"reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b"
|
||||
"reference": "10dcfce151b967d20fde1b34ae6640712c3891bc"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b",
|
||||
"reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b",
|
||||
"url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc",
|
||||
"reference": "10dcfce151b967d20fde1b34ae6640712c3891bc",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.1 || ^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"doctrine/coding-standard": "^8.0",
|
||||
"doctrine/coding-standard": "^9",
|
||||
"ext-pdo": "*",
|
||||
"ext-phar": "*",
|
||||
"phpbench/phpbench": "^0.13 || 1.0.0-alpha2",
|
||||
"phpstan/phpstan": "^0.12",
|
||||
"phpstan/phpstan-phpunit": "^0.12",
|
||||
"phpunit/phpunit": "^7.0 || ^8.0 || ^9.0"
|
||||
"phpbench/phpbench": "^0.16 || ^1",
|
||||
"phpstan/phpstan": "^1.4",
|
||||
"phpstan/phpstan-phpunit": "^1",
|
||||
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
|
||||
"vimeo/psalm": "^4.22"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
@@ -1799,7 +1800,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/doctrine/instantiator/issues",
|
||||
"source": "https://github.com/doctrine/instantiator/tree/1.4.0"
|
||||
"source": "https://github.com/doctrine/instantiator/tree/1.4.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -1815,7 +1816,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2020-11-10T18:47:58+00:00"
|
||||
"time": "2022-03-03T08:28:38+00:00"
|
||||
},
|
||||
{
|
||||
"name": "doctrine/lexer",
|
||||
@@ -2281,21 +2282,21 @@
|
||||
},
|
||||
{
|
||||
"name": "friendsofphp/php-cs-fixer",
|
||||
"version": "v3.6.0",
|
||||
"version": "v3.7.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git",
|
||||
"reference": "1975e4453eb2726d1f50da0ce7fa91295029a4fa"
|
||||
"reference": "7705d5a985132a40282d18a176eb9a4a0497747c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/1975e4453eb2726d1f50da0ce7fa91295029a4fa",
|
||||
"reference": "1975e4453eb2726d1f50da0ce7fa91295029a4fa",
|
||||
"url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/7705d5a985132a40282d18a176eb9a4a0497747c",
|
||||
"reference": "7705d5a985132a40282d18a176eb9a4a0497747c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer/semver": "^3.2",
|
||||
"composer/xdebug-handler": "^3.0",
|
||||
"composer/xdebug-handler": "^3.0.3",
|
||||
"doctrine/annotations": "^1.13",
|
||||
"ext-json": "*",
|
||||
"ext-tokenizer": "*",
|
||||
@@ -2307,8 +2308,8 @@
|
||||
"symfony/finder": "^5.4 || ^6.0",
|
||||
"symfony/options-resolver": "^5.4 || ^6.0",
|
||||
"symfony/polyfill-mbstring": "^1.23",
|
||||
"symfony/polyfill-php80": "^1.23",
|
||||
"symfony/polyfill-php81": "^1.23",
|
||||
"symfony/polyfill-php80": "^1.25",
|
||||
"symfony/polyfill-php81": "^1.25",
|
||||
"symfony/process": "^5.4 || ^6.0",
|
||||
"symfony/stopwatch": "^5.4 || ^6.0"
|
||||
},
|
||||
@@ -2358,7 +2359,7 @@
|
||||
"description": "A tool to automatically fix PHP code style",
|
||||
"support": {
|
||||
"issues": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues",
|
||||
"source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v3.6.0"
|
||||
"source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v3.7.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -2366,7 +2367,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-07T18:02:40+00:00"
|
||||
"time": "2022-03-07T16:59:59+00:00"
|
||||
},
|
||||
{
|
||||
"name": "fruitcake/laravel-cors",
|
||||
@@ -3226,16 +3227,16 @@
|
||||
},
|
||||
{
|
||||
"name": "laravel/fortify",
|
||||
"version": "v1.11.1",
|
||||
"version": "v1.11.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laravel/fortify.git",
|
||||
"reference": "eb1d07c849fee750e4cacba969490a72e88211ae"
|
||||
"reference": "35c44f36f2a93fb7d3d8b38d6b7794913c69d414"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laravel/fortify/zipball/eb1d07c849fee750e4cacba969490a72e88211ae",
|
||||
"reference": "eb1d07c849fee750e4cacba969490a72e88211ae",
|
||||
"url": "https://api.github.com/repos/laravel/fortify/zipball/35c44f36f2a93fb7d3d8b38d6b7794913c69d414",
|
||||
"reference": "35c44f36f2a93fb7d3d8b38d6b7794913c69d414",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3285,20 +3286,20 @@
|
||||
"issues": "https://github.com/laravel/fortify/issues",
|
||||
"source": "https://github.com/laravel/fortify"
|
||||
},
|
||||
"time": "2022-02-23T15:04:40+00:00"
|
||||
"time": "2022-03-04T20:27:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laravel/framework",
|
||||
"version": "v9.2.0",
|
||||
"version": "v9.4.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laravel/framework.git",
|
||||
"reference": "13372872bed31ae75df8709b9de5cde01d50646e"
|
||||
"reference": "29f0aaade82eadd20ef881b4efb88b0dad4e9a5b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laravel/framework/zipball/13372872bed31ae75df8709b9de5cde01d50646e",
|
||||
"reference": "13372872bed31ae75df8709b9de5cde01d50646e",
|
||||
"url": "https://api.github.com/repos/laravel/framework/zipball/29f0aaade82eadd20ef881b4efb88b0dad4e9a5b",
|
||||
"reference": "29f0aaade82eadd20ef881b4efb88b0dad4e9a5b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3384,7 +3385,7 @@
|
||||
"mockery/mockery": "^1.4.4",
|
||||
"orchestra/testbench-core": "^7.1",
|
||||
"pda/pheanstalk": "^4.0",
|
||||
"phpstan/phpstan": "^1.0",
|
||||
"phpstan/phpstan": "^1.4.7",
|
||||
"phpunit/phpunit": "^9.5.8",
|
||||
"predis/predis": "^1.1.9",
|
||||
"symfony/cache": "^6.0"
|
||||
@@ -3464,7 +3465,7 @@
|
||||
"issues": "https://github.com/laravel/framework/issues",
|
||||
"source": "https://github.com/laravel/framework"
|
||||
},
|
||||
"time": "2022-02-22T15:30:23+00:00"
|
||||
"time": "2022-03-08T16:17:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laravel/sanctum",
|
||||
@@ -4047,16 +4048,16 @@
|
||||
},
|
||||
{
|
||||
"name": "league/flysystem",
|
||||
"version": "3.0.10",
|
||||
"version": "3.0.11",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/thephpleague/flysystem.git",
|
||||
"reference": "bbc5026adb5a423dfcdcecec74c7e15943ff6115"
|
||||
"reference": "1ca148713c23cadeb9d7526973f81fb4a04090a3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/thephpleague/flysystem/zipball/bbc5026adb5a423dfcdcecec74c7e15943ff6115",
|
||||
"reference": "bbc5026adb5a423dfcdcecec74c7e15943ff6115",
|
||||
"url": "https://api.github.com/repos/thephpleague/flysystem/zipball/1ca148713c23cadeb9d7526973f81fb4a04090a3",
|
||||
"reference": "1ca148713c23cadeb9d7526973f81fb4a04090a3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -4117,7 +4118,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/thephpleague/flysystem/issues",
|
||||
"source": "https://github.com/thephpleague/flysystem/tree/3.0.10"
|
||||
"source": "https://github.com/thephpleague/flysystem/tree/3.0.11"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -4133,20 +4134,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-26T11:09:13+00:00"
|
||||
"time": "2022-03-04T16:40:17+00:00"
|
||||
},
|
||||
{
|
||||
"name": "league/flysystem-aws-s3-v3",
|
||||
"version": "3.0.10",
|
||||
"version": "3.0.11",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/thephpleague/flysystem-aws-s3-v3.git",
|
||||
"reference": "79c63dc761b6a389a38bd409c2bf8ced73c29261"
|
||||
"reference": "6f78e668ee70c69dd43830ebb21b41ec11f648fc"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/79c63dc761b6a389a38bd409c2bf8ced73c29261",
|
||||
"reference": "79c63dc761b6a389a38bd409c2bf8ced73c29261",
|
||||
"url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/6f78e668ee70c69dd43830ebb21b41ec11f648fc",
|
||||
"reference": "6f78e668ee70c69dd43830ebb21b41ec11f648fc",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -4187,9 +4188,9 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/thephpleague/flysystem-aws-s3-v3/issues",
|
||||
"source": "https://github.com/thephpleague/flysystem-aws-s3-v3/tree/3.0.10"
|
||||
"source": "https://github.com/thephpleague/flysystem-aws-s3-v3/tree/3.0.11"
|
||||
},
|
||||
"time": "2022-02-26T10:59:05+00:00"
|
||||
"time": "2022-03-04T16:39:25+00:00"
|
||||
},
|
||||
{
|
||||
"name": "league/mime-type-detection",
|
||||
@@ -4739,28 +4740,29 @@
|
||||
},
|
||||
{
|
||||
"name": "myclabs/deep-copy",
|
||||
"version": "1.10.2",
|
||||
"version": "1.11.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/myclabs/DeepCopy.git",
|
||||
"reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220"
|
||||
"reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/776f831124e9c62e1a2c601ecc52e776d8bb7220",
|
||||
"reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220",
|
||||
"url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614",
|
||||
"reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.1 || ^8.0"
|
||||
},
|
||||
"replace": {
|
||||
"myclabs/deep-copy": "self.version"
|
||||
"conflict": {
|
||||
"doctrine/collections": "<1.6.8",
|
||||
"doctrine/common": "<2.13.3 || >=3,<3.2.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"doctrine/collections": "^1.0",
|
||||
"doctrine/common": "^2.6",
|
||||
"phpunit/phpunit": "^7.1"
|
||||
"doctrine/collections": "^1.6.8",
|
||||
"doctrine/common": "^2.13.3 || ^3.2.2",
|
||||
"phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
@@ -4785,7 +4787,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/myclabs/DeepCopy/issues",
|
||||
"source": "https://github.com/myclabs/DeepCopy/tree/1.10.2"
|
||||
"source": "https://github.com/myclabs/DeepCopy/tree/1.11.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -4793,7 +4795,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2020-11-13T09:40:50+00:00"
|
||||
"time": "2022-03-03T13:19:32+00:00"
|
||||
},
|
||||
{
|
||||
"name": "myclabs/php-enum",
|
||||
@@ -5924,16 +5926,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-code-coverage",
|
||||
"version": "9.2.14",
|
||||
"version": "9.2.15",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
|
||||
"reference": "9f4d60b6afe5546421462b76cd4e633ebc364ab4"
|
||||
"reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/9f4d60b6afe5546421462b76cd4e633ebc364ab4",
|
||||
"reference": "9f4d60b6afe5546421462b76cd4e633ebc364ab4",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2e9da11878c4202f97915c1cb4bb1ca318a63f5f",
|
||||
"reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -5989,7 +5991,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
|
||||
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.14"
|
||||
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.15"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -5997,7 +5999,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-28T12:38:02+00:00"
|
||||
"time": "2022-03-07T09:28:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-file-iterator",
|
||||
@@ -6242,16 +6244,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
"version": "9.5.16",
|
||||
"version": "9.5.18",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||
"reference": "5ff8c545a50226c569310a35f4fa89d79f1ddfdc"
|
||||
"reference": "1b5856028273bfd855e60a887278857d872ec67a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/5ff8c545a50226c569310a35f4fa89d79f1ddfdc",
|
||||
"reference": "5ff8c545a50226c569310a35f4fa89d79f1ddfdc",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/1b5856028273bfd855e60a887278857d872ec67a",
|
||||
"reference": "1b5856028273bfd855e60a887278857d872ec67a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -6329,7 +6331,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.16"
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.18"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -6341,7 +6343,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-23T17:10:58+00:00"
|
||||
"time": "2022-03-08T06:52:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "pragmarx/google2fa",
|
||||
@@ -9119,16 +9121,16 @@
|
||||
},
|
||||
{
|
||||
"name": "spatie/laravel-backup",
|
||||
"version": "8.0.8",
|
||||
"version": "8.1.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/spatie/laravel-backup.git",
|
||||
"reference": "1e6e06cf75f6df21311a96fa99d767ff2c50078c"
|
||||
"reference": "1a546127205b9afcb8e0dee6de7f2ff93f927ea4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/spatie/laravel-backup/zipball/1e6e06cf75f6df21311a96fa99d767ff2c50078c",
|
||||
"reference": "1e6e06cf75f6df21311a96fa99d767ff2c50078c",
|
||||
"url": "https://api.github.com/repos/spatie/laravel-backup/zipball/1a546127205b9afcb8e0dee6de7f2ff93f927ea4",
|
||||
"reference": "1a546127205b9afcb8e0dee6de7f2ff93f927ea4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -9155,7 +9157,7 @@
|
||||
"league/flysystem-aws-s3-v3": "^2.0|^3.0",
|
||||
"mockery/mockery": "^1.4",
|
||||
"orchestra/testbench": "^7.0",
|
||||
"phpunit/phpunit": "^9.5.4"
|
||||
"pestphp/pest": "^1.20"
|
||||
},
|
||||
"suggest": {
|
||||
"laravel/slack-notification-channel": "Required for sending notifications via Slack"
|
||||
@@ -9198,7 +9200,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/spatie/laravel-backup/issues",
|
||||
"source": "https://github.com/spatie/laravel-backup/tree/8.0.8"
|
||||
"source": "https://github.com/spatie/laravel-backup/tree/8.1.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -9210,7 +9212,7 @@
|
||||
"type": "other"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-23T18:35:41+00:00"
|
||||
"time": "2022-03-08T10:23:50+00:00"
|
||||
},
|
||||
{
|
||||
"name": "spatie/laravel-package-tools",
|
||||
@@ -9756,16 +9758,16 @@
|
||||
},
|
||||
{
|
||||
"name": "stripe/stripe-php",
|
||||
"version": "v7.115.0",
|
||||
"version": "v7.116.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/stripe/stripe-php.git",
|
||||
"reference": "a1c528a5076b80dc156601505994870d23313a73"
|
||||
"reference": "7a39f594f213ed3f443a95adf769d1ecbc8393e7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/stripe/stripe-php/zipball/a1c528a5076b80dc156601505994870d23313a73",
|
||||
"reference": "a1c528a5076b80dc156601505994870d23313a73",
|
||||
"url": "https://api.github.com/repos/stripe/stripe-php/zipball/7a39f594f213ed3f443a95adf769d1ecbc8393e7",
|
||||
"reference": "7a39f594f213ed3f443a95adf769d1ecbc8393e7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -9810,9 +9812,9 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/stripe/stripe-php/issues",
|
||||
"source": "https://github.com/stripe/stripe-php/tree/v7.115.0"
|
||||
"source": "https://github.com/stripe/stripe-php/tree/v7.116.0"
|
||||
},
|
||||
"time": "2022-03-01T22:45:01+00:00"
|
||||
"time": "2022-03-02T15:51:15+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/console",
|
||||
@@ -10276,16 +10278,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/filesystem",
|
||||
"version": "v6.0.5",
|
||||
"version": "v6.0.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/filesystem.git",
|
||||
"reference": "6646c13f787057d64701a3a0235cf9567c6ccbbd"
|
||||
"reference": "52b888523545b0b4049ab9ce48766802484d7046"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/filesystem/zipball/6646c13f787057d64701a3a0235cf9567c6ccbbd",
|
||||
"reference": "6646c13f787057d64701a3a0235cf9567c6ccbbd",
|
||||
"url": "https://api.github.com/repos/symfony/filesystem/zipball/52b888523545b0b4049ab9ce48766802484d7046",
|
||||
"reference": "52b888523545b0b4049ab9ce48766802484d7046",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -10319,7 +10321,7 @@
|
||||
"description": "Provides basic utilities for the filesystem",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/filesystem/tree/v6.0.5"
|
||||
"source": "https://github.com/symfony/filesystem/tree/v6.0.6"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -10335,7 +10337,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-28T07:42:30+00:00"
|
||||
"time": "2022-03-02T12:58:14+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/finder",
|
||||
@@ -10562,16 +10564,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-foundation",
|
||||
"version": "v6.0.5",
|
||||
"version": "v6.0.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/http-foundation.git",
|
||||
"reference": "b460fb15905eef449c4c43a4f0c113eccee103b9"
|
||||
"reference": "a000fcf2298a1bc79a1dcff22608792506534719"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/b460fb15905eef449c4c43a4f0c113eccee103b9",
|
||||
"reference": "b460fb15905eef449c4c43a4f0c113eccee103b9",
|
||||
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/a000fcf2298a1bc79a1dcff22608792506534719",
|
||||
"reference": "a000fcf2298a1bc79a1dcff22608792506534719",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -10614,7 +10616,7 @@
|
||||
"description": "Defines an object-oriented layer for the HTTP specification",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/http-foundation/tree/v6.0.5"
|
||||
"source": "https://github.com/symfony/http-foundation/tree/v6.0.6"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -10630,20 +10632,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-21T17:15:17+00:00"
|
||||
"time": "2022-03-05T21:04:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-kernel",
|
||||
"version": "v6.0.5",
|
||||
"version": "v6.0.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/http-kernel.git",
|
||||
"reference": "5ad3f5e5fa772a8b5c6bb217f8379b533afac2ba"
|
||||
"reference": "f9e49ad9fe16895b24cd7a09dc28d3364282e21a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/http-kernel/zipball/5ad3f5e5fa772a8b5c6bb217f8379b533afac2ba",
|
||||
"reference": "5ad3f5e5fa772a8b5c6bb217f8379b533afac2ba",
|
||||
"url": "https://api.github.com/repos/symfony/http-kernel/zipball/f9e49ad9fe16895b24cd7a09dc28d3364282e21a",
|
||||
"reference": "f9e49ad9fe16895b24cd7a09dc28d3364282e21a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -10723,7 +10725,7 @@
|
||||
"description": "Provides a structured process for converting a Request into a Response",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/http-kernel/tree/v6.0.5"
|
||||
"source": "https://github.com/symfony/http-kernel/tree/v6.0.6"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -10739,7 +10741,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-28T08:05:03+00:00"
|
||||
"time": "2022-03-05T21:19:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/mailer",
|
||||
@@ -11030,7 +11032,7 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-ctype",
|
||||
"version": "v1.24.0",
|
||||
"version": "v1.25.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-ctype.git",
|
||||
@@ -11092,7 +11094,7 @@
|
||||
"portable"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.24.0"
|
||||
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.25.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -11112,7 +11114,7 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-intl-grapheme",
|
||||
"version": "v1.24.0",
|
||||
"version": "v1.25.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-intl-grapheme.git",
|
||||
@@ -11173,7 +11175,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.24.0"
|
||||
"source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.25.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -11193,7 +11195,7 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-intl-idn",
|
||||
"version": "v1.24.0",
|
||||
"version": "v1.25.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-intl-idn.git",
|
||||
@@ -11260,7 +11262,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.24.0"
|
||||
"source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.25.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -11280,7 +11282,7 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-intl-normalizer",
|
||||
"version": "v1.24.0",
|
||||
"version": "v1.25.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-intl-normalizer.git",
|
||||
@@ -11344,7 +11346,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.24.0"
|
||||
"source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.25.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -11364,7 +11366,7 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-mbstring",
|
||||
"version": "v1.24.0",
|
||||
"version": "v1.25.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-mbstring.git",
|
||||
@@ -11427,7 +11429,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.24.0"
|
||||
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.25.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -11447,7 +11449,7 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php72",
|
||||
"version": "v1.24.0",
|
||||
"version": "v1.25.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php72.git",
|
||||
@@ -11503,7 +11505,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php72/tree/v1.24.0"
|
||||
"source": "https://github.com/symfony/polyfill-php72/tree/v1.25.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -11523,16 +11525,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php80",
|
||||
"version": "v1.24.0",
|
||||
"version": "v1.25.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php80.git",
|
||||
"reference": "57b712b08eddb97c762a8caa32c84e037892d2e9"
|
||||
"reference": "4407588e0d3f1f52efb65fbe92babe41f37fe50c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/57b712b08eddb97c762a8caa32c84e037892d2e9",
|
||||
"reference": "57b712b08eddb97c762a8caa32c84e037892d2e9",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/4407588e0d3f1f52efb65fbe92babe41f37fe50c",
|
||||
"reference": "4407588e0d3f1f52efb65fbe92babe41f37fe50c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -11586,7 +11588,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php80/tree/v1.24.0"
|
||||
"source": "https://github.com/symfony/polyfill-php80/tree/v1.25.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -11602,11 +11604,11 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2021-09-13T13:58:33+00:00"
|
||||
"time": "2022-03-04T08:16:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php81",
|
||||
"version": "v1.24.0",
|
||||
"version": "v1.25.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php81.git",
|
||||
@@ -11665,7 +11667,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php81/tree/v1.24.0"
|
||||
"source": "https://github.com/symfony/polyfill-php81/tree/v1.25.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -12216,16 +12218,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/translation",
|
||||
"version": "v6.0.5",
|
||||
"version": "v6.0.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/translation.git",
|
||||
"reference": "e69501c71107cc3146b32aaa45f4edd0c3427875"
|
||||
"reference": "f6639cb9b5e0c57fe31e3263b900a77eedb0c908"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/translation/zipball/e69501c71107cc3146b32aaa45f4edd0c3427875",
|
||||
"reference": "e69501c71107cc3146b32aaa45f4edd0c3427875",
|
||||
"url": "https://api.github.com/repos/symfony/translation/zipball/f6639cb9b5e0c57fe31e3263b900a77eedb0c908",
|
||||
"reference": "f6639cb9b5e0c57fe31e3263b900a77eedb0c908",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -12291,7 +12293,7 @@
|
||||
"description": "Provides tools to internationalize your application",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/translation/tree/v6.0.5"
|
||||
"source": "https://github.com/symfony/translation/tree/v6.0.6"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -12307,7 +12309,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-09T15:52:48+00:00"
|
||||
"time": "2022-03-02T12:58:14+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/translation-contracts",
|
||||
@@ -12389,16 +12391,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/var-dumper",
|
||||
"version": "v6.0.5",
|
||||
"version": "v6.0.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/var-dumper.git",
|
||||
"reference": "60d6a756d5f485df5e6e40b337334848f79f61ce"
|
||||
"reference": "38358405ae948963c50a3aae3dfea598223ba15e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/60d6a756d5f485df5e6e40b337334848f79f61ce",
|
||||
"reference": "60d6a756d5f485df5e6e40b337334848f79f61ce",
|
||||
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/38358405ae948963c50a3aae3dfea598223ba15e",
|
||||
"reference": "38358405ae948963c50a3aae3dfea598223ba15e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -12457,7 +12459,7 @@
|
||||
"dump"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/var-dumper/tree/v6.0.5"
|
||||
"source": "https://github.com/symfony/var-dumper/tree/v6.0.6"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -12473,7 +12475,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-21T17:15:17+00:00"
|
||||
"time": "2022-03-02T12:58:14+00:00"
|
||||
},
|
||||
{
|
||||
"name": "teamtnt/tntsearch",
|
||||
@@ -12844,16 +12846,16 @@
|
||||
},
|
||||
{
|
||||
"name": "voku/portable-ascii",
|
||||
"version": "2.0.0",
|
||||
"version": "2.0.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/voku/portable-ascii.git",
|
||||
"reference": "9bd89e83cecdf8c37b64909454249eaed98b2c89"
|
||||
"reference": "b56450eed252f6801410d810c8e1727224ae0743"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/voku/portable-ascii/zipball/9bd89e83cecdf8c37b64909454249eaed98b2c89",
|
||||
"reference": "9bd89e83cecdf8c37b64909454249eaed98b2c89",
|
||||
"url": "https://api.github.com/repos/voku/portable-ascii/zipball/b56450eed252f6801410d810c8e1727224ae0743",
|
||||
"reference": "b56450eed252f6801410d810c8e1727224ae0743",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -12890,7 +12892,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/voku/portable-ascii/issues",
|
||||
"source": "https://github.com/voku/portable-ascii/tree/2.0.0"
|
||||
"source": "https://github.com/voku/portable-ascii/tree/2.0.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -12914,7 +12916,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-01-24T18:59:03+00:00"
|
||||
"time": "2022-03-08T17:03:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "webmozart/assert",
|
||||
@@ -13029,21 +13031,21 @@
|
||||
"packages-dev": [
|
||||
{
|
||||
"name": "barryvdh/laravel-ide-helper",
|
||||
"version": "v2.12.1",
|
||||
"version": "v2.12.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/barryvdh/laravel-ide-helper.git",
|
||||
"reference": "999167d4c21e2ae748847f7c0e4565ae45f5c9f9"
|
||||
"reference": "3ba1e2573b38f72107b8aacc4ee177fcab30a550"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/999167d4c21e2ae748847f7c0e4565ae45f5c9f9",
|
||||
"reference": "999167d4c21e2ae748847f7c0e4565ae45f5c9f9",
|
||||
"url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/3ba1e2573b38f72107b8aacc4ee177fcab30a550",
|
||||
"reference": "3ba1e2573b38f72107b8aacc4ee177fcab30a550",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"barryvdh/reflection-docblock": "^2.0.6",
|
||||
"composer/composer": "^1.10.23 || ^2.1.9",
|
||||
"composer/pcre": "^1 || ^2 || ^3",
|
||||
"doctrine/dbal": "^2.6 || ^3",
|
||||
"ext-json": "*",
|
||||
"illuminate/console": "^8 || ^9",
|
||||
@@ -13107,7 +13109,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/barryvdh/laravel-ide-helper/issues",
|
||||
"source": "https://github.com/barryvdh/laravel-ide-helper/tree/v2.12.1"
|
||||
"source": "https://github.com/barryvdh/laravel-ide-helper/tree/v2.12.3"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -13119,7 +13121,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2022-01-24T21:36:43+00:00"
|
||||
"time": "2022-03-06T14:33:42+00:00"
|
||||
},
|
||||
{
|
||||
"name": "barryvdh/reflection-docblock",
|
||||
@@ -13255,12 +13257,12 @@
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/composer/composer.git",
|
||||
"reference": "575fbfb53fcc2388916d554271c99c8281fea782"
|
||||
"reference": "ae23647f07932754dc9d7fd1d15657273301a009"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/composer/composer/zipball/575fbfb53fcc2388916d554271c99c8281fea782",
|
||||
"reference": "575fbfb53fcc2388916d554271c99c8281fea782",
|
||||
"url": "https://api.github.com/repos/composer/composer/zipball/ae23647f07932754dc9d7fd1d15657273301a009",
|
||||
"reference": "ae23647f07932754dc9d7fd1d15657273301a009",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -13353,7 +13355,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2022-02-26T13:12:30+00:00"
|
||||
"time": "2022-03-09T19:45:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "composer/metadata-minifier",
|
||||
@@ -14323,16 +14325,16 @@
|
||||
},
|
||||
{
|
||||
"name": "spatie/ignition",
|
||||
"version": "1.1.0",
|
||||
"version": "1.2.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/spatie/ignition.git",
|
||||
"reference": "8ecde033600064e3ffdbf804deec0dcb05004387"
|
||||
"reference": "ab8d1f938d3ffd20af25ad788a9d019e1123068c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/spatie/ignition/zipball/8ecde033600064e3ffdbf804deec0dcb05004387",
|
||||
"reference": "8ecde033600064e3ffdbf804deec0dcb05004387",
|
||||
"url": "https://api.github.com/repos/spatie/ignition/zipball/ab8d1f938d3ffd20af25ad788a9d019e1123068c",
|
||||
"reference": "ab8d1f938d3ffd20af25ad788a9d019e1123068c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -14390,7 +14392,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2022-03-01T17:01:33+00:00"
|
||||
"time": "2022-03-08T15:12:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "spatie/laravel-ignition",
|
||||
@@ -14481,7 +14483,7 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php73",
|
||||
"version": "v1.24.0",
|
||||
"version": "v1.25.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php73.git",
|
||||
@@ -14540,7 +14542,7 @@
|
||||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php73/tree/v1.24.0"
|
||||
"source": "https://github.com/symfony/polyfill-php73/tree/v1.25.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
||||
6
package-lock.json
generated
6
package-lock.json
generated
@@ -6657,9 +6657,9 @@
|
||||
}
|
||||
},
|
||||
"postcss": {
|
||||
"version": "8.4.7",
|
||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.7.tgz",
|
||||
"integrity": "sha512-L9Ye3r6hkkCeOETQX6iOaWZgjp3LL6Lpqm6EtgbKrgqGGteRMNb9vzBfRL96YOSu8o7x3MfIH9Mo5cPJFGrW6A==",
|
||||
"version": "8.4.8",
|
||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.8.tgz",
|
||||
"integrity": "sha512-2tXEqGxrjvAO6U+CJzDL2Fk2kPHTv1jQsYkSoMeOis2SsYaXRO2COxTdQp99cYvif9JTXaAk9lYGc3VhJt7JPQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"nanoid": "^3.3.1",
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
"cross-env": "^5.1",
|
||||
"laravel-echo": "^1.11.3",
|
||||
"laravel-mix": "^6.0.43",
|
||||
"postcss": "^8.4.7",
|
||||
"postcss": "^8.4.8",
|
||||
"prettier": "^2.5.1",
|
||||
"prettier-plugin-import-sort": "0.0.7",
|
||||
"prettier-plugin-tailwindcss": "^0.1.8",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"/js/main.js": "/js/main.js",
|
||||
"/chunks/request.js": "/chunks/request.js?id=3c8d8ec8f0f51d19",
|
||||
"/chunks/request-upload.js": "/chunks/request-upload.js?id=12dcae76203db76f",
|
||||
"/chunks/request.js": "/chunks/request.js?id=001f737452e0d25a",
|
||||
"/chunks/request-upload.js": "/chunks/request-upload.js?id=f50a50d2aa741c81",
|
||||
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=19a0784e59d768ec",
|
||||
"/chunks/status-check.js": "/chunks/status-check.js?id=6bae83a7e38d3b1c",
|
||||
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=0d001d4505d2f5e9",
|
||||
@@ -9,13 +9,13 @@
|
||||
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=c58071cb9d14e595",
|
||||
"/chunks/app-setup.js": "/chunks/app-setup.js?id=ad92e971daa0f86d",
|
||||
"/chunks/admin-account.js": "/chunks/admin-account.js?id=286b9872565b5e96",
|
||||
"/chunks/shared.js": "/chunks/shared.js?id=e777e8e40fdc11a0",
|
||||
"/chunks/shared/browser.js": "/chunks/shared/browser.js?id=ca4620238e883070",
|
||||
"/chunks/shared/single-file.js": "/chunks/shared/single-file.js?id=3af02b5d9d4da341",
|
||||
"/chunks/shared.js": "/chunks/shared.js?id=584d7de11142b545",
|
||||
"/chunks/shared/browser.js": "/chunks/shared/browser.js?id=4722af71c3c7bba6",
|
||||
"/chunks/shared/single-file.js": "/chunks/shared/single-file.js?id=f60d6a95bc180df2",
|
||||
"/chunks/shared/authenticate.js": "/chunks/shared/authenticate.js?id=92c75a6c77689046",
|
||||
"/chunks/not-found.js": "/chunks/not-found.js?id=36763aa314e00327",
|
||||
"/chunks/temporary-unavailable.js": "/chunks/temporary-unavailable.js?id=a3906226272982b1",
|
||||
"/chunks/admin.js": "/chunks/admin.js?id=dfda0fb3e01450de",
|
||||
"/chunks/admin.js": "/chunks/admin.js?id=920613c2b7236639",
|
||||
"/chunks/dashboard.js": "/chunks/dashboard.js?id=e7c6001687e641eb",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=85fd4514d3d85a71",
|
||||
"/chunks/subscriptions.js": "/chunks/subscriptions.js?id=9f970bdfc7583080",
|
||||
@@ -57,18 +57,18 @@
|
||||
"/chunks/sign-up.js": "/chunks/sign-up.js?id=098d7f41b85066bf",
|
||||
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=d6193ed0b07e7957",
|
||||
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=d00212636148a14b",
|
||||
"/chunks/settings.js": "/chunks/settings.js?id=fa7076424e651555",
|
||||
"/chunks/settings.js": "/chunks/settings.js?id=f4a7bce3ff4c61a9",
|
||||
"/chunks/profile.js": "/chunks/profile.js?id=1217f457145491ec",
|
||||
"/chunks/settings-password.js": "/chunks/settings-password.js?id=b6704f4cbf14c67d",
|
||||
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=90ba712f3728443b",
|
||||
"/chunks/billing.js": "/chunks/billing.js?id=27957f2477fdd121",
|
||||
"/chunks/platform.js": "/chunks/platform.js?id=863924b804b662c2",
|
||||
"/chunks/files.js": "/chunks/files.js?id=823d196884eda435",
|
||||
"/chunks/recent-uploads.js": "/chunks/recent-uploads.js?id=72d3b7d6c875f671",
|
||||
"/chunks/my-shared-items.js": "/chunks/my-shared-items.js?id=19b49de44403b4be",
|
||||
"/chunks/trash.js": "/chunks/trash.js?id=2a7999f7c6ba14cd",
|
||||
"/chunks/team-folders.js": "/chunks/team-folders.js?id=b8c53410effac0d0",
|
||||
"/chunks/shared-with-me.js": "/chunks/shared-with-me.js?id=47b3d9874299d8cb",
|
||||
"/chunks/platform.js": "/chunks/platform.js?id=85ee6709fe4e3b7e",
|
||||
"/chunks/files.js": "/chunks/files.js?id=0d4e7a1330328eae",
|
||||
"/chunks/recent-uploads.js": "/chunks/recent-uploads.js?id=2362f8fa4e3392e9",
|
||||
"/chunks/my-shared-items.js": "/chunks/my-shared-items.js?id=25e9d29dd3c29338",
|
||||
"/chunks/trash.js": "/chunks/trash.js?id=5bc0e04ada660232",
|
||||
"/chunks/team-folders.js": "/chunks/team-folders.js?id=cf60b121819ca1a5",
|
||||
"/chunks/shared-with-me.js": "/chunks/shared-with-me.js?id=bdbbd7e2225a6db9",
|
||||
"/chunks/invitation.js": "/chunks/invitation.js?id=e3f3c2e3501c5a63",
|
||||
"/css/tailwind.css": "/css/tailwind.css",
|
||||
"/css/app.css": "/css/app.css"
|
||||
|
||||
@@ -1,69 +1,106 @@
|
||||
<template>
|
||||
<article class="z-20 relative flex items-start p-2.5 mb-1.5 space-x-4 rounded-xl dark:hover:bg-4x-dark-foreground hover:bg-light-background bg-opacity-80">
|
||||
<article
|
||||
class="delay-[3000ms] duration-700 transition-all relative z-20 mb-1.5 flex items-start space-x-4 rounded-xl p-2.5 dark:hover:bg-4x-dark-foreground"
|
||||
:class="{'bg-light-background/80': isUnread}"
|
||||
>
|
||||
<user-plus-icon
|
||||
v-if="notification.data.attributes.type === 'team-invitation'"
|
||||
size="20"
|
||||
class="vue-feather text-theme shrink-0"
|
||||
/>
|
||||
<upload-cloud-icon
|
||||
v-if="['file-request', 'remote-upload-done'].includes(notification.data.attributes.type)"
|
||||
size="20"
|
||||
class="vue-feather text-theme shrink-0"
|
||||
/>
|
||||
|
||||
<user-plus-icon v-if="notification.type === 'team-invitation'" size="20" class="vue-feather text-theme shrink-0" />
|
||||
<upload-cloud-icon v-if="['file-request', 'remote-upload-done'].includes(notification.type)" size="20" class="vue-feather text-theme shrink-0" />
|
||||
<div>
|
||||
<b class="mb-1.5 block text-sm font-extrabold">
|
||||
{{ notification.data.attributes.title }}
|
||||
</b>
|
||||
|
||||
<div>
|
||||
<b class="font-extrabold text-sm mb-1.5 block">
|
||||
{{ notification.title }}
|
||||
</b>
|
||||
<p class="mb-1.5 text-sm dark:text-gray-500">
|
||||
{{ notification.data.attributes.description }}
|
||||
</p>
|
||||
|
||||
<p class="text-sm mb-1.5 dark:text-gray-500">
|
||||
{{ notification.description }}
|
||||
</p>
|
||||
<div class="mb-4 flex items-center">
|
||||
<!--<MemberAvatar class="mr-2" :size="22" :is-border="false" :member="user" />-->
|
||||
<time class="block text-xs text-gray-400 dark:text-gray-400">
|
||||
{{ notification.data.attributes.created_at }}
|
||||
</time>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center mb-4">
|
||||
<!--<MemberAvatar class="mr-2" :size="22" :is-border="false" :member="user" />-->
|
||||
<time class=" block text-xs dark:text-gray-400 text-gray-400">
|
||||
09. Mar. 2022, 08:27
|
||||
</time>
|
||||
</div>
|
||||
<!--Accept or decline team invitation-->
|
||||
<div v-if="notification.data.attributes.type === 'team-invitation'" class="flex items-center space-x-3">
|
||||
<div
|
||||
class="flex cursor-pointer items-center rounded-xl py-1.5 px-2 transition-colors hover:bg-green-100 dark:hover:bg-green-900"
|
||||
>
|
||||
<check-icon size="16" class="vue-feather mr-2 text-green-600 dark:text-green-600" />
|
||||
<span class="text-sm font-bold text-green-600 dark:text-green-600">
|
||||
{{ $t('Accept') }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<!--Accept or decline team invitation-->
|
||||
<div v-if="notification.type === 'team-invitation'" class="flex items-center space-x-3">
|
||||
<div class="flex items-center cursor-pointer py-1.5 px-2 rounded-xl transition-colors dark:hover:bg-green-900 hover:bg-green-100">
|
||||
<check-icon size="16" class="vue-feather dark:text-green-600 text-green-600 mr-2" />
|
||||
<span class="text-sm font-bold dark:text-green-600 text-green-600">
|
||||
{{ $t('Accept') }}
|
||||
</span>
|
||||
</div>
|
||||
<div
|
||||
class="flex cursor-pointer items-center rounded-xl py-1.5 px-2 transition-colors hover:bg-rose-100 dark:hover:bg-rose-900"
|
||||
>
|
||||
<x-icon size="16" class="vue-feather mr-2 text-rose-600 dark:text-rose-600" />
|
||||
<span class="text-sm font-bold text-rose-600 dark:text-rose-600">
|
||||
{{ $t('Decline') }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex items-center cursor-pointer py-1.5 px-2 rounded-xl transition-colors dark:hover:bg-rose-900 hover:bg-rose-100">
|
||||
<x-icon size="16" class="vue-feather dark:text-rose-600 text-rose-600 mr-2" />
|
||||
<span class="text-sm font-bold dark:text-rose-600 text-rose-600">
|
||||
{{ $t('Decline') }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--Go to route-->
|
||||
<router-link v-if="['file-request', 'remote-upload-done'].includes(notification.type)" :to="{ name: 'Users' }" class="mt-4 flex items-center">
|
||||
<span class="mr-2 whitespace-nowrap text-xs font-bold">
|
||||
{{ $t('Show Files') }}
|
||||
</span>
|
||||
<chevron-right-icon size="16" class="text-theme vue-feather" />
|
||||
</router-link>
|
||||
</div>
|
||||
</article>
|
||||
<!--Go to route-->
|
||||
<router-link
|
||||
@click.native="closeCenter"
|
||||
v-if="action && action.type === 'route'"
|
||||
:to="{ name: action.params.route, params: { id: action.params.id } }"
|
||||
class="mt-4 flex items-center"
|
||||
>
|
||||
<span class="mr-2 whitespace-nowrap text-xs font-bold">
|
||||
{{ action.params.button }}
|
||||
</span>
|
||||
<chevron-right-icon size="16" class="text-theme vue-feather" />
|
||||
</router-link>
|
||||
</div>
|
||||
</article>
|
||||
</template>
|
||||
<script>
|
||||
import {CheckIcon, XIcon, MailIcon, UserPlusIcon, UploadCloudIcon, ChevronRightIcon} from 'vue-feather-icons'
|
||||
import { CheckIcon, XIcon, MailIcon, UserPlusIcon, UploadCloudIcon, ChevronRightIcon } from 'vue-feather-icons'
|
||||
import MemberAvatar from '../FilesView/MemberAvatar'
|
||||
|
||||
export default {
|
||||
name: 'Notification',
|
||||
props: [
|
||||
'notification',
|
||||
],
|
||||
components: {
|
||||
MemberAvatar,
|
||||
ChevronRightIcon,
|
||||
UploadCloudIcon,
|
||||
UserPlusIcon,
|
||||
CheckIcon,
|
||||
MailIcon,
|
||||
XIcon,
|
||||
name: 'Notification',
|
||||
props: ['notification'],
|
||||
components: {
|
||||
MemberAvatar,
|
||||
ChevronRightIcon,
|
||||
UploadCloudIcon,
|
||||
UserPlusIcon,
|
||||
CheckIcon,
|
||||
MailIcon,
|
||||
XIcon,
|
||||
},
|
||||
computed: {
|
||||
action() {
|
||||
return this.notification.data.attributes.action
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
isUnread: false
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
closeCenter() {
|
||||
this.$store.commit('TOGGLE_NOTIFICATION_CENTER')
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.isUnread = this.notification.data.attributes.read_at === null
|
||||
|
||||
setTimeout(() => this.isUnread = false, 1000)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -3,7 +3,7 @@
|
||||
<div class="fixed popup z-20 top-[27px] bottom-[27px] left-20 w-[360px]">
|
||||
|
||||
<!--Triangle-->
|
||||
<div class="z-20 absolute left-0 top-[102px] w-4 translate-x-[-15px] overflow-hidden inline-block">
|
||||
<div class="z-20 absolute left-0 top-[64px] w-4 translate-x-[-15px] overflow-hidden inline-block" :class="{'!top-[102px]': config.subscriptionType === 'metered'}">
|
||||
<div class="h-12 -rotate-45 transform origin-top-right dark:bg-2x-dark-foreground bg-white bg-opacity-80 backdrop-blur-2xl"></div>
|
||||
</div>
|
||||
|
||||
@@ -15,22 +15,26 @@
|
||||
</b>
|
||||
|
||||
<div class="px-2.5">
|
||||
<MobileActionButton icon="check-square" class="mb-2 dark:!bg-4x-dark-foreground">
|
||||
<MobileActionButton v-if="readNotifications.length || unreadNotifications.length" @click.native="deleteAllNotifications" icon="check-square" class="mb-2 dark:!bg-4x-dark-foreground">
|
||||
{{ $t('Clear all') }}
|
||||
</MobileActionButton>
|
||||
|
||||
<p v-if="!readNotifications.length && !unreadNotifications.length" class="text-sm mt-8">
|
||||
{{ $t("There aren't any notifications.") }}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<b class="dark-text-theme mt-1.5 block px-2.5 mb-2.5 text-xs text-gray-400">
|
||||
Today
|
||||
<b v-if="unreadNotifications.length" class="dark-text-theme mt-1.5 block px-2.5 mb-2.5 text-xs text-gray-400">
|
||||
{{ $t('Unread') }}
|
||||
</b>
|
||||
|
||||
<Notification :notification="notification" v-for="notification in todayNotifications" :key="notification.id" />
|
||||
<Notification :notification="notification" v-for="notification in unreadNotifications" :key="notification.id" />
|
||||
|
||||
<b class="dark-text-theme mt-2.5 block px-2.5 mb-2.5 text-xs text-gray-400">
|
||||
Later
|
||||
<b v-if="readNotifications.length" class="dark-text-theme mt-2.5 block px-2.5 mb-2.5 text-xs text-gray-400">
|
||||
{{ $t('Read') }}
|
||||
</b>
|
||||
|
||||
<Notification :notification="notification" v-for="notification in laterNotifications" :key="notification.id" />
|
||||
<Notification :notification="notification" v-for="notification in readNotifications" :key="notification.id" />
|
||||
</div>
|
||||
</div>
|
||||
</transition>
|
||||
@@ -39,6 +43,7 @@
|
||||
<script>
|
||||
import Notification from "./Notification";
|
||||
import MobileActionButton from "../FilesView/MobileActionButton";
|
||||
import {mapGetters} from "vuex";
|
||||
|
||||
export default {
|
||||
name: 'NotificationCenter',
|
||||
@@ -46,6 +51,27 @@ export default {
|
||||
MobileActionButton,
|
||||
Notification
|
||||
},
|
||||
watch: {
|
||||
isVisibleNotificationCenter: function (visibility) {
|
||||
if (visibility) {
|
||||
axios.post('/api/user/notifications/read')
|
||||
.then(() => {
|
||||
this.$store.commit('UPDATE_NOTIFICATION_COUNT', 0)
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'user', 'config', 'isVisibleNotificationCenter',
|
||||
]),
|
||||
readNotifications() {
|
||||
return this.user.data.relationships.readNotifications.data
|
||||
},
|
||||
unreadNotifications() {
|
||||
return this.user.data.relationships.unreadNotifications.data
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
laterNotifications: [
|
||||
@@ -86,6 +112,14 @@ export default {
|
||||
},
|
||||
]
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
deleteAllNotifications() {
|
||||
axios.delete('/api/user/notifications')
|
||||
.then(() => {
|
||||
this.$store.commit('FLUSH_NOTIFICATIONS')
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
<!--Navigation-->
|
||||
<div class="mt-2 relative">
|
||||
<div @click="toggleNotificationCenter" class="relative button-icon inline-block cursor-pointer rounded-xl p-3 hover:bg-light-300 dark:hover:bg-4x-dark-foreground">
|
||||
<div @click="$store.commit('TOGGLE_NOTIFICATION_CENTER')" class="relative button-icon inline-block cursor-pointer rounded-xl p-3 hover:bg-light-300 dark:hover:bg-4x-dark-foreground">
|
||||
<bell-icon size="18" class="transition" :class="{'rotate-[30deg]': notificationCount}" />
|
||||
<span v-if="notificationCount" class="absolute z-[9] right-1.5 bottom-1.5 flex items-center justify-center w-4 h-4 bg-theme text-white rounded-full text-xs font-bold">
|
||||
{{ notificationCount }}
|
||||
@@ -31,7 +31,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<NotificationCenter v-show="isNotificationCenter" />
|
||||
<NotificationCenter v-show="isVisibleNotificationCenter" />
|
||||
|
||||
<!--Navigation-->
|
||||
<div class="mt-6">
|
||||
@@ -97,7 +97,7 @@ export default {
|
||||
SunIcon,
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(['isVisibleNavigationBars', 'isDarkMode', 'config', 'user']),
|
||||
...mapGetters(['isVisibleNavigationBars', 'isDarkMode', 'config', 'user', 'isVisibleNotificationCenter', 'notificationCount']),
|
||||
navigation() {
|
||||
if (this.user.data.attributes.role === 'admin') {
|
||||
return [
|
||||
@@ -140,15 +140,10 @@ export default {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
notificationCount: 2,
|
||||
isNotificationCenter: false,
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
toggleNotificationCenter() {
|
||||
this.notificationCount = 0
|
||||
this.isNotificationCenter = ! this.isNotificationCenter
|
||||
},
|
||||
isSection(section) {
|
||||
return this.$route.matched[0].name === section
|
||||
},
|
||||
|
||||
10
resources/js/store/modules/app.js
vendored
10
resources/js/store/modules/app.js
vendored
@@ -5,6 +5,8 @@ import router from '../../router'
|
||||
|
||||
const defaultState = {
|
||||
isVisibleNavigationBars: localStorage.getItem('is_navigation_bars') !== 'false',
|
||||
isVisibleNotificationCenter: false,
|
||||
notificationCount: 0,
|
||||
isDarkMode: false,
|
||||
isVisibleSidebar: localStorage.getItem('file_info_visibility') === 'true' || false,
|
||||
itemViewType: localStorage.getItem('preview_type') || 'list',
|
||||
@@ -167,10 +169,18 @@ const mutations = {
|
||||
UPDATE_DARK_MODE_STATUS(state, val) {
|
||||
state.isDarkMode = val
|
||||
},
|
||||
UPDATE_NOTIFICATION_COUNT(state, val) {
|
||||
state.notificationCount = val
|
||||
},
|
||||
TOGGLE_NOTIFICATION_CENTER(state) {
|
||||
state.isVisibleNotificationCenter = !state.isVisibleNotificationCenter
|
||||
},
|
||||
}
|
||||
|
||||
const getters = {
|
||||
isVisibleNotificationCenter: (state) => state.isVisibleNotificationCenter,
|
||||
isVisibleNavigationBars: (state) => state.isVisibleNavigationBars,
|
||||
notificationCount: (state) => state.notificationCount,
|
||||
isVisibleSidebar: (state) => state.isVisibleSidebar,
|
||||
itemViewType: (state) => state.itemViewType,
|
||||
requestedPlan: (state) => state.requestedPlan,
|
||||
|
||||
11
resources/js/store/modules/broadcasting.js
vendored
11
resources/js/store/modules/broadcasting.js
vendored
@@ -3,14 +3,15 @@ const defaultState = {
|
||||
}
|
||||
|
||||
const actions = {
|
||||
runConnection: ({ commit, getters }) => {
|
||||
runConnection: ({ commit, getters, dispatch }) => {
|
||||
|
||||
commit('SET_RUNNING_COMMUNICATION')
|
||||
|
||||
Echo.private(`test.${getters.user.data.id}`)
|
||||
.listen('.Domain\\Notifications\\Events\\TestUpdate', (e) => {
|
||||
console.log(e);
|
||||
});
|
||||
Echo.private(`App.Users.Models.User.${getters.user.data.id}`)
|
||||
.notification(() => {
|
||||
// TODO: call sound
|
||||
dispatch('getAppData')
|
||||
});
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
8
resources/js/store/modules/userAuth.js
vendored
8
resources/js/store/modules/userAuth.js
vendored
@@ -18,6 +18,7 @@ const actions = {
|
||||
resolve(response)
|
||||
|
||||
commit('RETRIEVE_USER', response.data)
|
||||
commit('UPDATE_NOTIFICATION_COUNT', response.data.data.relationships.unreadNotifications.data.length)
|
||||
|
||||
if (! getters.isRunningConnection) {
|
||||
dispatch('runConnection')
|
||||
@@ -172,6 +173,13 @@ const mutations = {
|
||||
}
|
||||
})
|
||||
},
|
||||
PUSH_NEW_NOTIFICATION(state, notification) {
|
||||
state.user.data.relationships.unreadNotifications.data.push(notification)
|
||||
},
|
||||
FLUSH_NOTIFICATIONS(state) {
|
||||
state.user.data.relationships.readNotifications.data = []
|
||||
state.user.data.relationships.unreadNotifications.data = []
|
||||
},
|
||||
}
|
||||
|
||||
const getters = {
|
||||
|
||||
@@ -11,8 +11,4 @@
|
||||
|
|
||||
*/
|
||||
|
||||
//Broadcast::channel('App.User.{id}', fn ($user, $id) => (int) $user->id === (int) $id);
|
||||
|
||||
Broadcast::channel('test.{id}', function ($user, $id) {
|
||||
return true;
|
||||
});
|
||||
Broadcast::channel('App.Users.Models.User.{id}', fn ($user, $id) => $user->id === $id);
|
||||
|
||||
@@ -4,6 +4,9 @@ use App\Users\Controllers\Account\AccountDetailsController;
|
||||
use App\Users\Controllers\Account\UpdatePasswordController;
|
||||
use App\Users\Controllers\Account\StorageCapacityController;
|
||||
use App\Users\Controllers\Verification\VerifyEmailController;
|
||||
use Domain\Notifications\Controllers\FlushUserNotificationsController;
|
||||
use Domain\Notifications\Controllers\GetUserNotificationsController;
|
||||
use Domain\Notifications\Controllers\MarkUserNotificationsAsReadController;
|
||||
use Domain\Transactions\Controllers\GetTransactionsController;
|
||||
use App\Users\Controllers\Verification\ResendVerificationEmail;
|
||||
use App\Users\Controllers\Authentication\CheckAccountController;
|
||||
@@ -23,6 +26,11 @@ Route::group(['middleware' => ['auth:sanctum']], function () {
|
||||
// User Access Token
|
||||
Route::apiResource('/tokens', AccountAccessTokenController::class);
|
||||
|
||||
// Notifications
|
||||
Route::post('/notifications/read', MarkUserNotificationsAsReadController::class);
|
||||
Route::delete('/notifications', FlushUserNotificationsController::class);
|
||||
Route::get('/notifications', GetUserNotificationsController::class);
|
||||
|
||||
// Account
|
||||
Route::patch('/settings', UpdateProfileSettingsController::class);
|
||||
Route::get('/transactions', GetTransactionsController::class);
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Users\Resources;
|
||||
|
||||
use Domain\Notifications\Resources\NotificationCollection;
|
||||
use Domain\Folders\Resources\FolderCollection;
|
||||
use Illuminate\Http\Resources\Json\JsonResource;
|
||||
use App\Users\Actions\FormatUsageEstimatesAction;
|
||||
@@ -43,9 +44,11 @@ class UserResource extends JsonResource
|
||||
'updated_at' => format_date($this->updated_at, 'd. M. Y'),
|
||||
],
|
||||
'relationships' => [
|
||||
'settings' => new SettingsResource($this->settings),
|
||||
'favourites' => new FolderCollection($this->favouriteFolders),
|
||||
'creditCards' => new CreditCardCollection($this->creditCards),
|
||||
'readNotifications' => new NotificationCollection($this->readNotifications),
|
||||
'unreadNotifications' => new NotificationCollection($this->unreadNotifications),
|
||||
'settings' => new SettingsResource($this->settings),
|
||||
'favourites' => new FolderCollection($this->favouriteFolders),
|
||||
'creditCards' => new CreditCardCollection($this->creditCards),
|
||||
$this->mergeWhen($this->hasSubscription(), fn() => [
|
||||
'subscription' => new SubscriptionResource($this->subscription),
|
||||
]),
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
namespace Domain\Notifications\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Contracts\Foundation\Application;
|
||||
use Illuminate\Contracts\Routing\ResponseFactory;
|
||||
use Illuminate\Http\Response;
|
||||
|
||||
class FlushUserNotificationsController extends Controller
|
||||
{
|
||||
public function __invoke(): Response|Application|ResponseFactory
|
||||
{
|
||||
if (is_demo_account()) {
|
||||
return response('Done', 204);
|
||||
}
|
||||
|
||||
// Delete all notifications
|
||||
auth()->user()->notifications()->delete();
|
||||
|
||||
return response('Done', 204);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
<?php
|
||||
|
||||
namespace Domain\Notifications\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Domain\Notifications\Resources\NotificationCollection;
|
||||
|
||||
class GetUserNotificationsController extends Controller
|
||||
{
|
||||
public function __invoke(): NotificationCollection
|
||||
{
|
||||
return new NotificationCollection(
|
||||
auth()->user()->notifications
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
namespace Domain\Notifications\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Contracts\Foundation\Application;
|
||||
use Illuminate\Contracts\Routing\ResponseFactory;
|
||||
use Illuminate\Http\Response;
|
||||
|
||||
class MarkUserNotificationsAsReadController extends Controller
|
||||
{
|
||||
public function __invoke(): Response|Application|ResponseFactory
|
||||
{
|
||||
if (is_demo_account()) {
|
||||
return response('Done', 204);
|
||||
}
|
||||
|
||||
// Mark all notifications as read
|
||||
auth()->user()->unreadNotifications()->update(['read_at' => now()]);
|
||||
|
||||
return response('Done', 204);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
<?php
|
||||
namespace Domain\Notifications\Resources;
|
||||
|
||||
use Illuminate\Http\Resources\Json\ResourceCollection;
|
||||
|
||||
class NotificationCollection extends ResourceCollection
|
||||
{
|
||||
public $collects = NotificationResource::class;
|
||||
|
||||
public function toArray($request): array
|
||||
{
|
||||
return [
|
||||
'data' => $this->collection,
|
||||
];
|
||||
}
|
||||
}
|
||||
32
src/Domain/Notifications/Resources/NotificationResource.php
Normal file
32
src/Domain/Notifications/Resources/NotificationResource.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
namespace Domain\Notifications\Resources;
|
||||
|
||||
use Illuminate\Http\Resources\Json\JsonResource;
|
||||
|
||||
class NotificationResource extends JsonResource
|
||||
{
|
||||
/**
|
||||
* Transform the resource into an array.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array
|
||||
*/
|
||||
public function toArray($request)
|
||||
{
|
||||
return [
|
||||
'data' => [
|
||||
'id' => $this->id,
|
||||
'type' => $this->type,
|
||||
'attributes' => [
|
||||
'type' => $this->data['type'],
|
||||
'title' => $this->data['title'],
|
||||
'description' => $this->data['description'],
|
||||
'action' => $this->data['action'] ?? null,
|
||||
'created_at' => format_date($this->created_at, 'd. M. Y h:i'),
|
||||
'read_at' => $this->read_at ? format_date($this->read_at, 'd. M. Y h:i') : null,
|
||||
],
|
||||
],
|
||||
];
|
||||
}
|
||||
}
|
||||
@@ -23,22 +23,16 @@ class UploadRequestFulfilledNotification extends Notification implements ShouldQ
|
||||
|
||||
/**
|
||||
* Get the notification's delivery channels.
|
||||
*
|
||||
* @param mixed $notifiable
|
||||
* @return array
|
||||
*/
|
||||
public function via($notifiable)
|
||||
public function via(mixed $notifiable): array
|
||||
{
|
||||
return ['mail', 'database'];
|
||||
return ['mail', 'database', 'broadcast'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the mail representation of the notification.
|
||||
*
|
||||
* @param mixed $notifiable
|
||||
* @return \Illuminate\Notifications\Messages\MailMessage
|
||||
*/
|
||||
public function toMail($notifiable)
|
||||
public function toMail(mixed $notifiable): MailMessage
|
||||
{
|
||||
// TODO: add to language strings
|
||||
return (new MailMessage)
|
||||
@@ -59,7 +53,12 @@ class UploadRequestFulfilledNotification extends Notification implements ShouldQ
|
||||
'title' => 'File Request Filled',
|
||||
'description' => "Your file request for '{$this->uploadRequest->parent->name}' folder was filled successfully.",
|
||||
'action' => [
|
||||
'id' => $this->uploadRequest->id,
|
||||
'type' => 'route',
|
||||
'params' => [
|
||||
'route' => 'Files',
|
||||
'button' => 'Show Files',
|
||||
'id' => $this->uploadRequest->id,
|
||||
],
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
134
tests/Domain/Notifications/NotificationsTest.php
Normal file
134
tests/Domain/Notifications/NotificationsTest.php
Normal file
@@ -0,0 +1,134 @@
|
||||
<?php
|
||||
|
||||
namespace Tests\Domain\Notifications;
|
||||
|
||||
use App\Users\Models\User;
|
||||
use Tests\TestCase;
|
||||
use Str;
|
||||
use DB;
|
||||
|
||||
class NotificationsTest extends TestCase
|
||||
{
|
||||
/**
|
||||
* @test
|
||||
*/
|
||||
public function it_get_all_notifications()
|
||||
{
|
||||
$user = User::factory()
|
||||
->hasSettings()
|
||||
->create();
|
||||
|
||||
DB::table('notifications')
|
||||
->insert([
|
||||
'id' => Str::uuid(),
|
||||
'type' => 'Domain\UploadRequest\Notifications\UploadRequestFulfilledNotification',
|
||||
'notifiable_type' => 'App\Users\Models\User',
|
||||
'notifiable_id' => $user->id,
|
||||
'data' => json_encode([
|
||||
'type' => 'file-request',
|
||||
'title' => 'File Request Filled',
|
||||
'description' => "Your file request for 'Documents' folder was filled successfully.",
|
||||
'action' => [
|
||||
'type' => 'route',
|
||||
'params' => [
|
||||
'route' => 'Files',
|
||||
'button' => 'Show Files',
|
||||
'id' => Str::uuid(),
|
||||
],
|
||||
],
|
||||
]),
|
||||
'created_at' => now(),
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
|
||||
$this
|
||||
->actingAs($user)
|
||||
->getJson('/api/user/notifications')
|
||||
->assertJsonFragment([
|
||||
'type' => 'file-request',
|
||||
])
|
||||
->assertStatus(200);
|
||||
}
|
||||
|
||||
/**
|
||||
* @test
|
||||
*/
|
||||
public function it_mark_as_read_notifications()
|
||||
{
|
||||
$user = User::factory()
|
||||
->hasSettings()
|
||||
->create();
|
||||
|
||||
DB::table('notifications')
|
||||
->insert([
|
||||
'id' => Str::uuid(),
|
||||
'type' => 'Domain\UploadRequest\Notifications\UploadRequestFulfilledNotification',
|
||||
'notifiable_type' => 'App\Users\Models\User',
|
||||
'notifiable_id' => $user->id,
|
||||
'data' => json_encode([
|
||||
'type' => 'file-request',
|
||||
'title' => 'File Request Filled',
|
||||
'description' => "Your file request for 'Documents' folder was filled successfully.",
|
||||
'action' => [
|
||||
'type' => 'route',
|
||||
'params' => [
|
||||
'route' => 'Files',
|
||||
'button' => 'Show Files',
|
||||
'id' => Str::uuid(),
|
||||
],
|
||||
],
|
||||
]),
|
||||
'created_at' => now(),
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
|
||||
$this
|
||||
->actingAs($user)
|
||||
->postJson('/api/user/notifications/read')
|
||||
->assertStatus(204);
|
||||
|
||||
$this->assertDatabaseHas('notifications', [
|
||||
'read_at' => now(),
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @test
|
||||
*/
|
||||
public function it_delete_all_notifications()
|
||||
{
|
||||
$user = User::factory()
|
||||
->hasSettings()
|
||||
->create();
|
||||
|
||||
DB::table('notifications')
|
||||
->insert([
|
||||
'id' => Str::uuid(),
|
||||
'type' => 'Domain\UploadRequest\Notifications\UploadRequestFulfilledNotification',
|
||||
'notifiable_type' => 'App\Users\Models\User',
|
||||
'notifiable_id' => $user->id,
|
||||
'data' => json_encode([
|
||||
'type' => 'file-request',
|
||||
'title' => 'File Request Filled',
|
||||
'description' => "Your file request for 'Documents' folder was filled successfully.",
|
||||
'action' => [
|
||||
'type' => 'route',
|
||||
'params' => [
|
||||
'route' => 'Files',
|
||||
'button' => 'Show Files',
|
||||
'id' => Str::uuid(),
|
||||
],
|
||||
],
|
||||
]),
|
||||
'created_at' => now(),
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
|
||||
$this
|
||||
->actingAs($user)
|
||||
->deleteJson('/api/user/notifications')
|
||||
->assertStatus(204);
|
||||
|
||||
$this->assertDatabaseCount('notifications', 0);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user