diff --git a/app/Factory/CompanyLedgerFactory.php b/app/Factory/CompanyLedgerFactory.php
index 7f4d53a0aeb5..accbbfb422c3 100644
--- a/app/Factory/CompanyLedgerFactory.php
+++ b/app/Factory/CompanyLedgerFactory.php
@@ -21,7 +21,7 @@ class CompanyLedgerFactory
$company_ledger->company_id = $company_id;
$company_ledger->user_id = $user_id;
$company_ledger->adjustment = 0;
- $company_ledger->balance = 0;
+ // $company_ledger->balance = 0;
$company_ledger->notes = '';
$company_ledger->hash = '';
$company_ledger->client_id = 0;
diff --git a/app/Jobs/EDocument/CreateEDocument.php b/app/Jobs/EDocument/CreateEDocument.php
index 9286dd98032e..478e98b444d2 100644
--- a/app/Jobs/EDocument/CreateEDocument.php
+++ b/app/Jobs/EDocument/CreateEDocument.php
@@ -26,6 +26,7 @@ use Illuminate\Foundation\Bus\Dispatchable;
use horstoeko\zugferd\ZugferdDocumentBuilder;
use App\Services\EDocument\Standards\OrderXDocument;
use App\Services\EDocument\Standards\FacturaEInvoice;
+use App\Services\EDocument\Standards\FatturaPA;
use App\Services\EDocument\Standards\ZugferdEDokument;
class CreateEDocument implements ShouldQueue
@@ -62,11 +63,14 @@ class CreateEDocument implements ShouldQueue
$e_document_type = strlen($settings_entity->getSetting('e_invoice_type')) > 2 ? $settings_entity->getSetting('e_invoice_type') : "XInvoice_3_0";
$e_quote_type = strlen($settings_entity->getSetting('e_quote_type')) > 2 ? $settings_entity->getSetting('e_quote_type') : "OrderX_Extended";
+nlog($e_document_type);
if ($this->document instanceof Invoice){
switch ($e_document_type) {
case "FACT1":
return (new RoEInvoice($this->document))->generateXml();
+ case "FatturaPA":
+ return (new FatturaPA($this->document))->run();
case "EN16931":
case "XInvoice_3_0":
case "XInvoice_2_3":
diff --git a/app/Jobs/Ledger/ClientLedgerBalanceUpdate.php b/app/Jobs/Ledger/ClientLedgerBalanceUpdate.php
index 24e223d604f4..c157511ce23f 100644
--- a/app/Jobs/Ledger/ClientLedgerBalanceUpdate.php
+++ b/app/Jobs/Ledger/ClientLedgerBalanceUpdate.php
@@ -47,34 +47,11 @@ class ClientLedgerBalanceUpdate implements ShouldQueue
*/
public function handle(): void
{
- $uuid = \Illuminate\Support\Str::uuid();
-
- // nlog("Updating company ledger for client {$this->client->id} {$uuid}");
-
+
MultiDB::setDb($this->company->db);
- // $dupes = CompanyLedger::query()
- // ->where('client_id', $this->client->id)
- // ->where('balance', 0)
- // ->where('hash', '<>', '')
- // ->groupBy(['adjustment','hash'])
- // ->havingRaw('COUNT(*) > 1')
- // ->pluck('id');
-
- // CompanyLedger::query()->whereIn('id', $dupes)->delete();
-
- // $dupes = CompanyLedger::query()
- // ->where('client_id', $this->client->id)
- // ->where('balance', 0)
- // ->where('hash', '<>', '')
- // ->groupBy(['adjustment','hash'])
- // ->havingRaw('COUNT(*) > 1')
- // ->pluck('id');
-
- // CompanyLedger::query()->whereIn('id', $dupes)->delete();
-
CompanyLedger::query()
- ->where('balance', 0)
+ ->whereNull('balance')
->where('client_id', $this->client->id)
->orderBy('id', 'ASC')
->get()
@@ -88,13 +65,11 @@ class ClientLedgerBalanceUpdate implements ShouldQueue
->orderBy('id', 'DESC')
->first();
- // $company_ledger->balance = $last_record->balance + $company_ledger->adjustment;
$company_ledger->balance = ($parent_ledger ? $parent_ledger->balance : 0) + $company_ledger->adjustment;
$company_ledger->save();
});
- // nlog("finished job {$uuid}");
}
public function middleware()
diff --git a/app/Mail/Subscription/OtpCode.php b/app/Mail/Subscription/OtpCode.php
index f6cafb778388..7cb850e21511 100644
--- a/app/Mail/Subscription/OtpCode.php
+++ b/app/Mail/Subscription/OtpCode.php
@@ -58,7 +58,7 @@ class OtpCode extends Mailable
'title' => ctrans('texts.otp_code_subject'),
'content' => ctrans('texts.otp_code_body', ['code' => $this->code]),
'whitelabel' => $this->company->account->isPaid(),
- 'url' => 'xx',
+ 'url' => '',
'button' => false,
'template' => $this->company->account->isPremium() ? 'email.template.admin_premium' : 'email.template.admin',
]);
diff --git a/app/Services/EDocument/Standards/FatturaPA.php b/app/Services/EDocument/Standards/FatturaPA.php
index 6c08be878ae7..069a1811764b 100644
--- a/app/Services/EDocument/Standards/FatturaPA.php
+++ b/app/Services/EDocument/Standards/FatturaPA.php
@@ -11,50 +11,33 @@
namespace App\Services\EDocument\Standards;
+use Sabre\Xml\Service;
use App\Models\Invoice;
use App\Services\AbstractService;
-use SimpleXMLElement;
-
-/*
-
-
-
- // Transmission data
- // Transmitter ID
- IT //Country code
- 01234567890 //Taxpayer code
-
- 00001 // Transmission progress
- FPR12 // Transmission format
- ABCDE1 // Receiver code
-
- //Seller/Provider
-
-
- //Buyer/Recipient
-
-
-
-
- //General data
- // Document general data
- TD01 // Document type
- EUR // Currency
- 2023-04-21 // Date
- 1 // Number
-
-
-
-
- //Goods and services data
-
-
- //Payment data
-
-
-
-
-*/
+use CleverIt\UBL\Invoice\FatturaPA\common\Sede;
+use CleverIt\UBL\Invoice\FatturaPA\common\Anagrafica;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiGenerali;
+use CleverIt\UBL\Invoice\FatturaPA\common\IdFiscaleIVA;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiContratto;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiPagamento;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiRicezione;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiRiepilogo;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiTrasporto;
+use CleverIt\UBL\Invoice\FatturaPA\common\RegimeFiscale;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiAnagrafici;
+use CleverIt\UBL\Invoice\FatturaPA\common\DettaglioLinee;
+use CleverIt\UBL\Invoice\FatturaPA\common\IdTrasmittente;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiBeniServizi;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiTrasmissione;
+use CleverIt\UBL\Invoice\FatturaPA\common\CedentePrestatore;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiOrdineAcquisto;
+use CleverIt\UBL\Invoice\FatturaPA\common\DettaglioPagamento;
+use CleverIt\UBL\Invoice\FatturaPA\common\FatturaElettronica;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiAnagraficiVettore;
+use CleverIt\UBL\Invoice\FatturaPA\common\DatiGeneraliDocumento;
+use CleverIt\UBL\Invoice\FatturaPA\common\CessionarioCommittente;
+use CleverIt\UBL\Invoice\FatturaPA\common\FatturaElettronicaBody;
+use CleverIt\UBL\Invoice\FatturaPA\common\FatturaElettronicaHeader;
class FatturaPA extends AbstractService
{
@@ -64,100 +47,294 @@ class FatturaPA extends AbstractService
//UFF001
/**
- * File Types
- *
- * EI01 => FILE VUOTO
- * EI02 => SERVIZIO NON DISPONIBILE
- * EI03 => UTENTE NON ABILITATO
+ * File Types
+ *
+ * EI01 => FILE VUOTO
+ * EI02 => SERVIZIO NON DISPONIBILE
+ * EI03 => UTENTE NON ABILITATO
+ */
+
+ /** Regime Fiscale
+ *
+ * //@todo - custom ui settings
+ *
+ * private array $types = [
+ * "RF01" => "Regime ordinario",
+ * "RF02" => "Regime dei contribuenti minimi (art. 1,c.96-117, L. 244/2007)",
+ * "RF04" => "Agricoltura e attività connesse e pesca (artt. 34 e 34-bis, D.P.R. 633/1972)",
+ * "RF05" => "Vendita sali e tabacchi (art. 74, c.1, D.P.R. 633/1972)",
+ * "RF06" => "Commercio dei fiammiferi (art. 74, c.1, D.P.R. 633/1972)",
+ * "RF07" => "Editoria (art. 74, c.1, D.P.R. 633/1972)",
+ * "RF08" => "Gestione di servizi di telefonia pubblica (art. 74, c.1, D.P.R. 633/1972)" ,
+ * "RF09" => "Rivendita di documenti di trasporto pubblico e di sosta (art. 74, c.1, D.P.R. 633/1972)" ,
+ * "RF10" => "Intrattenimenti, giochi e altre attività di cui alla tariffa allegata al D.P.R. 640/72 (art. 74, c.6, D.P.R. 633/1972)" ,
+ * "RF11" => "Agenzie di viaggi e turismo (art. 74-ter, D.P.R. 633/1972)" ,
+ * "RF12" => "Agriturismo (art. 5, c.2, L. 413/1991)" ,
+ * "RF13" => "Vendite a domicilio (art. 25-bis, c.6, D.P.R. 600/1973)" ,
+ * "RF14" => "Rivendita di beni usati, di oggetti d’arte, d’antiquariato o da collezione (art. 36, D.L. 41/1995)" ,
+ * "RF15" => "Agenzie di vendite all’asta di oggetti d’arte, antiquariato o da collezione (art. 40-bis, D.L. 41/1995)" ,
+ * "RF16" => "IVA per cassa P.A. (art. 6, c.5, D.P.R. 633/1972)" ,
+ * "RF17" => "IVA per cassa (art. 32-bis, D.L. 83/2012)" ,
+ * "RF19" => "Regime forfettario" ,
+ * "RF18" => "Altro"
+ * ];
+ */
+
+ /** Formato Trasmissione
+ * FPA12: This is the format used for FatturaPA version 1.2.
+ * FPR12: This format is used for FatturaPA version 1.2 in cases where the invoice is destined for the Public Administration.
+ * FPA1.2: This format is used for FatturaPA version 1.2.
+ * FPR1.2: This format is used for FatturaPA version 1.2 in cases where the invoice is destined for the Public Administration.
+ * FPR10: This format is used for FatturaPA version 1.0 in cases where the invoice is destined for the Public Administration.
+ * FPA10: This format is used for FatturaPA version 1.0.
+ */
+
+ /** Tipo Documento
+ *
+ * TD01 Fattura
+ * TD02 Acconto/Anticipo su fattura
+ * TD03 Acconto/Anticipo su parcella
+ * TD04 Nota di Credito
+ * TD05 Nota di Debito
+ * TD06 Parcella
+ * TD16 Integrazione fattura reverse charge interno
+ * TD17 Integrazione/autofattura per acquisto servizi dall’estero
+ * TD18 Integrazione per acquisto di beni intracomunitari
+ * TD19 Integrazione/autofattura per acquisto di beni ex art.17 c.2 DPR 633/72
+ * TD20 Autofattura per regolarizzazione e integrazione delle
+ * fatture (ex art.6 c.8 e 9-bis d.lgs. 471/97 o art.46 c.5 D.L. 331/93)
+ * TD21 Autofattura per splafonamento
+ * TD22 Estrazione beni da Deposito IVA
+ * TD23 Estrazione beni da Deposito IVA con versamento dell’IVA
+ * TD24 Fattura differita di cui all’art.21, comma 4, lett. a)
+ * TD25 Fattura differita di cui all’art.21, comma 4, terzo periodo lett. b)
+ * TD26 Cessione di beni ammortizzabili e per passaggi interni (ex art.36 DPR 633/72)
+ * TD27 Fattura per autoconsumo o per cessioni gratuite senza rivalsa
+ */
+
+ /** Esigibilità IVA
+ * "I" (Immediata): VAT is due and payable immediately upon issuance of the invoice.
+ * "D" (Differita): VAT is due at a later date, typically when payment for the goods or services is received.
+ * "S" (Soggetta): VAT is due under the reverse charge mechanism, where the recipient of the goods or services is responsible for accounting for the VAT.
*/
+ /**
+ * MP01 contanti //cash
+ * MP02 assegno //check
+ * MP03 assegno circolare //cashier's check
+ * MP04 contanti presso Tesoreria //cash at treasury
+ * MP05 bonifico //bank transfer
+ * MP06 vaglia cambiario //bill of exchange
+ * MP07 bollettino bancario //bank bulletin
+ * MP08 carta di pagamento //payment card
+ * MP09 RID //RID
+ * MP10 RID utenze //RID utilities
+ * MP11 RID veloce //fast RID
+ * MP12 Riba //Riba
+ * MP13 MAV //MAV
+ * MP14 quietanza erario stato //state treasury receipt
+ * MP15 giroconto su conti di contabilità speciale //transfer to special accounting accounts
+ * MP16 domiciliazione bancaria //bank domiciliation
+ * MP17 domiciliazione postale //postal domiciliation
+ * MP18 bollettino di c/c postale //postal giro account
+ * MP19 SEPA Direct Debit //SEPA Direct Debit
+ * MP20 SEPA Direct Debit CORE //SEPA Direct Debit CORE
+ * MP21 SEPA Direct Debit B2B //SEPA Direct Debit B2B
+ * MP22 Trattenuta su somme già riscosse //Withholding on sums already collected
+ * MP23 PagoPA //PagoPA
+ */
+
/**
+ * TP01 pagamento a rate //payment in installments
+ * TP02 pagamento completo //full payment
+ * TP03 anticipo //advance
+ */
+
+ /**
* @param Invoice $invoice
*/
public function __construct(public Invoice $invoice)
{
- $this->xml = new SimpleXMLElement(' ');
}
public function run()
{
- return $this->addHeader()->getXml();
- }
- public function addHeader()
+ $fatturaHeader = new FatturaElettronicaHeader();
+
+ $datiTrasmissione = new DatiTrasmissione();
+ $datiTrasmissione->setFormatoTrasmissione("FPR12");
+ $datiTrasmissione->setCodiceDestinatario($this->invoice->client->routing_id);
+ $datiTrasmissione->setProgressivoInvio($this->invoice->number);
+
+ $idPaese = new IdTrasmittente();
+ $idPaese->setIdPaese($this->invoice->company->country()->iso_3166_2);
+ $idPaese->setIdCodice($this->invoice->company->settings->vat_number);
+
+ $datiTrasmissione->setIdTrasmittente($idPaese);
+ $fatturaHeader->setDatiTrasmissione($datiTrasmissione);
+
+ $cedentePrestatore = new CedentePrestatore();
+ $datiAnagrafici = new DatiAnagrafici();
+ $idFiscaleIVA = new IdFiscaleIVA(IdPaese: $this->invoice->company->country()->iso_3166_2, IdCodice: $this->invoice->company->settings->vat_number);
+ $datiAnagrafici->setIdFiscaleIVA($idFiscaleIVA);
+
+ $anagrafica = new Anagrafica(Denominazione: $this->invoice->company->present()->name());
+ $datiAnagrafici->setAnagrafica($anagrafica);
+ $datiAnagrafici->setRegimeFiscale("RF01"); //swap this out with the custom settings.
+ $cedentePrestatore->setDatiAnagrafici($datiAnagrafici);
+
+ $sede = new Sede(Indirizzo: $this->invoice->company->settings->address1,
+ CAP: $this->invoice->company->settings->postal_code,
+ Comune: $this->invoice->company->settings->city,
+ Provincia: $this->invoice->company->settings->state);
+
+ $cedentePrestatore->setSede($sede);
+ $fatturaHeader->setCedentePrestatore($cedentePrestatore);
+
+ //client details
+ $datiAnagrafici = new DatiAnagrafici();
+
+//for some reason the validation does not like codice fiscale for the client?
+//perhaps it may need IdFiscaleIVA?
+// $datiAnagrafici->setCodiceFiscale("09876543210");
+
+ $anagrafica = new Anagrafica(Denominazione: $this->invoice->client->present()->name());
+ $datiAnagrafici->setAnagrafica($anagrafica);
+
+ $sede = new Sede(Indirizzo: $this->invoice->client->address1,
+ CAP: $this->invoice->client->postal_code,
+ Comune: $this->invoice->client->city,
+ Provincia: $this->invoice->client->state);
+
+ $cessionarioCommittente = new CessionarioCommittente($datiAnagrafici, $sede);
+
+ $fatturaHeader->setCessionarioCommittente($cessionarioCommittente);
+
+////////////////// Fattura Body //////////////////
+$fatturaBody = new FatturaElettronicaBody();
+
+$datiGeneraliDocument = new DatiGeneraliDocumento();
+$datiGeneraliDocument->setTipoDocumento("TD01")
+ ->setDivisa($this->invoice->client->currency()->code)
+ ->setData($this->invoice->date)
+ ->setNumero($this->invoice->number)
+ ->setCausale($this->invoice->public_notes ?? ''); //unsure...
+
+/**PO information
+$datiOrdineAcquisto = new DatiOrdineAcquisto();
+$datiOrdineAcquisto->setRiferimentoNumeroLinea(1)
+ ->setIdDocumento($this->invoice->po_number)
+ ->setNumItem(1)
+ ->setCodiceCIG("123abc") // special invoice props
+ ->setCodiceCUP("456def"); // special invoice props
+*/
+
+/**Contract data
+$datiContratto = new DatiContratto(
+ RiferimentoNumeroLinea: 1,
+ IdDocumento: 6685,
+ Data: "2024-01-01",
+ NumItem: 5,
+ CodiceCUP: "123abc",
+ CodiceCIG: "456def",
+);
+*/
+
+/**Shipping/Delivery Data
+$datiRicezione = new DatiRicezione(
+ RiferimentoNumeroLinea: 1,
+ IdDocumento: 6685,
+ Data: "2024-01-01",
+ NumItem: 5,
+ CodiceCUP: "123abc",
+ CodiceCIG: "456def",
+);
+ */
+
+ /**Shippers details
+$datiAnagraficiVettore = new DatiAnagraficiVettore();
+$idFiscaleIVA = new IdFiscaleIVA("IT", "24681012141");
+$anagrafica = new Anagrafica("Trasport SPA");
+
+$datiAnagraficiVettore->setIdFiscaleIVA($idFiscaleIVA)
+ ->setAnagrafica($anagrafica);
+
+$datiTrasporto = new DatiTrasporto();
+$datiTrasporto->setDatiAnagraficiVettore($datiAnagraficiVettore)
+ ->setDataOraConsegna("2017-01-10T16:46:12.000+02:00");
+*/
+
+$datiGenerali = new DatiGenerali();
+$datiGenerali->setDatiGeneraliDocumento($datiGeneraliDocument);
+ // ->setDatiOrdineAcquisto($datiOrdineAcquisto)
+ // ->setDatiContratto($datiContratto)
+ // ->setDatiRicezione($datiRicezione);
+
+
+ $datiBeniServizi = new DatiBeniServizi();
+ $tax_rate_level = 0;
+ //line items
+ foreach ($this->invoice->line_items as $key => $item)
{
- $this->xml->addChild('FatturaElettronicaHeader');
- return $this;
- }
- public function addTrasmissioneData($idPaese, $idCodice, $progressivoInvio, $formatoTrasmissione, $codiceDestinatario)
- {
- $datiTrasmissione = $this->xml->FatturaElettronicaHeader->addChild('DatiTrasmissione');
- $idTrasmittente = $datiTrasmissione->addChild('IdTrasmittente');
- $idTrasmittente->addChild('IdPaese', $idPaese);
- $idTrasmittente->addChild('IdCodice', $idCodice);
- $datiTrasmissione->addChild('ProgressivoInvio', $progressivoInvio);
- $datiTrasmissione->addChild('FormatoTrasmissione', $formatoTrasmissione);
- $datiTrasmissione->addChild('CodiceDestinatario', $codiceDestinatario);
- return $this;
- }
+ $numero = $key+1;
+ $dettaglioLinee = new DettaglioLinee(
+ NumeroLinea: "{$numero}",
+ Descrizione: $item->notes ?? 'Descrizione',
+ Quantita: sprintf('%0.2f', $item->quantity),
+ PrezzoUnitario: sprintf('%0.2f', $item->cost),
+ PrezzoTotale: sprintf('%0.2f', $item->line_total),
+ AliquotaIVA: sprintf('%0.2f', $item->tax_rate1),
+ );
- public function addCedentePrestatore($data)
- {
- // Add CedentePrestatore data
- }
+ $datiBeniServizi->setDettaglioLinee($dettaglioLinee);
- public function addCessionarioCommittente($data)
- {
- // Add CessionarioCommittente data
- }
-
- public function addBody()
- {
- $this->xml->addChild('FatturaElettronicaBody');
- return $this;
- }
-
- public function addDatiGenerali($data)
- {
- // Add DatiGenerali data
- }
-
- public function addLineItem($data)
- {
- if (!isset($this->xml->FatturaElettronicaBody->DatiBeniServizi)) {
- $this->xml->FatturaElettronicaBody->addChild('DatiBeniServizi');
- }
- $lineItem = $this->xml->FatturaElettronicaBody->DatiBeniServizi->addChild('DettaglioLinee');
- $lineItem->addChild('NumeroLinea', $data['NumeroLinea']);
- $lineItem->addChild('Descrizione', $data['notes']);
- $lineItem->addChild('Quantita', $data['quantity']);
- $lineItem->addChild('PrezzoUnitario', $data['cost']);
- $lineItem->addChild('PrezzoTotale', $data['line_total']);
- $lineItem->addChild('AliquotaIVA', $data['tax_rate1']);
-
- if (isset($data['UnitaMisura'])) {
- $lineItem->addChild('UnitaMisura', $data['UnitaMisura']);
+ if ($item->tax_rate1 > $tax_rate_level) {
+ $tax_rate_level = sprintf('%0.2f', $item->tax_rate1);
}
- return $this;
+ }
+
+ //totals
+ if($this->invoice->tax_rate1 > $tax_rate_level) {
+ $tax_rate_level = sprintf('%0.2f', $this->invoice->tax_rate1);
}
- public function addDatiPagamento($data)
- {
- // Add DatiPagamento data
+ $calc = $this->invoice->calc();
+ $subtotal = sprintf('%0.2f', $calc->getSubTotal());
+ $taxes = sprintf('%0.2f', $calc->getTotalTaxes());
+
+ $datiRiepilogo = new DatiRiepilogo(
+ AliquotaIVA: "{$tax_rate_level}",
+ ImponibileImporto: "{$subtotal}",
+ Imposta: "{$taxes}",
+ EsigibilitaIVA: "I",
+ );
+
+ $datiBeniServizi->setDatiRiepilogo($datiRiepilogo);
+
+ $dettalioPagament = new DettaglioPagamento(
+ ModalitaPagamento: "MP01", //String
+ DataScadenzaPagamento: (string) $this->invoice->due_date ?? $this->invoice->date,
+ ImportoPagamento: (string) sprintf('%0.2f', $this->invoice->balance),
+ );
+
+ $datiPagamento = new DatiPagamento();
+ $datiPagamento->setCondizioniPagamento("TP02")
+ ->setDettaglioPagamento($dettalioPagament);
+
+ $fatturaBody->setDatiGenerali($datiGenerali)
+ ->setDatiBeniServizi($datiBeniServizi)
+ ->setDatiPagamento($datiPagamento);
+
+ ////////////////////////////////////
+ $xmlService = new Service();
+
+ $xml = $xmlService->write('p:FatturaElettronica', new FatturaElettronica($fatturaHeader, $fatturaBody));
+
+ return $xml;
+
}
-
- public function getXml()
- {
- return $this->xml->asXML();
- }
-}
-
-// $fattura = new FatturaPA();
-// $fattura
-// ->addHeader()
-// ->addTrasmissioneData('IT', '01234567890', '00001', 'FPR12', 'ABCDE1');
-
-// echo $fattura->getXml();
+}
\ No newline at end of file
diff --git a/app/Services/Ledger/LedgerService.php b/app/Services/Ledger/LedgerService.php
index 526bbf40726b..25cc231d823f 100644
--- a/app/Services/Ledger/LedgerService.php
+++ b/app/Services/Ledger/LedgerService.php
@@ -48,32 +48,10 @@ class LedgerService
return $this;
}
- // $timestamp = \Carbon\Carbon::createFromTimestamp($this->entity->updated_at)->format('ymdhhmmssSS');
- // $hash = sha1($adjustment.$notes.$this->entity->status_id.$this->entity->client_id.$this->entity->amount.$this->entity->balance.$this->entity->company_id.Activity::UPDATE_INVOICE);
- // $hash = sha1($hash);
- // $hash = sha1("{$this->entity->amount}.{$this->entity->balance}");
- // $hash = "{$adjustment}.{$this->entity->amount}.{$this->entity->balance}";
-
- // $exists = CompanyLedger::query()
- // ->where('client_id', $this->entity->client_id)
- // ->where('company_id', $this->entity->company_id)
- // ->where('activity_id', Activity::UPDATE_INVOICE)
- // ->where('adjustment', $adjustment)
- // ->where('hash', $hash)
- // ->where('notes', $notes)
- // ->where('created_at', '>=', now()->subSeconds(1))
- // ->exists();
-
- // if($exists) {
- // nlog("Collision {$adjustment} {$notes}");
- // return $this;
- // }
-
$company_ledger = CompanyLedgerFactory::create($this->entity->company_id, $this->entity->user_id);
$company_ledger->client_id = $this->entity->client_id;
$company_ledger->adjustment = $adjustment;
$company_ledger->notes = $notes;
- // $company_ledger->hash = $hash;
$company_ledger->activity_id = Activity::UPDATE_INVOICE;
$company_ledger->save();
diff --git a/composer.lock b/composer.lock
index ec06c31f9cbb..3d889d48e247 100644
--- a/composer.lock
+++ b/composer.lock
@@ -959,16 +959,16 @@
},
{
"name": "apimatic/core",
- "version": "0.3.6",
+ "version": "0.3.7",
"source": {
"type": "git",
"url": "https://github.com/apimatic/core-lib-php.git",
- "reference": "2236fa751f265397d97ab2cb8a5c72641cf9480f"
+ "reference": "50fafa9c463ef8440f4b8841a3ab9913be4641ee"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/apimatic/core-lib-php/zipball/2236fa751f265397d97ab2cb8a5c72641cf9480f",
- "reference": "2236fa751f265397d97ab2cb8a5c72641cf9480f",
+ "url": "https://api.github.com/repos/apimatic/core-lib-php/zipball/50fafa9c463ef8440f4b8841a3ab9913be4641ee",
+ "reference": "50fafa9c463ef8440f4b8841a3ab9913be4641ee",
"shasum": ""
},
"require": {
@@ -1006,9 +1006,9 @@
],
"support": {
"issues": "https://github.com/apimatic/core-lib-php/issues",
- "source": "https://github.com/apimatic/core-lib-php/tree/0.3.6"
+ "source": "https://github.com/apimatic/core-lib-php/tree/0.3.7"
},
- "time": "2024-02-26T04:16:28+00:00"
+ "time": "2024-04-01T10:19:31+00:00"
},
{
"name": "apimatic/core-interfaces",
@@ -1384,16 +1384,16 @@
},
{
"name": "aws/aws-sdk-php",
- "version": "3.301.8",
+ "version": "3.304.1",
"source": {
"type": "git",
"url": "https://github.com/aws/aws-sdk-php.git",
- "reference": "a6ad44dd7bc4ace137d583c91439fa9c16331b01"
+ "reference": "6dac9b3257873a807ac73f6dc4418bdc49a5d9db"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/a6ad44dd7bc4ace137d583c91439fa9c16331b01",
- "reference": "a6ad44dd7bc4ace137d583c91439fa9c16331b01",
+ "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/6dac9b3257873a807ac73f6dc4418bdc49a5d9db",
+ "reference": "6dac9b3257873a807ac73f6dc4418bdc49a5d9db",
"shasum": ""
},
"require": {
@@ -1473,9 +1473,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.301.8"
+ "source": "https://github.com/aws/aws-sdk-php/tree/3.304.1"
},
- "time": "2024-03-26T18:14:03+00:00"
+ "time": "2024-04-09T19:25:27+00:00"
},
{
"name": "bacon/bacon-qr-code",
@@ -3542,16 +3542,16 @@
},
{
"name": "google/apiclient-services",
- "version": "v0.341.0",
+ "version": "v0.343.0",
"source": {
"type": "git",
"url": "https://github.com/googleapis/google-api-php-client-services.git",
- "reference": "50dad3cd4a3902bd2df0d96e7dc09cdaa2ba79b9"
+ "reference": "8cb869e5c413b0e9d4aeada3d83df5e2ce388154"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/50dad3cd4a3902bd2df0d96e7dc09cdaa2ba79b9",
- "reference": "50dad3cd4a3902bd2df0d96e7dc09cdaa2ba79b9",
+ "url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/8cb869e5c413b0e9d4aeada3d83df5e2ce388154",
+ "reference": "8cb869e5c413b0e9d4aeada3d83df5e2ce388154",
"shasum": ""
},
"require": {
@@ -3580,22 +3580,22 @@
],
"support": {
"issues": "https://github.com/googleapis/google-api-php-client-services/issues",
- "source": "https://github.com/googleapis/google-api-php-client-services/tree/v0.341.0"
+ "source": "https://github.com/googleapis/google-api-php-client-services/tree/v0.343.0"
},
- "time": "2024-03-24T01:08:16+00:00"
+ "time": "2024-04-06T00:58:16+00:00"
},
{
"name": "google/auth",
- "version": "v1.37.0",
+ "version": "v1.37.1",
"source": {
"type": "git",
"url": "https://github.com/googleapis/google-auth-library-php.git",
- "reference": "5f16f67375b6f202b857183d7ef4e076acd7d4aa"
+ "reference": "1a7de77b72e6ac60dccf0e6478c4c1005bb0ff46"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/googleapis/google-auth-library-php/zipball/5f16f67375b6f202b857183d7ef4e076acd7d4aa",
- "reference": "5f16f67375b6f202b857183d7ef4e076acd7d4aa",
+ "url": "https://api.github.com/repos/googleapis/google-auth-library-php/zipball/1a7de77b72e6ac60dccf0e6478c4c1005bb0ff46",
+ "reference": "1a7de77b72e6ac60dccf0e6478c4c1005bb0ff46",
"shasum": ""
},
"require": {
@@ -3638,9 +3638,9 @@
"support": {
"docs": "https://googleapis.github.io/google-auth-library-php/main/",
"issues": "https://github.com/googleapis/google-auth-library-php/issues",
- "source": "https://github.com/googleapis/google-auth-library-php/tree/v1.37.0"
+ "source": "https://github.com/googleapis/google-auth-library-php/tree/v1.37.1"
},
- "time": "2024-02-21T17:03:52+00:00"
+ "time": "2024-04-03T18:41:12+00:00"
},
{
"name": "graham-campbell/result-type",
@@ -4526,16 +4526,16 @@
},
{
"name": "horstoeko/zugferd",
- "version": "v1.0.37",
+ "version": "v1.0.38",
"source": {
"type": "git",
"url": "https://github.com/horstoeko/zugferd.git",
- "reference": "05f58ad4dbcc23d767fceb15f46b46097ffd43f1"
+ "reference": "47730d3d01c1229f22d75193d68bc43ea16bcdb7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/horstoeko/zugferd/zipball/05f58ad4dbcc23d767fceb15f46b46097ffd43f1",
- "reference": "05f58ad4dbcc23d767fceb15f46b46097ffd43f1",
+ "url": "https://api.github.com/repos/horstoeko/zugferd/zipball/47730d3d01c1229f22d75193d68bc43ea16bcdb7",
+ "reference": "47730d3d01c1229f22d75193d68bc43ea16bcdb7",
"shasum": ""
},
"require": {
@@ -4594,9 +4594,9 @@
],
"support": {
"issues": "https://github.com/horstoeko/zugferd/issues",
- "source": "https://github.com/horstoeko/zugferd/tree/v1.0.37"
+ "source": "https://github.com/horstoeko/zugferd/tree/v1.0.38"
},
- "time": "2024-03-24T11:31:03+00:00"
+ "time": "2024-04-05T03:38:38+00:00"
},
{
"name": "http-interop/http-factory-guzzle",
@@ -4702,33 +4702,33 @@
},
{
"name": "imdhemy/appstore-iap",
- "version": "1.6.0",
+ "version": "1.6.1",
"source": {
"type": "git",
"url": "https://github.com/imdhemy/appstore-iap.git",
- "reference": "ccf75f2d9fd628ebabfc7e9ee9a6754259769c1b"
+ "reference": "025d176a097b864f306dad7dc3506598aa6e5990"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/imdhemy/appstore-iap/zipball/ccf75f2d9fd628ebabfc7e9ee9a6754259769c1b",
- "reference": "ccf75f2d9fd628ebabfc7e9ee9a6754259769c1b",
+ "url": "https://api.github.com/repos/imdhemy/appstore-iap/zipball/025d176a097b864f306dad7dc3506598aa6e5990",
+ "reference": "025d176a097b864f306dad7dc3506598aa6e5990",
"shasum": ""
},
"require": {
"ext-json": "*",
"ext-openssl": "*",
"ext-sodium": "*",
- "guzzlehttp/guzzle": "^6.5|^7.5",
+ "guzzlehttp/guzzle": "^7.6.0",
"lcobucci/jwt": "^4.3",
- "nesbot/carbon": "^2.66",
+ "nesbot/carbon": "^2.66|^3.1",
"php": ">=8.0"
},
"require-dev": {
- "fakerphp/faker": "^1.21",
+ "fakerphp/faker": "^1.22",
"friendsofphp/php-cs-fixer": "^3.16",
"phpunit/phpunit": "^9.6",
"roave/security-advisories": "dev-latest",
- "vimeo/psalm": "^5.9"
+ "vimeo/psalm": "^5.11"
},
"type": "library",
"autoload": {
@@ -4749,9 +4749,9 @@
"description": "PHP Appstore In-App Purchase implementation",
"support": {
"issues": "https://github.com/imdhemy/appstore-iap/issues",
- "source": "https://github.com/imdhemy/appstore-iap/tree/1.6.0"
+ "source": "https://github.com/imdhemy/appstore-iap/tree/1.6.1"
},
- "time": "2023-04-08T10:10:00+00:00"
+ "time": "2024-03-27T09:17:17+00:00"
},
{
"name": "imdhemy/google-play-billing",
@@ -5029,25 +5029,24 @@
},
{
"name": "invoiceninja/ubl_invoice",
- "version": "v2.0.3",
+ "version": "v2.2.2",
"source": {
"type": "git",
"url": "https://github.com/invoiceninja/UBL_invoice.git",
- "reference": "ed10f4f5804e6bcce15d0491b5d35c10ea7cd9f1"
+ "reference": "7defd7e60363608df22bf3bc9caf749a29cde22c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/invoiceninja/UBL_invoice/zipball/ed10f4f5804e6bcce15d0491b5d35c10ea7cd9f1",
- "reference": "ed10f4f5804e6bcce15d0491b5d35c10ea7cd9f1",
+ "url": "https://api.github.com/repos/invoiceninja/UBL_invoice/zipball/7defd7e60363608df22bf3bc9caf749a29cde22c",
+ "reference": "7defd7e60363608df22bf3bc9caf749a29cde22c",
"shasum": ""
},
"require": {
- "goetas-webservices/xsd2php-runtime": "^0.2.2",
"sabre/xml": "^4.0"
},
"require-dev": {
- "goetas-webservices/xsd2php": "^0.3",
"greenter/ubl-validator": "^2",
+ "phpstan/phpstan": "^1.10",
"phpunit/phpunit": "^10"
},
"type": "library",
@@ -5087,9 +5086,9 @@
"xml invoice"
],
"support": {
- "source": "https://github.com/invoiceninja/UBL_invoice/tree/v2.0.3"
+ "source": "https://github.com/invoiceninja/UBL_invoice/tree/v2.2.2"
},
- "time": "2024-02-17T06:34:35+00:00"
+ "time": "2024-04-10T11:53:16+00:00"
},
{
"name": "jean85/pretty-package-versions",
@@ -5527,16 +5526,16 @@
},
{
"name": "laravel/framework",
- "version": "v10.48.4",
+ "version": "v10.48.5",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
- "reference": "7e0701bf59cb76a51f7c1f7bea51c0c0c29c0b72"
+ "reference": "a8b682e1371338848637f638aedaef2f7607d36f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/framework/zipball/7e0701bf59cb76a51f7c1f7bea51c0c0c29c0b72",
- "reference": "7e0701bf59cb76a51f7c1f7bea51c0c0c29c0b72",
+ "url": "https://api.github.com/repos/laravel/framework/zipball/a8b682e1371338848637f638aedaef2f7607d36f",
+ "reference": "a8b682e1371338848637f638aedaef2f7607d36f",
"shasum": ""
},
"require": {
@@ -5730,20 +5729,20 @@
"issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework"
},
- "time": "2024-03-21T13:36:36+00:00"
+ "time": "2024-04-09T14:48:50+00:00"
},
{
"name": "laravel/prompts",
- "version": "v0.1.17",
+ "version": "v0.1.18",
"source": {
"type": "git",
"url": "https://github.com/laravel/prompts.git",
- "reference": "8ee9f87f7f9eadcbe21e9e72cd4176b2f06cd5b5"
+ "reference": "3b5e6b03f1f1175574b5a32331d99c9819da9848"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/prompts/zipball/8ee9f87f7f9eadcbe21e9e72cd4176b2f06cd5b5",
- "reference": "8ee9f87f7f9eadcbe21e9e72cd4176b2f06cd5b5",
+ "url": "https://api.github.com/repos/laravel/prompts/zipball/3b5e6b03f1f1175574b5a32331d99c9819da9848",
+ "reference": "3b5e6b03f1f1175574b5a32331d99c9819da9848",
"shasum": ""
},
"require": {
@@ -5785,9 +5784,9 @@
],
"support": {
"issues": "https://github.com/laravel/prompts/issues",
- "source": "https://github.com/laravel/prompts/tree/v0.1.17"
+ "source": "https://github.com/laravel/prompts/tree/v0.1.18"
},
- "time": "2024-03-13T16:05:43+00:00"
+ "time": "2024-04-04T17:41:50+00:00"
},
{
"name": "laravel/serializable-closure",
@@ -6526,16 +6525,16 @@
},
{
"name": "league/flysystem",
- "version": "3.26.0",
+ "version": "3.27.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/flysystem.git",
- "reference": "072735c56cc0da00e10716dd90d5a7f7b40b36be"
+ "reference": "4729745b1ab737908c7d055148c9a6b3e959832f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/072735c56cc0da00e10716dd90d5a7f7b40b36be",
- "reference": "072735c56cc0da00e10716dd90d5a7f7b40b36be",
+ "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/4729745b1ab737908c7d055148c9a6b3e959832f",
+ "reference": "4729745b1ab737908c7d055148c9a6b3e959832f",
"shasum": ""
},
"require": {
@@ -6600,7 +6599,7 @@
],
"support": {
"issues": "https://github.com/thephpleague/flysystem/issues",
- "source": "https://github.com/thephpleague/flysystem/tree/3.26.0"
+ "source": "https://github.com/thephpleague/flysystem/tree/3.27.0"
},
"funding": [
{
@@ -6612,20 +6611,20 @@
"type": "github"
}
],
- "time": "2024-03-25T11:49:53+00:00"
+ "time": "2024-04-07T19:17:50+00:00"
},
{
"name": "league/flysystem-aws-s3-v3",
- "version": "3.26.0",
+ "version": "3.27.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/flysystem-aws-s3-v3.git",
- "reference": "885d0a758c71ae3cd6c503544573a1fdb8dc754f"
+ "reference": "3e6ce2f972f1470db779f04d29c289dcd2c32837"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/885d0a758c71ae3cd6c503544573a1fdb8dc754f",
- "reference": "885d0a758c71ae3cd6c503544573a1fdb8dc754f",
+ "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/3e6ce2f972f1470db779f04d29c289dcd2c32837",
+ "reference": "3e6ce2f972f1470db779f04d29c289dcd2c32837",
"shasum": ""
},
"require": {
@@ -6665,7 +6664,7 @@
"storage"
],
"support": {
- "source": "https://github.com/thephpleague/flysystem-aws-s3-v3/tree/3.26.0"
+ "source": "https://github.com/thephpleague/flysystem-aws-s3-v3/tree/3.27.0"
},
"funding": [
{
@@ -6677,7 +6676,7 @@
"type": "github"
}
],
- "time": "2024-03-24T21:11:18+00:00"
+ "time": "2024-04-07T19:16:54+00:00"
},
{
"name": "league/flysystem-local",
@@ -7179,16 +7178,16 @@
},
{
"name": "livewire/livewire",
- "version": "v3.4.9",
+ "version": "v3.4.10",
"source": {
"type": "git",
"url": "https://github.com/livewire/livewire.git",
- "reference": "c65b3f0798ab2c9338213ede3588c3cdf4e6fcc0"
+ "reference": "6f90e2d7f8e80a97a7406c22a0fbc61ca1256ed9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/livewire/livewire/zipball/c65b3f0798ab2c9338213ede3588c3cdf4e6fcc0",
- "reference": "c65b3f0798ab2c9338213ede3588c3cdf4e6fcc0",
+ "url": "https://api.github.com/repos/livewire/livewire/zipball/6f90e2d7f8e80a97a7406c22a0fbc61ca1256ed9",
+ "reference": "6f90e2d7f8e80a97a7406c22a0fbc61ca1256ed9",
"shasum": ""
},
"require": {
@@ -7198,6 +7197,7 @@
"illuminate/validation": "^10.0|^11.0",
"league/mime-type-detection": "^1.9",
"php": "^8.1",
+ "symfony/console": "^6.0|^7.0",
"symfony/http-kernel": "^6.2|^7.0"
},
"require-dev": {
@@ -7205,8 +7205,8 @@
"laravel/framework": "^10.0|^11.0",
"laravel/prompts": "^0.1.6",
"mockery/mockery": "^1.3.1",
- "orchestra/testbench": "8.20.0|^9.0",
- "orchestra/testbench-dusk": "8.20.0|^9.0",
+ "orchestra/testbench": "^8.21.0|^9.0",
+ "orchestra/testbench-dusk": "^8.24|^9.1",
"phpunit/phpunit": "^10.4",
"psy/psysh": "^0.11.22|^0.12"
},
@@ -7242,7 +7242,7 @@
"description": "A front-end framework for Laravel.",
"support": {
"issues": "https://github.com/livewire/livewire/issues",
- "source": "https://github.com/livewire/livewire/tree/v3.4.9"
+ "source": "https://github.com/livewire/livewire/tree/v3.4.10"
},
"funding": [
{
@@ -7250,7 +7250,7 @@
"type": "github"
}
],
- "time": "2024-03-14T14:03:32+00:00"
+ "time": "2024-04-02T14:22:50+00:00"
},
{
"name": "maennchen/zipstream-php",
@@ -8806,16 +8806,16 @@
},
{
"name": "paragonie/sodium_compat",
- "version": "v1.20.0",
+ "version": "v1.20.1",
"source": {
"type": "git",
"url": "https://github.com/paragonie/sodium_compat.git",
- "reference": "e592a3e06d1fa0d43988c7c7d9948ca836f644b6"
+ "reference": "1840b98d228bdad83869b191d7e51f9bb6624d8d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/paragonie/sodium_compat/zipball/e592a3e06d1fa0d43988c7c7d9948ca836f644b6",
- "reference": "e592a3e06d1fa0d43988c7c7d9948ca836f644b6",
+ "url": "https://api.github.com/repos/paragonie/sodium_compat/zipball/1840b98d228bdad83869b191d7e51f9bb6624d8d",
+ "reference": "1840b98d228bdad83869b191d7e51f9bb6624d8d",
"shasum": ""
},
"require": {
@@ -8886,9 +8886,9 @@
],
"support": {
"issues": "https://github.com/paragonie/sodium_compat/issues",
- "source": "https://github.com/paragonie/sodium_compat/tree/v1.20.0"
+ "source": "https://github.com/paragonie/sodium_compat/tree/v1.20.1"
},
- "time": "2023-04-30T00:54:53+00:00"
+ "time": "2024-04-05T21:00:10+00:00"
},
{
"name": "payfast/payfast-php-sdk",
@@ -9015,16 +9015,16 @@
},
{
"name": "php-http/discovery",
- "version": "1.19.2",
+ "version": "1.19.4",
"source": {
"type": "git",
"url": "https://github.com/php-http/discovery.git",
- "reference": "61e1a1eb69c92741f5896d9e05fb8e9d7e8bb0cb"
+ "reference": "0700efda8d7526335132360167315fdab3aeb599"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-http/discovery/zipball/61e1a1eb69c92741f5896d9e05fb8e9d7e8bb0cb",
- "reference": "61e1a1eb69c92741f5896d9e05fb8e9d7e8bb0cb",
+ "url": "https://api.github.com/repos/php-http/discovery/zipball/0700efda8d7526335132360167315fdab3aeb599",
+ "reference": "0700efda8d7526335132360167315fdab3aeb599",
"shasum": ""
},
"require": {
@@ -9048,7 +9048,8 @@
"php-http/httplug": "^1.0 || ^2.0",
"php-http/message-factory": "^1.0",
"phpspec/phpspec": "^5.1 || ^6.1 || ^7.3",
- "symfony/phpunit-bridge": "^6.2"
+ "sebastian/comparator": "^3.0.5 || ^4.0.8",
+ "symfony/phpunit-bridge": "^6.4.4 || ^7.0.1"
},
"type": "composer-plugin",
"extra": {
@@ -9087,9 +9088,9 @@
],
"support": {
"issues": "https://github.com/php-http/discovery/issues",
- "source": "https://github.com/php-http/discovery/tree/1.19.2"
+ "source": "https://github.com/php-http/discovery/tree/1.19.4"
},
- "time": "2023-11-30T16:49:05+00:00"
+ "time": "2024-03-29T13:00:05+00:00"
},
{
"name": "php-http/guzzle7-adapter",
@@ -9845,16 +9846,16 @@
},
{
"name": "phpstan/phpdoc-parser",
- "version": "1.27.0",
+ "version": "1.28.0",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpdoc-parser.git",
- "reference": "86e4d5a4b036f8f0be1464522f4c6b584c452757"
+ "reference": "cd06d6b1a1b3c75b0b83f97577869fd85a3cd4fb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/86e4d5a4b036f8f0be1464522f4c6b584c452757",
- "reference": "86e4d5a4b036f8f0be1464522f4c6b584c452757",
+ "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/cd06d6b1a1b3c75b0b83f97577869fd85a3cd4fb",
+ "reference": "cd06d6b1a1b3c75b0b83f97577869fd85a3cd4fb",
"shasum": ""
},
"require": {
@@ -9886,9 +9887,9 @@
"description": "PHPDoc parser with support for nullable, intersection and generic types",
"support": {
"issues": "https://github.com/phpstan/phpdoc-parser/issues",
- "source": "https://github.com/phpstan/phpdoc-parser/tree/1.27.0"
+ "source": "https://github.com/phpstan/phpdoc-parser/tree/1.28.0"
},
- "time": "2024-03-21T13:14:53+00:00"
+ "time": "2024-04-03T18:51:33+00:00"
},
{
"name": "pragmarx/google2fa",
@@ -10466,16 +10467,16 @@
},
{
"name": "psy/psysh",
- "version": "v0.12.2",
+ "version": "v0.12.3",
"source": {
"type": "git",
"url": "https://github.com/bobthecow/psysh.git",
- "reference": "9185c66c2165bbf4d71de78a69dccf4974f9538d"
+ "reference": "b6b6cce7d3ee8fbf31843edce5e8f5a72eff4a73"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/bobthecow/psysh/zipball/9185c66c2165bbf4d71de78a69dccf4974f9538d",
- "reference": "9185c66c2165bbf4d71de78a69dccf4974f9538d",
+ "url": "https://api.github.com/repos/bobthecow/psysh/zipball/b6b6cce7d3ee8fbf31843edce5e8f5a72eff4a73",
+ "reference": "b6b6cce7d3ee8fbf31843edce5e8f5a72eff4a73",
"shasum": ""
},
"require": {
@@ -10539,9 +10540,9 @@
],
"support": {
"issues": "https://github.com/bobthecow/psysh/issues",
- "source": "https://github.com/bobthecow/psysh/tree/v0.12.2"
+ "source": "https://github.com/bobthecow/psysh/tree/v0.12.3"
},
- "time": "2024-03-17T01:53:00+00:00"
+ "time": "2024-04-02T15:57:53+00:00"
},
{
"name": "pusher/pusher-php-server",
@@ -12342,16 +12343,16 @@
},
{
"name": "symfony/console",
- "version": "v6.4.4",
+ "version": "v6.4.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "0d9e4eb5ad413075624378f474c4167ea202de78"
+ "reference": "a2708a5da5c87d1d0d52937bdeac625df659e11f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/0d9e4eb5ad413075624378f474c4167ea202de78",
- "reference": "0d9e4eb5ad413075624378f474c4167ea202de78",
+ "url": "https://api.github.com/repos/symfony/console/zipball/a2708a5da5c87d1d0d52937bdeac625df659e11f",
+ "reference": "a2708a5da5c87d1d0d52937bdeac625df659e11f",
"shasum": ""
},
"require": {
@@ -12416,7 +12417,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v6.4.4"
+ "source": "https://github.com/symfony/console/tree/v6.4.6"
},
"funding": [
{
@@ -12432,7 +12433,7 @@
"type": "tidelift"
}
],
- "time": "2024-02-22T20:27:10+00:00"
+ "time": "2024-03-29T19:07:53+00:00"
},
{
"name": "symfony/css-selector",
@@ -12568,16 +12569,16 @@
},
{
"name": "symfony/error-handler",
- "version": "v6.4.4",
+ "version": "v6.4.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/error-handler.git",
- "reference": "c725219bdf2afc59423c32793d5019d2a904e13a"
+ "reference": "64db1c1802e3a4557e37ba33031ac39f452ac5d4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/error-handler/zipball/c725219bdf2afc59423c32793d5019d2a904e13a",
- "reference": "c725219bdf2afc59423c32793d5019d2a904e13a",
+ "url": "https://api.github.com/repos/symfony/error-handler/zipball/64db1c1802e3a4557e37ba33031ac39f452ac5d4",
+ "reference": "64db1c1802e3a4557e37ba33031ac39f452ac5d4",
"shasum": ""
},
"require": {
@@ -12623,7 +12624,7 @@
"description": "Provides tools to manage errors and ease debugging PHP code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/error-handler/tree/v6.4.4"
+ "source": "https://github.com/symfony/error-handler/tree/v6.4.6"
},
"funding": [
{
@@ -12639,7 +12640,7 @@
"type": "tidelift"
}
],
- "time": "2024-02-22T20:27:10+00:00"
+ "time": "2024-03-19T11:56:30+00:00"
},
{
"name": "symfony/event-dispatcher",
@@ -12723,16 +12724,16 @@
},
{
"name": "symfony/event-dispatcher-contracts",
- "version": "v3.4.0",
+ "version": "v3.4.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher-contracts.git",
- "reference": "a76aed96a42d2b521153fb382d418e30d18b59df"
+ "reference": "4e64b49bf370ade88e567de29465762e316e4224"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/a76aed96a42d2b521153fb382d418e30d18b59df",
- "reference": "a76aed96a42d2b521153fb382d418e30d18b59df",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/4e64b49bf370ade88e567de29465762e316e4224",
+ "reference": "4e64b49bf370ade88e567de29465762e316e4224",
"shasum": ""
},
"require": {
@@ -12779,7 +12780,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.4.0"
+ "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.4.2"
},
"funding": [
{
@@ -12795,20 +12796,20 @@
"type": "tidelift"
}
],
- "time": "2023-05-23T14:45:45+00:00"
+ "time": "2024-01-23T14:51:35+00:00"
},
{
"name": "symfony/filesystem",
- "version": "v6.4.3",
+ "version": "v6.4.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "7f3b1755eb49297a0827a7575d5d2b2fd11cc9fb"
+ "reference": "9919b5509ada52cc7f66f9a35c86a4a29955c9d3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/7f3b1755eb49297a0827a7575d5d2b2fd11cc9fb",
- "reference": "7f3b1755eb49297a0827a7575d5d2b2fd11cc9fb",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/9919b5509ada52cc7f66f9a35c86a4a29955c9d3",
+ "reference": "9919b5509ada52cc7f66f9a35c86a4a29955c9d3",
"shasum": ""
},
"require": {
@@ -12842,7 +12843,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v6.4.3"
+ "source": "https://github.com/symfony/filesystem/tree/v6.4.6"
},
"funding": [
{
@@ -12858,7 +12859,7 @@
"type": "tidelift"
}
],
- "time": "2024-01-23T14:51:35+00:00"
+ "time": "2024-03-21T19:36:20+00:00"
},
{
"name": "symfony/finder",
@@ -12926,23 +12927,23 @@
},
{
"name": "symfony/http-client",
- "version": "v6.4.5",
+ "version": "v6.4.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client.git",
- "reference": "f3c86a60a3615f466333a11fd42010d4382a82c7"
+ "reference": "6a46c0ea9b099f9a5132d560a51833ffcbd5b0d9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-client/zipball/f3c86a60a3615f466333a11fd42010d4382a82c7",
- "reference": "f3c86a60a3615f466333a11fd42010d4382a82c7",
+ "url": "https://api.github.com/repos/symfony/http-client/zipball/6a46c0ea9b099f9a5132d560a51833ffcbd5b0d9",
+ "reference": "6a46c0ea9b099f9a5132d560a51833ffcbd5b0d9",
"shasum": ""
},
"require": {
"php": ">=8.1",
"psr/log": "^1|^2|^3",
"symfony/deprecation-contracts": "^2.5|^3",
- "symfony/http-client-contracts": "^3",
+ "symfony/http-client-contracts": "^3.4.1",
"symfony/service-contracts": "^2.5|^3"
},
"conflict": {
@@ -12960,7 +12961,7 @@
"amphp/http-client": "^4.2.1",
"amphp/http-tunnel": "^1.0",
"amphp/socket": "^1.1",
- "guzzlehttp/promises": "^1.4",
+ "guzzlehttp/promises": "^1.4|^2.0",
"nyholm/psr7": "^1.0",
"php-http/httplug": "^1.0|^2.0",
"psr/http-client": "^1.0",
@@ -12999,7 +13000,7 @@
"http"
],
"support": {
- "source": "https://github.com/symfony/http-client/tree/v6.4.5"
+ "source": "https://github.com/symfony/http-client/tree/v6.4.6"
},
"funding": [
{
@@ -13015,20 +13016,20 @@
"type": "tidelift"
}
],
- "time": "2024-03-02T12:45:30+00:00"
+ "time": "2024-04-01T20:35:50+00:00"
},
{
"name": "symfony/http-client-contracts",
- "version": "v3.4.0",
+ "version": "v3.4.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client-contracts.git",
- "reference": "1ee70e699b41909c209a0c930f11034b93578654"
+ "reference": "b6b5c876b3a4ed74460e2c5ac53bbce2f12e2a7e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/1ee70e699b41909c209a0c930f11034b93578654",
- "reference": "1ee70e699b41909c209a0c930f11034b93578654",
+ "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/b6b5c876b3a4ed74460e2c5ac53bbce2f12e2a7e",
+ "reference": "b6b5c876b3a4ed74460e2c5ac53bbce2f12e2a7e",
"shasum": ""
},
"require": {
@@ -13077,7 +13078,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/http-client-contracts/tree/v3.4.0"
+ "source": "https://github.com/symfony/http-client-contracts/tree/v3.4.2"
},
"funding": [
{
@@ -13093,7 +13094,7 @@
"type": "tidelift"
}
],
- "time": "2023-07-30T20:28:31+00:00"
+ "time": "2024-04-01T18:51:09+00:00"
},
{
"name": "symfony/http-foundation",
@@ -13174,16 +13175,16 @@
},
{
"name": "symfony/http-kernel",
- "version": "v6.4.5",
+ "version": "v6.4.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "f6947cb939d8efee137797382cb4db1af653ef75"
+ "reference": "060038863743fd0cd982be06acecccf246d35653"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/f6947cb939d8efee137797382cb4db1af653ef75",
- "reference": "f6947cb939d8efee137797382cb4db1af653ef75",
+ "url": "https://api.github.com/repos/symfony/http-kernel/zipball/060038863743fd0cd982be06acecccf246d35653",
+ "reference": "060038863743fd0cd982be06acecccf246d35653",
"shasum": ""
},
"require": {
@@ -13267,7 +13268,7 @@
"description": "Provides a structured process for converting a Request into a Response",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-kernel/tree/v6.4.5"
+ "source": "https://github.com/symfony/http-kernel/tree/v6.4.6"
},
"funding": [
{
@@ -13283,7 +13284,7 @@
"type": "tidelift"
}
],
- "time": "2024-03-04T21:00:47+00:00"
+ "time": "2024-04-03T06:09:15+00:00"
},
{
"name": "symfony/intl",
@@ -13369,16 +13370,16 @@
},
{
"name": "symfony/mailer",
- "version": "v6.4.4",
+ "version": "v6.4.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/mailer.git",
- "reference": "791c5d31a8204cf3db0c66faab70282307f4376b"
+ "reference": "677f34a6f4b4559e08acf73ae0aec460479e5859"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/mailer/zipball/791c5d31a8204cf3db0c66faab70282307f4376b",
- "reference": "791c5d31a8204cf3db0c66faab70282307f4376b",
+ "url": "https://api.github.com/repos/symfony/mailer/zipball/677f34a6f4b4559e08acf73ae0aec460479e5859",
+ "reference": "677f34a6f4b4559e08acf73ae0aec460479e5859",
"shasum": ""
},
"require": {
@@ -13429,7 +13430,7 @@
"description": "Helps sending emails",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/mailer/tree/v6.4.4"
+ "source": "https://github.com/symfony/mailer/tree/v6.4.6"
},
"funding": [
{
@@ -13445,7 +13446,7 @@
"type": "tidelift"
}
],
- "time": "2024-02-03T21:33:47+00:00"
+ "time": "2024-03-27T21:14:17+00:00"
},
{
"name": "symfony/mailgun-mailer",
@@ -13518,16 +13519,16 @@
},
{
"name": "symfony/mime",
- "version": "v6.4.3",
+ "version": "v6.4.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/mime.git",
- "reference": "5017e0a9398c77090b7694be46f20eb796262a34"
+ "reference": "14762b86918823cb42e3558cdcca62e58b5227fe"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/mime/zipball/5017e0a9398c77090b7694be46f20eb796262a34",
- "reference": "5017e0a9398c77090b7694be46f20eb796262a34",
+ "url": "https://api.github.com/repos/symfony/mime/zipball/14762b86918823cb42e3558cdcca62e58b5227fe",
+ "reference": "14762b86918823cb42e3558cdcca62e58b5227fe",
"shasum": ""
},
"require": {
@@ -13548,6 +13549,7 @@
"league/html-to-markdown": "^5.0",
"phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0",
"symfony/dependency-injection": "^5.4|^6.0|^7.0",
+ "symfony/process": "^5.4|^6.4|^7.0",
"symfony/property-access": "^5.4|^6.0|^7.0",
"symfony/property-info": "^5.4|^6.0|^7.0",
"symfony/serializer": "^6.3.2|^7.0"
@@ -13582,7 +13584,7 @@
"mime-type"
],
"support": {
- "source": "https://github.com/symfony/mime/tree/v6.4.3"
+ "source": "https://github.com/symfony/mime/tree/v6.4.6"
},
"funding": [
{
@@ -13598,7 +13600,7 @@
"type": "tidelift"
}
],
- "time": "2024-01-30T08:32:12+00:00"
+ "time": "2024-03-21T19:36:20+00:00"
},
{
"name": "symfony/options-resolver",
@@ -14684,16 +14686,16 @@
},
{
"name": "symfony/routing",
- "version": "v6.4.5",
+ "version": "v6.4.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
- "reference": "7fe30068e207d9c31c0138501ab40358eb2d49a4"
+ "reference": "f2591fd1f8c6e3734656b5d6b3829e8bf81f507c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/7fe30068e207d9c31c0138501ab40358eb2d49a4",
- "reference": "7fe30068e207d9c31c0138501ab40358eb2d49a4",
+ "url": "https://api.github.com/repos/symfony/routing/zipball/f2591fd1f8c6e3734656b5d6b3829e8bf81f507c",
+ "reference": "f2591fd1f8c6e3734656b5d6b3829e8bf81f507c",
"shasum": ""
},
"require": {
@@ -14747,7 +14749,7 @@
"url"
],
"support": {
- "source": "https://github.com/symfony/routing/tree/v6.4.5"
+ "source": "https://github.com/symfony/routing/tree/v6.4.6"
},
"funding": [
{
@@ -14763,20 +14765,20 @@
"type": "tidelift"
}
],
- "time": "2024-02-27T12:33:30+00:00"
+ "time": "2024-03-28T13:28:49+00:00"
},
{
"name": "symfony/service-contracts",
- "version": "v3.4.1",
+ "version": "v3.4.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0"
+ "reference": "11bbf19a0fb7b36345861e85c5768844c552906e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/fe07cbc8d837f60caf7018068e350cc5163681a0",
- "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/11bbf19a0fb7b36345861e85c5768844c552906e",
+ "reference": "11bbf19a0fb7b36345861e85c5768844c552906e",
"shasum": ""
},
"require": {
@@ -14829,7 +14831,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/v3.4.1"
+ "source": "https://github.com/symfony/service-contracts/tree/v3.4.2"
},
"funding": [
{
@@ -14845,7 +14847,7 @@
"type": "tidelift"
}
],
- "time": "2023-12-26T14:02:43+00:00"
+ "time": "2023-12-19T21:51:00+00:00"
},
{
"name": "symfony/string",
@@ -15030,16 +15032,16 @@
},
{
"name": "symfony/translation-contracts",
- "version": "v3.4.1",
+ "version": "v3.4.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation-contracts.git",
- "reference": "06450585bf65e978026bda220cdebca3f867fde7"
+ "reference": "43810bdb2ddb5400e5c5e778e27b210a0ca83b6b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/06450585bf65e978026bda220cdebca3f867fde7",
- "reference": "06450585bf65e978026bda220cdebca3f867fde7",
+ "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/43810bdb2ddb5400e5c5e778e27b210a0ca83b6b",
+ "reference": "43810bdb2ddb5400e5c5e778e27b210a0ca83b6b",
"shasum": ""
},
"require": {
@@ -15088,7 +15090,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/translation-contracts/tree/v3.4.1"
+ "source": "https://github.com/symfony/translation-contracts/tree/v3.4.2"
},
"funding": [
{
@@ -15104,7 +15106,7 @@
"type": "tidelift"
}
],
- "time": "2023-12-26T14:02:43+00:00"
+ "time": "2024-01-23T14:51:35+00:00"
},
{
"name": "symfony/uid",
@@ -15182,16 +15184,16 @@
},
{
"name": "symfony/validator",
- "version": "v6.4.4",
+ "version": "v6.4.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/validator.git",
- "reference": "1cf92edc9a94d16275efef949fa6748d11cc8f47"
+ "reference": "ca1d78e8677e966e307a63799677b64b194d735d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/validator/zipball/1cf92edc9a94d16275efef949fa6748d11cc8f47",
- "reference": "1cf92edc9a94d16275efef949fa6748d11cc8f47",
+ "url": "https://api.github.com/repos/symfony/validator/zipball/ca1d78e8677e966e307a63799677b64b194d735d",
+ "reference": "ca1d78e8677e966e307a63799677b64b194d735d",
"shasum": ""
},
"require": {
@@ -15258,7 +15260,7 @@
"description": "Provides tools to validate values",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/validator/tree/v6.4.4"
+ "source": "https://github.com/symfony/validator/tree/v6.4.6"
},
"funding": [
{
@@ -15274,20 +15276,20 @@
"type": "tidelift"
}
],
- "time": "2024-02-22T20:27:10+00:00"
+ "time": "2024-03-27T22:00:14+00:00"
},
{
"name": "symfony/var-dumper",
- "version": "v6.4.4",
+ "version": "v6.4.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "b439823f04c98b84d4366c79507e9da6230944b1"
+ "reference": "95bd2706a97fb875185b51ecaa6112ec184233d4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/b439823f04c98b84d4366c79507e9da6230944b1",
- "reference": "b439823f04c98b84d4366c79507e9da6230944b1",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/95bd2706a97fb875185b51ecaa6112ec184233d4",
+ "reference": "95bd2706a97fb875185b51ecaa6112ec184233d4",
"shasum": ""
},
"require": {
@@ -15343,7 +15345,7 @@
"dump"
],
"support": {
- "source": "https://github.com/symfony/var-dumper/tree/v6.4.4"
+ "source": "https://github.com/symfony/var-dumper/tree/v6.4.6"
},
"funding": [
{
@@ -15359,7 +15361,7 @@
"type": "tidelift"
}
],
- "time": "2024-02-15T11:23:52+00:00"
+ "time": "2024-03-19T11:56:30+00:00"
},
{
"name": "symfony/yaml",
@@ -16113,23 +16115,23 @@
"packages-dev": [
{
"name": "barryvdh/laravel-debugbar",
- "version": "v3.12.2",
+ "version": "v3.13.4",
"source": {
"type": "git",
"url": "https://github.com/barryvdh/laravel-debugbar.git",
- "reference": "43555503052443964ce2c1c1f3b0378e58219eb8"
+ "reference": "00201bcd1eaf9b1d3debddcdc13c219e4835fb61"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/43555503052443964ce2c1c1f3b0378e58219eb8",
- "reference": "43555503052443964ce2c1c1f3b0378e58219eb8",
+ "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/00201bcd1eaf9b1d3debddcdc13c219e4835fb61",
+ "reference": "00201bcd1eaf9b1d3debddcdc13c219e4835fb61",
"shasum": ""
},
"require": {
"illuminate/routing": "^9|^10|^11",
"illuminate/session": "^9|^10|^11",
"illuminate/support": "^9|^10|^11",
- "maximebf/debugbar": "~1.21.0",
+ "maximebf/debugbar": "~1.22.0",
"php": "^8.0",
"symfony/finder": "^6|^7"
},
@@ -16142,7 +16144,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.10-dev"
+ "dev-master": "3.13-dev"
},
"laravel": {
"providers": [
@@ -16181,7 +16183,7 @@
],
"support": {
"issues": "https://github.com/barryvdh/laravel-debugbar/issues",
- "source": "https://github.com/barryvdh/laravel-debugbar/tree/v3.12.2"
+ "source": "https://github.com/barryvdh/laravel-debugbar/tree/v3.13.4"
},
"funding": [
{
@@ -16193,7 +16195,7 @@
"type": "github"
}
],
- "time": "2024-03-13T09:50:34+00:00"
+ "time": "2024-04-10T09:15:45+00:00"
},
{
"name": "barryvdh/laravel-ide-helper",
@@ -16921,16 +16923,16 @@
},
{
"name": "friendsofphp/php-cs-fixer",
- "version": "v3.52.1",
+ "version": "v3.53.0",
"source": {
"type": "git",
"url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git",
- "reference": "6e77207f0d851862ceeb6da63e6e22c01b1587bc"
+ "reference": "69a19093a9ded8d1baac62ed6c009b8bc148d008"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/6e77207f0d851862ceeb6da63e6e22c01b1587bc",
- "reference": "6e77207f0d851862ceeb6da63e6e22c01b1587bc",
+ "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/69a19093a9ded8d1baac62ed6c009b8bc148d008",
+ "reference": "69a19093a9ded8d1baac62ed6c009b8bc148d008",
"shasum": ""
},
"require": {
@@ -16954,6 +16956,7 @@
},
"require-dev": {
"facile-it/paraunit": "^1.3 || ^2.0",
+ "infection/infection": "^0.27.11",
"justinrainbow/json-schema": "^5.2",
"keradus/cli-executor": "^2.1",
"mikey179/vfsstream": "^1.6.11",
@@ -17001,7 +17004,7 @@
],
"support": {
"issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues",
- "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.52.1"
+ "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.53.0"
},
"funding": [
{
@@ -17009,7 +17012,7 @@
"type": "github"
}
],
- "time": "2024-03-19T21:02:43+00:00"
+ "time": "2024-04-08T15:03:00+00:00"
},
{
"name": "hamcrest/hamcrest-php",
@@ -17225,25 +17228,27 @@
},
{
"name": "maximebf/debugbar",
- "version": "v1.21.3",
+ "version": "v1.22.3",
"source": {
"type": "git",
"url": "https://github.com/maximebf/php-debugbar.git",
- "reference": "0b407703b08ea0cf6ebc61e267cc96ff7000911b"
+ "reference": "7aa9a27a0b1158ed5ad4e7175e8d3aee9a818b96"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/0b407703b08ea0cf6ebc61e267cc96ff7000911b",
- "reference": "0b407703b08ea0cf6ebc61e267cc96ff7000911b",
+ "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/7aa9a27a0b1158ed5ad4e7175e8d3aee9a818b96",
+ "reference": "7aa9a27a0b1158ed5ad4e7175e8d3aee9a818b96",
"shasum": ""
},
"require": {
- "php": "^7.1|^8",
+ "php": "^7.2|^8",
"psr/log": "^1|^2|^3",
"symfony/var-dumper": "^4|^5|^6|^7"
},
"require-dev": {
- "phpunit/phpunit": ">=7.5.20 <10.0",
+ "dbrekelmans/bdi": "^1",
+ "phpunit/phpunit": "^8|^9",
+ "symfony/panther": "^1|^2.1",
"twig/twig": "^1.38|^2.7|^3.0"
},
"suggest": {
@@ -17254,7 +17259,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.21-dev"
+ "dev-master": "1.22-dev"
}
},
"autoload": {
@@ -17285,9 +17290,9 @@
],
"support": {
"issues": "https://github.com/maximebf/php-debugbar/issues",
- "source": "https://github.com/maximebf/php-debugbar/tree/v1.21.3"
+ "source": "https://github.com/maximebf/php-debugbar/tree/v1.22.3"
},
- "time": "2024-03-12T14:23:07+00:00"
+ "time": "2024-04-03T19:39:26+00:00"
},
{
"name": "mockery/mockery",
@@ -17735,16 +17740,16 @@
},
{
"name": "phpstan/phpstan",
- "version": "1.10.65",
+ "version": "1.10.66",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpstan.git",
- "reference": "3c657d057a0b7ecae19cb12db446bbc99d8839c6"
+ "reference": "94779c987e4ebd620025d9e5fdd23323903950bd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpstan/zipball/3c657d057a0b7ecae19cb12db446bbc99d8839c6",
- "reference": "3c657d057a0b7ecae19cb12db446bbc99d8839c6",
+ "url": "https://api.github.com/repos/phpstan/phpstan/zipball/94779c987e4ebd620025d9e5fdd23323903950bd",
+ "reference": "94779c987e4ebd620025d9e5fdd23323903950bd",
"shasum": ""
},
"require": {
@@ -17793,7 +17798,7 @@
"type": "tidelift"
}
],
- "time": "2024-03-23T10:30:26+00:00"
+ "time": "2024-03-28T16:17:31+00:00"
},
{
"name": "phpunit/php-code-coverage",
@@ -18118,16 +18123,16 @@
},
{
"name": "phpunit/phpunit",
- "version": "10.5.15",
+ "version": "10.5.17",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "86376e05e8745ed81d88232ff92fee868247b07b"
+ "reference": "c1f736a473d21957ead7e94fcc029f571895abf5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/86376e05e8745ed81d88232ff92fee868247b07b",
- "reference": "86376e05e8745ed81d88232ff92fee868247b07b",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c1f736a473d21957ead7e94fcc029f571895abf5",
+ "reference": "c1f736a473d21957ead7e94fcc029f571895abf5",
"shasum": ""
},
"require": {
@@ -18199,7 +18204,7 @@
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.15"
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.17"
},
"funding": [
{
@@ -18215,7 +18220,7 @@
"type": "tidelift"
}
],
- "time": "2024-03-22T04:17:47+00:00"
+ "time": "2024-04-05T04:39:01+00:00"
},
{
"name": "sebastian/cli-parser",
@@ -19266,16 +19271,16 @@
},
{
"name": "spatie/ignition",
- "version": "1.12.0",
+ "version": "1.13.1",
"source": {
"type": "git",
"url": "https://github.com/spatie/ignition.git",
- "reference": "5b6f801c605a593106b623e45ca41496a6e7d56d"
+ "reference": "889bf1dfa59e161590f677728b47bf4a6893983b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/ignition/zipball/5b6f801c605a593106b623e45ca41496a6e7d56d",
- "reference": "5b6f801c605a593106b623e45ca41496a6e7d56d",
+ "url": "https://api.github.com/repos/spatie/ignition/zipball/889bf1dfa59e161590f677728b47bf4a6893983b",
+ "reference": "889bf1dfa59e161590f677728b47bf4a6893983b",
"shasum": ""
},
"require": {
@@ -19345,20 +19350,20 @@
"type": "github"
}
],
- "time": "2024-01-03T15:49:39+00:00"
+ "time": "2024-03-29T14:03:47+00:00"
},
{
"name": "spatie/laravel-ignition",
- "version": "2.4.2",
+ "version": "2.5.1",
"source": {
"type": "git",
"url": "https://github.com/spatie/laravel-ignition.git",
- "reference": "351504f4570e32908839fc5a2dc53bf77d02f85e"
+ "reference": "0c864b3cbd66ce67a2096c5f743e07ce8f1d6ab9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/351504f4570e32908839fc5a2dc53bf77d02f85e",
- "reference": "351504f4570e32908839fc5a2dc53bf77d02f85e",
+ "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/0c864b3cbd66ce67a2096c5f743e07ce8f1d6ab9",
+ "reference": "0c864b3cbd66ce67a2096c5f743e07ce8f1d6ab9",
"shasum": ""
},
"require": {
@@ -19368,7 +19373,7 @@
"illuminate/support": "^10.0|^11.0",
"php": "^8.1",
"spatie/flare-client-php": "^1.3.5",
- "spatie/ignition": "^1.9",
+ "spatie/ignition": "^1.13",
"symfony/console": "^6.2.3|^7.0",
"symfony/var-dumper": "^6.2.3|^7.0"
},
@@ -19437,7 +19442,7 @@
"type": "github"
}
],
- "time": "2024-02-09T16:08:40+00:00"
+ "time": "2024-04-02T06:30:22+00:00"
},
{
"name": "spaze/phpstan-stripe",
@@ -19707,5 +19712,5 @@
"platform-dev": {
"php": "^8.1|^8.2"
},
- "plugin-api-version": "2.6.0"
+ "plugin-api-version": "2.3.0"
}
diff --git a/config/ninja.php b/config/ninja.php
index 7391e7839f92..7b000ad84eed 100644
--- a/config/ninja.php
+++ b/config/ninja.php
@@ -243,6 +243,6 @@ return [
'public_key' => env('NINJA_PUBLIC_KEY', false),
'private_key' => env('NINJA_PRIVATE_KEY', false),
],
- 'upload_extensions' => env('ADDITIONAL_UPLOAD_EXTENSIONS', false),
+ 'upload_extensions' => env('ADDITIONAL_UPLOAD_EXTENSIONS', ''),
];
diff --git a/resources/views/portal/ninja2020/plan/trial.blade.php b/resources/views/portal/ninja2020/plan/trial.blade.php
index b3b6064f3f75..8db0c4d6ac39 100644
--- a/resources/views/portal/ninja2020/plan/trial.blade.php
+++ b/resources/views/portal/ninja2020/plan/trial.blade.php
@@ -1539,7 +1539,7 @@ Ensure the default browser behavior of the `hidden` attribute.
- * At the end of your 14 day trial your card will be charged $10/month. Cancel anytime.
+ * At the end of your 14 day trial your card will be charged $12/month. Cancel anytime.
['auth:vendor', 'vendor_locale', 'domain_db'], 'pr
Route::post('documents/download_multiple', [App\Http\Controllers\VendorPortal\DocumentController::class, 'downloadMultiple'])->name('documents.download_multiple');
Route::get('documents/{document}/download', [App\Http\Controllers\VendorPortal\DocumentController::class, 'download'])->name('documents.download');
Route::get('documents/{document}/download_pdf', [App\Http\Controllers\VendorPortal\DocumentController::class, 'download'])->name('documents.download_pdf');
+ Route::get('purchase_order/{invitation_key}/download_e_purchase_order', [App\Http\Controllers\PurchaseOrderController::class, 'downloadEPurchaseOrder'])->name('purchase_order.download_e_purchase_order')->middleware('token_auth');
+
Route::resource('documents', App\Http\Controllers\VendorPortal\DocumentController::class)->only(['index', 'show']);
});