From 6fbaa209a74a80860e7291b0b93e00d50e2a1a4f Mon Sep 17 00:00:00 2001 From: David Bomba Date: Fri, 4 Mar 2022 09:05:21 +1100 Subject: [PATCH 01/13] Fixes for subscription service --- app/Services/Subscription/SubscriptionService.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Services/Subscription/SubscriptionService.php b/app/Services/Subscription/SubscriptionService.php index 34eec1e31ad7..4f0e6a7b3a50 100644 --- a/app/Services/Subscription/SubscriptionService.php +++ b/app/Services/Subscription/SubscriptionService.php @@ -102,7 +102,7 @@ class SubscriptionService } else { - $invoice = Invoice::find($payment_hash->fee_invoice_id); + $invoice = Invoice::withTrashed()->find($payment_hash->fee_invoice_id); $context = [ 'context' => 'single_purchase', From 7afb9f9bb940a8e07d45a1dec04cc5a698d9b429 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Fri, 4 Mar 2022 10:55:02 +1100 Subject: [PATCH 02/13] Fixes for plain email templates --- app/Mail/Engine/BaseEmailEngine.php | 37 + app/Mail/Engine/CreditEmailEngine.php | 15 +- app/Mail/Engine/EngineInterface.php | 3 + app/Mail/Engine/InvoiceEmailEngine.php | 14 +- app/Mail/Engine/QuoteEmailEngine.php | 15 +- app/Mail/TemplateEmail.php | 7 +- composer.json | 3 +- composer.lock | 1399 +++++++++-------- .../email/admin/download_credits.blade.php | 10 + .../email/admin/download_quotes.blade.php | 10 + .../views/email/template/client.blade.php | 3 - resources/views/email/template/text.blade.php | 7 + 12 files changed, 869 insertions(+), 654 deletions(-) create mode 100644 resources/views/email/admin/download_credits.blade.php create mode 100644 resources/views/email/admin/download_quotes.blade.php create mode 100644 resources/views/email/template/text.blade.php diff --git a/app/Mail/Engine/BaseEmailEngine.php b/app/Mail/Engine/BaseEmailEngine.php index aa64d62005ae..12816a7fa651 100644 --- a/app/Mail/Engine/BaseEmailEngine.php +++ b/app/Mail/Engine/BaseEmailEngine.php @@ -33,6 +33,10 @@ class BaseEmailEngine implements EngineInterface public $invitation; + public $text_body; + + public $text_footer; + public function setFooter($footer) { $this->footer = $footer; @@ -105,6 +109,13 @@ class BaseEmailEngine implements EngineInterface return $this; } + public function setTextBody($text) + { + $this->text_body = $text; + + return $this; + } + public function getSubject() { return $this->subject; @@ -148,11 +159,37 @@ class BaseEmailEngine implements EngineInterface public function setInvitation($invitation) { $this->invitation = $invitation; + + return $this; } public function getInvitation() { return $this->invitation; } + + public function getTextBody() + { + return $this->text_body; + } + + private function replaceEntities($content) + { + $find = [ + '

', + '

', + '
', + '<\div>', + ]; + + $replace = [ + '', + '\n\n', + '', + '\n\n', + ]; + + return str_replace($find, $replace, $content); + } } diff --git a/app/Mail/Engine/CreditEmailEngine.php b/app/Mail/Engine/CreditEmailEngine.php index d319bac91577..02feece2cf49 100644 --- a/app/Mail/Engine/CreditEmailEngine.php +++ b/app/Mail/Engine/CreditEmailEngine.php @@ -93,6 +93,18 @@ class CreditEmailEngine extends BaseEmailEngine ); } + $text_body = trans( + 'texts.credit_message', + [ + 'credit' => $this->credit->number, + 'company' => $this->credit->company->present()->name(), + 'amount' => Number::formatMoney($this->credit->balance, $this->client), + ], + null, + $this->client->locale() + + ) . "\n\n" . $this->invitation->getLink(); + $this->setTemplate($this->client->getSetting('email_style')) ->setContact($this->contact) ->setVariables((new HtmlEngine($this->invitation))->makeValues())//move make values into the htmlengine @@ -101,7 +113,8 @@ class CreditEmailEngine extends BaseEmailEngine ->setFooter("".ctrans('texts.view_credit').'') ->setViewLink($this->invitation->getLink()) ->setViewText(ctrans('texts.view_credit')) - ->setInvitation($this->invitation); + ->setInvitation($this->invitation) + ->setTextBody($text_body); if ($this->client->getSetting('pdf_email_attachment') !== false && $this->credit->company->account->hasFeature(Account::FEATURE_PDF_ATTACHMENT)) { diff --git a/app/Mail/Engine/EngineInterface.php b/app/Mail/Engine/EngineInterface.php index c8b16cd6f0af..76ae2df40057 100644 --- a/app/Mail/Engine/EngineInterface.php +++ b/app/Mail/Engine/EngineInterface.php @@ -46,4 +46,7 @@ interface EngineInterface public function getViewText(); public function build(); + + public function getTextBody(); + } diff --git a/app/Mail/Engine/InvoiceEmailEngine.php b/app/Mail/Engine/InvoiceEmailEngine.php index dad4b78f0f02..58f83818c6ed 100644 --- a/app/Mail/Engine/InvoiceEmailEngine.php +++ b/app/Mail/Engine/InvoiceEmailEngine.php @@ -79,6 +79,17 @@ class InvoiceEmailEngine extends BaseEmailEngine } + $text_body = trans( + 'texts.invoice_message', + [ + 'invoice' => $this->invoice->number, + 'company' => $this->invoice->company->present()->name(), + 'amount' => Number::formatMoney($this->invoice->balance, $this->client), + ], + null, + $this->client->locale() + ) . "\n\n" . $this->invitation->getLink(); + if (is_array($this->template_data) && array_key_exists('subject', $this->template_data) && strlen($this->template_data['subject']) > 0) { $subject_template = $this->template_data['subject']; nlog("subject = template data"); @@ -111,7 +122,8 @@ class InvoiceEmailEngine extends BaseEmailEngine ->setFooter("".ctrans('texts.view_invoice').'') ->setViewLink($this->invitation->getLink()) ->setViewText(ctrans('texts.view_invoice')) - ->setInvitation($this->invitation); + ->setInvitation($this->invitation) + ->setTextBody($text_body); if ($this->client->getSetting('pdf_email_attachment') !== false && $this->invoice->company->account->hasFeature(Account::FEATURE_PDF_ATTACHMENT)) { diff --git a/app/Mail/Engine/QuoteEmailEngine.php b/app/Mail/Engine/QuoteEmailEngine.php index 98c4b394c400..1f257972d0cc 100644 --- a/app/Mail/Engine/QuoteEmailEngine.php +++ b/app/Mail/Engine/QuoteEmailEngine.php @@ -94,6 +94,18 @@ class QuoteEmailEngine extends BaseEmailEngine ); } + $text_body = trans( + 'texts.quote_message', + [ + 'quote' => $this->quote->number, + 'company' => $this->quote->company->present()->name(), + 'amount' => Number::formatMoney($this->quote->amount, $this->client), + ], + null, + $this->client->locale() + + ) . "\n\n" . $this->invitation->getLink(); + $this->setTemplate($this->client->getSetting('email_style')) ->setContact($this->contact) ->setVariables((new HtmlEngine($this->invitation))->makeValues())//move make values into the htmlengine @@ -102,7 +114,8 @@ class QuoteEmailEngine extends BaseEmailEngine ->setFooter("".ctrans('texts.view_quote').'') ->setViewLink($this->invitation->getLink()) ->setViewText(ctrans('texts.view_quote')) - ->setInvitation($this->invitation); + ->setInvitation($this->invitation) + ->setTextBody($text_body); if ($this->client->getSetting('pdf_email_attachment') !== false && $this->quote->company->account->hasFeature(Account::FEATURE_PDF_ATTACHMENT)) { diff --git a/app/Mail/TemplateEmail.php b/app/Mail/TemplateEmail.php index 1945e45cc64f..8f74312968d5 100644 --- a/app/Mail/TemplateEmail.php +++ b/app/Mail/TemplateEmail.php @@ -92,12 +92,10 @@ class TemplateEmail extends Mailable $this->bcc(explode(",",str_replace(" ", "", $settings->bcc_email)));//remove whitespace if any has been inserted. $this->subject($this->build_email->getSubject()) - ->text('email.template.plain', [ - 'body' => $this->build_email->getBody(), - 'footer' => $this->build_email->getFooter(), + ->text('email.template.text', [ + 'text_body' => $this->build_email->getTextBody(), 'whitelabel' => $this->client->user->account->isPaid() ? true : false, 'settings' => $settings, - 'unsubscribe_link' => $this->invitation ? $this->invitation->getUnsubscribeLink() : '', ]) ->view($template_name, [ 'greeting' => ctrans('texts.email_salutation', ['name' => $this->contact->present()->name()]), @@ -111,7 +109,6 @@ class TemplateEmail extends Mailable 'company' => $company, 'whitelabel' => $this->client->user->account->isPaid() ? true : false, 'logo' => $this->company->present()->logo($settings), - 'unsubscribe_link' => $this->invitation ? $this->invitation->getUnsubscribeLink() : '', ]) ->withSwiftMessage(function ($message) use($company){ $message->getHeaders()->addTextHeader('Tag', $company->company_key); diff --git a/composer.json b/composer.json index 829298e5f35e..d67fba7d5b10 100644 --- a/composer.json +++ b/composer.json @@ -26,7 +26,7 @@ ], "type": "project", "require": { - "php": "^7.4|^8", + "php": "^8.0", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", @@ -64,6 +64,7 @@ "league/flysystem-aws-s3-v3": "~1.0", "league/flysystem-cached-adapter": "^1.1", "league/fractal": "^0.17.0", + "league/html-to-markdown": "^5.1", "league/omnipay": "^3.1", "livewire/livewire": "^2.6", "mollie/mollie-api-php": "^2.36", diff --git a/composer.lock b/composer.lock index 360e73ebc64f..6720fe357bca 100644 --- a/composer.lock +++ b/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": "3071902abd0fe82991f6409ab7f5b4c0", + "content-hash": "f3465f8b8e57efe3e6ca0ed04c49bff6", "packages": [ { "name": "afosto/yaac", @@ -178,22 +178,22 @@ "source": { "type": "git", "url": "https://github.com/maschmann/php-ansible.git", - "reference": "26809472cab66fb0175ae53f7281afd6b31d1296" + "reference": "654592557a8cae60169de6f2ba145ef7ebb38f37" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/maschmann/php-ansible/zipball/26809472cab66fb0175ae53f7281afd6b31d1296", - "reference": "26809472cab66fb0175ae53f7281afd6b31d1296", + "url": "https://api.github.com/repos/maschmann/php-ansible/zipball/654592557a8cae60169de6f2ba145ef7ebb38f37", + "reference": "654592557a8cae60169de6f2ba145ef7ebb38f37", "shasum": "" }, "require": { - "php": "^7.3.0|^8.0.0", + "php": "^8.0.0", "psr/log": "^1.1", - "symfony/process": "^4.0|^5.0" + "symfony/process": "^5.3|^6.0" }, "require-dev": { "mikey179/vfsstream": "^1.6", - "phpunit/phpunit": "^9.0" + "phpunit/phpunit": "^9.5" }, "default-branch": true, "type": "library", @@ -220,9 +220,9 @@ ], "support": { "issues": "https://github.com/maschmann/php-ansible/issues", - "source": "https://github.com/maschmann/php-ansible/tree/v3.0.1" + "source": "https://github.com/maschmann/php-ansible/tree/v4.0.0" }, - "time": "2021-06-25T20:09:17+00:00" + "time": "2022-02-20T18:59:30+00:00" }, { "name": "asm89/stack-cors", @@ -375,16 +375,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.209.15", + "version": "3.212.1", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "8656babb2e58ea3e7c9a40724e8a545ce40bb622" + "reference": "e4a5f8dca671281e8e2122607a4da2a8348489bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/8656babb2e58ea3e7c9a40724e8a545ce40bb622", - "reference": "8656babb2e58ea3e7c9a40724e8a545ce40bb622", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/e4a5f8dca671281e8e2122607a4da2a8348489bf", + "reference": "e4a5f8dca671281e8e2122607a4da2a8348489bf", "shasum": "" }, "require": { @@ -428,12 +428,12 @@ } }, "autoload": { - "psr-4": { - "Aws\\": "src/" - }, "files": [ "src/functions.php" - ] + ], + "psr-4": { + "Aws\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -460,22 +460,22 @@ "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.209.15" + "source": "https://github.com/aws/aws-sdk-php/tree/3.212.1" }, - "time": "2022-01-28T19:14:57+00:00" + "time": "2022-03-03T19:19:37+00:00" }, { "name": "bacon/bacon-qr-code", - "version": "2.0.4", + "version": "2.0.6", "source": { "type": "git", "url": "https://github.com/Bacon/BaconQrCode.git", - "reference": "f73543ac4e1def05f1a70bcd1525c8a157a1ad09" + "reference": "0069435e2a01a57193b25790f105a5d3168653c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Bacon/BaconQrCode/zipball/f73543ac4e1def05f1a70bcd1525c8a157a1ad09", - "reference": "f73543ac4e1def05f1a70bcd1525c8a157a1ad09", + "url": "https://api.github.com/repos/Bacon/BaconQrCode/zipball/0069435e2a01a57193b25790f105a5d3168653c1", + "reference": "0069435e2a01a57193b25790f105a5d3168653c1", "shasum": "" }, "require": { @@ -484,8 +484,9 @@ "php": "^7.1 || ^8.0" }, "require-dev": { - "phly/keep-a-changelog": "^1.4", + "phly/keep-a-changelog": "^2.1", "phpunit/phpunit": "^7 | ^8 | ^9", + "spatie/phpunit-snapshot-assertions": "^4.2.9", "squizlabs/php_codesniffer": "^3.4" }, "suggest": { @@ -513,9 +514,9 @@ "homepage": "https://github.com/Bacon/BaconQrCode", "support": { "issues": "https://github.com/Bacon/BaconQrCode/issues", - "source": "https://github.com/Bacon/BaconQrCode/tree/2.0.4" + "source": "https://github.com/Bacon/BaconQrCode/tree/2.0.6" }, - "time": "2021-06-18T13:26:35+00:00" + "time": "2022-02-04T20:16:05+00:00" }, { "name": "beganovich/snappdf", @@ -572,16 +573,16 @@ }, { "name": "braintree/braintree_php", - "version": "6.5.1", + "version": "6.7.0", "source": { "type": "git", "url": "https://github.com/braintree/braintree_php.git", - "reference": "b79ecd9ccde4ccf34b0c1f7343656ad5eece8e9c" + "reference": "3406aa331c3eb5ac38aecb135389897dd50f35a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/braintree/braintree_php/zipball/b79ecd9ccde4ccf34b0c1f7343656ad5eece8e9c", - "reference": "b79ecd9ccde4ccf34b0c1f7343656ad5eece8e9c", + "url": "https://api.github.com/repos/braintree/braintree_php/zipball/3406aa331c3eb5ac38aecb135389897dd50f35a1", + "reference": "3406aa331c3eb5ac38aecb135389897dd50f35a1", "shasum": "" }, "require": { @@ -615,9 +616,9 @@ "description": "Braintree PHP Client Library", "support": { "issues": "https://github.com/braintree/braintree_php/issues", - "source": "https://github.com/braintree/braintree_php/tree/6.5.1" + "source": "https://github.com/braintree/braintree_php/tree/6.7.0" }, - "time": "2021-12-20T19:47:39+00:00" + "time": "2022-02-23T22:28:07+00:00" }, { "name": "brick/math", @@ -799,16 +800,16 @@ }, { "name": "clue/stream-filter", - "version": "v1.5.0", + "version": "v1.6.0", "source": { "type": "git", "url": "https://github.com/clue/stream-filter.git", - "reference": "aeb7d8ea49c7963d3b581378955dbf5bc49aa320" + "reference": "d6169430c7731d8509da7aecd0af756a5747b78e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/clue/stream-filter/zipball/aeb7d8ea49c7963d3b581378955dbf5bc49aa320", - "reference": "aeb7d8ea49c7963d3b581378955dbf5bc49aa320", + "url": "https://api.github.com/repos/clue/stream-filter/zipball/d6169430c7731d8509da7aecd0af756a5747b78e", + "reference": "d6169430c7731d8509da7aecd0af756a5747b78e", "shasum": "" }, "require": { @@ -819,12 +820,12 @@ }, "type": "library", "autoload": { - "psr-4": { - "Clue\\StreamFilter\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "Clue\\StreamFilter\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -849,7 +850,7 @@ ], "support": { "issues": "https://github.com/clue/stream-filter/issues", - "source": "https://github.com/clue/stream-filter/tree/v1.5.0" + "source": "https://github.com/clue/stream-filter/tree/v1.6.0" }, "funding": [ { @@ -861,20 +862,20 @@ "type": "github" } ], - "time": "2020-10-02T12:38:20+00:00" + "time": "2022-02-21T13:15:14+00:00" }, { "name": "coconutcraig/laravel-postmark", - "version": "v2.11.1", + "version": "v2.11.2", "source": { "type": "git", "url": "https://github.com/craigpaul/laravel-postmark.git", - "reference": "5481b9ad178fddc919fa717c9ae25eb7cc6b72ce" + "reference": "2feeeb9f050600f301d7c451716f1029001e8ceb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/craigpaul/laravel-postmark/zipball/5481b9ad178fddc919fa717c9ae25eb7cc6b72ce", - "reference": "5481b9ad178fddc919fa717c9ae25eb7cc6b72ce", + "url": "https://api.github.com/repos/craigpaul/laravel-postmark/zipball/2feeeb9f050600f301d7c451716f1029001e8ceb", + "reference": "2feeeb9f050600f301d7c451716f1029001e8ceb", "shasum": "" }, "require": { @@ -931,7 +932,7 @@ ], "support": { "issues": "https://github.com/craigpaul/laravel-postmark/issues", - "source": "https://github.com/craigpaul/laravel-postmark/tree/v2.11.1" + "source": "https://github.com/craigpaul/laravel-postmark/tree/v2.11.2" }, "funding": [ { @@ -939,35 +940,35 @@ "type": "github" } ], - "time": "2021-12-07T20:54:25+00:00" + "time": "2022-01-31T12:47:41+00:00" }, { "name": "codedge/laravel-selfupdater", - "version": "3.2.3", + "version": "3.3", "source": { "type": "git", "url": "https://github.com/codedge/laravel-selfupdater.git", - "reference": "60bca20f30d36259ef5eff65bc84d0dcb61267f7" + "reference": "d686e62496974301efa281a5fbbc4640f3c1b0df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/codedge/laravel-selfupdater/zipball/60bca20f30d36259ef5eff65bc84d0dcb61267f7", - "reference": "60bca20f30d36259ef5eff65bc84d0dcb61267f7", + "url": "https://api.github.com/repos/codedge/laravel-selfupdater/zipball/d686e62496974301efa281a5fbbc4640f3c1b0df", + "reference": "d686e62496974301efa281a5fbbc4640f3c1b0df", "shasum": "" }, "require": { "ext-json": "*", "ext-zip": "*", - "guzzlehttp/guzzle": "6.* || 7.*", - "laravel/framework": "^8.36.2", - "php": "^7.3 || ^7.4 || ^8.0" + "guzzlehttp/guzzle": "^7.4.1", + "laravel/framework": "^8.83.1 || ^9.0", + "php": "^7.4 || ^8.0 || ^8.1" }, "require-dev": { "dg/bypass-finals": "^1.3", "mikey179/vfsstream": "^1.6", - "mockery/mockery": "^1.4", - "orchestra/testbench": "^6.17.0", - "phpunit/phpunit": "^9.5.4" + "mockery/mockery": "^1.5", + "orchestra/testbench": "^6.24.1", + "phpunit/phpunit": "^9.5.14" }, "type": "library", "extra": { @@ -981,12 +982,12 @@ } }, "autoload": { - "psr-4": { - "Codedge\\Updater\\": "src/" - }, "files": [ "src/helpers.php" - ] + ], + "psr-4": { + "Codedge\\Updater\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -996,7 +997,7 @@ { "name": "Holger Lösken", "email": "holger.loesken@codedge.de", - "homepage": "http://codedge.de", + "homepage": "https://codedge.de", "role": "Developer" } ], @@ -1021,7 +1022,7 @@ "type": "github" } ], - "time": "2021-04-09T08:47:03+00:00" + "time": "2022-02-20T21:21:55+00:00" }, { "name": "composer/ca-bundle", @@ -1101,16 +1102,16 @@ }, { "name": "composer/composer", - "version": "2.2.5", + "version": "2.2.7", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "22c41ef275c7bb64fa28fb2c0871a39666832cb9" + "reference": "061d154dfdde157cbf453c4695e6af21c0e93903" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/22c41ef275c7bb64fa28fb2c0871a39666832cb9", - "reference": "22c41ef275c7bb64fa28fb2c0871a39666832cb9", + "url": "https://api.github.com/repos/composer/composer/zipball/061d154dfdde157cbf453c4695e6af21c0e93903", + "reference": "061d154dfdde157cbf453c4695e6af21c0e93903", "shasum": "" }, "require": { @@ -1119,7 +1120,7 @@ "composer/pcre": "^1.0", "composer/semver": "^3.0", "composer/spdx-licenses": "^1.2", - "composer/xdebug-handler": "^2.0", + "composer/xdebug-handler": "^2.0 || ^3.0", "justinrainbow/json-schema": "^5.2.11", "php": "^5.3.2 || ^7.0 || ^8.0", "psr/log": "^1.0 || ^2.0", @@ -1180,7 +1181,7 @@ "support": { "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/composer/issues", - "source": "https://github.com/composer/composer/tree/2.2.5" + "source": "https://github.com/composer/composer/tree/2.2.7" }, "funding": [ { @@ -1196,7 +1197,7 @@ "type": "tidelift" } ], - "time": "2022-01-21T16:25:52+00:00" + "time": "2022-02-25T10:12:27+00:00" }, { "name": "composer/metadata-minifier", @@ -1340,23 +1341,23 @@ }, { "name": "composer/semver", - "version": "3.2.7", + "version": "3.2.9", "source": { "type": "git", "url": "https://github.com/composer/semver.git", - "reference": "deac27056b57e46faf136fae7b449eeaa71661ee" + "reference": "a951f614bd64dcd26137bc9b7b2637ddcfc57649" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/deac27056b57e46faf136fae7b449eeaa71661ee", - "reference": "deac27056b57e46faf136fae7b449eeaa71661ee", + "url": "https://api.github.com/repos/composer/semver/zipball/a951f614bd64dcd26137bc9b7b2637ddcfc57649", + "reference": "a951f614bd64dcd26137bc9b7b2637ddcfc57649", "shasum": "" }, "require": { "php": "^5.3.2 || ^7.0 || ^8.0" }, "require-dev": { - "phpstan/phpstan": "^0.12.54", + "phpstan/phpstan": "^1.4", "symfony/phpunit-bridge": "^4.2 || ^5" }, "type": "library", @@ -1401,7 +1402,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/semver/issues", - "source": "https://github.com/composer/semver/tree/3.2.7" + "source": "https://github.com/composer/semver/tree/3.2.9" }, "funding": [ { @@ -1417,7 +1418,7 @@ "type": "tidelift" } ], - "time": "2022-01-04T09:57:54+00:00" + "time": "2022-02-04T13:58:43+00:00" }, { "name": "composer/spdx-licenses", @@ -1501,16 +1502,16 @@ }, { "name": "composer/xdebug-handler", - "version": "2.0.4", + "version": "2.0.5", "source": { "type": "git", "url": "https://github.com/composer/xdebug-handler.git", - "reference": "0c1a3925ec58a4ec98e992b9c7d171e9e184be0a" + "reference": "9e36aeed4616366d2b690bdce11f71e9178c579a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/0c1a3925ec58a4ec98e992b9c7d171e9e184be0a", - "reference": "0c1a3925ec58a4ec98e992b9c7d171e9e184be0a", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/9e36aeed4616366d2b690bdce11f71e9178c579a", + "reference": "9e36aeed4616366d2b690bdce11f71e9178c579a", "shasum": "" }, "require": { @@ -1547,7 +1548,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/xdebug-handler/issues", - "source": "https://github.com/composer/xdebug-handler/tree/2.0.4" + "source": "https://github.com/composer/xdebug-handler/tree/2.0.5" }, "funding": [ { @@ -1563,7 +1564,7 @@ "type": "tidelift" } ], - "time": "2022-01-04T17:06:45+00:00" + "time": "2022-02-24T20:20:32+00:00" }, { "name": "dasprid/enum", @@ -1788,16 +1789,16 @@ }, { "name": "doctrine/dbal", - "version": "3.3.0", + "version": "3.3.2", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "a4b37db6f186b6843474189b424aed6a7cc5de4b" + "reference": "35eae239ef515d55ebb24e9d4715cad09a4f58ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/a4b37db6f186b6843474189b424aed6a7cc5de4b", - "reference": "a4b37db6f186b6843474189b424aed6a7cc5de4b", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/35eae239ef515d55ebb24e9d4715cad09a4f58ed", + "reference": "35eae239ef515d55ebb24e9d4715cad09a4f58ed", "shasum": "" }, "require": { @@ -1879,7 +1880,7 @@ ], "support": { "issues": "https://github.com/doctrine/dbal/issues", - "source": "https://github.com/doctrine/dbal/tree/3.3.0" + "source": "https://github.com/doctrine/dbal/tree/3.3.2" }, "funding": [ { @@ -1895,7 +1896,7 @@ "type": "tidelift" } ], - "time": "2022-01-18T00:13:52+00:00" + "time": "2022-02-05T16:33:45+00:00" }, { "name": "doctrine/deprecations", @@ -2127,16 +2128,16 @@ }, { "name": "doctrine/lexer", - "version": "1.2.2", + "version": "1.2.3", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "9c50f840f257bbb941e6f4a0e94ccf5db5c3f76c" + "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/9c50f840f257bbb941e6f4a0e94ccf5db5c3f76c", - "reference": "9c50f840f257bbb941e6f4a0e94ccf5db5c3f76c", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/c268e882d4dbdd85e36e4ad69e02dc284f89d229", + "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229", "shasum": "" }, "require": { @@ -2144,7 +2145,7 @@ }, "require-dev": { "doctrine/coding-standard": "^9.0", - "phpstan/phpstan": "1.3", + "phpstan/phpstan": "^1.3", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", "vimeo/psalm": "^4.11" }, @@ -2183,7 +2184,7 @@ ], "support": { "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/1.2.2" + "source": "https://github.com/doctrine/lexer/tree/1.2.3" }, "funding": [ { @@ -2199,7 +2200,7 @@ "type": "tidelift" } ], - "time": "2022-01-12T08:27:12+00:00" + "time": "2022-02-28T11:07:21+00:00" }, { "name": "dragonmantank/cron-expression", @@ -2388,16 +2389,16 @@ }, { "name": "fakerphp/faker", - "version": "v1.18.0", + "version": "v1.19.0", "source": { "type": "git", "url": "https://github.com/FakerPHP/Faker.git", - "reference": "2e77a868f6540695cf5ebf21e5ab472c65f47567" + "reference": "d7f08a622b3346766325488aa32ddc93ccdecc75" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/2e77a868f6540695cf5ebf21e5ab472c65f47567", - "reference": "2e77a868f6540695cf5ebf21e5ab472c65f47567", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/d7f08a622b3346766325488aa32ddc93ccdecc75", + "reference": "d7f08a622b3346766325488aa32ddc93ccdecc75", "shasum": "" }, "require": { @@ -2410,10 +2411,12 @@ }, "require-dev": { "bamarni/composer-bin-plugin": "^1.4.1", + "doctrine/persistence": "^1.3 || ^2.0", "ext-intl": "*", "symfony/phpunit-bridge": "^4.4 || ^5.2" }, "suggest": { + "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", "ext-curl": "Required by Faker\\Provider\\Image to download images.", "ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.", "ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.", @@ -2422,7 +2425,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "v1.18-dev" + "dev-main": "v1.19-dev" } }, "autoload": { @@ -2447,9 +2450,9 @@ ], "support": { "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.18.0" + "source": "https://github.com/FakerPHP/Faker/tree/v1.19.0" }, - "time": "2022-01-23T17:56:23+00:00" + "time": "2022-02-02T17:38:57+00:00" }, { "name": "fideloper/proxy", @@ -2568,25 +2571,23 @@ }, { "name": "fruitcake/laravel-cors", - "version": "v2.0.5", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/fruitcake/laravel-cors.git", - "reference": "3a066e5cac32e2d1cdaacd6b961692778f37b5fc" + "reference": "783a74f5e3431d7b9805be8afb60fd0a8f743534" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fruitcake/laravel-cors/zipball/3a066e5cac32e2d1cdaacd6b961692778f37b5fc", - "reference": "3a066e5cac32e2d1cdaacd6b961692778f37b5fc", + "url": "https://api.github.com/repos/fruitcake/laravel-cors/zipball/783a74f5e3431d7b9805be8afb60fd0a8f743534", + "reference": "783a74f5e3431d7b9805be8afb60fd0a8f743534", "shasum": "" }, "require": { "asm89/stack-cors": "^2.0.1", "illuminate/contracts": "^6|^7|^8|^9", "illuminate/support": "^6|^7|^8|^9", - "php": ">=7.2", - "symfony/http-foundation": "^4|^5|^6", - "symfony/http-kernel": "^4.3.4|^5|^6" + "php": ">=7.2" }, "require-dev": { "laravel/framework": "^6|^7.24|^8", @@ -2597,7 +2598,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "2.1-dev" }, "laravel": { "providers": [ @@ -2633,7 +2634,7 @@ ], "support": { "issues": "https://github.com/fruitcake/laravel-cors/issues", - "source": "https://github.com/fruitcake/laravel-cors/tree/v2.0.5" + "source": "https://github.com/fruitcake/laravel-cors/tree/v2.2.0" }, "funding": [ { @@ -2645,7 +2646,7 @@ "type": "github" } ], - "time": "2022-01-03T14:53:04+00:00" + "time": "2022-02-23T14:25:13+00:00" }, { "name": "gocardless/gocardless-pro", @@ -2748,12 +2749,12 @@ } }, "autoload": { - "psr-4": { - "Google\\": "src/" - }, "files": [ "src/aliases.php" ], + "psr-4": { + "Google\\": "src/" + }, "classmap": [ "src/aliases.php" ] @@ -2775,16 +2776,16 @@ }, { "name": "google/apiclient-services", - "version": "v0.232.0", + "version": "v0.237.0", "source": { "type": "git", "url": "https://github.com/googleapis/google-api-php-client-services.git", - "reference": "e671adddfd3d2b36a415e7bf22189b1626bc13f8" + "reference": "c10652adc29b4242237075acde318e83f88ab918" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/e671adddfd3d2b36a415e7bf22189b1626bc13f8", - "reference": "e671adddfd3d2b36a415e7bf22189b1626bc13f8", + "url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/c10652adc29b4242237075acde318e83f88ab918", + "reference": "c10652adc29b4242237075acde318e83f88ab918", "shasum": "" }, "require": { @@ -2795,12 +2796,12 @@ }, "type": "library", "autoload": { - "psr-4": { - "Google\\Service\\": "src" - }, "files": [ "autoload.php" - ] + ], + "psr-4": { + "Google\\Service\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2813,9 +2814,9 @@ ], "support": { "issues": "https://github.com/googleapis/google-api-php-client-services/issues", - "source": "https://github.com/googleapis/google-api-php-client-services/tree/v0.232.0" + "source": "https://github.com/googleapis/google-api-php-client-services/tree/v0.237.0" }, - "time": "2022-01-28T12:22:13+00:00" + "time": "2022-02-23T22:58:02+00:00" }, { "name": "google/auth", @@ -3037,12 +3038,12 @@ } }, "autoload": { - "psr-4": { - "GuzzleHttp\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "GuzzleHttp\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3144,12 +3145,12 @@ } }, "autoload": { - "psr-4": { - "GuzzleHttp\\Promise\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3344,12 +3345,12 @@ }, "type": "library", "autoload": { - "psr-4": { - "JsonMachine\\": "src/" - }, "files": [ "src/functions.php" - ] + ], + "psr-4": { + "JsonMachine\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3881,16 +3882,16 @@ }, { "name": "laravel/framework", - "version": "v8.81.0", + "version": "v8.83.3", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "9cc0efd724ce67a190b1695ba31a27bbb1ae9177" + "reference": "b4ed222a188cca74ca9062296e525d26ae54a0ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/9cc0efd724ce67a190b1695ba31a27bbb1ae9177", - "reference": "9cc0efd724ce67a190b1695ba31a27bbb1ae9177", + "url": "https://api.github.com/repos/laravel/framework/zipball/b4ed222a188cca74ca9062296e525d26ae54a0ce", + "reference": "b4ed222a188cca74ca9062296e525d26ae54a0ce", "shasum": "" }, "require": { @@ -4050,20 +4051,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-01-25T16:41:46+00:00" + "time": "2022-03-03T15:14:29+00:00" }, { "name": "laravel/serializable-closure", - "version": "v1.0.5", + "version": "v1.1.1", "source": { "type": "git", "url": "https://github.com/laravel/serializable-closure.git", - "reference": "25de3be1bca1b17d52ff0dc02b646c667ac7266c" + "reference": "9e4b005daa20b0c161f3845040046dc9ddc1d74e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/25de3be1bca1b17d52ff0dc02b646c667ac7266c", - "reference": "25de3be1bca1b17d52ff0dc02b646c667ac7266c", + "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/9e4b005daa20b0c161f3845040046dc9ddc1d74e", + "reference": "9e4b005daa20b0c161f3845040046dc9ddc1d74e", "shasum": "" }, "require": { @@ -4109,7 +4110,7 @@ "issues": "https://github.com/laravel/serializable-closure/issues", "source": "https://github.com/laravel/serializable-closure" }, - "time": "2021-11-30T15:53:04+00:00" + "time": "2022-02-11T19:23:53+00:00" }, { "name": "laravel/slack-notification-channel", @@ -4174,16 +4175,16 @@ }, { "name": "laravel/socialite", - "version": "v5.4.0", + "version": "v5.5.1", "source": { "type": "git", "url": "https://github.com/laravel/socialite.git", - "reference": "4b1999232a572dfe61f42c7295490d1372dad097" + "reference": "9b96dfd69e9c1de69c23205cb390550bc71c357e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/socialite/zipball/4b1999232a572dfe61f42c7295490d1372dad097", - "reference": "4b1999232a572dfe61f42c7295490d1372dad097", + "url": "https://api.github.com/repos/laravel/socialite/zipball/9b96dfd69e9c1de69c23205cb390550bc71c357e", + "reference": "9b96dfd69e9c1de69c23205cb390550bc71c357e", "shasum": "" }, "require": { @@ -4239,7 +4240,7 @@ "issues": "https://github.com/laravel/socialite/issues", "source": "https://github.com/laravel/socialite" }, - "time": "2022-01-25T20:10:22+00:00" + "time": "2022-02-07T16:08:19+00:00" }, { "name": "laravel/tinker", @@ -4311,22 +4312,22 @@ }, { "name": "laravel/ui", - "version": "v3.4.2", + "version": "v3.4.5", "source": { "type": "git", "url": "https://github.com/laravel/ui.git", - "reference": "e01198123f7f4369d13c1f83a897c3f5e97fc9f4" + "reference": "f11d295de1508c5bb56206a620b00b6616de414c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/ui/zipball/e01198123f7f4369d13c1f83a897c3f5e97fc9f4", - "reference": "e01198123f7f4369d13c1f83a897c3f5e97fc9f4", + "url": "https://api.github.com/repos/laravel/ui/zipball/f11d295de1508c5bb56206a620b00b6616de414c", + "reference": "f11d295de1508c5bb56206a620b00b6616de414c", "shasum": "" }, "require": { "illuminate/console": "^8.42|^9.0", "illuminate/filesystem": "^8.42|^9.0", - "illuminate/support": "^8.42|^9.0", + "illuminate/support": "^8.82|^9.0", "illuminate/validation": "^8.42|^9.0", "php": "^7.3|^8.0" }, @@ -4366,22 +4367,22 @@ "ui" ], "support": { - "source": "https://github.com/laravel/ui/tree/v3.4.2" + "source": "https://github.com/laravel/ui/tree/v3.4.5" }, - "time": "2022-01-25T20:15:56+00:00" + "time": "2022-02-21T14:59:16+00:00" }, { "name": "league/commonmark", - "version": "2.2.1", + "version": "2.2.3", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "f8afb78f087777b040e0ab8a6b6ca93f6fc3f18a" + "reference": "47b015bc4e50fd4438c1ffef6139a1fb65d2ab71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/f8afb78f087777b040e0ab8a6b6ca93f6fc3f18a", - "reference": "f8afb78f087777b040e0ab8a6b6ca93f6fc3f18a", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/47b015bc4e50fd4438c1ffef6139a1fb65d2ab71", + "reference": "47b015bc4e50fd4438c1ffef6139a1fb65d2ab71", "shasum": "" }, "require": { @@ -4472,7 +4473,7 @@ "type": "tidelift" } ], - "time": "2022-01-25T14:37:33+00:00" + "time": "2022-02-26T21:24:45+00:00" }, { "name": "league/config", @@ -4595,12 +4596,12 @@ } }, "autoload": { - "psr-4": { - "League\\Csv\\": "src" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "League\\Csv\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -4904,6 +4905,95 @@ }, "time": "2017-06-12T11:04:56+00:00" }, + { + "name": "league/html-to-markdown", + "version": "5.1.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/html-to-markdown.git", + "reference": "e0fc8cf07bdabbcd3765341ecb50c34c271d64e1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/html-to-markdown/zipball/e0fc8cf07bdabbcd3765341ecb50c34c271d64e1", + "reference": "e0fc8cf07bdabbcd3765341ecb50c34c271d64e1", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-xml": "*", + "php": "^7.2.5 || ^8.0" + }, + "require-dev": { + "mikehaertl/php-shellcommand": "^1.1.0", + "phpstan/phpstan": "^0.12.99", + "phpunit/phpunit": "^8.5 || ^9.2", + "scrutinizer/ocular": "^1.6", + "unleashedtech/php-coding-standard": "^2.7", + "vimeo/psalm": "^4.22" + }, + "bin": [ + "bin/html-to-markdown" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.2-dev" + } + }, + "autoload": { + "psr-4": { + "League\\HTMLToMarkdown\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + }, + { + "name": "Nick Cernis", + "email": "nick@cern.is", + "homepage": "http://modernnerd.net", + "role": "Original Author" + } + ], + "description": "An HTML-to-markdown conversion helper for PHP", + "homepage": "https://github.com/thephpleague/html-to-markdown", + "keywords": [ + "html", + "markdown" + ], + "support": { + "issues": "https://github.com/thephpleague/html-to-markdown/issues", + "source": "https://github.com/thephpleague/html-to-markdown/tree/5.1.0" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/league/html-to-markdown", + "type": "tidelift" + } + ], + "time": "2022-03-02T17:24:08+00:00" + }, { "name": "league/mime-type-detection", "version": "1.9.0", @@ -5101,16 +5191,16 @@ }, { "name": "livewire/livewire", - "version": "v2.10.1", + "version": "v2.10.4", "source": { "type": "git", "url": "https://github.com/livewire/livewire.git", - "reference": "0d417b27791af09c79108eafd1344842f83a26ee" + "reference": "2d68c61a8edf338534fdd8e2b2750dca2e741439" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/livewire/livewire/zipball/0d417b27791af09c79108eafd1344842f83a26ee", - "reference": "0d417b27791af09c79108eafd1344842f83a26ee", + "url": "https://api.github.com/repos/livewire/livewire/zipball/2d68c61a8edf338534fdd8e2b2750dca2e741439", + "reference": "2d68c61a8edf338534fdd8e2b2750dca2e741439", "shasum": "" }, "require": { @@ -5162,7 +5252,7 @@ "description": "A front-end framework for Laravel.", "support": { "issues": "https://github.com/livewire/livewire/issues", - "source": "https://github.com/livewire/livewire/tree/v2.10.1" + "source": "https://github.com/livewire/livewire/tree/v2.10.4" }, "funding": [ { @@ -5170,20 +5260,20 @@ "type": "github" } ], - "time": "2022-01-21T13:39:10+00:00" + "time": "2022-02-18T22:35:27+00:00" }, { "name": "mollie/mollie-api-php", - "version": "v2.40.1", + "version": "v2.40.2", "source": { "type": "git", "url": "https://github.com/mollie/mollie-api-php.git", - "reference": "b99ad3662b4141efa9ee8eb83a04c2d3c100f83c" + "reference": "ac3e079bbc86e95dc77d4f33965a62e9e6b95ed8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mollie/mollie-api-php/zipball/b99ad3662b4141efa9ee8eb83a04c2d3c100f83c", - "reference": "b99ad3662b4141efa9ee8eb83a04c2d3c100f83c", + "url": "https://api.github.com/repos/mollie/mollie-api-php/zipball/ac3e079bbc86e95dc77d4f33965a62e9e6b95ed8", + "reference": "ac3e079bbc86e95dc77d4f33965a62e9e6b95ed8", "shasum": "" }, "require": { @@ -5259,47 +5349,50 @@ ], "support": { "issues": "https://github.com/mollie/mollie-api-php/issues", - "source": "https://github.com/mollie/mollie-api-php/tree/v2.40.1" + "source": "https://github.com/mollie/mollie-api-php/tree/v2.40.2" }, - "time": "2022-01-18T18:16:13+00:00" + "time": "2022-02-08T08:53:18+00:00" }, { "name": "moneyphp/money", - "version": "v3.3.1", + "version": "v4.0.3", "source": { "type": "git", "url": "https://github.com/moneyphp/money.git", - "reference": "122664c2621a95180a13c1ac81fea1d2ef20781e" + "reference": "d945f775bd6ab0920d9d205813d8831a899a8844" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/moneyphp/money/zipball/122664c2621a95180a13c1ac81fea1d2ef20781e", - "reference": "122664c2621a95180a13c1ac81fea1d2ef20781e", + "url": "https://api.github.com/repos/moneyphp/money/zipball/d945f775bd6ab0920d9d205813d8831a899a8844", + "reference": "d945f775bd6ab0920d9d205813d8831a899a8844", "shasum": "" }, "require": { + "ext-bcmath": "*", + "ext-filter": "*", "ext-json": "*", - "php": ">=5.6" + "php": "^8.0" }, "require-dev": { - "cache/taggable-cache": "^0.4.0", - "doctrine/instantiator": "^1.0.5", - "ext-bcmath": "*", + "cache/taggable-cache": "^1.1.0", + "doctrine/coding-standard": "^9.0", + "doctrine/instantiator": "^1.4.0", "ext-gmp": "*", "ext-intl": "*", - "florianv/exchanger": "^1.0", - "florianv/swap": "^3.0", - "friends-of-phpspec/phpspec-code-coverage": "^3.1.1 || ^4.3", + "florianv/exchanger": "^2.6.3", + "florianv/swap": "^4.3.0", "moneyphp/iso-currencies": "^3.2.1", - "php-http/message": "^1.4", - "php-http/mock-client": "^1.0.0", - "phpspec/phpspec": "^3.4.3", - "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.5.18 || ^8.5", - "psr/cache": "^1.0", - "symfony/phpunit-bridge": "^4" + "php-http/message": "^1.11.0", + "php-http/mock-client": "^1.4.1", + "phpbench/phpbench": "1.0.0-beta1@BETA", + "phpspec/phpspec": "^7.0.1", + "phpunit/phpunit": "^9.5.4", + "psalm/plugin-phpunit": "^0.15.1", + "psr/cache": "^1.0.1", + "roave/infection-static-analysis-plugin": "^1.7", + "vimeo/psalm": "~4.7.0 || ^4.8.2" }, "suggest": { - "ext-bcmath": "Calculate without integer limits", "ext-gmp": "Calculate without integer limits", "ext-intl": "Format Money objects with intl", "florianv/exchanger": "Exchange rates library for PHP", @@ -5345,9 +5438,9 @@ ], "support": { "issues": "https://github.com/moneyphp/money/issues", - "source": "https://github.com/moneyphp/money/tree/master" + "source": "https://github.com/moneyphp/money/tree/v4.0.3" }, - "time": "2020-03-18T17:49:59+00:00" + "time": "2021-12-01T10:39:00+00:00" }, { "name": "monolog/monolog", @@ -5480,12 +5573,12 @@ } }, "autoload": { - "psr-4": { - "JmesPath\\": "src/" - }, "files": [ "src/JmesPath.php" - ] + ], + "psr-4": { + "JmesPath\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -5584,16 +5677,16 @@ }, { "name": "nesbot/carbon", - "version": "2.56.0", + "version": "2.57.0", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "626ec8cbb724cd3c3400c3ed8f730545b744e3f4" + "reference": "4a54375c21eea4811dbd1149fe6b246517554e78" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/626ec8cbb724cd3c3400c3ed8f730545b744e3f4", - "reference": "626ec8cbb724cd3c3400c3ed8f730545b744e3f4", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4a54375c21eea4811dbd1149fe6b246517554e78", + "reference": "4a54375c21eea4811dbd1149fe6b246517554e78", "shasum": "" }, "require": { @@ -5676,7 +5769,7 @@ "type": "tidelift" } ], - "time": "2022-01-21T17:08:38+00:00" + "time": "2022-02-13T18:13:33+00:00" }, { "name": "nette/schema", @@ -5883,16 +5976,16 @@ }, { "name": "nwidart/laravel-modules", - "version": "8.2.0", + "version": "v8.3.0", "source": { "type": "git", "url": "https://github.com/nWidart/laravel-modules.git", - "reference": "6ade5ec19e81a0e4807834886a2c47509d069cb7" + "reference": "ee06dc0ac019cc392bd66a1c3e6cec0412fcc52d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nWidart/laravel-modules/zipball/6ade5ec19e81a0e4807834886a2c47509d069cb7", - "reference": "6ade5ec19e81a0e4807834886a2c47509d069cb7", + "url": "https://api.github.com/repos/nWidart/laravel-modules/zipball/ee06dc0ac019cc392bd66a1c3e6cec0412fcc52d", + "reference": "ee06dc0ac019cc392bd66a1c3e6cec0412fcc52d", "shasum": "" }, "require": { @@ -5906,7 +5999,7 @@ "orchestra/testbench": "^6.2", "phpstan/phpstan": "^0.12.14", "phpunit/phpunit": "^8.5", - "spatie/phpunit-snapshot-assertions": "^2.1.0" + "spatie/phpunit-snapshot-assertions": "^2.1.0|^4.2" }, "type": "library", "extra": { @@ -5923,12 +6016,12 @@ } }, "autoload": { - "psr-4": { - "Nwidart\\Modules\\": "src" - }, "files": [ "src/helpers.php" - ] + ], + "psr-4": { + "Nwidart\\Modules\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -5952,7 +6045,7 @@ ], "support": { "issues": "https://github.com/nWidart/laravel-modules/issues", - "source": "https://github.com/nWidart/laravel-modules/tree/8.2.0" + "source": "https://github.com/nWidart/laravel-modules/tree/v8.3.0" }, "funding": [ { @@ -5960,20 +6053,20 @@ "type": "github" } ], - "time": "2020-11-11T09:24:22+00:00" + "time": "2022-02-10T20:30:19+00:00" }, { "name": "nyholm/psr7", - "version": "1.4.1", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/Nyholm/psr7.git", - "reference": "2212385b47153ea71b1c1b1374f8cb5e4f7892ec" + "reference": "1461e07a0f2a975a52082ca3b769ca912b816226" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Nyholm/psr7/zipball/2212385b47153ea71b1c1b1374f8cb5e4f7892ec", - "reference": "2212385b47153ea71b1c1b1374f8cb5e4f7892ec", + "url": "https://api.github.com/repos/Nyholm/psr7/zipball/1461e07a0f2a975a52082ca3b769ca912b816226", + "reference": "1461e07a0f2a975a52082ca3b769ca912b816226", "shasum": "" }, "require": { @@ -6025,7 +6118,7 @@ ], "support": { "issues": "https://github.com/Nyholm/psr7/issues", - "source": "https://github.com/Nyholm/psr7/tree/1.4.1" + "source": "https://github.com/Nyholm/psr7/tree/1.5.0" }, "funding": [ { @@ -6037,29 +6130,29 @@ "type": "github" } ], - "time": "2021-07-02T08:32:20+00:00" + "time": "2022-02-02T18:37:57+00:00" }, { "name": "omnipay/common", - "version": "v3.1.2", + "version": "v3.2.0", "source": { "type": "git", "url": "https://github.com/thephpleague/omnipay-common.git", - "reference": "5b16387ec5ab1b9ff86bdf0f20415088693b9948" + "reference": "e278ff00676c05cd0f4aaaf6189a226f26ae056e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-common/zipball/5b16387ec5ab1b9ff86bdf0f20415088693b9948", - "reference": "5b16387ec5ab1b9ff86bdf0f20415088693b9948", + "url": "https://api.github.com/repos/thephpleague/omnipay-common/zipball/e278ff00676c05cd0f4aaaf6189a226f26ae056e", + "reference": "e278ff00676c05cd0f4aaaf6189a226f26ae056e", "shasum": "" }, "require": { - "moneyphp/money": "^3.1", + "moneyphp/money": "^3.1|^4.0.3", "php": "^7.2|^8", "php-http/client-implementation": "^1", "php-http/discovery": "^1.14", "php-http/message": "^1.5", - "symfony/http-foundation": "^2.1|^3|^4|^5" + "symfony/http-foundation": "^2.1|^3|^4|^5|^6" }, "require-dev": { "omnipay/tests": "^4.1", @@ -6121,7 +6214,7 @@ ], "support": { "issues": "https://github.com/thephpleague/omnipay-common/issues", - "source": "https://github.com/thephpleague/omnipay-common/tree/v3.1.2" + "source": "https://github.com/thephpleague/omnipay-common/tree/v3.2.0" }, "funding": [ { @@ -6129,7 +6222,7 @@ "type": "github" } ], - "time": "2021-06-05T11:36:12+00:00" + "time": "2021-12-30T11:32:00+00:00" }, { "name": "omnipay/paypal", @@ -6223,12 +6316,12 @@ } }, "autoload": { - "psr-4": { - "Opis\\Closure\\": "src/" - }, "files": [ "functions.php" - ] + ], + "psr-4": { + "Opis\\Closure\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -6635,16 +6728,16 @@ }, { "name": "php-http/httplug", - "version": "2.2.0", + "version": "2.3.0", "source": { "type": "git", "url": "https://github.com/php-http/httplug.git", - "reference": "191a0a1b41ed026b717421931f8d3bd2514ffbf9" + "reference": "f640739f80dfa1152533976e3c112477f69274eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-http/httplug/zipball/191a0a1b41ed026b717421931f8d3bd2514ffbf9", - "reference": "191a0a1b41ed026b717421931f8d3bd2514ffbf9", + "url": "https://api.github.com/repos/php-http/httplug/zipball/f640739f80dfa1152533976e3c112477f69274eb", + "reference": "f640739f80dfa1152533976e3c112477f69274eb", "shasum": "" }, "require": { @@ -6691,22 +6784,22 @@ ], "support": { "issues": "https://github.com/php-http/httplug/issues", - "source": "https://github.com/php-http/httplug/tree/master" + "source": "https://github.com/php-http/httplug/tree/2.3.0" }, - "time": "2020-07-13T15:43:23+00:00" + "time": "2022-02-21T09:52:22+00:00" }, { "name": "php-http/message", - "version": "1.12.0", + "version": "1.13.0", "source": { "type": "git", "url": "https://github.com/php-http/message.git", - "reference": "39eb7548be982a81085fe5a6e2a44268cd586291" + "reference": "7886e647a30a966a1a8d1dad1845b71ca8678361" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-http/message/zipball/39eb7548be982a81085fe5a6e2a44268cd586291", - "reference": "39eb7548be982a81085fe5a6e2a44268cd586291", + "url": "https://api.github.com/repos/php-http/message/zipball/7886e647a30a966a1a8d1dad1845b71ca8678361", + "reference": "7886e647a30a966a1a8d1dad1845b71ca8678361", "shasum": "" }, "require": { @@ -6723,7 +6816,7 @@ "ext-zlib": "*", "guzzlehttp/psr7": "^1.0", "laminas/laminas-diactoros": "^2.0", - "phpspec/phpspec": "^5.1 || ^6.3", + "phpspec/phpspec": "^5.1 || ^6.3 || ^7.1", "slim/slim": "^3.0" }, "suggest": { @@ -6739,12 +6832,12 @@ } }, "autoload": { - "psr-4": { - "Http\\Message\\": "src/" - }, "files": [ "src/filters.php" - ] + ], + "psr-4": { + "Http\\Message\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -6765,9 +6858,9 @@ ], "support": { "issues": "https://github.com/php-http/message/issues", - "source": "https://github.com/php-http/message/tree/1.12.0" + "source": "https://github.com/php-http/message/tree/1.13.0" }, - "time": "2021-08-29T09:13:12+00:00" + "time": "2022-02-11T13:41:14+00:00" }, { "name": "php-http/message-factory", @@ -6953,16 +7046,16 @@ }, { "name": "phpseclib/phpseclib", - "version": "3.0.12", + "version": "3.0.13", "source": { "type": "git", "url": "https://github.com/phpseclib/phpseclib.git", - "reference": "89bfb45bd8b1abc3b37e910d57f5dbd3174f40fb" + "reference": "1443ab79364eea48665fa8c09ac67f37d1025f7e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/89bfb45bd8b1abc3b37e910d57f5dbd3174f40fb", - "reference": "89bfb45bd8b1abc3b37e910d57f5dbd3174f40fb", + "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/1443ab79364eea48665fa8c09ac67f37d1025f7e", + "reference": "1443ab79364eea48665fa8c09ac67f37d1025f7e", "shasum": "" }, "require": { @@ -7044,7 +7137,7 @@ ], "support": { "issues": "https://github.com/phpseclib/phpseclib/issues", - "source": "https://github.com/phpseclib/phpseclib/tree/3.0.12" + "source": "https://github.com/phpseclib/phpseclib/tree/3.0.13" }, "funding": [ { @@ -7060,7 +7153,7 @@ "type": "tidelift" } ], - "time": "2021-11-28T23:46:03+00:00" + "time": "2022-01-30T08:50:05+00:00" }, { "name": "pragmarx/google2fa", @@ -7590,16 +7683,16 @@ }, { "name": "psy/psysh", - "version": "v0.11.1", + "version": "v0.11.2", "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "570292577277f06f590635381a7f761a6cf4f026" + "reference": "7f7da640d68b9c9fec819caae7c744a213df6514" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/570292577277f06f590635381a7f761a6cf4f026", - "reference": "570292577277f06f590635381a7f761a6cf4f026", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/7f7da640d68b9c9fec819caae7c744a213df6514", + "reference": "7f7da640d68b9c9fec819caae7c744a213df6514", "shasum": "" }, "require": { @@ -7610,6 +7703,9 @@ "symfony/console": "^6.0 || ^5.0 || ^4.0 || ^3.4", "symfony/var-dumper": "^6.0 || ^5.0 || ^4.0 || ^3.4" }, + "conflict": { + "symfony/console": "4.4.37 || 5.3.14 || 5.3.15 || 5.4.3 || 5.4.4 || 6.0.3 || 6.0.4" + }, "require-dev": { "bamarni/composer-bin-plugin": "^1.2", "hoa/console": "3.17.05.02" @@ -7659,9 +7755,9 @@ ], "support": { "issues": "https://github.com/bobthecow/psysh/issues", - "source": "https://github.com/bobthecow/psysh/tree/v0.11.1" + "source": "https://github.com/bobthecow/psysh/tree/v0.11.2" }, - "time": "2022-01-03T13:58:38+00:00" + "time": "2022-02-28T15:28:54+00:00" }, { "name": "ralouphie/getallheaders", @@ -7851,12 +7947,12 @@ } }, "autoload": { - "psr-4": { - "Ramsey\\Uuid\\": "src/" - }, "files": [ "src/functions.php" - ] + ], + "psr-4": { + "Ramsey\\Uuid\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -7948,32 +8044,32 @@ }, { "name": "react/promise", - "version": "v2.8.0", + "version": "v2.9.0", "source": { "type": "git", "url": "https://github.com/reactphp/promise.git", - "reference": "f3cff96a19736714524ca0dd1d4130de73dbbbc4" + "reference": "234f8fd1023c9158e2314fa9d7d0e6a83db42910" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/reactphp/promise/zipball/f3cff96a19736714524ca0dd1d4130de73dbbbc4", - "reference": "f3cff96a19736714524ca0dd1d4130de73dbbbc4", + "url": "https://api.github.com/repos/reactphp/promise/zipball/234f8fd1023c9158e2314fa9d7d0e6a83db42910", + "reference": "234f8fd1023c9158e2314fa9d7d0e6a83db42910", "shasum": "" }, "require": { "php": ">=5.4.0" }, "require-dev": { - "phpunit/phpunit": "^7.0 || ^6.5 || ^5.7 || ^4.8.36" + "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.36" }, "type": "library", "autoload": { - "psr-4": { - "React\\Promise\\": "src/" - }, "files": [ "src/functions_include.php" - ] + ], + "psr-4": { + "React\\Promise\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -7982,7 +8078,23 @@ "authors": [ { "name": "Jan Sorgalla", - "email": "jsorgalla@gmail.com" + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" } ], "description": "A lightweight implementation of CommonJS Promises/A for PHP", @@ -7992,9 +8104,19 @@ ], "support": { "issues": "https://github.com/reactphp/promise/issues", - "source": "https://github.com/reactphp/promise/tree/v2.8.0" + "source": "https://github.com/reactphp/promise/tree/v2.9.0" }, - "time": "2020-05-12T15:16:56+00:00" + "funding": [ + { + "url": "https://github.com/WyriHaximus", + "type": "github" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2022-02-11T10:27:51+00:00" }, { "name": "rmccue/requests", @@ -8141,13 +8263,13 @@ }, "type": "library", "autoload": { - "psr-4": { - "Sabre\\Xml\\": "lib/" - }, "files": [ "lib/Deserializer/functions.php", "lib/Serializer/functions.php" - ] + ], + "psr-4": { + "Sabre\\Xml\\": "lib/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -8455,16 +8577,16 @@ }, { "name": "sentry/sentry-laravel", - "version": "2.11.0", + "version": "2.11.1", "source": { "type": "git", "url": "https://github.com/getsentry/sentry-laravel.git", - "reference": "87b0a1d21b85728206de43f816aa349030811627" + "reference": "183866ec5dc367efe4d5aa22906860e837aa6685" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/getsentry/sentry-laravel/zipball/87b0a1d21b85728206de43f816aa349030811627", - "reference": "87b0a1d21b85728206de43f816aa349030811627", + "url": "https://api.github.com/repos/getsentry/sentry-laravel/zipball/183866ec5dc367efe4d5aa22906860e837aa6685", + "reference": "183866ec5dc367efe4d5aa22906860e837aa6685", "shasum": "" }, "require": { @@ -8530,7 +8652,7 @@ ], "support": { "issues": "https://github.com/getsentry/sentry-laravel/issues", - "source": "https://github.com/getsentry/sentry-laravel/tree/2.11.0" + "source": "https://github.com/getsentry/sentry-laravel/tree/2.11.1" }, "funding": [ { @@ -8542,7 +8664,7 @@ "type": "custom" } ], - "time": "2022-01-19T10:29:29+00:00" + "time": "2022-02-14T20:00:19+00:00" }, { "name": "square/square", @@ -8603,16 +8725,16 @@ }, { "name": "stripe/stripe-php", - "version": "v7.112.0", + "version": "v7.116.0", "source": { "type": "git", "url": "https://github.com/stripe/stripe-php.git", - "reference": "f5213ccb88795663f73841bc65f467a0e1e61180" + "reference": "7a39f594f213ed3f443a95adf769d1ecbc8393e7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/stripe/stripe-php/zipball/f5213ccb88795663f73841bc65f467a0e1e61180", - "reference": "f5213ccb88795663f73841bc65f467a0e1e61180", + "url": "https://api.github.com/repos/stripe/stripe-php/zipball/7a39f594f213ed3f443a95adf769d1ecbc8393e7", + "reference": "7a39f594f213ed3f443a95adf769d1ecbc8393e7", "shasum": "" }, "require": { @@ -8657,9 +8779,9 @@ ], "support": { "issues": "https://github.com/stripe/stripe-php/issues", - "source": "https://github.com/stripe/stripe-php/tree/v7.112.0" + "source": "https://github.com/stripe/stripe-php/tree/v7.116.0" }, - "time": "2022-01-25T19:42:36+00:00" + "time": "2022-03-02T15:51:15+00:00" }, { "name": "swiftmailer/swiftmailer", @@ -8739,16 +8861,16 @@ }, { "name": "symfony/console", - "version": "v5.4.3", + "version": "v5.4.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "a2a86ec353d825c75856c6fd14fac416a7bdb6b8" + "reference": "d8111acc99876953f52fe16d4c50eb60940d49ad" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/a2a86ec353d825c75856c6fd14fac416a7bdb6b8", - "reference": "a2a86ec353d825c75856c6fd14fac416a7bdb6b8", + "url": "https://api.github.com/repos/symfony/console/zipball/d8111acc99876953f52fe16d4c50eb60940d49ad", + "reference": "d8111acc99876953f52fe16d4c50eb60940d49ad", "shasum": "" }, "require": { @@ -8818,7 +8940,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.3" + "source": "https://github.com/symfony/console/tree/v5.4.5" }, "funding": [ { @@ -8834,25 +8956,24 @@ "type": "tidelift" } ], - "time": "2022-01-26T16:28:35+00:00" + "time": "2022-02-24T12:45:35+00:00" }, { "name": "symfony/css-selector", - "version": "v5.4.3", + "version": "v6.0.3", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "b0a190285cd95cb019237851205b8140ef6e368e" + "reference": "1955d595c12c111629cc814d3f2a2ff13580508a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/b0a190285cd95cb019237851205b8140ef6e368e", - "reference": "b0a190285cd95cb019237851205b8140ef6e368e", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/1955d595c12c111629cc814d3f2a2ff13580508a", + "reference": "1955d595c12c111629cc814d3f2a2ff13580508a", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.0.2" }, "type": "library", "autoload": { @@ -8884,7 +9005,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v5.4.3" + "source": "https://github.com/symfony/css-selector/tree/v6.0.3" }, "funding": [ { @@ -8900,29 +9021,29 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2022-01-02T09:55:41+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v2.5.0", + "version": "v3.0.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "6f981ee24cf69ee7ce9736146d1c57c2780598a8" + "reference": "c726b64c1ccfe2896cb7df2e1331c357ad1c8ced" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/6f981ee24cf69ee7ce9736146d1c57c2780598a8", - "reference": "6f981ee24cf69ee7ce9736146d1c57c2780598a8", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/c726b64c1ccfe2896cb7df2e1331c357ad1c8ced", + "reference": "c726b64c1ccfe2896cb7df2e1331c357ad1c8ced", "shasum": "" }, "require": { - "php": ">=7.1" + "php": ">=8.0.2" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.0-dev" }, "thanks": { "name": "symfony/contracts", @@ -8951,7 +9072,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.0.0" }, "funding": [ { @@ -8967,7 +9088,7 @@ "type": "tidelift" } ], - "time": "2021-07-12T14:48:14+00:00" + "time": "2021-11-01T23:48:49+00:00" }, { "name": "symfony/error-handler", @@ -9127,20 +9248,20 @@ }, { "name": "symfony/event-dispatcher-contracts", - "version": "v2.5.0", + "version": "v3.0.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "66bea3b09be61613cd3b4043a65a8ec48cfa6d2a" + "reference": "aa5422287b75594b90ee9cd807caf8f0df491385" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/66bea3b09be61613cd3b4043a65a8ec48cfa6d2a", - "reference": "66bea3b09be61613cd3b4043a65a8ec48cfa6d2a", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/aa5422287b75594b90ee9cd807caf8f0df491385", + "reference": "aa5422287b75594b90ee9cd807caf8f0df491385", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.0.2", "psr/event-dispatcher": "^1" }, "suggest": { @@ -9149,7 +9270,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.0-dev" }, "thanks": { "name": "symfony/contracts", @@ -9186,7 +9307,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.5.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.0.0" }, "funding": [ { @@ -9202,20 +9323,20 @@ "type": "tidelift" } ], - "time": "2021-07-12T14:48:14+00:00" + "time": "2021-07-15T12:33:35+00:00" }, { "name": "symfony/filesystem", - "version": "v5.4.3", + "version": "v5.4.5", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "0f0c4bf1840420f4aef3f32044a9dbb24682731b" + "reference": "797680071ea8f71b94eb958680c50d0e002638f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/0f0c4bf1840420f4aef3f32044a9dbb24682731b", - "reference": "0f0c4bf1840420f4aef3f32044a9dbb24682731b", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/797680071ea8f71b94eb958680c50d0e002638f5", + "reference": "797680071ea8f71b94eb958680c50d0e002638f5", "shasum": "" }, "require": { @@ -9250,7 +9371,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.3" + "source": "https://github.com/symfony/filesystem/tree/v5.4.5" }, "funding": [ { @@ -9266,7 +9387,7 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2022-02-27T10:31:47+00:00" }, { "name": "symfony/finder", @@ -9333,16 +9454,16 @@ }, { "name": "symfony/http-client", - "version": "v5.4.3", + "version": "v5.4.5", "source": { "type": "git", "url": "https://github.com/symfony/http-client.git", - "reference": "a5a467b62dc91eb253db51a91a2c1977f611f60c" + "reference": "fab84798694e45b4571d305125215699eb2b1f73" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/a5a467b62dc91eb253db51a91a2c1977f611f60c", - "reference": "a5a467b62dc91eb253db51a91a2c1977f611f60c", + "url": "https://api.github.com/repos/symfony/http-client/zipball/fab84798694e45b4571d305125215699eb2b1f73", + "reference": "fab84798694e45b4571d305125215699eb2b1f73", "shasum": "" }, "require": { @@ -9400,7 +9521,7 @@ "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-client/tree/v5.4.3" + "source": "https://github.com/symfony/http-client/tree/v5.4.5" }, "funding": [ { @@ -9416,7 +9537,7 @@ "type": "tidelift" } ], - "time": "2022-01-22T06:53:01+00:00" + "time": "2022-02-27T08:46:18+00:00" }, { "name": "symfony/http-client-contracts", @@ -9498,16 +9619,16 @@ }, { "name": "symfony/http-foundation", - "version": "v5.4.3", + "version": "v5.4.5", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "ef409ff341a565a3663157d4324536746d49a0c7" + "reference": "dd68a3b24262a902bc338fc7c9a2a61b7ab2029f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/ef409ff341a565a3663157d4324536746d49a0c7", - "reference": "ef409ff341a565a3663157d4324536746d49a0c7", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/dd68a3b24262a902bc338fc7c9a2a61b7ab2029f", + "reference": "dd68a3b24262a902bc338fc7c9a2a61b7ab2029f", "shasum": "" }, "require": { @@ -9551,7 +9672,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.4.3" + "source": "https://github.com/symfony/http-foundation/tree/v5.4.5" }, "funding": [ { @@ -9567,20 +9688,20 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2022-02-21T15:00:19+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.4.4", + "version": "v5.4.5", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "49f40347228c773688a0488feea0175aa7f4d268" + "reference": "c770c90bc71f1db911e2d996c991fdafe273ac84" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/49f40347228c773688a0488feea0175aa7f4d268", - "reference": "49f40347228c773688a0488feea0175aa7f4d268", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/c770c90bc71f1db911e2d996c991fdafe273ac84", + "reference": "c770c90bc71f1db911e2d996c991fdafe273ac84", "shasum": "" }, "require": { @@ -9663,7 +9784,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/v5.4.4" + "source": "https://github.com/symfony/http-kernel/tree/v5.4.5" }, "funding": [ { @@ -9679,7 +9800,7 @@ "type": "tidelift" } ], - "time": "2022-01-29T18:08:07+00:00" + "time": "2022-02-28T07:57:55+00:00" }, { "name": "symfony/mime", @@ -9867,12 +9988,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Ctype\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -9949,12 +10070,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Iconv\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Iconv\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -10029,12 +10150,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Intl\\Grapheme\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -10112,12 +10233,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Intl\\Idn\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Idn\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -10197,12 +10318,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Intl\\Normalizer\\": "" - }, "files": [ "bootstrap.php" ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, "classmap": [ "Resources/stubs" ] @@ -10284,12 +10405,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -10361,12 +10482,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php72\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Php72\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -10437,12 +10558,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php73\\": "" - }, "files": [ "bootstrap.php" ], + "psr-4": { + "Symfony\\Polyfill\\Php73\\": "" + }, "classmap": [ "Resources/stubs" ] @@ -10516,12 +10637,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" - }, "files": [ "bootstrap.php" ], + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, "classmap": [ "Resources/stubs" ] @@ -10599,12 +10720,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php81\\": "" - }, "files": [ "bootstrap.php" ], + "psr-4": { + "Symfony\\Polyfill\\Php81\\": "" + }, "classmap": [ "Resources/stubs" ] @@ -10684,12 +10805,12 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Uuid\\": "" - }, "files": [ "bootstrap.php" - ] + ], + "psr-4": { + "Symfony\\Polyfill\\Uuid\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -10734,16 +10855,16 @@ }, { "name": "symfony/process", - "version": "v5.4.3", + "version": "v5.4.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "553f50487389a977eb31cf6b37faae56da00f753" + "reference": "95440409896f90a5f85db07a32b517ecec17fa4c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/553f50487389a977eb31cf6b37faae56da00f753", - "reference": "553f50487389a977eb31cf6b37faae56da00f753", + "url": "https://api.github.com/repos/symfony/process/zipball/95440409896f90a5f85db07a32b517ecec17fa4c", + "reference": "95440409896f90a5f85db07a32b517ecec17fa4c", "shasum": "" }, "require": { @@ -10776,7 +10897,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.3" + "source": "https://github.com/symfony/process/tree/v5.4.5" }, "funding": [ { @@ -10792,7 +10913,7 @@ "type": "tidelift" } ], - "time": "2022-01-26T16:28:35+00:00" + "time": "2022-01-30T18:16:22+00:00" }, { "name": "symfony/psr-http-message-bridge", @@ -10974,22 +11095,21 @@ }, { "name": "symfony/service-contracts", - "version": "v2.5.0", + "version": "v2.4.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc" + "reference": "d664541b99d6fb0247ec5ff32e87238582236204" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc", - "reference": "1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d664541b99d6fb0247ec5ff32e87238582236204", + "reference": "d664541b99d6fb0247ec5ff32e87238582236204", "shasum": "" }, "require": { "php": ">=7.2.5", - "psr/container": "^1.1", - "symfony/deprecation-contracts": "^2.1" + "psr/container": "^1.1" }, "conflict": { "ext-psr": "<1.1|>=2" @@ -11000,7 +11120,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "2.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -11037,7 +11157,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.5.0" + "source": "https://github.com/symfony/service-contracts/tree/v2.4.1" }, "funding": [ { @@ -11053,47 +11173,46 @@ "type": "tidelift" } ], - "time": "2021-11-04T16:48:04+00:00" + "time": "2021-11-04T16:37:19+00:00" }, { "name": "symfony/string", - "version": "v5.4.3", + "version": "v6.0.3", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "92043b7d8383e48104e411bc9434b260dbeb5a10" + "reference": "522144f0c4c004c80d56fa47e40e17028e2eefc2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/92043b7d8383e48104e411bc9434b260dbeb5a10", - "reference": "92043b7d8383e48104e411bc9434b260dbeb5a10", + "url": "https://api.github.com/repos/symfony/string/zipball/522144f0c4c004c80d56fa47e40e17028e2eefc2", + "reference": "522144f0c4c004c80d56fa47e40e17028e2eefc2", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.0.2", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-grapheme": "~1.0", "symfony/polyfill-intl-normalizer": "~1.0", - "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php80": "~1.15" + "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/translation-contracts": ">=3.0" + "symfony/translation-contracts": "<2.0" }, "require-dev": { - "symfony/error-handler": "^4.4|^5.0|^6.0", - "symfony/http-client": "^4.4|^5.0|^6.0", - "symfony/translation-contracts": "^1.1|^2", - "symfony/var-exporter": "^4.4|^5.0|^6.0" + "symfony/error-handler": "^5.4|^6.0", + "symfony/http-client": "^5.4|^6.0", + "symfony/translation-contracts": "^2.0|^3.0", + "symfony/var-exporter": "^5.4|^6.0" }, "type": "library", "autoload": { - "psr-4": { - "Symfony\\Component\\String\\": "" - }, "files": [ "Resources/functions.php" ], + "psr-4": { + "Symfony\\Component\\String\\": "" + }, "exclude-from-classmap": [ "/Tests/" ] @@ -11123,7 +11242,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.3" + "source": "https://github.com/symfony/string/tree/v6.0.3" }, "funding": [ { @@ -11139,52 +11258,50 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2022-01-02T09:55:41+00:00" }, { "name": "symfony/translation", - "version": "v5.4.3", + "version": "v6.0.5", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "a9dd7403232c61e87e27fb306bbcd1627f245d70" + "reference": "e69501c71107cc3146b32aaa45f4edd0c3427875" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/a9dd7403232c61e87e27fb306bbcd1627f245d70", - "reference": "a9dd7403232c61e87e27fb306bbcd1627f245d70", + "url": "https://api.github.com/repos/symfony/translation/zipball/e69501c71107cc3146b32aaa45f4edd0c3427875", + "reference": "e69501c71107cc3146b32aaa45f4edd0c3427875", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.0.2", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php80": "^1.16", - "symfony/translation-contracts": "^2.3" + "symfony/translation-contracts": "^2.3|^3.0" }, "conflict": { - "symfony/config": "<4.4", - "symfony/console": "<5.3", - "symfony/dependency-injection": "<5.0", - "symfony/http-kernel": "<5.0", - "symfony/twig-bundle": "<5.0", - "symfony/yaml": "<4.4" + "symfony/config": "<5.4", + "symfony/console": "<5.4", + "symfony/dependency-injection": "<5.4", + "symfony/http-kernel": "<5.4", + "symfony/twig-bundle": "<5.4", + "symfony/yaml": "<5.4" }, "provide": { - "symfony/translation-implementation": "2.3" + "symfony/translation-implementation": "2.3|3.0" }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^4.4|^5.0|^6.0", + "symfony/config": "^5.4|^6.0", "symfony/console": "^5.4|^6.0", - "symfony/dependency-injection": "^5.0|^6.0", - "symfony/finder": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/finder": "^5.4|^6.0", "symfony/http-client-contracts": "^1.1|^2.0|^3.0", - "symfony/http-kernel": "^5.0|^6.0", - "symfony/intl": "^4.4|^5.0|^6.0", + "symfony/http-kernel": "^5.4|^6.0", + "symfony/intl": "^5.4|^6.0", "symfony/polyfill-intl-icu": "^1.21", "symfony/service-contracts": "^1.1.2|^2|^3", - "symfony/yaml": "^4.4|^5.0|^6.0" + "symfony/yaml": "^5.4|^6.0" }, "suggest": { "psr/log-implementation": "To use logging capability in translator", @@ -11220,7 +11337,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.4.3" + "source": "https://github.com/symfony/translation/tree/v6.0.5" }, "funding": [ { @@ -11236,24 +11353,24 @@ "type": "tidelift" } ], - "time": "2022-01-07T00:28:17+00:00" + "time": "2022-02-09T15:52:48+00:00" }, { "name": "symfony/translation-contracts", - "version": "v2.5.0", + "version": "v3.0.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "d28150f0f44ce854e942b671fc2620a98aae1b1e" + "reference": "1b6ea5a7442af5a12dba3dbd6d71034b5b234e77" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/d28150f0f44ce854e942b671fc2620a98aae1b1e", - "reference": "d28150f0f44ce854e942b671fc2620a98aae1b1e", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/1b6ea5a7442af5a12dba3dbd6d71034b5b234e77", + "reference": "1b6ea5a7442af5a12dba3dbd6d71034b5b234e77", "shasum": "" }, "require": { - "php": ">=7.2.5" + "php": ">=8.0.2" }, "suggest": { "symfony/translation-implementation": "" @@ -11261,7 +11378,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.0-dev" }, "thanks": { "name": "symfony/contracts", @@ -11298,7 +11415,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v2.5.0" + "source": "https://github.com/symfony/translation-contracts/tree/v3.0.0" }, "funding": [ { @@ -11314,20 +11431,20 @@ "type": "tidelift" } ], - "time": "2021-08-17T14:20:01+00:00" + "time": "2021-09-07T12:43:40+00:00" }, { "name": "symfony/var-dumper", - "version": "v5.4.3", + "version": "v5.4.5", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "970a01f208bf895c5f327ba40b72288da43adec4" + "reference": "6efddb1cf6af5270b21c48c6103e81f920c220f0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/970a01f208bf895c5f327ba40b72288da43adec4", - "reference": "970a01f208bf895c5f327ba40b72288da43adec4", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/6efddb1cf6af5270b21c48c6103e81f920c220f0", + "reference": "6efddb1cf6af5270b21c48c6103e81f920c220f0", "shasum": "" }, "require": { @@ -11387,7 +11504,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.4.3" + "source": "https://github.com/symfony/var-dumper/tree/v5.4.5" }, "funding": [ { @@ -11403,7 +11520,7 @@ "type": "tidelift" } ], - "time": "2022-01-17T16:30:37+00:00" + "time": "2022-02-21T15:00:19+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", @@ -11968,32 +12085,32 @@ "packages-dev": [ { "name": "anahkiasen/former", - "version": "4.6.0", + "version": "4.7.0", "source": { "type": "git", "url": "https://github.com/formers/former.git", - "reference": "c5bcd07f4d17c8da6bea413865177a4e39876379" + "reference": "9a88328390abc3add9fb01136688a19b215e6760" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/formers/former/zipball/c5bcd07f4d17c8da6bea413865177a4e39876379", - "reference": "c5bcd07f4d17c8da6bea413865177a4e39876379", + "url": "https://api.github.com/repos/formers/former/zipball/9a88328390abc3add9fb01136688a19b215e6760", + "reference": "9a88328390abc3add9fb01136688a19b215e6760", "shasum": "" }, "require": { "anahkiasen/html-object": "~1.4", - "illuminate/config": "^5.1.3|^6.0|^7.0|^8.0", - "illuminate/container": "^5.1.3|^6.0|^7.0|^8.0", - "illuminate/contracts": "^5.1.3|^6.0|^7.0|^8.0", - "illuminate/http": "^5.1.3|^6.0|^7.0|^8.0", - "illuminate/routing": "^5.1.3|^6.0|^7.0|^8.0", - "illuminate/session": "^5.1.3|^6.0|^7.0|^8.0", - "illuminate/support": "^5.1.3|^6.0|^7.0|^8.0", - "illuminate/translation": "^5.1.3|^6.0|^7.0|^8.0", + "illuminate/config": "^5.1.3|^6.0|^7.0|^8.0|^9.0", + "illuminate/container": "^5.1.3|^6.0|^7.0|^8.0|^9.0", + "illuminate/contracts": "^5.1.3|^6.0|^7.0|^8.0|^9.0", + "illuminate/http": "^5.1.3|^6.0|^7.0|^8.0|^9.0", + "illuminate/routing": "^5.1.3|^6.0|^7.0|^8.0|^9.0", + "illuminate/session": "^5.1.3|^6.0|^7.0|^8.0|^9.0", + "illuminate/support": "^5.1.3|^6.0|^7.0|^8.0|^9.0", + "illuminate/translation": "^5.1.3|^6.0|^7.0|^8.0|^9.0", "php": "^7.2|^8.0" }, "require-dev": { - "illuminate/database": "^5.1.3|^6.0|^7.0|^8.0", + "illuminate/database": "^5.1.3|^6.0|^7.0|^8.0|^9.0", "mockery/mockery": "^1.3", "phpunit/phpunit": "^8.5" }, @@ -12040,9 +12157,9 @@ ], "support": { "issues": "https://github.com/formers/former/issues", - "source": "https://github.com/formers/former/tree/4.6.0" + "source": "https://github.com/formers/former/tree/4.7.0" }, - "time": "2020-11-30T20:20:21+00:00" + "time": "2022-02-17T11:50:58+00:00" }, { "name": "anahkiasen/html-object", @@ -12092,16 +12209,16 @@ }, { "name": "barryvdh/laravel-debugbar", - "version": "v3.6.6", + "version": "v3.6.7", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-debugbar.git", - "reference": "f92fe967b40b36ad1ee8ed2fd59c05ae67a1ebba" + "reference": "b96f9820aaf1ff9afe945207883149e1c7afb298" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/f92fe967b40b36ad1ee8ed2fd59c05ae67a1ebba", - "reference": "f92fe967b40b36ad1ee8ed2fd59c05ae67a1ebba", + "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/b96f9820aaf1ff9afe945207883149e1c7afb298", + "reference": "b96f9820aaf1ff9afe945207883149e1c7afb298", "shasum": "" }, "require": { @@ -12115,7 +12232,7 @@ }, "require-dev": { "mockery/mockery": "^1.3.3", - "orchestra/testbench-dusk": "^4|^5|^6", + "orchestra/testbench-dusk": "^4|^5|^6|^7", "phpunit/phpunit": "^8.5|^9.0", "squizlabs/php_codesniffer": "^3.5" }, @@ -12134,12 +12251,12 @@ } }, "autoload": { - "psr-4": { - "Barryvdh\\Debugbar\\": "src/" - }, "files": [ "src/helpers.php" - ] + ], + "psr-4": { + "Barryvdh\\Debugbar\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -12161,7 +12278,7 @@ ], "support": { "issues": "https://github.com/barryvdh/laravel-debugbar/issues", - "source": "https://github.com/barryvdh/laravel-debugbar/tree/v3.6.6" + "source": "https://github.com/barryvdh/laravel-debugbar/tree/v3.6.7" }, "funding": [ { @@ -12173,24 +12290,24 @@ "type": "github" } ], - "time": "2021-12-21T18:20:10+00:00" + "time": "2022-02-09T07:52:32+00:00" }, { "name": "beyondcode/laravel-query-detector", - "version": "1.5.0", + "version": "1.6.0", "source": { "type": "git", "url": "https://github.com/beyondcode/laravel-query-detector.git", - "reference": "4a3a0cfb5d5ddc5da59d530ef5c13e260adc6d07" + "reference": "8261d80c71c97e994c1021fe5c3bd2a1c27106fc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/beyondcode/laravel-query-detector/zipball/4a3a0cfb5d5ddc5da59d530ef5c13e260adc6d07", - "reference": "4a3a0cfb5d5ddc5da59d530ef5c13e260adc6d07", + "url": "https://api.github.com/repos/beyondcode/laravel-query-detector/zipball/8261d80c71c97e994c1021fe5c3bd2a1c27106fc", + "reference": "8261d80c71c97e994c1021fe5c3bd2a1c27106fc", "shasum": "" }, "require": { - "illuminate/support": "^5.5 || ^6.0 || ^7.0 || ^8.0", + "illuminate/support": "^5.5 || ^6.0 || ^7.0 || ^8.0 || ^9.0", "php": "^7.1 || ^8.0" }, "require-dev": { @@ -12231,22 +12348,22 @@ ], "support": { "issues": "https://github.com/beyondcode/laravel-query-detector/issues", - "source": "https://github.com/beyondcode/laravel-query-detector/tree/1.5.0" + "source": "https://github.com/beyondcode/laravel-query-detector/tree/1.6.0" }, - "time": "2021-02-16T22:51:38+00:00" + "time": "2022-02-12T16:23:40+00:00" }, { "name": "brianium/paratest", - "version": "v6.4.1", + "version": "v6.4.3", "source": { "type": "git", "url": "https://github.com/paratestphp/paratest.git", - "reference": "c32a5c4fc2ff339202437d25d19a5f496f880d61" + "reference": "5123a31dbf0b5deeaec17b00c0c5f31732c14483" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/paratestphp/paratest/zipball/c32a5c4fc2ff339202437d25d19a5f496f880d61", - "reference": "c32a5c4fc2ff339202437d25d19a5f496f880d61", + "url": "https://api.github.com/repos/paratestphp/paratest/zipball/5123a31dbf0b5deeaec17b00c0c5f31732c14483", + "reference": "5123a31dbf0b5deeaec17b00c0c5f31732c14483", "shasum": "" }, "require": { @@ -12255,29 +12372,22 @@ "ext-reflection": "*", "ext-simplexml": "*", "php": "^7.3 || ^8.0", - "phpunit/php-code-coverage": "^9.2.9", - "phpunit/php-file-iterator": "^3.0.5", + "phpunit/php-code-coverage": "^9.2.11", + "phpunit/php-file-iterator": "^3.0.6", "phpunit/php-timer": "^5.0.3", - "phpunit/phpunit": "^9.5.10", + "phpunit/phpunit": "^9.5.14", "sebastian/environment": "^5.1.3", "symfony/console": "^5.4.0 || ^6.0.0", "symfony/process": "^5.4.0 || ^6.0.0" }, "require-dev": { "doctrine/coding-standard": "^9.0.0", - "ekino/phpstan-banned-code": "^0.5.0", - "ergebnis/phpstan-rules": "^0.15.3", "ext-posix": "*", - "infection/infection": "^0.25.3", + "infection/infection": "^0.26.5", "malukenho/mcbumpface": "^1.1.5", - "phpstan/phpstan": "^0.12.99", - "phpstan/phpstan-deprecation-rules": "^0.12.6", - "phpstan/phpstan-phpunit": "^0.12.22", - "phpstan/phpstan-strict-rules": "^0.12.11", - "squizlabs/php_codesniffer": "^3.6.1", - "symfony/filesystem": "^v5.4.0", - "thecodingmachine/phpstan-strict-rules": "^v0.12.2", - "vimeo/psalm": "^4.13.1" + "squizlabs/php_codesniffer": "^3.6.2", + "symfony/filesystem": "^v5.4.0 || ^6.0.0", + "vimeo/psalm": "^4.20.0" }, "bin": [ "bin/paratest" @@ -12316,7 +12426,7 @@ ], "support": { "issues": "https://github.com/paratestphp/paratest/issues", - "source": "https://github.com/paratestphp/paratest/tree/v6.4.1" + "source": "https://github.com/paratestphp/paratest/tree/v6.4.3" }, "funding": [ { @@ -12328,35 +12438,35 @@ "type": "paypal" } ], - "time": "2021-12-02T09:12:23+00:00" + "time": "2022-02-18T13:23:47+00:00" }, { "name": "darkaonline/l5-swagger", - "version": "8.1.0", + "version": "8.3.0", "source": { "type": "git", "url": "https://github.com/DarkaOnLine/L5-Swagger.git", - "reference": "aab46bf494ba52dcdd7d259ce178ad33d0327d04" + "reference": "b2e7885df13b0c43b48a8a1028d77428126228da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/DarkaOnLine/L5-Swagger/zipball/aab46bf494ba52dcdd7d259ce178ad33d0327d04", - "reference": "aab46bf494ba52dcdd7d259ce178ad33d0327d04", + "url": "https://api.github.com/repos/DarkaOnLine/L5-Swagger/zipball/b2e7885df13b0c43b48a8a1028d77428126228da", + "reference": "b2e7885df13b0c43b48a8a1028d77428126228da", "shasum": "" }, "require": { "ext-json": "*", - "laravel/framework": ">=8.40.0 || ^7.0", + "laravel/framework": "^9.0 || >=8.40.0 || ^7.0", "php": "^7.2 || ^8.0", - "swagger-api/swagger-ui": "^3.0", + "swagger-api/swagger-ui": "^3.0 || ^4.0", "symfony/yaml": "^5.0", - "zircote/swagger-php": "3.*" + "zircote/swagger-php": "^3.2 || ^4.0" }, "require-dev": { "mockery/mockery": "1.*", "orchestra/testbench": "6.* || 5.*", "php-coveralls/php-coveralls": "^2.0", - "phpunit/phpunit": "9.*" + "phpunit/phpunit": "^9.5" }, "type": "library", "extra": { @@ -12370,12 +12480,12 @@ } }, "autoload": { - "psr-4": { - "L5Swagger\\": "src" - }, "files": [ "src/helpers.php" - ] + ], + "psr-4": { + "L5Swagger\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -12399,7 +12509,7 @@ ], "support": { "issues": "https://github.com/DarkaOnLine/L5-Swagger/issues", - "source": "https://github.com/DarkaOnLine/L5-Swagger/tree/8.1.0" + "source": "https://github.com/DarkaOnLine/L5-Swagger/tree/8.3.0" }, "funding": [ { @@ -12407,7 +12517,7 @@ "type": "github" } ], - "time": "2022-01-07T09:08:44+00:00" + "time": "2022-02-14T07:30:01+00:00" }, { "name": "doctrine/annotations", @@ -12483,29 +12593,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": { @@ -12532,7 +12643,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": [ { @@ -12548,7 +12659,7 @@ "type": "tidelift" } ], - "time": "2020-11-10T18:47:58+00:00" + "time": "2022-03-03T08:28:38+00:00" }, { "name": "facade/flare-client-php", @@ -12584,12 +12695,12 @@ } }, "autoload": { - "psr-4": { - "Facade\\FlareClient\\": "src" - }, "files": [ "src/helpers.php" - ] + ], + "psr-4": { + "Facade\\FlareClient\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -12617,16 +12728,16 @@ }, { "name": "facade/ignition", - "version": "2.17.4", + "version": "2.17.5", "source": { "type": "git", "url": "https://github.com/facade/ignition.git", - "reference": "95c80bd35ee6858e9e1439b2f6a698295eeb2070" + "reference": "1d71996f83c9a5a7807331b8986ac890352b7a0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/facade/ignition/zipball/95c80bd35ee6858e9e1439b2f6a698295eeb2070", - "reference": "95c80bd35ee6858e9e1439b2f6a698295eeb2070", + "url": "https://api.github.com/repos/facade/ignition/zipball/1d71996f83c9a5a7807331b8986ac890352b7a0c", + "reference": "1d71996f83c9a5a7807331b8986ac890352b7a0c", "shasum": "" }, "require": { @@ -12666,12 +12777,12 @@ } }, "autoload": { - "psr-4": { - "Facade\\Ignition\\": "src" - }, "files": [ "src/helpers.php" - ] + ], + "psr-4": { + "Facade\\Ignition\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -12691,7 +12802,7 @@ "issues": "https://github.com/facade/ignition/issues", "source": "https://github.com/facade/ignition" }, - "time": "2021-12-27T15:11:24+00:00" + "time": "2022-02-23T18:31:24+00:00" }, { "name": "facade/ignition-contracts", @@ -12979,16 +13090,16 @@ }, { "name": "laravel/dusk", - "version": "v6.21.0", + "version": "v6.22.1", "source": { "type": "git", "url": "https://github.com/laravel/dusk.git", - "reference": "45c1005ec73ab46504a666b6b52dddf1108b3eb4" + "reference": "bc9fd27ea167746ba0616a7661e6b5bd4a80c472" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/dusk/zipball/45c1005ec73ab46504a666b6b52dddf1108b3eb4", - "reference": "45c1005ec73ab46504a666b6b52dddf1108b3eb4", + "url": "https://api.github.com/repos/laravel/dusk/zipball/bc9fd27ea167746ba0616a7661e6b5bd4a80c472", + "reference": "bc9fd27ea167746ba0616a7661e6b5bd4a80c472", "shasum": "" }, "require": { @@ -13046,31 +13157,32 @@ ], "support": { "issues": "https://github.com/laravel/dusk/issues", - "source": "https://github.com/laravel/dusk/tree/v6.21.0" + "source": "https://github.com/laravel/dusk/tree/v6.22.1" }, - "time": "2022-01-12T18:00:01+00:00" + "time": "2022-02-12T17:43:36+00:00" }, { "name": "maximebf/debugbar", - "version": "v1.17.3", + "version": "v1.18.0", "source": { "type": "git", "url": "https://github.com/maximebf/php-debugbar.git", - "reference": "e8ac3499af0ea5b440908e06cc0abe5898008b3c" + "reference": "0d44b75f3b5d6d41ae83b79c7a4bceae7fbc78b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/e8ac3499af0ea5b440908e06cc0abe5898008b3c", - "reference": "e8ac3499af0ea5b440908e06cc0abe5898008b3c", + "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/0d44b75f3b5d6d41ae83b79c7a4bceae7fbc78b6", + "reference": "0d44b75f3b5d6d41ae83b79c7a4bceae7fbc78b6", "shasum": "" }, "require": { "php": "^7.1|^8", "psr/log": "^1|^2|^3", - "symfony/var-dumper": "^2.6|^3|^4|^5" + "symfony/var-dumper": "^2.6|^3|^4|^5|^6" }, "require-dev": { - "phpunit/phpunit": "^7.5.20 || ^9.4.2" + "phpunit/phpunit": "^7.5.20 || ^9.4.2", + "twig/twig": "^1.38|^2.7|^3.0" }, "suggest": { "kriswallsmith/assetic": "The best way to manage assets", @@ -13111,9 +13223,9 @@ ], "support": { "issues": "https://github.com/maximebf/php-debugbar/issues", - "source": "https://github.com/maximebf/php-debugbar/tree/v1.17.3" + "source": "https://github.com/maximebf/php-debugbar/tree/v1.18.0" }, - "time": "2021-10-19T12:33:27+00:00" + "time": "2021-12-27T18:49:48+00:00" }, { "name": "mockery/mockery", @@ -13189,37 +13301,38 @@ }, { "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": { - "psr-4": { - "DeepCopy\\": "src/DeepCopy/" - }, "files": [ "src/DeepCopy/deep_copy.php" - ] + ], + "psr-4": { + "DeepCopy\\": "src/DeepCopy/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -13235,7 +13348,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": [ { @@ -13243,7 +13356,7 @@ "type": "tidelift" } ], - "time": "2020-11-13T09:40:50+00:00" + "time": "2022-03-03T13:19:32+00:00" }, { "name": "nunomaduro/collision", @@ -13394,16 +13507,16 @@ }, { "name": "phar-io/version", - "version": "3.1.0", + "version": "3.2.1", "source": { "type": "git", "url": "https://github.com/phar-io/version.git", - "reference": "bae7c545bef187884426f042434e561ab1ddb182" + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phar-io/version/zipball/bae7c545bef187884426f042434e561ab1ddb182", - "reference": "bae7c545bef187884426f042434e561ab1ddb182", + "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74", "shasum": "" }, "require": { @@ -13439,9 +13552,9 @@ "description": "Library for handling version information and constraints", "support": { "issues": "https://github.com/phar-io/version/issues", - "source": "https://github.com/phar-io/version/tree/3.1.0" + "source": "https://github.com/phar-io/version/tree/3.2.1" }, - "time": "2021-02-23T14:00:09+00:00" + "time": "2022-02-21T01:04:05+00:00" }, { "name": "php-cs-fixer/diff", @@ -13537,12 +13650,12 @@ }, "type": "library", "autoload": { - "psr-4": { - "Facebook\\WebDriver\\": "lib/" - }, "files": [ "lib/Exception/TimeoutException.php" - ] + ], + "psr-4": { + "Facebook\\WebDriver\\": "lib/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -13792,16 +13905,16 @@ }, { "name": "phpunit/php-code-coverage", - "version": "9.2.10", + "version": "9.2.14", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "d5850aaf931743067f4bfc1ae4cbd06468400687" + "reference": "9f4d60b6afe5546421462b76cd4e633ebc364ab4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/d5850aaf931743067f4bfc1ae4cbd06468400687", - "reference": "d5850aaf931743067f4bfc1ae4cbd06468400687", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/9f4d60b6afe5546421462b76cd4e633ebc364ab4", + "reference": "9f4d60b6afe5546421462b76cd4e633ebc364ab4", "shasum": "" }, "require": { @@ -13857,7 +13970,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.10" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.14" }, "funding": [ { @@ -13865,7 +13978,7 @@ "type": "github" } ], - "time": "2021-12-05T09:12:13+00:00" + "time": "2022-02-28T12:38:02+00:00" }, { "name": "phpunit/php-file-iterator", @@ -14110,16 +14223,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.13", + "version": "9.5.16", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "597cb647654ede35e43b137926dfdfef0fb11743" + "reference": "5ff8c545a50226c569310a35f4fa89d79f1ddfdc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/597cb647654ede35e43b137926dfdfef0fb11743", - "reference": "597cb647654ede35e43b137926dfdfef0fb11743", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/5ff8c545a50226c569310a35f4fa89d79f1ddfdc", + "reference": "5ff8c545a50226c569310a35f4fa89d79f1ddfdc", "shasum": "" }, "require": { @@ -14135,7 +14248,7 @@ "phar-io/version": "^3.0.2", "php": ">=7.3", "phpspec/prophecy": "^1.12.1", - "phpunit/php-code-coverage": "^9.2.7", + "phpunit/php-code-coverage": "^9.2.13", "phpunit/php-file-iterator": "^3.0.5", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.3", @@ -14170,11 +14283,11 @@ } }, "autoload": { - "classmap": [ - "src/" - ], "files": [ "src/Framework/Assert/Functions.php" + ], + "classmap": [ + "src/" ] }, "notification-url": "https://packagist.org/downloads/", @@ -14197,7 +14310,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.13" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.16" }, "funding": [ { @@ -14209,7 +14322,7 @@ "type": "github" } ], - "time": "2022-01-24T07:33:35+00:00" + "time": "2022-02-23T17:10:58+00:00" }, { "name": "sebastian/cli-parser", @@ -14717,16 +14830,16 @@ }, { "name": "sebastian/global-state", - "version": "5.0.3", + "version": "5.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "23bd5951f7ff26f12d4e3242864df3e08dec4e49" + "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/23bd5951f7ff26f12d4e3242864df3e08dec4e49", - "reference": "23bd5951f7ff26f12d4e3242864df3e08dec4e49", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/0ca8db5a5fc9c8646244e629625ac486fa286bf2", + "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2", "shasum": "" }, "require": { @@ -14769,7 +14882,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.3" + "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.5" }, "funding": [ { @@ -14777,7 +14890,7 @@ "type": "github" } ], - "time": "2021-06-11T13:31:12+00:00" + "time": "2022-02-14T08:28:10+00:00" }, { "name": "sebastian/lines-of-code", @@ -15177,16 +15290,16 @@ }, { "name": "swagger-api/swagger-ui", - "version": "v3.52.5", + "version": "v4.6.1", "source": { "type": "git", "url": "https://github.com/swagger-api/swagger-ui.git", - "reference": "f1ad60dc92e7edb0898583e16c3e66fe3e9eada2" + "reference": "1dd3ef62adfd79c9a71cd046ff2b7c7bbabf2751" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swagger-api/swagger-ui/zipball/f1ad60dc92e7edb0898583e16c3e66fe3e9eada2", - "reference": "f1ad60dc92e7edb0898583e16c3e66fe3e9eada2", + "url": "https://api.github.com/repos/swagger-api/swagger-ui/zipball/1dd3ef62adfd79c9a71cd046ff2b7c7bbabf2751", + "reference": "1dd3ef62adfd79c9a71cd046ff2b7c7bbabf2751", "shasum": "" }, "type": "library", @@ -15232,9 +15345,9 @@ ], "support": { "issues": "https://github.com/swagger-api/swagger-ui/issues", - "source": "https://github.com/swagger-api/swagger-ui/tree/v3.52.5" + "source": "https://github.com/swagger-api/swagger-ui/tree/v4.6.1" }, - "time": "2021-10-14T14:25:14+00:00" + "time": "2022-03-02T21:44:06+00:00" }, { "name": "symfony/debug", @@ -15374,16 +15487,16 @@ }, { "name": "symfony/stopwatch", - "version": "v5.4.3", + "version": "v5.4.5", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "395220730edceb6bd745236ccb5c9125c748f779" + "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/395220730edceb6bd745236ccb5c9125c748f779", - "reference": "395220730edceb6bd745236ccb5c9125c748f779", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", + "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", "shasum": "" }, "require": { @@ -15416,7 +15529,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.3" + "source": "https://github.com/symfony/stopwatch/tree/v5.4.5" }, "funding": [ { @@ -15432,7 +15545,7 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2022-02-18T16:06:09+00:00" }, { "name": "symfony/yaml", @@ -15561,42 +15674,44 @@ }, { "name": "zircote/swagger-php", - "version": "3.3.3", + "version": "4.2.9", "source": { "type": "git", "url": "https://github.com/zircote/swagger-php.git", - "reference": "cec9943f974df43370c51be7c489fc1007f80f2b" + "reference": "867cfdcf31fec8bf44b2d7107a2f51b4bab00601" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/zircote/swagger-php/zipball/cec9943f974df43370c51be7c489fc1007f80f2b", - "reference": "cec9943f974df43370c51be7c489fc1007f80f2b", + "url": "https://api.github.com/repos/zircote/swagger-php/zipball/867cfdcf31fec8bf44b2d7107a2f51b4bab00601", + "reference": "867cfdcf31fec8bf44b2d7107a2f51b4bab00601", "shasum": "" }, "require": { "doctrine/annotations": "^1.7", "ext-json": "*", "php": ">=7.2", - "psr/log": "^1.1 || ^2.0 || ^3.0", + "psr/log": "^1.1 || ^2.0 || 3.0", "symfony/finder": ">=2.2", "symfony/yaml": ">=3.3" }, "require-dev": { - "composer/package-versions-deprecated": "1.11.99.2", + "composer/package-versions-deprecated": "^1.11", "friendsofphp/php-cs-fixer": "^2.17 || ^3.0", - "phpunit/phpunit": ">=8.5.14" + "phpunit/phpunit": ">=8" }, "bin": [ "bin/openapi" ], "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev" + } + }, "autoload": { "psr-4": { "OpenApi\\": "src" - }, - "files": [ - "src/functions.php" - ] + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -15628,9 +15743,9 @@ ], "support": { "issues": "https://github.com/zircote/swagger-php/issues", - "source": "https://github.com/zircote/swagger-php/tree/3.3.3" + "source": "https://github.com/zircote/swagger-php/tree/4.2.9" }, - "time": "2021-12-23T19:45:20+00:00" + "time": "2022-02-20T21:16:53+00:00" } ], "aliases": [], @@ -15651,5 +15766,5 @@ "platform-dev": { "php": "^7.3|^7.4|^8.0" }, - "plugin-api-version": "2.1.0" + "plugin-api-version": "2.0.0" } diff --git a/resources/views/email/admin/download_credits.blade.php b/resources/views/email/admin/download_credits.blade.php new file mode 100644 index 000000000000..d408647715e1 --- /dev/null +++ b/resources/views/email/admin/download_credits.blade.php @@ -0,0 +1,10 @@ +@component('email.template.admin', ['logo' => $logo, 'settings' => $settings]) +
+

{{ ctrans('texts.credits_backup_subject') }}

+

{{ ctrans('texts.download_timeframe') }}

+ + + {{ ctrans('texts.download') }} + +
+@endcomponent diff --git a/resources/views/email/admin/download_quotes.blade.php b/resources/views/email/admin/download_quotes.blade.php new file mode 100644 index 000000000000..d98daec5ac63 --- /dev/null +++ b/resources/views/email/admin/download_quotes.blade.php @@ -0,0 +1,10 @@ +@component('email.template.admin', ['logo' => $logo, 'settings' => $settings]) +
+

{{ ctrans('texts.quotes_backup_subject') }}

+

{{ ctrans('texts.download_timeframe') }}

+ + + {{ ctrans('texts.download') }} + +
+@endcomponent diff --git a/resources/views/email/template/client.blade.php b/resources/views/email/template/client.blade.php index a2a7709ffdf7..a020e48aa7e6 100644 --- a/resources/views/email/template/client.blade.php +++ b/resources/views/email/template/client.blade.php @@ -177,9 +177,6 @@

@endif
- @if(isset($unsubscribe_link)) -

{{ ctrans('texts.unsubscribe') }}

- @endif diff --git a/resources/views/email/template/text.blade.php b/resources/views/email/template/text.blade.php new file mode 100644 index 000000000000..5af56ef5ff4e --- /dev/null +++ b/resources/views/email/template/text.blade.php @@ -0,0 +1,7 @@ +{!! $text_body !!} +@isset($whitelabel) +@if(!$whitelabel) + +{{ ctrans('texts.ninja_email_footer', ['site' => 'https://invoiceninja.com']) }} +@endif +@endisset From f718be63b189236dd4ae7a0b39bd35c45ba7745e Mon Sep 17 00:00:00 2001 From: David Bomba Date: Fri, 4 Mar 2022 11:45:19 +1100 Subject: [PATCH 03/13] Fixes for text emails --- VERSION.txt | 2 +- app/Jobs/Mail/NinjaMailer.php | 9 +- app/Mail/Admin/VerifyUserObject.php | 3 +- app/Mail/MigrationFailed.php | 1 + composer.json | 1 - composer.lock | 93 +------------------ config/ninja.php | 4 +- .../email/admin/verify_user_text.blade.php | 5 + .../views/email/migration/failed_text.blade | 11 +++ routes/web.php | 2 +- 10 files changed, 32 insertions(+), 99 deletions(-) create mode 100644 resources/views/email/admin/verify_user_text.blade.php create mode 100644 resources/views/email/migration/failed_text.blade diff --git a/VERSION.txt b/VERSION.txt index 96b71d396c40..1e20ec35c642 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1 +1 @@ -5.3.64 \ No newline at end of file +5.4.0 \ No newline at end of file diff --git a/app/Jobs/Mail/NinjaMailer.php b/app/Jobs/Mail/NinjaMailer.php index 4ebd9a9bb5ed..774bf680e2c8 100644 --- a/app/Jobs/Mail/NinjaMailer.php +++ b/app/Jobs/Mail/NinjaMailer.php @@ -41,12 +41,17 @@ class NinjaMailer extends Mailable $from_name = $this->mail_obj->from_name; } - return $this->from(config('mail.from.address'), $from_name) + $ninja_mailable = $this->from(config('mail.from.address'), $from_name) ->subject($this->mail_obj->subject) ->view($this->mail_obj->markdown, $this->mail_obj->data) ->withSwiftMessage(function ($message) { $message->getHeaders()->addTextHeader('Tag', $this->mail_obj->tag); }); - + + if(property_exists($this->mail_obj, 'text_view')){ + $ninja_mailable->text($this->mail_obj->text_view, $this->mail_obj->data); + } + + return $ninja_mailable; } } diff --git a/app/Mail/Admin/VerifyUserObject.php b/app/Mail/Admin/VerifyUserObject.php index 2146fabef087..52f977a4316b 100644 --- a/app/Mail/Admin/VerifyUserObject.php +++ b/app/Mail/Admin/VerifyUserObject.php @@ -63,7 +63,8 @@ class VerifyUserObject $mail_obj->data = $data; $mail_obj->markdown = 'email.admin.generic'; $mail_obj->tag = $this->company->company_key; - + $mail_obj->text_view = 'email.admin.verify_user_text'; + return $mail_obj; } } \ No newline at end of file diff --git a/app/Mail/MigrationFailed.php b/app/Mail/MigrationFailed.php index 409e843b2042..b6a2337fe030 100644 --- a/app/Mail/MigrationFailed.php +++ b/app/Mail/MigrationFailed.php @@ -40,6 +40,7 @@ class MigrationFailed extends Mailable return $this ->from(config('mail.from.address'), config('mail.from.name')) + ->text('email.migration.failed_text') ->view('email.migration.failed', [ 'logo' => $this->company->present()->logo(), 'settings' => $this->company->settings, diff --git a/composer.json b/composer.json index d67fba7d5b10..bb9491188bf7 100644 --- a/composer.json +++ b/composer.json @@ -64,7 +64,6 @@ "league/flysystem-aws-s3-v3": "~1.0", "league/flysystem-cached-adapter": "^1.1", "league/fractal": "^0.17.0", - "league/html-to-markdown": "^5.1", "league/omnipay": "^3.1", "livewire/livewire": "^2.6", "mollie/mollie-api-php": "^2.36", diff --git a/composer.lock b/composer.lock index 6720fe357bca..ae40de127d03 100644 --- a/composer.lock +++ b/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": "f3465f8b8e57efe3e6ca0ed04c49bff6", + "content-hash": "8ab74954c338fd80aa6597e93df6357f", "packages": [ { "name": "afosto/yaac", @@ -4905,95 +4905,6 @@ }, "time": "2017-06-12T11:04:56+00:00" }, - { - "name": "league/html-to-markdown", - "version": "5.1.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/html-to-markdown.git", - "reference": "e0fc8cf07bdabbcd3765341ecb50c34c271d64e1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/html-to-markdown/zipball/e0fc8cf07bdabbcd3765341ecb50c34c271d64e1", - "reference": "e0fc8cf07bdabbcd3765341ecb50c34c271d64e1", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-xml": "*", - "php": "^7.2.5 || ^8.0" - }, - "require-dev": { - "mikehaertl/php-shellcommand": "^1.1.0", - "phpstan/phpstan": "^0.12.99", - "phpunit/phpunit": "^8.5 || ^9.2", - "scrutinizer/ocular": "^1.6", - "unleashedtech/php-coding-standard": "^2.7", - "vimeo/psalm": "^4.22" - }, - "bin": [ - "bin/html-to-markdown" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.2-dev" - } - }, - "autoload": { - "psr-4": { - "League\\HTMLToMarkdown\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Colin O'Dell", - "email": "colinodell@gmail.com", - "homepage": "https://www.colinodell.com", - "role": "Lead Developer" - }, - { - "name": "Nick Cernis", - "email": "nick@cern.is", - "homepage": "http://modernnerd.net", - "role": "Original Author" - } - ], - "description": "An HTML-to-markdown conversion helper for PHP", - "homepage": "https://github.com/thephpleague/html-to-markdown", - "keywords": [ - "html", - "markdown" - ], - "support": { - "issues": "https://github.com/thephpleague/html-to-markdown/issues", - "source": "https://github.com/thephpleague/html-to-markdown/tree/5.1.0" - }, - "funding": [ - { - "url": "https://www.colinodell.com/sponsor", - "type": "custom" - }, - { - "url": "https://www.paypal.me/colinpodell/10.00", - "type": "custom" - }, - { - "url": "https://github.com/colinodell", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/league/html-to-markdown", - "type": "tidelift" - } - ], - "time": "2022-03-02T17:24:08+00:00" - }, { "name": "league/mime-type-detection", "version": "1.9.0", @@ -15758,7 +15669,7 @@ "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": "^7.4|^8", + "php": "^8.0", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*" diff --git a/config/ninja.php b/config/ninja.php index f31cfae39381..acbb348484f4 100644 --- a/config/ninja.php +++ b/config/ninja.php @@ -14,8 +14,8 @@ return [ 'require_https' => env('REQUIRE_HTTPS', true), 'app_url' => rtrim(env('APP_URL', ''), '/'), 'app_domain' => env('APP_DOMAIN', 'invoicing.co'), - 'app_version' => '5.3.64', - 'app_tag' => '5.3.64', + 'app_version' => '5.4.0', + 'app_tag' => '5.4.0', 'minimum_client_version' => '5.0.16', 'terms_version' => '1.0.1', 'api_secret' => env('API_SECRET', ''), diff --git a/resources/views/email/admin/verify_user_text.blade.php b/resources/views/email/admin/verify_user_text.blade.php new file mode 100644 index 000000000000..3fce2a76c63f --- /dev/null +++ b/resources/views/email/admin/verify_user_text.blade.php @@ -0,0 +1,5 @@ +{!! $title !!} + +{!! ctrans('texts.confirmation_message') !!} + +{!! $url !!} \ No newline at end of file diff --git a/resources/views/email/migration/failed_text.blade b/resources/views/email/migration/failed_text.blade new file mode 100644 index 000000000000..b0ff40957576 --- /dev/null +++ b/resources/views/email/migration/failed_text.blade @@ -0,0 +1,11 @@ +{!! ctrans('texts.migration_failed_label') !!} + +{!! ctrans('texts.migration_failed') }} {{ $company->present()->name() !!} + +@if(\App\Utils\Ninja::isSelfHost() || $is_system) + {!! $exception->getMessage() !!} + {!! $content !!} +@else + Please contact us at contact@invoiceninja.com for more information on this error. +@endif + diff --git a/routes/web.php b/routes/web.php index 67513dc9cc9c..7ce739e80735 100644 --- a/routes/web.php +++ b/routes/web.php @@ -44,4 +44,4 @@ Route::get('stripe/completed', 'StripeConnectController@completed')->name('strip Route::get('checkout/3ds_redirect/{company_key}/{company_gateway_id}/{hash}', 'Gateways\Checkout3dsController@index')->middleware('domain_db')->name('checkout.3ds_redirect'); Route::get('mollie/3ds_redirect/{company_key}/{company_gateway_id}/{hash}', 'Gateways\Mollie3dsController@index')->middleware('domain_db')->name('mollie.3ds_redirect'); Route::get('gocardless/ibp_redirect/{company_key}/{company_gateway_id}/{hash}', 'Gateways\GoCardlessController@ibpRedirect')->middleware('domain_db')->name('gocardless.ibp_redirect'); -Route::get('.well-known/apple-developer-merchantid-domain-association', 'ClientPortal\ApplePayDomainController@showAppleMerchantId'); +Route::get('.well-known/apple-developer-merchantid-domain-association', 'ClientPortal\ApplePayDomainController@showAppleMerchantId'); \ No newline at end of file From 98c70b34bd2072bac1c330aac5c55d6472eb0f00 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Fri, 4 Mar 2022 11:49:52 +1100 Subject: [PATCH 04/13] Bump for dependencies --- .github/workflows/phpunit.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/phpunit.yml b/.github/workflows/phpunit.yml index 3ce1032ce9c1..098ee21aacda 100644 --- a/.github/workflows/phpunit.yml +++ b/.github/workflows/phpunit.yml @@ -13,7 +13,7 @@ jobs: strategy: matrix: operating-system: ['ubuntu-18.04', 'ubuntu-20.04'] - php-versions: ['7.4','8.0','8.1'] + php-versions: ['8.0','8.1'] phpunit-versions: ['latest'] env: From bed77a27104c1cc961d670c6febf4d688d8bd8ed Mon Sep 17 00:00:00 2001 From: David Bomba Date: Fri, 4 Mar 2022 13:08:18 +1100 Subject: [PATCH 05/13] Text email stubs --- app/Console/Commands/PostUpdate.php | 8 +- app/Http/Controllers/SetupController.php | 3 +- app/Jobs/Invoice/ZipInvoices.php | 2 +- app/Jobs/Util/UnlinkFile.php | 4 + app/Mail/DownloadBackup.php | 3 + app/Mail/DownloadCredits.php | 3 + app/Mail/DownloadInvoices.php | 3 + app/Mail/DownloadQuotes.php | 3 + app/Mail/ExistingMigration.php | 1 + app/Mail/MigrationCompleted.php | 1 + .../admin/download_credits_text.blade.php | 5 ++ .../email/admin/download_files_text.blade.php | 5 ++ .../admin/download_invoices_text.blade.php | 5 ++ .../admin/download_quotes_text.blade.php | 5 ++ .../email/import/completed_text.blade.php | 73 +++++++++++++++++++ .../email/migration/existing_text.blade.php | 3 + 16 files changed, 124 insertions(+), 3 deletions(-) create mode 100644 resources/views/email/admin/download_credits_text.blade.php create mode 100644 resources/views/email/admin/download_files_text.blade.php create mode 100644 resources/views/email/admin/download_invoices_text.blade.php create mode 100644 resources/views/email/admin/download_quotes_text.blade.php create mode 100644 resources/views/email/import/completed_text.blade.php create mode 100644 resources/views/email/migration/existing_text.blade.php diff --git a/app/Console/Commands/PostUpdate.php b/app/Console/Commands/PostUpdate.php index 491a60c7fdec..3f0a91503987 100644 --- a/app/Console/Commands/PostUpdate.php +++ b/app/Console/Commands/PostUpdate.php @@ -12,6 +12,7 @@ namespace App\Console\Commands; use App\Jobs\Util\VersionCheck; +use App\Utils\Ninja; use Illuminate\Console\Command; use Illuminate\Support\Facades\Artisan; @@ -59,7 +60,12 @@ class PostUpdate extends Command info("finished running composer install "); try { - Artisan::call('optimize'); + + if(Ninja::isHosted()) + Artisan::call('optimize'); + else + Artisan::call('config:clear'); + } catch (\Exception $e) { info("I wasn't able to optimize."); } diff --git a/app/Http/Controllers/SetupController.php b/app/Http/Controllers/SetupController.php index 903e350de92e..8325f4ff7d05 100644 --- a/app/Http/Controllers/SetupController.php +++ b/app/Http/Controllers/SetupController.php @@ -169,7 +169,8 @@ class SetupController extends Controller /* Run migrations */ if (!config('ninja.disable_auto_update')) { - Artisan::call('optimize'); + Artisan::call('config:clear'); + // Artisan::call('optimize'); } Artisan::call('migrate', ['--force' => true]); diff --git a/app/Jobs/Invoice/ZipInvoices.php b/app/Jobs/Invoice/ZipInvoices.php index 476307dca8ce..50ebcdd4d63c 100644 --- a/app/Jobs/Invoice/ZipInvoices.php +++ b/app/Jobs/Invoice/ZipInvoices.php @@ -111,7 +111,7 @@ class ZipInvoices implements ShouldQueue } catch(\PhpZip\Exception\ZipException $e){ - // handle exception + nlog("could not make zip => ". $e->getMessage()); } finally{ $zipFile->close(); diff --git a/app/Jobs/Util/UnlinkFile.php b/app/Jobs/Util/UnlinkFile.php index 3d0b4278ad11..9947a61880f0 100644 --- a/app/Jobs/Util/UnlinkFile.php +++ b/app/Jobs/Util/UnlinkFile.php @@ -39,6 +39,10 @@ class UnlinkFile implements ShouldQueue */ public function handle() { + /* Do not delete files if we are on the sync queue*/ + if(config('queue.default') == 'sync') + return; + Storage::disk($this->disk)->delete($this->file_path); } } diff --git a/app/Mail/DownloadBackup.php b/app/Mail/DownloadBackup.php index b70cb90b8dbe..d00e9a9aec5f 100644 --- a/app/Mail/DownloadBackup.php +++ b/app/Mail/DownloadBackup.php @@ -43,6 +43,9 @@ class DownloadBackup extends Mailable return $this->from(config('mail.from.address'), config('mail.from.name')) ->subject(ctrans('texts.download_backup_subject', ['company' => $company->present()->name()])) + ->text('email.admin.download_files_text',[ + 'url' => $this->file_path, + ]) ->view('email.admin.download_files', [ 'url' => $this->file_path, 'logo' => $company->present()->logo, diff --git a/app/Mail/DownloadCredits.php b/app/Mail/DownloadCredits.php index 85b8b1e9c727..3f9d7a6e6af5 100644 --- a/app/Mail/DownloadCredits.php +++ b/app/Mail/DownloadCredits.php @@ -42,6 +42,9 @@ class DownloadCredits extends Mailable return $this->from(config('mail.from.address'), config('mail.from.name')) ->subject(ctrans('texts.download_files')) + ->text('email.admin.download_credits_text', [ + 'url' => $this->file_path, + ]) ->view('email.admin.download_credits', [ 'url' => $this->file_path, 'logo' => $this->company->present()->logo, diff --git a/app/Mail/DownloadInvoices.php b/app/Mail/DownloadInvoices.php index 51846f667c82..34b0d6d14766 100644 --- a/app/Mail/DownloadInvoices.php +++ b/app/Mail/DownloadInvoices.php @@ -42,6 +42,9 @@ class DownloadInvoices extends Mailable return $this->from(config('mail.from.address'), config('mail.from.name')) ->subject(ctrans('texts.download_files')) + ->text('email.admin.download_invoices_text', [ + 'url' => $this->file_path, + ]) ->view('email.admin.download_invoices', [ 'url' => $this->file_path, 'logo' => $this->company->present()->logo, diff --git a/app/Mail/DownloadQuotes.php b/app/Mail/DownloadQuotes.php index 687d10fc143a..62ba83a3c927 100644 --- a/app/Mail/DownloadQuotes.php +++ b/app/Mail/DownloadQuotes.php @@ -42,6 +42,9 @@ class DownloadQuotes extends Mailable return $this->from(config('mail.from.address'), config('mail.from.name')) ->subject(ctrans('texts.download_files')) + ->text('email.admin.download_quotes_text', [ + 'url' => $this->file_path, + ]) ->view('email.admin.download_quotes', [ 'url' => $this->file_path, 'logo' => $this->company->present()->logo, diff --git a/app/Mail/ExistingMigration.php b/app/Mail/ExistingMigration.php index 449b8dbfdc8c..d03d4b4fc2bb 100644 --- a/app/Mail/ExistingMigration.php +++ b/app/Mail/ExistingMigration.php @@ -44,6 +44,7 @@ class ExistingMigration extends Mailable return $this ->from(config('mail.from.address'), config('mail.from.name')) + ->text('email.migration.existing_text') ->view('email.migration.existing'); } } diff --git a/app/Mail/MigrationCompleted.php b/app/Mail/MigrationCompleted.php index 19374f757e32..ced994b6f2ae 100644 --- a/app/Mail/MigrationCompleted.php +++ b/app/Mail/MigrationCompleted.php @@ -48,6 +48,7 @@ class MigrationCompleted extends Mailable $data['logo'] = $this->company->present()->logo(); $result = $this->from(config('mail.from.address'), config('mail.from.name')) + ->text('email.import.completed_text', $data) ->view('email.import.completed', $data); return $result; diff --git a/resources/views/email/admin/download_credits_text.blade.php b/resources/views/email/admin/download_credits_text.blade.php new file mode 100644 index 000000000000..fbc71736f3eb --- /dev/null +++ b/resources/views/email/admin/download_credits_text.blade.php @@ -0,0 +1,5 @@ +{!! ctrans('texts.credits_backup_subject') !!} + +{!! ctrans('texts.download_timeframe') !!} + +{!! $url !!} \ No newline at end of file diff --git a/resources/views/email/admin/download_files_text.blade.php b/resources/views/email/admin/download_files_text.blade.php new file mode 100644 index 000000000000..dd6c55aa559f --- /dev/null +++ b/resources/views/email/admin/download_files_text.blade.php @@ -0,0 +1,5 @@ +{!! ctrans('texts.download_backup_subject') !!} + +{!! ctrans('texts.download_timeframe') !!} + +{!! $url !!} \ No newline at end of file diff --git a/resources/views/email/admin/download_invoices_text.blade.php b/resources/views/email/admin/download_invoices_text.blade.php new file mode 100644 index 000000000000..c39d09549ae8 --- /dev/null +++ b/resources/views/email/admin/download_invoices_text.blade.php @@ -0,0 +1,5 @@ +{!! ctrans('texts.invoices_backup_subject') !!} + +{!! ctrans('texts.download_timeframe') !!} + +{!! $url !!} \ No newline at end of file diff --git a/resources/views/email/admin/download_quotes_text.blade.php b/resources/views/email/admin/download_quotes_text.blade.php new file mode 100644 index 000000000000..49574a3377a1 --- /dev/null +++ b/resources/views/email/admin/download_quotes_text.blade.php @@ -0,0 +1,5 @@ +{!! ctrans('texts.quotes_backup_subject') !!} + +{!! ctrans('texts.download_timeframe') !!} + +{!! $url !!} \ No newline at end of file diff --git a/resources/views/email/import/completed_text.blade.php b/resources/views/email/import/completed_text.blade.php new file mode 100644 index 000000000000..0f772d901142 --- /dev/null +++ b/resources/views/email/import/completed_text.blade.php @@ -0,0 +1,73 @@ +Hello, here is the output of your recent import job. + +If your logo imported correctly it will available display below. If it didn't import, you'll need to reupload your logo + +{!! $company->present()->logo() !!} + +@if(isset($company) && $company->clients->count() >=1) + {!! ctrans('texts.clients') !!}: {!! $company->clients->count() !!} +@endif + +@if(isset($company) && count($company->products) >=1) + {!! ctrans('texts.products') !!}: {!! count($company->products) !!} +@endif + +@if(isset($company) && count($company->invoices) >=1) + {!! ctrans('texts.invoices') !!}: {!! count($company->invoices) !!} +@endif + +@if(isset($company) && count($company->payments) >=1) + {!! ctrans('texts.payments') !!}: {!! count($company->payments) !!} +@endif + +@if(isset($company) && count($company->recurring_invoices) >=1) + {!! ctrans('texts.recurring_invoices') !!}: {!! count($company->recurring_invoices) !!} +@endif + +@if(isset($company) && count($company->quotes) >=1) + {!! ctrans('texts.quotes') !!}: {!! count($company->quotes) !!} +@endif + +@if(isset($company) && count($company->credits) >=1) + {!! ctrans('texts.credits') !!}: {!! count($company->credits) !!} +@endif + +@if(isset($company) && count($company->projects) >=1) + {!! ctrans('texts.projects') !!}: {!! count($company->projects) !!} +@endif + +@if(isset($company) && count($company->tasks) >=1) + {!! ctrans('texts.tasks') !!}: {!! count($company->tasks) !!} +@endif + +@if(isset($company) && count($company->vendors) >=1) + {!! ctrans('texts.vendors') !!}: {!! count($company->vendors) !!} +@endif + +@if(isset($company) && count($company->expenses) >=1) + {!! ctrans('texts.expenses') !!}: {!! count($company->expenses) !!} +@endif + +@if(isset($company) && count($company->company_gateways) >=1) + {!! ctrans('texts.gateways') !!}: {!! count($company->company_gateways) !!} +@endif + +@if(isset($company) && count($company->client_gateway_tokens) >=1) + {!! ctrans('texts.tokens') !!}: {!! count($company->client_gateway_tokens) !!} +@endif + +@if(isset($company) && count($company->tax_rates) >=1) + {!! ctrans('texts.tax_rates') !!}: {!! count($company->tax_rates) !!} +@endif + +@if(isset($company) && count($company->documents) >=1) + {!! ctrans('texts.documents') !!}: {!! count($company->documents) !!} +@endif + +{!! url('/') !!} + +{!! ctrans('texts.email_signature') !!} + +{!! ctrans('texts.email_from') !!} + + diff --git a/resources/views/email/migration/existing_text.blade.php b/resources/views/email/migration/existing_text.blade.php new file mode 100644 index 000000000000..53bc7074140d --- /dev/null +++ b/resources/views/email/migration/existing_text.blade.php @@ -0,0 +1,3 @@ +{!! ctrans('texts.migration_already_completed') !!} + +{!! ctrans('texts.migration_already_completed_desc', ['company_name' => $company_name]) !!} \ No newline at end of file From c02bc2c389001c66f732ee5c8f4623db526d1bbe Mon Sep 17 00:00:00 2001 From: David Bomba Date: Fri, 4 Mar 2022 14:01:09 +1100 Subject: [PATCH 06/13] Text email templates --- .../RecurringInvoiceController.php | 35 ++++++++++++++++--- app/Jobs/User/UserEmailChanged.php | 3 -- app/Mail/ContactPasswordlessLogin.php | 1 + ...ClientContactRequestCancellationObject.php | 1 + app/Mail/User/UserAdded.php | 1 + app/Mail/User/UserLoggedIn.php | 4 +++ app/Mail/User/UserNotificationMailer.php | 4 +++ .../Subscription/SubscriptionService.php | 29 +++++++++++++++ .../views/email/admin/generic_text.blade.php | 9 +++++ .../email/admin/user_added_text.blade.php | 3 ++ .../billing/passwordless-login_text.blade.php | 6 ++++ 11 files changed, 88 insertions(+), 8 deletions(-) create mode 100644 resources/views/email/admin/generic_text.blade.php create mode 100644 resources/views/email/admin/user_added_text.blade.php create mode 100644 resources/views/email/billing/passwordless-login_text.blade.php diff --git a/app/Http/Controllers/ClientPortal/RecurringInvoiceController.php b/app/Http/Controllers/ClientPortal/RecurringInvoiceController.php index 25fbfaadd306..f4ead506a73e 100644 --- a/app/Http/Controllers/ClientPortal/RecurringInvoiceController.php +++ b/app/Http/Controllers/ClientPortal/RecurringInvoiceController.php @@ -62,21 +62,46 @@ class RecurringInvoiceController extends Controller public function requestCancellation(RequestCancellationRequest $request, RecurringInvoice $recurring_invoice) { - if (is_null($recurring_invoice->subscription_id) || optional($recurring_invoice->subscription)->allow_cancellation) { + nlog("outside cancellation"); + + if (optional($recurring_invoice->subscription)->allow_cancellation) { + + nlog("inside the cancellation"); + $nmo = new NinjaMailerObject; $nmo->mailable = (new NinjaMailer((new ClientContactRequestCancellationObject($recurring_invoice, auth()->user()))->build())); $nmo->company = $recurring_invoice->company; $nmo->settings = $recurring_invoice->company->settings; - $notifiable_users = $this->filterUsersByPermissions($recurring_invoice->company->company_users, $recurring_invoice, ['recurring_cancellation']); + // $notifiable_users = $this->filterUsersByPermissions($recurring_invoice->company->company_users, $recurring_invoice, ['recurring_cancellation']); + + $recurring_invoice->company->company_users->each(function ($company_user) use ($nmo){ + + + $methods = $this->findCompanyUserNotificationType($company_user, ['recurring_cancellation', 'all_notifications']); + + + //if mail is a method type -fire mail!! + if (($key = array_search('mail', $methods)) !== false) { + unset($methods[$key]); + + + $nmo->to_user = $company_user->user; + NinjaMailerJob::dispatch($nmo); + + } - $notifiable_users->each(function ($company_user) use($nmo){ - $nmo->to_user = $company_user->user; - NinjaMailerJob::dispatch($nmo); }); + // $notifiable_users->each(function ($company_user) use($nmo){ + + // $nmo->to_user = $company_user->user; + // NinjaMailerJob::dispatch($nmo); + + // }); + //$recurring_invoice->user->notify(new ClientContactRequestCancellation($recurring_invoice, auth()->user())); return $this->render('recurring_invoices.cancellation.index', [ diff --git a/app/Jobs/User/UserEmailChanged.php b/app/Jobs/User/UserEmailChanged.php index 5a4a770ba9a3..89db82344dce 100644 --- a/app/Jobs/User/UserEmailChanged.php +++ b/app/Jobs/User/UserEmailChanged.php @@ -77,9 +77,6 @@ class UserEmailChanged implements ShouldQueue NinjaMailerJob::dispatch($nmo, true); - // $nmo->to_user = $this->new_user; - // NinjaMailerJob::dispatch($nmo); - $this->new_user->service()->invite($this->company); } diff --git a/app/Mail/ContactPasswordlessLogin.php b/app/Mail/ContactPasswordlessLogin.php index 4370041767b6..1a006cd61c1a 100644 --- a/app/Mail/ContactPasswordlessLogin.php +++ b/app/Mail/ContactPasswordlessLogin.php @@ -58,6 +58,7 @@ class ContactPasswordlessLogin extends Mailable return $this ->subject(ctrans('texts.account_passwordless_login')) + ->text('email.billing.passwordless-login_text') ->view('email.billing.passwordless-login', [ 'logo' => $this->company->present()->logo(), 'settings' => $this->company->settings, diff --git a/app/Mail/RecurringInvoice/ClientContactRequestCancellationObject.php b/app/Mail/RecurringInvoice/ClientContactRequestCancellationObject.php index 6032a552fa24..4ee7a0e32441 100644 --- a/app/Mail/RecurringInvoice/ClientContactRequestCancellationObject.php +++ b/app/Mail/RecurringInvoice/ClientContactRequestCancellationObject.php @@ -58,6 +58,7 @@ class ClientContactRequestCancellationObject $mail_obj->data = $data; $mail_obj->markdown = 'email.admin.generic'; $mail_obj->tag = $this->company->company_key; + $mail_obj->text_view = 'email.admin.generic_text'; return $mail_obj; } diff --git a/app/Mail/User/UserAdded.php b/app/Mail/User/UserAdded.php index d732bce479f9..8f64b30c6358 100644 --- a/app/Mail/User/UserAdded.php +++ b/app/Mail/User/UserAdded.php @@ -50,6 +50,7 @@ class UserAdded extends Mailable return $this->from(config('mail.from.address'), config('mail.from.name')) ->subject(ctrans('texts.created_user')) + ->text('email.admin.user_added_text') ->view('email.admin.user_added') ->with([ 'settings' => $this->company->settings, diff --git a/app/Mail/User/UserLoggedIn.php b/app/Mail/User/UserLoggedIn.php index 2a270d73aa35..28150b7ed4e8 100644 --- a/app/Mail/User/UserLoggedIn.php +++ b/app/Mail/User/UserLoggedIn.php @@ -50,6 +50,10 @@ class UserLoggedIn extends Mailable return $this->from(config('mail.from.address'), config('mail.from.name')) ->subject(ctrans('texts.new_login_detected')) + ->text('email.admin.generic_text',[ + 'title' => ctrans('texts.new_login_detected'), + 'body' => strip_tags(ctrans('texts.new_login_description', ['email' => $this->user->email, 'ip' => $this->ip, 'time' => now()])) + ]) ->view('email.admin.notification') ->with([ 'settings' => $this->company->settings, diff --git a/app/Mail/User/UserNotificationMailer.php b/app/Mail/User/UserNotificationMailer.php index 968051f7900f..9ab33d4597b4 100644 --- a/app/Mail/User/UserNotificationMailer.php +++ b/app/Mail/User/UserNotificationMailer.php @@ -37,6 +37,10 @@ class UserNotificationMailer extends Mailable { return $this->from(config('mail.from.address'), config('mail.from.name')) ->subject($this->mail_obj->subject) + ->text('email.admin.generic_text',[ + 'title' => $this->mail_obj->data['title'], + 'body' => $this->mail_obj->data['message'], + ]) ->view($this->mail_obj->markdown, $this->mail_obj->data) ->withSwiftMessage(function ($message) { $message->getHeaders()->addTextHeader('Tag', $this->mail_obj->tag); diff --git a/app/Services/Subscription/SubscriptionService.php b/app/Services/Subscription/SubscriptionService.php index 4f0e6a7b3a50..9899e94f2259 100644 --- a/app/Services/Subscription/SubscriptionService.php +++ b/app/Services/Subscription/SubscriptionService.php @@ -16,9 +16,13 @@ use App\Factory\CreditFactory; use App\Factory\InvoiceFactory; use App\Factory\InvoiceToRecurringInvoiceFactory; use App\Factory\RecurringInvoiceFactory; +use App\Jobs\Mail\NinjaMailer; +use App\Jobs\Mail\NinjaMailerJob; +use App\Jobs\Mail\NinjaMailerObject; use App\Jobs\Util\SubscriptionWebhookHandler; use App\Jobs\Util\SystemLogger; use App\Libraries\MultiDB; +use App\Mail\RecurringInvoice\ClientContactRequestCancellationObject; use App\Models\Client; use App\Models\ClientContact; use App\Models\Credit; @@ -36,6 +40,7 @@ use App\Services\Subscription\ZeroCostProduct; use App\Utils\Ninja; use App\Utils\Traits\CleanLineItems; use App\Utils\Traits\MakesHash; +use App\Utils\Traits\Notifications\UserNotifies; use App\Utils\Traits\SubscriptionHooker; use Carbon\Carbon; use GuzzleHttp\RequestOptions; @@ -46,6 +51,7 @@ class SubscriptionService use MakesHash; use CleanLineItems; use SubscriptionHooker; + use UserNotifies; /** @var subscription */ private $subscription; @@ -934,6 +940,29 @@ class SubscriptionService $this->triggerWebhook($context); + $nmo = new NinjaMailerObject; + $nmo->mailable = (new NinjaMailer((new ClientContactRequestCancellationObject($recurring_invoice, auth()->guard('contact')->user()))->build())); + $nmo->company = $recurring_invoice->company; + $nmo->settings = $recurring_invoice->company->settings; + + $recurring_invoice->company->company_users->each(function ($company_user) use ($nmo){ + + $methods = $this->findCompanyUserNotificationType($company_user, ['recurring_cancellation', 'all_notifications']); + + //if mail is a method type -fire mail!! + if (($key = array_search('mail', $methods)) !== false) { + unset($methods[$key]); + + $nmo->to_user = $company_user->user; + NinjaMailerJob::dispatch($nmo); + + } + + + }); + + + return $this->handleRedirect('client/subscriptions'); } diff --git a/resources/views/email/admin/generic_text.blade.php b/resources/views/email/admin/generic_text.blade.php new file mode 100644 index 000000000000..1fdebc4f23ab --- /dev/null +++ b/resources/views/email/admin/generic_text.blade.php @@ -0,0 +1,9 @@ +{!! $title !!} + +@isset($body) +{!! $body !!} +@endisset + +@isset($content) +{!! $content !!} +@endisset \ No newline at end of file diff --git a/resources/views/email/admin/user_added_text.blade.php b/resources/views/email/admin/user_added_text.blade.php new file mode 100644 index 000000000000..031abd6995e5 --- /dev/null +++ b/resources/views/email/admin/user_added_text.blade.php @@ -0,0 +1,3 @@ +{!! $title !!} + +{!! $body !!} diff --git a/resources/views/email/billing/passwordless-login_text.blade.php b/resources/views/email/billing/passwordless-login_text.blade.php new file mode 100644 index 000000000000..d49230510b1d --- /dev/null +++ b/resources/views/email/billing/passwordless-login_text.blade.php @@ -0,0 +1,6 @@ +{!! ctrans('texts.login_link_requested_label') !!} + +{!! ctrans('texts.login_link_requested') !!} + +{!! $url !!} + From f3acd6bf90c3117d71ec3f118aa568cf8e8f7628 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Fri, 4 Mar 2022 14:08:29 +1100 Subject: [PATCH 07/13] Text emails --- app/Mail/Gateways/ACHVerificationNotification.php | 1 + app/Mail/Import/CompanyImportFailure.php | 3 +-- .../gateways/ach-verification-notification_text.blade.php | 5 +++++ resources/views/email/import/import_failure_text.blade.php | 7 +++++++ 4 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 resources/views/email/gateways/ach-verification-notification_text.blade.php create mode 100644 resources/views/email/import/import_failure_text.blade.php diff --git a/app/Mail/Gateways/ACHVerificationNotification.php b/app/Mail/Gateways/ACHVerificationNotification.php index cd4840f54af6..2412b9de75e5 100644 --- a/app/Mail/Gateways/ACHVerificationNotification.php +++ b/app/Mail/Gateways/ACHVerificationNotification.php @@ -54,6 +54,7 @@ class ACHVerificationNotification extends Mailable return $this ->subject(ctrans('texts.ach_verification_notification_label')) + ->text('email.gateways.ach-verification-notification_text') ->view('email.gateways.ach-verification-notification', [ 'logo' => $this->company->present()->logo(), 'settings' => $this->company->settings, diff --git a/app/Mail/Import/CompanyImportFailure.php b/app/Mail/Import/CompanyImportFailure.php index 761c89fdcc98..1ae6d38b5349 100644 --- a/app/Mail/Import/CompanyImportFailure.php +++ b/app/Mail/Import/CompanyImportFailure.php @@ -59,10 +59,9 @@ class CompanyImportFailure extends Mailable $this->title = ctrans('texts.company_import_failure_subject', ['company' => $this->company->present()->name()]); $this->whitelabel = $this->company->account->isPaid(); - nlog($this->user_message); - return $this->from(config('mail.from.address'), config('mail.from.name')) ->subject(ctrans('texts.company_import_failure_subject', ['company' => $this->company->present()->name()])) + ->text('email.import.import_failure_text') ->view('email.import.import_failure', ['user_message' => $this->user_message, 'title' => $this->title]); } } diff --git a/resources/views/email/gateways/ach-verification-notification_text.blade.php b/resources/views/email/gateways/ach-verification-notification_text.blade.php new file mode 100644 index 000000000000..574fc9fd2e81 --- /dev/null +++ b/resources/views/email/gateways/ach-verification-notification_text.blade.php @@ -0,0 +1,5 @@ +{!! ctrans('texts.ach_verification_notification_label') !!} + +{!! ctrans('texts.ach_verification_notification') !!} + +{!! $url !!} diff --git a/resources/views/email/import/import_failure_text.blade.php b/resources/views/email/import/import_failure_text.blade.php new file mode 100644 index 000000000000..f1f597a4b8fe --- /dev/null +++ b/resources/views/email/import/import_failure_text.blade.php @@ -0,0 +1,7 @@ +{!! $title !!} + +{!! ctrans('texts.company_import_failure_body') !!} + +@if(isset($whitelabel) && !$whitelabel) +{{ ctrans('texts.ninja_email_footer', ['site' => 'https://invoiceninja.com']) }} +@endif From 1fdeb1ce2676912ab9315b6fd67b6b52a73bed80 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Sat, 5 Mar 2022 07:48:14 +1100 Subject: [PATCH 08/13] Change dependencies to handle PHP 7.4 --- VERSION.txt | 2 +- composer.json | 4 +- composer.lock | 296 +++++++++++++++++++++++------------------------ config/ninja.php | 4 +- 4 files changed, 153 insertions(+), 153 deletions(-) diff --git a/VERSION.txt b/VERSION.txt index 1e20ec35c642..d6f39d271178 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1 +1 @@ -5.4.0 \ No newline at end of file +5.3.65 \ No newline at end of file diff --git a/composer.json b/composer.json index bb9491188bf7..01162773da55 100644 --- a/composer.json +++ b/composer.json @@ -26,12 +26,12 @@ ], "type": "project", "require": { - "php": "^8.0", + "php": "^7.4|^8.0", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", "afosto/yaac": "^1.4", - "asm/php-ansible": "dev-main", + "asm/php-ansible": "^3", "authorizenet/authorizenet": "^2.0", "bacon/bacon-qr-code": "^2.0", "beganovich/snappdf": "^1.7", diff --git a/composer.lock b/composer.lock index ae40de127d03..75d9b6f6a86c 100644 --- a/composer.lock +++ b/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": "8ab74954c338fd80aa6597e93df6357f", + "content-hash": "f92ff75d01d04fc5c6105ad78b57476b", "packages": [ { "name": "afosto/yaac", @@ -174,28 +174,27 @@ }, { "name": "asm/php-ansible", - "version": "dev-main", + "version": "v3.0.1", "source": { "type": "git", "url": "https://github.com/maschmann/php-ansible.git", - "reference": "654592557a8cae60169de6f2ba145ef7ebb38f37" + "reference": "26809472cab66fb0175ae53f7281afd6b31d1296" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/maschmann/php-ansible/zipball/654592557a8cae60169de6f2ba145ef7ebb38f37", - "reference": "654592557a8cae60169de6f2ba145ef7ebb38f37", + "url": "https://api.github.com/repos/maschmann/php-ansible/zipball/26809472cab66fb0175ae53f7281afd6b31d1296", + "reference": "26809472cab66fb0175ae53f7281afd6b31d1296", "shasum": "" }, "require": { - "php": "^8.0.0", + "php": "^7.3.0|^8.0.0", "psr/log": "^1.1", - "symfony/process": "^5.3|^6.0" + "symfony/process": "^4.0|^5.0" }, "require-dev": { "mikey179/vfsstream": "^1.6", - "phpunit/phpunit": "^9.5" + "phpunit/phpunit": "^9.0" }, - "default-branch": true, "type": "library", "autoload": { "psr-4": { @@ -220,9 +219,9 @@ ], "support": { "issues": "https://github.com/maschmann/php-ansible/issues", - "source": "https://github.com/maschmann/php-ansible/tree/v4.0.0" + "source": "https://github.com/maschmann/php-ansible/tree/v3.0.1" }, - "time": "2022-02-20T18:59:30+00:00" + "time": "2021-06-25T20:09:17+00:00" }, { "name": "asm89/stack-cors", @@ -375,16 +374,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.212.1", + "version": "3.212.2", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "e4a5f8dca671281e8e2122607a4da2a8348489bf" + "reference": "dd2ff1ca2d7c37bfb7c3fed24cb8ad8bad604ec5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/e4a5f8dca671281e8e2122607a4da2a8348489bf", - "reference": "e4a5f8dca671281e8e2122607a4da2a8348489bf", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/dd2ff1ca2d7c37bfb7c3fed24cb8ad8bad604ec5", + "reference": "dd2ff1ca2d7c37bfb7c3fed24cb8ad8bad604ec5", "shasum": "" }, "require": { @@ -460,9 +459,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.212.1" + "source": "https://github.com/aws/aws-sdk-php/tree/3.212.2" }, - "time": "2022-03-03T19:19:37+00:00" + "time": "2022-03-04T19:27:01+00:00" }, { "name": "bacon/bacon-qr-code", @@ -5266,44 +5265,41 @@ }, { "name": "moneyphp/money", - "version": "v4.0.3", + "version": "v3.3.1", "source": { "type": "git", "url": "https://github.com/moneyphp/money.git", - "reference": "d945f775bd6ab0920d9d205813d8831a899a8844" + "reference": "122664c2621a95180a13c1ac81fea1d2ef20781e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/moneyphp/money/zipball/d945f775bd6ab0920d9d205813d8831a899a8844", - "reference": "d945f775bd6ab0920d9d205813d8831a899a8844", + "url": "https://api.github.com/repos/moneyphp/money/zipball/122664c2621a95180a13c1ac81fea1d2ef20781e", + "reference": "122664c2621a95180a13c1ac81fea1d2ef20781e", "shasum": "" }, "require": { - "ext-bcmath": "*", - "ext-filter": "*", "ext-json": "*", - "php": "^8.0" + "php": ">=5.6" }, "require-dev": { - "cache/taggable-cache": "^1.1.0", - "doctrine/coding-standard": "^9.0", - "doctrine/instantiator": "^1.4.0", + "cache/taggable-cache": "^0.4.0", + "doctrine/instantiator": "^1.0.5", + "ext-bcmath": "*", "ext-gmp": "*", "ext-intl": "*", - "florianv/exchanger": "^2.6.3", - "florianv/swap": "^4.3.0", + "florianv/exchanger": "^1.0", + "florianv/swap": "^3.0", + "friends-of-phpspec/phpspec-code-coverage": "^3.1.1 || ^4.3", "moneyphp/iso-currencies": "^3.2.1", - "php-http/message": "^1.11.0", - "php-http/mock-client": "^1.4.1", - "phpbench/phpbench": "1.0.0-beta1@BETA", - "phpspec/phpspec": "^7.0.1", - "phpunit/phpunit": "^9.5.4", - "psalm/plugin-phpunit": "^0.15.1", - "psr/cache": "^1.0.1", - "roave/infection-static-analysis-plugin": "^1.7", - "vimeo/psalm": "~4.7.0 || ^4.8.2" + "php-http/message": "^1.4", + "php-http/mock-client": "^1.0.0", + "phpspec/phpspec": "^3.4.3", + "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.5.18 || ^8.5", + "psr/cache": "^1.0", + "symfony/phpunit-bridge": "^4" }, "suggest": { + "ext-bcmath": "Calculate without integer limits", "ext-gmp": "Calculate without integer limits", "ext-intl": "Format Money objects with intl", "florianv/exchanger": "Exchange rates library for PHP", @@ -5349,9 +5345,9 @@ ], "support": { "issues": "https://github.com/moneyphp/money/issues", - "source": "https://github.com/moneyphp/money/tree/v4.0.3" + "source": "https://github.com/moneyphp/money/tree/master" }, - "time": "2021-12-01T10:39:00+00:00" + "time": "2020-03-18T17:49:59+00:00" }, { "name": "monolog/monolog", @@ -8871,20 +8867,21 @@ }, { "name": "symfony/css-selector", - "version": "v6.0.3", + "version": "v5.4.3", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "1955d595c12c111629cc814d3f2a2ff13580508a" + "reference": "b0a190285cd95cb019237851205b8140ef6e368e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/1955d595c12c111629cc814d3f2a2ff13580508a", - "reference": "1955d595c12c111629cc814d3f2a2ff13580508a", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/b0a190285cd95cb019237851205b8140ef6e368e", + "reference": "b0a190285cd95cb019237851205b8140ef6e368e", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=7.2.5", + "symfony/polyfill-php80": "^1.16" }, "type": "library", "autoload": { @@ -8916,7 +8913,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v6.0.3" + "source": "https://github.com/symfony/css-selector/tree/v5.4.3" }, "funding": [ { @@ -8932,29 +8929,29 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2022-01-02T09:53:40+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.0.0", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "c726b64c1ccfe2896cb7df2e1331c357ad1c8ced" + "reference": "6f981ee24cf69ee7ce9736146d1c57c2780598a8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/c726b64c1ccfe2896cb7df2e1331c357ad1c8ced", - "reference": "c726b64c1ccfe2896cb7df2e1331c357ad1c8ced", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/6f981ee24cf69ee7ce9736146d1c57c2780598a8", + "reference": "6f981ee24cf69ee7ce9736146d1c57c2780598a8", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "2.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -8983,7 +8980,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.0.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.0" }, "funding": [ { @@ -8999,7 +8996,7 @@ "type": "tidelift" } ], - "time": "2021-11-01T23:48:49+00:00" + "time": "2021-07-12T14:48:14+00:00" }, { "name": "symfony/error-handler", @@ -9159,20 +9156,20 @@ }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.0.0", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "aa5422287b75594b90ee9cd807caf8f0df491385" + "reference": "66bea3b09be61613cd3b4043a65a8ec48cfa6d2a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/aa5422287b75594b90ee9cd807caf8f0df491385", - "reference": "aa5422287b75594b90ee9cd807caf8f0df491385", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/66bea3b09be61613cd3b4043a65a8ec48cfa6d2a", + "reference": "66bea3b09be61613cd3b4043a65a8ec48cfa6d2a", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=7.2.5", "psr/event-dispatcher": "^1" }, "suggest": { @@ -9181,7 +9178,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "2.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -9218,7 +9215,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.0.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.5.0" }, "funding": [ { @@ -9234,7 +9231,7 @@ "type": "tidelift" } ], - "time": "2021-07-15T12:33:35+00:00" + "time": "2021-07-12T14:48:14+00:00" }, { "name": "symfony/filesystem", @@ -9867,7 +9864,7 @@ }, { "name": "symfony/polyfill-ctype", - "version": "v1.24.0", + "version": "v1.25.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", @@ -9929,7 +9926,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": [ { @@ -9949,7 +9946,7 @@ }, { "name": "symfony/polyfill-iconv", - "version": "v1.24.0", + "version": "v1.25.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-iconv.git", @@ -10012,7 +10009,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-iconv/tree/v1.24.0" + "source": "https://github.com/symfony/polyfill-iconv/tree/v1.25.0" }, "funding": [ { @@ -10032,7 +10029,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", @@ -10093,7 +10090,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": [ { @@ -10113,7 +10110,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", @@ -10180,7 +10177,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": [ { @@ -10200,7 +10197,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", @@ -10264,7 +10261,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": [ { @@ -10284,7 +10281,7 @@ }, { "name": "symfony/polyfill-mbstring", - "version": "v1.24.0", + "version": "v1.25.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", @@ -10347,7 +10344,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": [ { @@ -10367,7 +10364,7 @@ }, { "name": "symfony/polyfill-php72", - "version": "v1.24.0", + "version": "v1.25.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php72.git", @@ -10423,7 +10420,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": [ { @@ -10443,7 +10440,7 @@ }, { "name": "symfony/polyfill-php73", - "version": "v1.24.0", + "version": "v1.25.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", @@ -10502,7 +10499,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": [ { @@ -10522,16 +10519,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": { @@ -10585,7 +10582,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": [ { @@ -10601,11 +10598,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", @@ -10664,7 +10661,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": [ { @@ -10684,7 +10681,7 @@ }, { "name": "symfony/polyfill-uuid", - "version": "v1.24.0", + "version": "v1.25.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-uuid.git", @@ -10746,7 +10743,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/polyfill-uuid/tree/v1.24.0" + "source": "https://github.com/symfony/polyfill-uuid/tree/v1.25.0" }, "funding": [ { @@ -11006,21 +11003,22 @@ }, { "name": "symfony/service-contracts", - "version": "v2.4.1", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "d664541b99d6fb0247ec5ff32e87238582236204" + "reference": "1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d664541b99d6fb0247ec5ff32e87238582236204", - "reference": "d664541b99d6fb0247ec5ff32e87238582236204", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc", + "reference": "1ab11b933cd6bc5464b08e81e2c5b07dec58b0fc", "shasum": "" }, "require": { "php": ">=7.2.5", - "psr/container": "^1.1" + "psr/container": "^1.1", + "symfony/deprecation-contracts": "^2.1" }, "conflict": { "ext-psr": "<1.1|>=2" @@ -11031,7 +11029,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.4-dev" + "dev-main": "2.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -11068,7 +11066,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.4.1" + "source": "https://github.com/symfony/service-contracts/tree/v2.5.0" }, "funding": [ { @@ -11084,37 +11082,38 @@ "type": "tidelift" } ], - "time": "2021-11-04T16:37:19+00:00" + "time": "2021-11-04T16:48:04+00:00" }, { "name": "symfony/string", - "version": "v6.0.3", + "version": "v5.4.3", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "522144f0c4c004c80d56fa47e40e17028e2eefc2" + "reference": "92043b7d8383e48104e411bc9434b260dbeb5a10" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/522144f0c4c004c80d56fa47e40e17028e2eefc2", - "reference": "522144f0c4c004c80d56fa47e40e17028e2eefc2", + "url": "https://api.github.com/repos/symfony/string/zipball/92043b7d8383e48104e411bc9434b260dbeb5a10", + "reference": "92043b7d8383e48104e411bc9434b260dbeb5a10", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=7.2.5", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-grapheme": "~1.0", "symfony/polyfill-intl-normalizer": "~1.0", - "symfony/polyfill-mbstring": "~1.0" + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php80": "~1.15" }, "conflict": { - "symfony/translation-contracts": "<2.0" + "symfony/translation-contracts": ">=3.0" }, "require-dev": { - "symfony/error-handler": "^5.4|^6.0", - "symfony/http-client": "^5.4|^6.0", - "symfony/translation-contracts": "^2.0|^3.0", - "symfony/var-exporter": "^5.4|^6.0" + "symfony/error-handler": "^4.4|^5.0|^6.0", + "symfony/http-client": "^4.4|^5.0|^6.0", + "symfony/translation-contracts": "^1.1|^2", + "symfony/var-exporter": "^4.4|^5.0|^6.0" }, "type": "library", "autoload": { @@ -11153,7 +11152,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.0.3" + "source": "https://github.com/symfony/string/tree/v5.4.3" }, "funding": [ { @@ -11169,50 +11168,52 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2022-01-02T09:53:40+00:00" }, { "name": "symfony/translation", - "version": "v6.0.5", + "version": "v5.4.5", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "e69501c71107cc3146b32aaa45f4edd0c3427875" + "reference": "7e4d52d39e5d86f3f04bef46fa29a1091786bc73" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/e69501c71107cc3146b32aaa45f4edd0c3427875", - "reference": "e69501c71107cc3146b32aaa45f4edd0c3427875", + "url": "https://api.github.com/repos/symfony/translation/zipball/7e4d52d39e5d86f3f04bef46fa29a1091786bc73", + "reference": "7e4d52d39e5d86f3f04bef46fa29a1091786bc73", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/translation-contracts": "^2.3|^3.0" + "symfony/polyfill-php80": "^1.16", + "symfony/translation-contracts": "^2.3" }, "conflict": { - "symfony/config": "<5.4", - "symfony/console": "<5.4", - "symfony/dependency-injection": "<5.4", - "symfony/http-kernel": "<5.4", - "symfony/twig-bundle": "<5.4", - "symfony/yaml": "<5.4" + "symfony/config": "<4.4", + "symfony/console": "<5.3", + "symfony/dependency-injection": "<5.0", + "symfony/http-kernel": "<5.0", + "symfony/twig-bundle": "<5.0", + "symfony/yaml": "<4.4" }, "provide": { - "symfony/translation-implementation": "2.3|3.0" + "symfony/translation-implementation": "2.3" }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0", + "symfony/config": "^4.4|^5.0|^6.0", "symfony/console": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/finder": "^5.4|^6.0", + "symfony/dependency-injection": "^5.0|^6.0", + "symfony/finder": "^4.4|^5.0|^6.0", "symfony/http-client-contracts": "^1.1|^2.0|^3.0", - "symfony/http-kernel": "^5.4|^6.0", - "symfony/intl": "^5.4|^6.0", + "symfony/http-kernel": "^5.0|^6.0", + "symfony/intl": "^4.4|^5.0|^6.0", "symfony/polyfill-intl-icu": "^1.21", "symfony/service-contracts": "^1.1.2|^2|^3", - "symfony/yaml": "^5.4|^6.0" + "symfony/yaml": "^4.4|^5.0|^6.0" }, "suggest": { "psr/log-implementation": "To use logging capability in translator", @@ -11248,7 +11249,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/v5.4.5" }, "funding": [ { @@ -11264,24 +11265,24 @@ "type": "tidelift" } ], - "time": "2022-02-09T15:52:48+00:00" + "time": "2022-02-09T15:49:12+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.0.0", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "1b6ea5a7442af5a12dba3dbd6d71034b5b234e77" + "reference": "d28150f0f44ce854e942b671fc2620a98aae1b1e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/1b6ea5a7442af5a12dba3dbd6d71034b5b234e77", - "reference": "1b6ea5a7442af5a12dba3dbd6d71034b5b234e77", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/d28150f0f44ce854e942b671fc2620a98aae1b1e", + "reference": "d28150f0f44ce854e942b671fc2620a98aae1b1e", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=7.2.5" }, "suggest": { "symfony/translation-implementation": "" @@ -11289,7 +11290,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "2.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -11326,7 +11327,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.0.0" + "source": "https://github.com/symfony/translation-contracts/tree/v2.5.0" }, "funding": [ { @@ -11342,7 +11343,7 @@ "type": "tidelift" } ], - "time": "2021-09-07T12:43:40+00:00" + "time": "2021-08-17T14:20:01+00:00" }, { "name": "symfony/var-dumper", @@ -15585,16 +15586,16 @@ }, { "name": "zircote/swagger-php", - "version": "4.2.9", + "version": "4.2.10", "source": { "type": "git", "url": "https://github.com/zircote/swagger-php.git", - "reference": "867cfdcf31fec8bf44b2d7107a2f51b4bab00601" + "reference": "7263e95f5fff5524a697e2a75ceb6f9902453d01" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/zircote/swagger-php/zipball/867cfdcf31fec8bf44b2d7107a2f51b4bab00601", - "reference": "867cfdcf31fec8bf44b2d7107a2f51b4bab00601", + "url": "https://api.github.com/repos/zircote/swagger-php/zipball/7263e95f5fff5524a697e2a75ceb6f9902453d01", + "reference": "7263e95f5fff5524a697e2a75ceb6f9902453d01", "shasum": "" }, "require": { @@ -15654,22 +15655,21 @@ ], "support": { "issues": "https://github.com/zircote/swagger-php/issues", - "source": "https://github.com/zircote/swagger-php/tree/4.2.9" + "source": "https://github.com/zircote/swagger-php/tree/4.2.10" }, - "time": "2022-02-20T21:16:53+00:00" + "time": "2022-03-04T01:21:38+00:00" } ], "aliases": [], "minimum-stability": "dev", "stability-flags": { - "asm/php-ansible": 20, "invoiceninja/inspector": 20, "webpatser/laravel-countries": 20 }, "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": "^8.0", + "php": "^7.4|^8.0", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*" @@ -15677,5 +15677,5 @@ "platform-dev": { "php": "^7.3|^7.4|^8.0" }, - "plugin-api-version": "2.0.0" + "plugin-api-version": "2.1.0" } diff --git a/config/ninja.php b/config/ninja.php index acbb348484f4..af0d6e011940 100644 --- a/config/ninja.php +++ b/config/ninja.php @@ -14,8 +14,8 @@ return [ 'require_https' => env('REQUIRE_HTTPS', true), 'app_url' => rtrim(env('APP_URL', ''), '/'), 'app_domain' => env('APP_DOMAIN', 'invoicing.co'), - 'app_version' => '5.4.0', - 'app_tag' => '5.4.0', + 'app_version' => '5.3.65', + 'app_tag' => '5.3.65', 'minimum_client_version' => '5.0.16', 'terms_version' => '1.0.1', 'api_secret' => env('API_SECRET', ''), From dad1b17f29576c0ace72e2cdc4633a0b093f2599 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Sat, 5 Mar 2022 07:49:26 +1100 Subject: [PATCH 09/13] add PHP 7.4 back into github actions --- .github/workflows/phpunit.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/phpunit.yml b/.github/workflows/phpunit.yml index 098ee21aacda..3ce1032ce9c1 100644 --- a/.github/workflows/phpunit.yml +++ b/.github/workflows/phpunit.yml @@ -13,7 +13,7 @@ jobs: strategy: matrix: operating-system: ['ubuntu-18.04', 'ubuntu-20.04'] - php-versions: ['8.0','8.1'] + php-versions: ['7.4','8.0','8.1'] phpunit-versions: ['latest'] env: From 3ee38d54b425dd82824b89740c2cdc787b1f1f27 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Sat, 5 Mar 2022 09:21:17 +1100 Subject: [PATCH 10/13] Fixes for model freshness --- app/Models/PaymentHash.php | 2 +- app/Services/Credit/ApplyPayment.php | 1 + app/Services/Invoice/AutoBillInvoice.php | 18 ++++++++++-------- app/Services/Payment/UpdateInvoicePayment.php | 10 ++++++---- 4 files changed, 18 insertions(+), 13 deletions(-) diff --git a/app/Models/PaymentHash.php b/app/Models/PaymentHash.php index c2ea7232b651..a19164ea058a 100644 --- a/app/Models/PaymentHash.php +++ b/app/Models/PaymentHash.php @@ -38,7 +38,7 @@ class PaymentHash extends Model public function fee_invoice() { - return $this->belongsTo(Invoice::class, 'fee_invoice_id', 'id'); + return $this->belongsTo(Invoice::class, 'fee_invoice_id', 'id')->withTrashed(); } public function withData(string $property, $value): self diff --git a/app/Services/Credit/ApplyPayment.php b/app/Services/Credit/ApplyPayment.php index ca1edf32d665..21838ebe0896 100644 --- a/app/Services/Credit/ApplyPayment.php +++ b/app/Services/Credit/ApplyPayment.php @@ -148,6 +148,7 @@ class ApplyPayment if ((int)$this->invoice->balance == 0) { $this->invoice->service()->deletePdf(); + $this->invoice = $this->invoice->fresh(); event(new InvoiceWasPaid($this->invoice, $this->payment, $this->payment->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null))); } } diff --git a/app/Services/Invoice/AutoBillInvoice.php b/app/Services/Invoice/AutoBillInvoice.php index ec5ddc18fe1a..4fe87c4ec4e0 100644 --- a/app/Services/Invoice/AutoBillInvoice.php +++ b/app/Services/Invoice/AutoBillInvoice.php @@ -47,7 +47,7 @@ class AutoBillInvoice extends AbstractService MultiDB::setDb($this->db); - $this->client = $this->invoice->client; + $this->client = $this->invoice->client->fresh(); $is_partial = false; @@ -178,14 +178,16 @@ class AutoBillInvoice extends AbstractService } $payment->ledger() - ->updatePaymentBalance($amount * -1) - ->save(); + ->updatePaymentBalance($amount * -1) + ->save(); - $this->invoice->client->service() - ->updateBalance($amount * -1) - ->updatePaidToDate($amount) - ->adjustCreditBalance($amount * -1) - ->save(); + $client = $this->invoice->client->fresh(); + + $client->service() + ->updateBalance($amount * -1) + ->updatePaidToDate($amount) + ->adjustCreditBalance($amount * -1) + ->save(); $this->invoice->ledger() ->updateInvoiceBalance($amount * -1, "Invoice {$this->invoice->number} payment using Credit {$current_credit->number}") diff --git a/app/Services/Payment/UpdateInvoicePayment.php b/app/Services/Payment/UpdateInvoicePayment.php index 7065705c28bb..556ddd817eb1 100644 --- a/app/Services/Payment/UpdateInvoicePayment.php +++ b/app/Services/Payment/UpdateInvoicePayment.php @@ -41,6 +41,8 @@ class UpdateInvoicePayment collect($paid_invoices)->each(function ($paid_invoice) use ($invoices) { + $client = $this->payment->client->fresh(); + $invoice = $invoices->first(function ($inv) use ($paid_invoice) { return $paid_invoice->invoice_id == $inv->hashed_id; }); @@ -70,8 +72,7 @@ class UpdateInvoicePayment ->ledger() ->updatePaymentBalance($paid_amount * -1); - $this->payment - ->client + $client ->service() ->updateBalance($paid_amount * -1) ->updatePaidToDate($paid_amount) @@ -94,11 +95,12 @@ class UpdateInvoicePayment $this->payment->saveQuietly(); $invoices->each(function ($invoice) { - + + $invoice = $invoice->fresh(); event(new InvoiceWasUpdated($invoice, $invoice->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null))); }); - return $this->payment; + return $this->payment->fresh(); } } From af36e7c45d60b8b5305770bd53913fa7f683fe14 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Sat, 5 Mar 2022 09:37:31 +1100 Subject: [PATCH 11/13] Fixes for we pay authorization failure --- app/PaymentDrivers/WePay/ACH.php | 1 - 1 file changed, 1 deletion(-) diff --git a/app/PaymentDrivers/WePay/ACH.php b/app/PaymentDrivers/WePay/ACH.php index 7e9d2055d577..b73cd9742b6f 100644 --- a/app/PaymentDrivers/WePay/ACH.php +++ b/app/PaymentDrivers/WePay/ACH.php @@ -75,7 +75,6 @@ class ACH $message = [ 'server_response' => $e->getMessage(), - 'data' => $this->wepay_payment_driver->payment_hash->data, ]; SystemLogger::dispatch( From 9ab15426eb4e56c6067ef7c9cd2e7c0d1e0cfa0e Mon Sep 17 00:00:00 2001 From: David Bomba Date: Sat, 5 Mar 2022 14:11:16 +1100 Subject: [PATCH 12/13] Fixes for backup script --- app/Console/Commands/BackupUpdate.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/app/Console/Commands/BackupUpdate.php b/app/Console/Commands/BackupUpdate.php index 5f6d19498eef..e4166e5ff5d2 100644 --- a/app/Console/Commands/BackupUpdate.php +++ b/app/Console/Commands/BackupUpdate.php @@ -80,9 +80,19 @@ class BackupUpdate extends Command Backup::whereRaw('html_backup IS NOT NULL')->chunk(5000, function ($backups) { foreach ($backups as $backup) { - if(strlen($backup->html_backup) > 1 && $backup->activity->client()->exists()){ + if(strlen($backup->html_backup) > 1 && $backup->activity->invoice->exists()){ - $client = $backup->activity->client; + $client = $backup->activity->invoice->client; + $backup->storeRemotely($backup->html_backup, $client); + + }else if(strlen($backup->html_backup) > 1 && $backup->activity->quote->exists()){ + + $client = $backup->activity->quote->client; + $backup->storeRemotely($backup->html_backup, $client); + + }else if(strlen($backup->html_backup) > 1 && $backup->activity->credit->exists()){ + + $client = $backup->activity->credit->client; $backup->storeRemotely($backup->html_backup, $client); } From 10ef13fb9ec58ed97a1ab20519016285d23971a1 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Sat, 5 Mar 2022 17:51:04 +1100 Subject: [PATCH 13/13] Minor fixes for backup update --- app/Console/Commands/BackupUpdate.php | 6 +++--- app/Models/Activity.php | 5 +++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/app/Console/Commands/BackupUpdate.php b/app/Console/Commands/BackupUpdate.php index e4166e5ff5d2..b9b6ec0e7558 100644 --- a/app/Console/Commands/BackupUpdate.php +++ b/app/Console/Commands/BackupUpdate.php @@ -77,8 +77,8 @@ class BackupUpdate extends Command { set_time_limit(0); - Backup::whereRaw('html_backup IS NOT NULL')->chunk(5000, function ($backups) { - foreach ($backups as $backup) { + Backup::whereHas('activity')->whereRaw('html_backup IS NOT NULL')->cursor()->each( function ($backup) { + if(strlen($backup->html_backup) > 1 && $backup->activity->invoice->exists()){ @@ -97,7 +97,7 @@ class BackupUpdate extends Command } - } + }); } diff --git a/app/Models/Activity.php b/app/Models/Activity.php index ca8f0e8ab4c8..73c49f1dcd5a 100644 --- a/app/Models/Activity.php +++ b/app/Models/Activity.php @@ -177,6 +177,11 @@ class Activity extends StaticModel return $this->belongsTo(Invoice::class)->withTrashed(); } + public function credit() + { + return $this->belongsTo(Credit::class)->withTrashed(); + } + /** * @return mixed */