diff --git a/.env.example b/.env.example
index 63f81969dae6..2a6eb900debe 100644
--- a/.env.example
+++ b/.env.example
@@ -48,6 +48,7 @@ REQUIRE_HTTPS=false
GOOGLE_MAPS_API_KEY=
API_SECRET=superdoopersecrethere
ERROR_EMAIL=
+TRUSTED_PROXIES=
NINJA_ENVIRONMENT=selfhost
diff --git a/app/Console/Commands/CreateTestData.php b/app/Console/Commands/CreateTestData.php
index 412ae150e6a5..190ab93d4e5a 100644
--- a/app/Console/Commands/CreateTestData.php
+++ b/app/Console/Commands/CreateTestData.php
@@ -27,12 +27,19 @@ use App\Helpers\Invoice\InvoiceSum;
use App\Jobs\Quote\CreateQuoteInvitations;
use App\Listeners\Credit\CreateCreditInvitation;
use App\Listeners\Invoice\CreateInvoiceInvitation;
+use App\Models\Client;
+use App\Models\ClientContact;
use App\Models\CompanyToken;
use App\Models\Country;
+use App\Models\Expense;
use App\Models\Payment;
use App\Models\PaymentType;
use App\Models\Product;
+use App\Models\Project;
+use App\Models\Task;
use App\Models\User;
+use App\Models\Vendor;
+use App\Models\VendorContact;
use App\Repositories\InvoiceRepository;
use App\Utils\Ninja;
use App\Utils\Traits\GeneratesCounter;
@@ -93,8 +100,8 @@ class CreateTestData extends Command
{
$this->info('Creating Small Account and Company');
- $account = factory(\App\Models\Account::class)->create();
- $company = factory(\App\Models\Company::class)->create([
+ $account = Account::factory()->create();
+ $company = Company::factory()->create([
'account_id' => $account->id,
'slack_webhook_url' => config('ninja.notification.slack'),
]);
@@ -105,7 +112,7 @@ class CreateTestData extends Command
$user = User::whereEmail('small@example.com')->first();
if (! $user) {
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'account_id' => $account->id,
'email' => 'small@example.com',
'confirmation_code' => $this->createDbHash(config('database.default')),
@@ -132,7 +139,7 @@ class CreateTestData extends Command
'settings' => null,
]);
- factory(\App\Models\Product::class, 50)->create([
+ Product::factory()->count(50)->create([
'user_id' => $user->id,
'company_id' => $company->id,
]);
@@ -188,8 +195,8 @@ class CreateTestData extends Command
{
$this->info('Creating Medium Account and Company');
- $account = factory(\App\Models\Account::class)->create();
- $company = factory(\App\Models\Company::class)->create([
+ $account = Account::factory()->create();
+ $company = Company::factory()->create([
'account_id' => $account->id,
'slack_webhook_url' => config('ninja.notification.slack'),
]);
@@ -200,7 +207,7 @@ class CreateTestData extends Command
$user = User::whereEmail('medium@example.com')->first();
if (! $user) {
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'account_id' => $account->id,
'email' => 'medium@example.com',
'confirmation_code' => $this->createDbHash(config('database.default')),
@@ -226,7 +233,7 @@ class CreateTestData extends Command
'settings' => null,
]);
- factory(\App\Models\Product::class, 50)->create([
+ Product::factory()->count(50)->create([
'user_id' => $user->id,
'company_id' => $company->id,
]);
@@ -284,8 +291,8 @@ class CreateTestData extends Command
{
$this->info('Creating Large Account and Company');
- $account = factory(\App\Models\Account::class)->create();
- $company = factory(\App\Models\Company::class)->create([
+ $account = Account::factory()->create();
+ $company = Company::factory()->create([
'account_id' => $account->id,
'slack_webhook_url' => config('ninja.notification.slack'),
'is_large' => true,
@@ -297,7 +304,7 @@ class CreateTestData extends Command
$user = User::whereEmail('large@example.com')->first();
if (! $user) {
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'account_id' => $account->id,
'email' => 'large@example.com',
'confirmation_code' => $this->createDbHash(config('database.default')),
@@ -323,7 +330,7 @@ class CreateTestData extends Command
'settings' => null,
]);
- factory(\App\Models\Product::class, 15000)->create([
+ Product::factory()->count(15000)->create([
'user_id' => $user->id,
'company_id' => $company->id,
]);
@@ -383,19 +390,19 @@ class CreateTestData extends Command
// dispatch(function () use ($company, $user) {
// });
- $client = factory(\App\Models\Client::class)->create([
+ $client = Client::factory()->create([
'user_id' => $user->id,
'company_id' => $company->id,
]);
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $user->id,
'client_id' => $client->id,
'company_id' => $company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, rand(1, 5))->create([
+ ClientContact::factory()->count(rand(1, 5))->create([
'user_id' => $user->id,
'client_id' => $client->id,
'company_id' => $company->id,
@@ -415,7 +422,7 @@ class CreateTestData extends Command
private function createExpense($client)
{
- factory(\App\Models\Expense::class, rand(1, 5))->create([
+ Expense::factory()->count(rand(1, 5))->create([
'user_id' => $client->user->id,
'client_id' => $client->id,
'company_id' => $client->company->id,
@@ -424,19 +431,19 @@ class CreateTestData extends Command
private function createVendor($client)
{
- $vendor = factory(\App\Models\Vendor::class)->create([
+ $vendor = Vendor::factory()->create([
'user_id' => $client->user->id,
'company_id' => $client->company->id,
]);
- factory(\App\Models\VendorContact::class, 1)->create([
+ VendorContact::factory()->create([
'user_id' => $client->user->id,
'vendor_id' => $vendor->id,
'company_id' => $client->company->id,
'is_primary' => 1,
]);
- factory(\App\Models\VendorContact::class, rand(1, 5))->create([
+ VendorContact::factory()->count(rand(1, 5))->create([
'user_id' => $client->user->id,
'vendor_id' => $vendor->id,
'company_id' => $client->company->id,
@@ -446,7 +453,7 @@ class CreateTestData extends Command
private function createTask($client)
{
- $vendor = factory(\App\Models\Task::class)->create([
+ $vendor = Task::factory()->create([
'user_id' => $client->user->id,
'company_id' => $client->company->id,
]);
@@ -454,7 +461,7 @@ class CreateTestData extends Command
private function createProject($client)
{
- $vendor = factory(\App\Models\Project::class)->create([
+ $vendor = Project::factory()->create([
'user_id' => $client->user->id,
'company_id' => $client->company->id,
]);
@@ -520,7 +527,7 @@ class CreateTestData extends Command
// }
$faker = \Faker\Factory::create();
- $credit = factory(\App\Models\Credit::class)->create(['user_id' => $client->user->id, 'company_id' => $client->company->id, 'client_id' => $client->id]);
+ $credit = Credit::factory()->create(['user_id' => $client->user->id, 'company_id' => $client->company->id, 'client_id' => $client->id]);
$dateable = Carbon::now()->subDays(rand(0, 90));
$credit->date = $dateable;
@@ -564,7 +571,7 @@ class CreateTestData extends Command
$faker = \Faker\Factory::create();
//$quote = QuoteFactory::create($client->company->id, $client->user->id);//stub the company and user_id
- $quote = factory(\App\Models\Quote::class)->create(['user_id' => $client->user->id, 'company_id' => $client->company->id, 'client_id' => $client->id]);
+ $quote = Quote::factory()->create(['user_id' => $client->user->id, 'company_id' => $client->company->id, 'client_id' => $client->id]);
$quote->date = $faker->date();
$quote->client_id = $client->id;
diff --git a/app/Console/Commands/DemoMode.php b/app/Console/Commands/DemoMode.php
index 2b634a613af8..f58b9d5bfdd6 100644
--- a/app/Console/Commands/DemoMode.php
+++ b/app/Console/Commands/DemoMode.php
@@ -18,10 +18,21 @@ use App\Factory\InvoiceItemFactory;
use App\Helpers\Invoice\InvoiceSum;
use App\Jobs\Ninja\CompanySizeCheck;
use App\Jobs\Util\VersionCheck;
+use App\Models\Account;
+use App\Models\Client;
+use App\Models\ClientContact;
+use App\Models\Company;
use App\Models\CompanyToken;
use App\Models\Country;
+use App\Models\Credit;
+use App\Models\Expense;
use App\Models\Product;
+use App\Models\Project;
+use App\Models\Quote;
+use App\Models\Task;
use App\Models\User;
+use App\Models\Vendor;
+use App\Models\VendorContact;
use App\Repositories\InvoiceRepository;
use App\Utils\Ninja;
use App\Utils\Traits\GeneratesCounter;
@@ -30,8 +41,8 @@ use Carbon\Carbon;
use Composer\Composer;
use Composer\Console\Application;
use Composer\Factory;
-use Composer\Installer;
use Composer\IO\NullIO;
+use Composer\Installer;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\Artisan;
use Illuminate\Support\Facades\Cache;
@@ -125,8 +136,8 @@ class DemoMode extends Command
$this->info('Creating Small Account and Company');
- $account = factory(\App\Models\Account::class)->create();
- $company = factory(\App\Models\Company::class)->create([
+ $account = Account::factory()->create();
+ $company = Company::factory()->create([
'account_id' => $account->id,
'slack_webhook_url' => config('ninja.notification.slack'),
'enabled_modules' => 32767,
@@ -155,7 +166,7 @@ class DemoMode extends Command
$user = User::whereEmail('small@example.com')->first();
if (! $user) {
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'account_id' => $account->id,
'email' => 'small@example.com',
'confirmation_code' => $this->createDbHash(config('database.default')),
@@ -185,7 +196,7 @@ class DemoMode extends Command
$u2 = User::where('email', 'demo@invoiceninja.com')->first();
if (! $u2) {
- $u2 = factory(\App\Models\User::class)->create([
+ $u2 = User::factory()->create([
'email' => 'demo@invoiceninja.com',
'password' => Hash::make('demo'),
'account_id' => $account->id,
@@ -211,7 +222,7 @@ class DemoMode extends Command
]);
}
- factory(\App\Models\Product::class, 50)->create([
+ Product::factory()->count(50)->create([
'user_id' => $user->id,
'company_id' => $company->id,
]);
@@ -277,19 +288,19 @@ class DemoMode extends Command
// dispatch(function () use ($company, $user) {
// });
- $client = factory(\App\Models\Client::class)->create([
+ $client = Client::factory()->create([
'user_id' => $user->id,
'company_id' => $company->id,
]);
- factory(\App\Models\ClientContact::class)->create([
+ ClientContact::factory()->create([
'user_id' => $user->id,
'client_id' => $client->id,
'company_id' => $company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, rand(1, 5))->create([
+ ClientContact::factory()->count(rand(1,5))->create([
'user_id' => $user->id,
'client_id' => $client->id,
'company_id' => $company->id,
@@ -311,7 +322,7 @@ class DemoMode extends Command
private function createExpense($client)
{
- factory(\App\Models\Expense::class, rand(1, 5))->create([
+ Expense::factory()->count(rand(1,5))->create([
'user_id' => $client->user_id,
'client_id' => $client->id,
'company_id' => $client->company_id,
@@ -320,19 +331,19 @@ class DemoMode extends Command
private function createVendor($client, $assigned_user_id = null)
{
- $vendor = factory(\App\Models\Vendor::class)->create([
+ $vendor = Vendor::factory()->create([
'user_id' => $client->user_id,
'company_id' => $client->company_id,
]);
- factory(\App\Models\VendorContact::class)->create([
+ VendorContact::factory()->create([
'user_id' => $client->user->id,
'vendor_id' => $vendor->id,
'company_id' => $client->company_id,
'is_primary' => 1,
]);
- factory(\App\Models\VendorContact::class, rand(1, 5))->create([
+ VendorContact::factory()->count(rand(1,5))->create([
'user_id' => $client->user->id,
'vendor_id' => $vendor->id,
'company_id' => $client->company_id,
@@ -342,7 +353,7 @@ class DemoMode extends Command
private function createTask($client, $assigned_user_id = null)
{
- $vendor = factory(\App\Models\Task::class)->create([
+ $vendor = Task::factory()->create([
'user_id' => $client->user->id,
'company_id' => $client->company_id,
]);
@@ -350,7 +361,7 @@ class DemoMode extends Command
private function createProject($client, $assigned_user_id = null)
{
- $vendor = factory(\App\Models\Project::class)->create([
+ $vendor = Project::factory()->create([
'user_id' => $client->user->id,
'company_id' => $client->company_id,
]);
@@ -430,7 +441,7 @@ class DemoMode extends Command
// }
$faker = \Faker\Factory::create();
- $credit = factory(\App\Models\Credit::class)->create(['user_id' => $client->user->id, 'company_id' => $client->company->id, 'client_id' => $client->id]);
+ $credit = Credit::factory()->create(['user_id' => $client->user->id, 'company_id' => $client->company->id, 'client_id' => $client->id]);
if ((bool) rand(0, 1)) {
$dateable = Carbon::now()->subDays(rand(0, 90));
@@ -478,7 +489,7 @@ class DemoMode extends Command
{
$faker = \Faker\Factory::create();
- $quote = factory(\App\Models\Quote::class)->create(['user_id' => $client->user->id, 'company_id' => $client->company_id, 'client_id' => $client->id]);
+ $quote = Quote::factory()->create(['user_id' => $client->user->id, 'company_id' => $client->company_id, 'client_id' => $client->id]);
if ((bool) rand(0, 1)) {
$dateable = Carbon::now()->subDays(rand(1, 30));
diff --git a/app/Console/Commands/ImportMigrations.php b/app/Console/Commands/ImportMigrations.php
index d11baaeb3633..c9c891146cd3 100644
--- a/app/Console/Commands/ImportMigrations.php
+++ b/app/Console/Commands/ImportMigrations.php
@@ -78,7 +78,7 @@ class ImportMigrations extends Command
$account = $this->getAccount();
$company = $this->getCompany($account);
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'account_id' => $account->id,
'email' => $this->faker->email,
'confirmation_code' => $this->createDbHash(config('database.default')),
@@ -107,7 +107,7 @@ class ImportMigrations extends Command
public function getAccount(): Account
{
- return factory(\App\Models\Account::class)->create();
+ return Account::factory()->create();
}
public function getCompany(Account $account): Company
diff --git a/app/Console/Commands/SendTestEmails.php b/app/Console/Commands/SendTestEmails.php
index 514cda83f083..5890da2d04d6 100644
--- a/app/Console/Commands/SendTestEmails.php
+++ b/app/Console/Commands/SendTestEmails.php
@@ -20,8 +20,10 @@ use App\Factory\InvoiceInvitationFactory;
use App\Helpers\Email\InvoiceEmail;
use App\Jobs\Invoice\CreateInvoicePdf;
use App\Mail\TemplateEmail;
+use App\Models\Account;
use App\Models\Client;
use App\Models\ClientContact;
+use App\Models\Company;
use App\Models\Invoice;
use App\Models\User;
use Illuminate\Console\Command;
@@ -80,9 +82,10 @@ class SendTestEmails extends Command
$user = User::whereEmail('user@example.com')->first();
if (! $user) {
- $account = factory(\App\Models\Account::class)->create();
+
+ $account = Account::factory()->create();
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'account_id' => $account->id,
'confirmation_code' => '123',
'email' => $faker->safeEmail,
@@ -90,7 +93,7 @@ class SendTestEmails extends Command
'last_name' => 'Doe',
]);
- $company = factory(\App\Models\Company::class)->create([
+ $company = Company::factory()->create([
'account_id' => $account->id,
]);
@@ -115,7 +118,7 @@ class SendTestEmails extends Command
$client = ClientFactory::create($company->id, $user->id);
$client->save();
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $user->id,
'client_id' => $client->id,
'company_id' => $company->id,
@@ -124,7 +127,7 @@ class SendTestEmails extends Command
'email' => $faker->safeEmail,
]);
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $user->id,
'client_id' => $client->id,
'company_id' => $company->id,
diff --git a/app/Console/Commands/TestData/CreateTestCreditJob.php b/app/Console/Commands/TestData/CreateTestCreditJob.php
index 4faecae2eac3..225fc5e6f819 100644
--- a/app/Console/Commands/TestData/CreateTestCreditJob.php
+++ b/app/Console/Commands/TestData/CreateTestCreditJob.php
@@ -56,7 +56,7 @@ class CreateTestCreditJob implements ShouldQueue
{
$faker = \Faker\Factory::create();
- $credit = factory(\App\Models\Credit::class)->create(['user_id' => $this->client->user->id, 'company_id' => $this->client->company->id, 'client_id' => $this->client->id]);
+ $credit = Credit::factory()->create(['user_id' => $this->client->user->id, 'company_id' => $this->client->company->id, 'client_id' => $this->client->id]);
//$invoice = InvoiceFactory::create($this->client->company->id, $this->client->user->id);//stub the company and user_id
//$invoice->client_id = $this->client->id;
diff --git a/app/Console/Commands/TestData/CreateTestQuoteJob.php b/app/Console/Commands/TestData/CreateTestQuoteJob.php
index 0fee29ca3477..24e91e5acf92 100644
--- a/app/Console/Commands/TestData/CreateTestQuoteJob.php
+++ b/app/Console/Commands/TestData/CreateTestQuoteJob.php
@@ -55,7 +55,7 @@ class CreateTestQuoteJob implements ShouldQueue
{
$faker = \Faker\Factory::create();
- $quote = factory(\App\Models\Quote::class)->create(['user_id' => $this->client->user->id, 'company_id' => $this->client->company->id, 'client_id' => $this->client->id]);
+ $quote = Quote::factory()->create(['user_id' => $this->client->user->id, 'company_id' => $this->client->company->id, 'client_id' => $this->client->id]);
$quote->date = $faker->date();
$quote->line_items = $this->buildLineItems(rand(1, 10));
diff --git a/app/DataMapper/CompanySettings.php b/app/DataMapper/CompanySettings.php
index cb409a45f1d9..ca48a17faf4b 100644
--- a/app/DataMapper/CompanySettings.php
+++ b/app/DataMapper/CompanySettings.php
@@ -585,11 +585,11 @@ class CompanySettings extends BaseSettings
'$quote.total',
],
'credit_details' => [
- '$credit.credit_number',
+ '$credit.number',
'$credit.po_number',
- '$credit.credit_date',
- '$credit.credit_balance',
- '$credit.credit_amount',
+ '$credit.date',
+ '$credit.balance',
+ '$credit.total',
],
'product_columns' => [
'$product.product_key',
diff --git a/app/Designs/Designer.php b/app/Designs/Designer.php
index 3db75dd3a4a3..14510e3777a8 100644
--- a/app/Designs/Designer.php
+++ b/app/Designs/Designer.php
@@ -332,11 +332,11 @@ class Designer
private function creditDetails(Company $company)
{
$data = [
- '$credit.credit_number' => '$credit.number_label$credit.number',
+ '$credit.number' => '$credit.number_label$credit.number',
'$credit.po_number' => '$credit.po_number_label$credit.po_number',
- '$credit.credit_date' => '$credit.date_label$credit.date',
- '$credit.credit_balance' => '$credit.balance_label$credit.balance',
- '$credit.credit_amount' => '$credit.amount_label$credit.amount',
+ '$credit.date' => '$credit.date_label$credit.date',
+ '$credit.balance' => '$credit.balance_label$credit.balance',
+ '$credit.total' => '$credit.total_label$credit.total',
'$credit.partial_due' => '$credit.partial_due_label$credit.partial_due',
'$credit.custom1' => '$credit.custom1_label$credit.custom1',
'$credit.custom2' => '$credit.custom2_label$credit.custom2',
diff --git a/app/Http/Controllers/InvoiceController.php b/app/Http/Controllers/InvoiceController.php
index 32302359ad29..cdbcfffb361e 100644
--- a/app/Http/Controllers/InvoiceController.php
+++ b/app/Http/Controllers/InvoiceController.php
@@ -32,6 +32,7 @@ use App\Jobs\Invoice\CreateInvoicePdf;
use App\Jobs\Invoice\EmailInvoice;
use App\Jobs\Invoice\StoreInvoice;
use App\Jobs\Invoice\ZipInvoices;
+use App\Jobs\Util\UnlinkFile;
use App\Models\Client;
use App\Models\Invoice;
use App\Models\InvoiceInvitation;
@@ -391,6 +392,8 @@ class InvoiceController extends BaseController
$invoice = $this->invoice_repo->save($request->all(), $invoice);
+ UnlinkFile::dispatchNow(config('filesystems.default'),$invoice->client->invoice_filepath().$invoice->number.'.pdf');
+
event(new InvoiceWasUpdated($invoice, $invoice->company, Ninja::eventVars()));
return $this->itemResponse($invoice);
diff --git a/app/Http/Controllers/PreviewController.php b/app/Http/Controllers/PreviewController.php
index d30a8958e40e..c0a2d85a9b14 100644
--- a/app/Http/Controllers/PreviewController.php
+++ b/app/Http/Controllers/PreviewController.php
@@ -132,12 +132,12 @@ class PreviewController extends BaseController
{
DB::beginTransaction();
- $client = factory(\App\Models\Client::class)->create([
+ $client = Client::factory()->create([
'user_id' => auth()->user()->id,
'company_id' => auth()->user()->company()->id,
]);
- $contact = factory(\App\Models\ClientContact::class)->create([
+ $contact = ClientContact::factory()->create([
'user_id' => auth()->user()->id,
'company_id' => auth()->user()->company()->id,
'client_id' => $client->id,
@@ -145,13 +145,13 @@ class PreviewController extends BaseController
'send_email' => true,
]);
- $invoice = factory(\App\Models\Invoice::class)->create([
+ $invoice = Invoice::factory()->create([
'user_id' => auth()->user()->id,
'company_id' => auth()->user()->company()->id,
'client_id' => $client->id,
]);
- $invitation = factory(\App\Models\InvoiceInvitation::class)->create([
+ $invitation = InvoiceInvitation::factory()->create([
'user_id' => auth()->user()->id,
'company_id' => auth()->user()->company()->id,
'invoice_id' => $invoice->id,
diff --git a/app/Http/Middleware/ContactKeyLogin.php b/app/Http/Middleware/ContactKeyLogin.php
index 120c03d730db..b718f775ae46 100644
--- a/app/Http/Middleware/ContactKeyLogin.php
+++ b/app/Http/Middleware/ContactKeyLogin.php
@@ -12,16 +12,21 @@
namespace App\Http\Middleware;
use App\Libraries\MultiDB;
+use App\Models\Client;
use App\Models\ClientContact;
use App\Models\CompanyToken;
-use Closure;
use Auth;
+use Closure;
class ContactKeyLogin
{
/**
* Handle an incoming request.
*
+ * Sets a contact LOGGED IN if an appropriate client_hash is provided as a query parameter
+ * OR
+ * If the contact_key is provided in the route
+ *
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
@@ -47,6 +52,25 @@ class ContactKeyLogin
return redirect()->to('client/dashboard');
}
+ }
+ else if($request->has('client_hash') && config('ninja.db.multi_db_enabled')){
+
+ if (MultiDB::findAndSetDbByClientHash($request->input('client_hash'))) {
+
+ $client = Client::where('client_hash', $request->input('client_hash'))->first();
+ Auth::guard('contact')->login($client->primary_contact()->first(), true);
+ return redirect()->to('client/dashboard');
+
+ }
+
+ }
+ else if($request->has('client_hash')){
+
+ if($client = Client::where('client_hash', $request->input('client_hash'))->first()){
+ Auth::guard('contact')->login($client->primary_contact()->first(), true);
+ return redirect()->to('client/dashboard');
+ }
+
}
return $next($request);
diff --git a/app/Http/Middleware/TrustProxies.php b/app/Http/Middleware/TrustProxies.php
index d86aec22a8e8..82fd6890763e 100644
--- a/app/Http/Middleware/TrustProxies.php
+++ b/app/Http/Middleware/TrustProxies.php
@@ -13,6 +13,7 @@ namespace App\Http\Middleware;
use Fideloper\Proxy\TrustProxies as Middleware;
use Illuminate\Http\Request;
+use Illuminate\Contracts\Config\Repository;
class TrustProxies extends Middleware
{
@@ -29,4 +30,18 @@ class TrustProxies extends Middleware
* @var int
*/
protected $headers = Request::HEADER_X_FORWARDED_ALL;
+
+ /*
+ * Instantiate trusted proxies middleware
+ *
+ * @param \Illuminate\Contracts\Config\Repository $config
+ */
+ public function __construct(Repository $config) {
+
+ parent::__construct($config);
+
+ if (config('ninja.trusted_proxies'))
+ $this->proxies = config('ninja.trusted_proxies');
+
+ }
}
diff --git a/app/Http/Requests/RecurringInvoice/StoreRecurringInvoiceRequest.php b/app/Http/Requests/RecurringInvoice/StoreRecurringInvoiceRequest.php
index 3e290847fed3..f92ef7dd3dd8 100644
--- a/app/Http/Requests/RecurringInvoice/StoreRecurringInvoiceRequest.php
+++ b/app/Http/Requests/RecurringInvoice/StoreRecurringInvoiceRequest.php
@@ -100,7 +100,7 @@ class StoreRecurringInvoiceRequest extends Request
if(isset($input['auto_bill']))
$input['auto_bill_enabled'] = $this->setAutoBillFlag($input['auto_bill']);
else{
- $client = Client::find($this->decodePrimaryKey($input['client_id']));
+ $client = Client::find($input['client_id']);
$input['auto_bill'] = $client->getSetting('auto_bill');
}
diff --git a/app/Jobs/Util/Import.php b/app/Jobs/Util/Import.php
index 414a268a5ad1..f4b667d2133a 100644
--- a/app/Jobs/Util/Import.php
+++ b/app/Jobs/Util/Import.php
@@ -130,7 +130,7 @@ class Import implements ShouldQueue
public $timeout = 86400;
- public $retryAfter = 86430;
+ public $backoff = 86430;
/**
* Create a new job instance.
diff --git a/app/Jobs/Util/StartMigration.php b/app/Jobs/Util/StartMigration.php
index 67f2f348500c..e17bedc3de4d 100644
--- a/app/Jobs/Util/StartMigration.php
+++ b/app/Jobs/Util/StartMigration.php
@@ -54,7 +54,7 @@ class StartMigration implements ShouldQueue
public $timeout = 86400;
- public $retryAfter = 86430;
+ public $backoff = 86430;
public function __construct($filepath, User $user, Company $company)
{
diff --git a/app/Libraries/MultiDB.php b/app/Libraries/MultiDB.php
index 7aebf248f026..ad997d15c22c 100644
--- a/app/Libraries/MultiDB.php
+++ b/app/Libraries/MultiDB.php
@@ -11,6 +11,7 @@
namespace App\Libraries;
+use App\Models\Client;
use App\Models\ClientContact;
use App\Models\Company;
use App\Models\CompanyToken;
@@ -200,7 +201,6 @@ class MultiDB
foreach (self::$dbs as $db) {
if ($client_contact = ClientContact::on($db)->where('contact_key', $contact_key)->first()) {
self::setDb($client_contact->company->db);
-
return true;
}
}
@@ -208,6 +208,17 @@ class MultiDB
return false;
}
+ public static function findAndSetDbByClientHash($client_hash) :bool
+ {
+ foreach (self::$dbs as $db) {
+ if ($client = Client::on($db)->where('client_hash', $client_hash)->first()) {
+ self::setDb($client->company->db);
+ return true;
+ }
+ }
+
+ return false;
+ }
public static function findAndSetDbByDomain($subdomain) :bool
{
diff --git a/app/Listeners/User/DeletedUserActivity.php b/app/Listeners/User/DeletedUserActivity.php
index 25e567fe1754..d5261f260350 100644
--- a/app/Listeners/User/DeletedUserActivity.php
+++ b/app/Listeners/User/DeletedUserActivity.php
@@ -48,7 +48,7 @@ class DeletedUserActivity implements ShouldQueue
$fields = new \stdClass;
- if (auth()->user()->id) {
+ if (auth()->check()) {
$fields->user_id = auth()->user()->id;
} else {
$fields->user_id = $event->user->id;
diff --git a/app/Mail/TemplateEmail.php b/app/Mail/TemplateEmail.php
index 2a4e42aabef3..f8e1a1079a77 100644
--- a/app/Mail/TemplateEmail.php
+++ b/app/Mail/TemplateEmail.php
@@ -70,6 +70,7 @@ class TemplateEmail extends Mailable
'signature' => $settings->email_signature,
'settings' => $settings,
'company' => $company,
+ 'whitelabel' => $this->client->user->account->isPaid() ? true : false,
]);
//conditionally attach files
diff --git a/app/Models/BaseModel.php b/app/Models/BaseModel.php
index 4168182315fb..d6ea195907cc 100644
--- a/app/Models/BaseModel.php
+++ b/app/Models/BaseModel.php
@@ -24,12 +24,14 @@ use Illuminate\Database\Eloquent\ModelNotFoundException as ModelNotFoundExceptio
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Support\Carbon;
use Illuminate\Support\Facades\Log;
+use Illuminate\Database\Eloquent\Factories\HasFactory;
class BaseModel extends Model
{
use MakesHash;
use UserSessionAttributes;
-
+ use HasFactory;
+
//todo customise names of archived_at / updated_at columns
///const CREATED_AT = 'creation_date';
//const UPDATED_AT = 'last_update';
diff --git a/app/Models/ClientContact.php b/app/Models/ClientContact.php
index b6403d967210..022649b94b98 100644
--- a/app/Models/ClientContact.php
+++ b/app/Models/ClientContact.php
@@ -14,12 +14,13 @@ namespace App\Models;
use App\Models\Company;
use App\Models\Language;
use App\Models\User;
-use App\Notifications\ClientContactResetPassword;
use App\Notifications\ClientContactResetPassword as ResetPasswordNotification;
+use App\Notifications\ClientContactResetPassword;
use App\Utils\Traits\MakesHash;
use Hashids\Hashids;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Contracts\Translation\HasLocalePreference;
+use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
@@ -33,7 +34,8 @@ class ClientContact extends Authenticatable implements HasLocalePreference
use MakesHash;
use PresentableTrait;
use SoftDeletes;
-
+ use HasFactory;
+
/* Used to authenticate a contact */
protected $guard = 'contact';
@@ -198,4 +200,20 @@ class ClientContact extends Authenticatable implements HasLocalePreference
return asset('images/svg/user.svg');
}
+
+ /**
+ * Provides a convenience login click for contacts to bypass the
+ * contact authentication layer
+ *
+ * @return string URL
+ */
+ public function getLoginLink()
+ {
+
+ $domain = isset($this->company->portal_domain) ?: $this->company->domain();
+
+ return $domain . 'client/key_login/' . $this->contact_key;
+
+ }
+
}
diff --git a/app/Models/Company.php b/app/Models/Company.php
index 54b9c7d7f928..176c6139a651 100644
--- a/app/Models/Company.php
+++ b/app/Models/Company.php
@@ -426,7 +426,7 @@ class Company extends BaseModel
public function domain()
{
if (Ninja::isNinja()) {
- return $this->subdomain.config('ninja.app_domain');
+ return $this->subdomain . config('ninja.app_domain');
}
return config('ninja.app_url');
diff --git a/app/Models/Gateway.php b/app/Models/Gateway.php
index f6673e793494..f658e84fa15a 100644
--- a/app/Models/Gateway.php
+++ b/app/Models/Gateway.php
@@ -72,13 +72,15 @@ class Gateway extends StaticModel
$link = 'https://dashboard.stripe.com/account/apikeys';
}
- $key = 'texts.gateway_help_'.$this->id;
- $str = trans($key, [
- 'link' => "Click here",
- 'complete_link' => url('/complete'),
- ]);
+ // $key = 'texts.gateway_help_'.$this->id;
+ // $str = trans($key, [
+ // 'link' => "Click here",
+ // 'complete_link' => url('/complete'),
+ // ]);
- return $key != $str ? $str : '';
+ return $link;
+
+ //return $key != $str ? $str : '';
}
}
diff --git a/app/Models/User.php b/app/Models/User.php
index 0e0df23ca4ae..dd2b77a9cbe0 100644
--- a/app/Models/User.php
+++ b/app/Models/User.php
@@ -22,6 +22,7 @@ use App\Utils\Traits\UserSessionAttributes;
use App\Utils\Traits\UserSettings;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Contracts\Translation\HasLocalePreference;
+use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
@@ -40,7 +41,8 @@ class User extends Authenticatable implements MustVerifyEmail
use UserSettings;
use Filterable;
use \Staudenmeir\EloquentHasManyDeep\HasRelationships;
-
+ use HasFactory;
+
protected $guard = 'user';
protected $dates = ['deleted_at'];
diff --git a/app/Models/VendorContact.php b/app/Models/VendorContact.php
index 7240059df922..a37d1b4b6d6e 100644
--- a/app/Models/VendorContact.php
+++ b/app/Models/VendorContact.php
@@ -14,12 +14,13 @@ namespace App\Models;
use App\Models\Company;
use App\Models\Language;
use App\Models\User;
-use App\Notifications\ClientContactResetPassword;
use App\Notifications\ClientContactResetPassword as ResetPasswordNotification;
+use App\Notifications\ClientContactResetPassword;
use App\Utils\Traits\MakesHash;
use Hashids\Hashids;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Contracts\Translation\HasLocalePreference;
+use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
@@ -33,6 +34,7 @@ class VendorContact extends Authenticatable implements HasLocalePreference
use MakesHash;
use PresentableTrait;
use SoftDeletes;
+ use HasFactory;
/* Used to authenticate a vendor */
protected $guard = 'vendor';
diff --git a/app/Transformers/ClientContactTransformer.php b/app/Transformers/ClientContactTransformer.php
index 6161c383f4e0..738a90d5ee40 100644
--- a/app/Transformers/ClientContactTransformer.php
+++ b/app/Transformers/ClientContactTransformer.php
@@ -47,6 +47,7 @@ class ClientContactTransformer extends EntityTransformer
'send_email' => (bool) $contact->send_email,
'last_login' => (int) $contact->last_login,
'password' => empty($contact->password) ? '' : '**********',
+ 'link' => $contact->getLoginLink(),
];
}
}
diff --git a/app/Utils/Helpers.php b/app/Utils/Helpers.php
index ef28f19440dc..38bc2feacc9b 100644
--- a/app/Utils/Helpers.php
+++ b/app/Utils/Helpers.php
@@ -16,8 +16,18 @@ use App\Models\Client;
class Helpers
{
- public static function sharedEmailVariables(Client $client, array $settings = null): array
+ public static function sharedEmailVariables(?Client $client, array $settings = null): array
{
+ if(!$client){
+
+ $elements['signature'] = '';
+ $elements['settings'] = new \stdClass;
+ $elements['whitelabel'] = true;
+
+ return $elements;
+
+ }
+
$_settings = is_null($settings) ? $client->getMergedSettings() : $settings;
$elements['signature'] = $_settings->email_signature;
diff --git a/app/Utils/HtmlEngine.php b/app/Utils/HtmlEngine.php
index 033c8a1ae8dd..a1c75a71ef5b 100644
--- a/app/Utils/HtmlEngine.php
+++ b/app/Utils/HtmlEngine.php
@@ -162,7 +162,7 @@ class HtmlEngine
$data['$quote.amount'] = ['value' => Number::formatMoney($this->entity_calc->getTotal(), $this->client) ?: ' ', 'label' => ctrans('texts.quote_total')];
$data['$credit.total'] = ['value' => Number::formatMoney($this->entity_calc->getTotal(), $this->client) ?: ' ', 'label' => ctrans('texts.credit_total')];
$data['$credit.number'] = ['value' => $this->entity->number ?: ' ', 'label' => ctrans('texts.credit_number')];
- $data['$credit.amount'] = &$data['$credit.total'];
+ $data['$credit.total'] = &$data['$credit.total'];
$data['$credit.po_number'] = &$data['$invoice.po_number'];
$data['$credit.date'] = ['value' => $this->entity->date, 'label' => ctrans('texts.credit_date')];
$data['$balance'] = ['value' => Number::formatMoney($this->entity_calc->getBalance(), $this->client) ?: ' ', 'label' => ctrans('texts.balance')];
diff --git a/app/Utils/Traits/MakesInvoiceValues.php b/app/Utils/Traits/MakesInvoiceValues.php
index b958be54a098..bc1f50d46920 100644
--- a/app/Utils/Traits/MakesInvoiceValues.php
+++ b/app/Utils/Traits/MakesInvoiceValues.php
@@ -253,7 +253,7 @@ trait MakesInvoiceValues
$data['$quote.amount'] = ['value' => Number::formatMoney($calc->getTotal(), $this->client) ?: ' ', 'label' => ctrans('texts.quote_total')];
$data['$credit.total'] = ['value' => Number::formatMoney($calc->getTotal(), $this->client) ?: ' ', 'label' => ctrans('texts.credit_total')];
$data['$credit.number'] = ['value' => $this->number ?: ' ', 'label' => ctrans('texts.credit_number')];
- $data['$credit.amount'] = &$data['$credit.total'];
+ $data['$credit.total'] = &$data['$credit.total'];
$data['$credit.po_number'] = &$data['$invoice.po_number'];
$data['$credit.date'] = ['value' => $this->date, 'label' => ctrans('texts.credit_date')];
$data['$balance'] = ['value' => Number::formatMoney($calc->getBalance(), $this->client) ?: ' ', 'label' => ctrans('texts.balance')];
diff --git a/app/Utils/Traits/MakesTemplateData.php b/app/Utils/Traits/MakesTemplateData.php
index dc8e63ca1284..edf69302edc1 100644
--- a/app/Utils/Traits/MakesTemplateData.php
+++ b/app/Utils/Traits/MakesTemplateData.php
@@ -96,7 +96,7 @@ trait MakesTemplateData
$data['$quote_total'] = ['value' => '$100.00', 'label' => ctrans('texts.quote_total')];
$data['$quote.amount'] = &$data['$quote_total'];
$data['$credit_total'] = ['value' => '$100.00', 'label' => ctrans('texts.credit_total')];
- $data['$credit.amount'] = &$data['$credit_total'];
+ $data['$credit.total'] = &$data['$credit_total'];
$data['$balance'] = ['value' => '$100.00', 'label' => ctrans('texts.balance')];
$data['$invoice.balance'] = &$data['$balance'];
$data['$taxes'] = ['value' => '$10.00', 'label' => ctrans('texts.taxes')];
diff --git a/app/Utils/Traits/Recurring/HasRecurrence.php b/app/Utils/Traits/Recurring/HasRecurrence.php
index e56bdcb00ab2..0a553c30ada1 100644
--- a/app/Utils/Traits/Recurring/HasRecurrence.php
+++ b/app/Utils/Traits/Recurring/HasRecurrence.php
@@ -53,8 +53,12 @@ trait HasRecurrence
*/
public function setDayOfMonth($date, $day_of_month)
{
+ info($date);
+
$carbon_date = Carbon::parse($date);
+ info($carbon_date);
+
$set_date = $carbon_date->copy()->setUnitNoOverflow('day', $day_of_month, 'month');
//If the set date is less than the original date we need to add a month.
diff --git a/composer.json b/composer.json
index 16f66a253cb5..7316737155a7 100644
--- a/composer.json
+++ b/composer.json
@@ -3,7 +3,13 @@
"description": "Invoices, expenses & time-tracking built with Laravel",
"keywords": [
"invoice",
- "laravel"
+ "laravel",
+ "invoicing",
+ "time tracking",
+ "expenses",
+ "CRM",
+ "Credit card billing",
+ "projects"
],
"license": "Attribution Assurance License",
"authors": [
@@ -26,19 +32,19 @@
"cleverit/ubl_invoice": "^1.3",
"composer/composer": "^1.10",
"czproject/git-php": "^3.17",
- "dacastro4/laravel-gmail": "^4.0",
+ "turbo124/laravel-gmail": "^5.0",
"doctrine/dbal": "^2.10",
"fedeisas/laravel-mail-css-inliner": "^3",
"fideloper/proxy": "^4.2",
"fzaninotto/faker": "^1.4",
"google/apiclient": "^2.7",
- "guzzlehttp/guzzle": "^6.5",
+ "guzzlehttp/guzzle": "^7.0.1",
"hashids/hashids": "^3.0",
"intervention/image": "^2.5",
"laracasts/presenter": "^0.2.1",
- "laravel/framework": "^7.27",
+ "laravel/framework": "^8.0",
"laravel/slack-notification-channel": "^2.2",
- "laravel/socialite": "^4.4",
+ "laravel/socialite": "^5",
"laravel/tinker": "^2.0",
"league/flysystem-aws-s3-v3": "~1.0",
"league/flysystem-cached-adapter": "^1.1",
@@ -49,33 +55,31 @@
"nwidart/laravel-modules": "^6.0",
"omnipay/paypal": "^3.0",
"predis/predis": "^1.1",
- "sentry/sentry-laravel": "^1.8",
+ "sentry/sentry-laravel": "^2",
"spatie/browsershot": "^3.37",
"staudenmeir/eloquent-has-many-deep": "^1.11",
"stripe/stripe-php": "^7.50",
"turbo124/beacon": "^1",
"webpatser/laravel-countries": "dev-master#75992ad",
- "laravel/ui": "^2.0"
+ "laravel/ui": "^3.0"
},
"require-dev": {
- "wildbit/postmark-php": "^2.6",
+ "wildbit/postmark-php": "^4.0",
"anahkiasen/former": "^4.2",
"barryvdh/laravel-debugbar": "^3.4",
- "darkaonline/l5-swagger": "^7.0",
+ "darkaonline/l5-swagger": "^8.0",
"filp/whoops": "^2.7",
"mockery/mockery": "^1.3.1",
- "nunomaduro/collision": "^4.1",
- "phpunit/phpunit": "^8.5",
+ "nunomaduro/collision": "^5.0",
+ "phpunit/phpunit": "^9.0",
"fzaninotto/faker": "^1.9.1",
- "facade/ignition": "^2.0"
+ "facade/ignition": "^2.3.6"
},
"autoload": {
- "classmap": [
- "database/seeds",
- "database/factories"
- ],
"psr-4": {
- "App\\": "app/"
+ "App\\": "app/",
+ "Database\\Factories\\": "database/factories/",
+ "Database\\Seeders\\": "database/seeders/"
},
"files": [
"app/Libraries/OFX.php"
diff --git a/composer.lock b/composer.lock
index 7a341cde05f3..c344f50e9f4c 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": "897c03f97efca6c6540700216fa6d789",
+ "content-hash": "19f006e6cdd0058bf409d67ed6814437",
"packages": [
{
"name": "asgrim/ofxparser",
@@ -108,16 +108,16 @@
},
{
"name": "aws/aws-sdk-php",
- "version": "3.155.1",
+ "version": "3.157.0",
"source": {
"type": "git",
"url": "https://github.com/aws/aws-sdk-php.git",
- "reference": "575430a46c329a2a3723cdcb2d30df390f434ba1"
+ "reference": "ad2c0183d7ebc695acb1ba39d528f2328f2c0de3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/575430a46c329a2a3723cdcb2d30df390f434ba1",
- "reference": "575430a46c329a2a3723cdcb2d30df390f434ba1",
+ "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/ad2c0183d7ebc695acb1ba39d528f2328f2c0de3",
+ "reference": "ad2c0183d7ebc695acb1ba39d528f2328f2c0de3",
"shasum": ""
},
"require": {
@@ -189,7 +189,7 @@
"s3",
"sdk"
],
- "time": "2020-09-23T18:11:33+00:00"
+ "time": "2020-09-30T18:58:20+00:00"
},
{
"name": "brick/math",
@@ -245,16 +245,16 @@
},
{
"name": "checkout/checkout-sdk-php",
- "version": "1.0.10",
+ "version": "1.0.12",
"source": {
"type": "git",
"url": "https://github.com/checkout/checkout-sdk-php.git",
- "reference": "837f9622165f3ae4f9fdf8d0eca5da2ec46984fa"
+ "reference": "980b10922979380293251627a11b991f36fd646a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/checkout/checkout-sdk-php/zipball/837f9622165f3ae4f9fdf8d0eca5da2ec46984fa",
- "reference": "837f9622165f3ae4f9fdf8d0eca5da2ec46984fa",
+ "url": "https://api.github.com/repos/checkout/checkout-sdk-php/zipball/980b10922979380293251627a11b991f36fd646a",
+ "reference": "980b10922979380293251627a11b991f36fd646a",
"shasum": ""
},
"require": {
@@ -296,7 +296,7 @@
"php",
"sdk"
],
- "time": "2020-09-17T15:39:25+00:00"
+ "time": "2020-09-24T17:26:52+00:00"
},
{
"name": "cleverit/ubl_invoice",
@@ -640,16 +640,16 @@
},
{
"name": "composer/semver",
- "version": "1.7.0",
+ "version": "1.7.1",
"source": {
"type": "git",
"url": "https://github.com/composer/semver.git",
- "reference": "114f819054a2ea7db03287f5efb757e2af6e4079"
+ "reference": "38276325bd896f90dfcfe30029aa5db40df387a7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/semver/zipball/114f819054a2ea7db03287f5efb757e2af6e4079",
- "reference": "114f819054a2ea7db03287f5efb757e2af6e4079",
+ "url": "https://api.github.com/repos/composer/semver/zipball/38276325bd896f90dfcfe30029aa5db40df387a7",
+ "reference": "38276325bd896f90dfcfe30029aa5db40df387a7",
"shasum": ""
},
"require": {
@@ -711,7 +711,7 @@
"type": "tidelift"
}
],
- "time": "2020-09-09T09:34:06+00:00"
+ "time": "2020-09-27T13:13:07+00:00"
},
{
"name": "composer/spdx-licenses",
@@ -887,72 +887,6 @@
],
"time": "2020-07-03T08:02:12+00:00"
},
- {
- "name": "dacastro4/laravel-gmail",
- "version": "v4.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/dacastro4/laravel-gmail.git",
- "reference": "a9c786908f9b6dd127293050f703734e2aa2effa"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/dacastro4/laravel-gmail/zipball/a9c786908f9b6dd127293050f703734e2aa2effa",
- "reference": "a9c786908f9b6dd127293050f703734e2aa2effa",
- "shasum": ""
- },
- "require": {
- "google/apiclient": "^2.5",
- "illuminate/auth": "~5.8|^6.0|^7.0",
- "illuminate/config": "~5.8|^6.0|^7.0",
- "illuminate/database": "~5.8|^6.0|^7.0",
- "illuminate/routing": "~5.8|^6.0|^7.0",
- "illuminate/session": "~5.8|^6.0|^7.0",
- "illuminate/support": "~5.8|^6.0|^7.0",
- "php": "^7.2",
- "swiftmailer/swiftmailer": "~5.8|^6.0"
- },
- "require-dev": {
- "mockery/mockery": "^1.0",
- "orchestra/testbench": "^4.0",
- "phpunit/phpunit": "^8.5",
- "squizlabs/php_codesniffer": "~3.4"
- },
- "type": "library",
- "extra": {
- "laravel": {
- "providers": [
- "Dacastro4\\LaravelGmail\\LaravelGmailServiceProvider"
- ],
- "aliases": {
- "LaravelGmail": "Dacastro4\\LaravelGmail\\Facade\\LaravelGmail"
- }
- }
- },
- "autoload": {
- "psr-4": {
- "Dacastro4\\LaravelGmail\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Daniel Castro",
- "email": "danielcastro04@gmail.com",
- "homepage": "https://danielcastro.me"
- }
- ],
- "description": "Gmail API package for Laravel",
- "keywords": [
- "api",
- "gmail",
- "laravel"
- ],
- "time": "2020-06-26T19:04:57+00:00"
- },
{
"name": "dnoegel/php-xdg-base-dir",
"version": "v0.1.1",
@@ -1084,16 +1018,16 @@
},
{
"name": "doctrine/dbal",
- "version": "2.11.0",
+ "version": "2.11.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/dbal.git",
- "reference": "0d4e1a8b29dd987704842f0465aded378f441dca"
+ "reference": "6e6903cd5e3a5be60a79439e3ee8fe126f78fe86"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/dbal/zipball/0d4e1a8b29dd987704842f0465aded378f441dca",
- "reference": "0d4e1a8b29dd987704842f0465aded378f441dca",
+ "url": "https://api.github.com/repos/doctrine/dbal/zipball/6e6903cd5e3a5be60a79439e3ee8fe126f78fe86",
+ "reference": "6e6903cd5e3a5be60a79439e3ee8fe126f78fe86",
"shasum": ""
},
"require": {
@@ -1188,7 +1122,7 @@
"type": "tidelift"
}
],
- "time": "2020-09-20T23:24:53+00:00"
+ "time": "2020-09-27T04:09:41+00:00"
},
{
"name": "doctrine/event-manager",
@@ -1449,30 +1383,29 @@
},
{
"name": "dragonmantank/cron-expression",
- "version": "v2.3.0",
+ "version": "3.0.1",
"source": {
"type": "git",
"url": "https://github.com/dragonmantank/cron-expression.git",
- "reference": "72b6fbf76adb3cf5bc0db68559b33d41219aba27"
+ "reference": "fa4e95ff5a7f1d62c3fbc05c32729b7f3ca14b52"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/72b6fbf76adb3cf5bc0db68559b33d41219aba27",
- "reference": "72b6fbf76adb3cf5bc0db68559b33d41219aba27",
+ "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/fa4e95ff5a7f1d62c3fbc05c32729b7f3ca14b52",
+ "reference": "fa4e95ff5a7f1d62c3fbc05c32729b7f3ca14b52",
"shasum": ""
},
"require": {
- "php": "^7.0"
+ "php": "^7.1"
+ },
+ "replace": {
+ "mtdowling/cron-expression": "^1.0"
},
"require-dev": {
+ "phpstan/phpstan": "^0.11",
"phpunit/phpunit": "^6.4|^7.0"
},
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.3-dev"
- }
- },
"autoload": {
"psr-4": {
"Cron\\": "src/Cron/"
@@ -1483,11 +1416,6 @@
"MIT"
],
"authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- },
{
"name": "Chris Tankersley",
"email": "chris@ctankersley.com",
@@ -1499,20 +1427,26 @@
"cron",
"schedule"
],
- "time": "2019-03-31T00:38:28+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/dragonmantank",
+ "type": "github"
+ }
+ ],
+ "time": "2020-08-21T02:30:13+00:00"
},
{
"name": "egulias/email-validator",
- "version": "2.1.21",
+ "version": "2.1.22",
"source": {
"type": "git",
"url": "https://github.com/egulias/EmailValidator.git",
- "reference": "563d0cdde5d862235ffe24a158497f4d490191b5"
+ "reference": "68e418ec08fbfc6f58f6fd2eea70ca8efc8cc7d5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/563d0cdde5d862235ffe24a158497f4d490191b5",
- "reference": "563d0cdde5d862235ffe24a158497f4d490191b5",
+ "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/68e418ec08fbfc6f58f6fd2eea70ca8efc8cc7d5",
+ "reference": "68e418ec08fbfc6f58f6fd2eea70ca8efc8cc7d5",
"shasum": ""
},
"require": {
@@ -1557,7 +1491,7 @@
"validation",
"validator"
],
- "time": "2020-09-19T14:37:56+00:00"
+ "time": "2020-09-26T15:48:38+00:00"
},
{
"name": "fedeisas/laravel-mail-css-inliner",
@@ -1833,16 +1767,16 @@
},
{
"name": "google/apiclient-services",
- "version": "v0.147",
+ "version": "v0.148",
"source": {
"type": "git",
"url": "https://github.com/googleapis/google-api-php-client-services.git",
- "reference": "8624bd004cfccb33b760ae7650d0b750168cd7f7"
+ "reference": "692a8d4c6a89458570e0d804624c50120cdd6388"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/8624bd004cfccb33b760ae7650d0b750168cd7f7",
- "reference": "8624bd004cfccb33b760ae7650d0b750168cd7f7",
+ "url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/692a8d4c6a89458570e0d804624c50120cdd6388",
+ "reference": "692a8d4c6a89458570e0d804624c50120cdd6388",
"shasum": ""
},
"require": {
@@ -1866,7 +1800,7 @@
"keywords": [
"google"
],
- "time": "2020-09-20T00:24:43+00:00"
+ "time": "2020-09-26T00:26:16+00:00"
},
{
"name": "google/auth",
@@ -1921,38 +1855,106 @@
"time": "2020-09-18T20:03:05+00:00"
},
{
- "name": "guzzlehttp/guzzle",
- "version": "6.5.5",
+ "name": "graham-campbell/result-type",
+ "version": "v1.0.1",
"source": {
"type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e"
+ "url": "https://github.com/GrahamCampbell/Result-Type.git",
+ "reference": "7e279d2cd5d7fbb156ce46daada972355cea27bb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/9d4290de1cfd701f38099ef7e183b64b4b7b0c5e",
- "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e",
+ "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/7e279d2cd5d7fbb156ce46daada972355cea27bb",
+ "reference": "7e279d2cd5d7fbb156ce46daada972355cea27bb",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.0|^8.0",
+ "phpoption/phpoption": "^1.7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^6.5|^7.5|^8.5|^9.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "GrahamCampbell\\ResultType\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Graham Campbell",
+ "email": "graham@alt-three.com"
+ }
+ ],
+ "description": "An Implementation Of The Result Type",
+ "keywords": [
+ "Graham Campbell",
+ "GrahamCampbell",
+ "Result Type",
+ "Result-Type",
+ "result"
+ ],
+ "funding": [
+ {
+ "url": "https://github.com/GrahamCampbell",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2020-04-13T13:17:36+00:00"
+ },
+ {
+ "name": "guzzlehttp/guzzle",
+ "version": "7.1.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/guzzle/guzzle.git",
+ "reference": "7427d6f99df41cc01f33cd59832f721c150ffdf3"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/guzzle/guzzle/zipball/7427d6f99df41cc01f33cd59832f721c150ffdf3",
+ "reference": "7427d6f99df41cc01f33cd59832f721c150ffdf3",
"shasum": ""
},
"require": {
"ext-json": "*",
"guzzlehttp/promises": "^1.0",
"guzzlehttp/psr7": "^1.6.1",
- "php": ">=5.5",
- "symfony/polyfill-intl-idn": "^1.17.0"
+ "php": "^7.2.5",
+ "psr/http-client": "^1.0"
+ },
+ "provide": {
+ "psr/http-client-implementation": "1.0"
},
"require-dev": {
"ext-curl": "*",
- "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.4 || ^7.0",
+ "php-http/client-integration-tests": "dev-phpunit8",
+ "phpunit/phpunit": "^8.5.5",
"psr/log": "^1.1"
},
"suggest": {
+ "ext-curl": "Required for CURL handler support",
+ "ext-intl": "Required for Internationalized Domain Name (IDN) support",
"psr/log": "Required for using the Log middleware"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "6.5-dev"
+ "dev-master": "7.1-dev"
}
},
"autoload": {
@@ -1972,6 +1974,11 @@
"name": "Michael Dowling",
"email": "mtdowling@gmail.com",
"homepage": "https://github.com/mtdowling"
+ },
+ {
+ "name": "Márk Sági-Kazár",
+ "email": "mark.sagikazar@gmail.com",
+ "homepage": "https://sagikazarmark.hu"
}
],
"description": "Guzzle is a PHP HTTP client library",
@@ -1982,30 +1989,50 @@
"framework",
"http",
"http client",
+ "psr-18",
+ "psr-7",
"rest",
"web service"
],
- "time": "2020-06-16T21:01:06+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/GrahamCampbell",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/Nyholm",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/alexeyshockov",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/gmponos",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-30T08:51:17+00:00"
},
{
"name": "guzzlehttp/promises",
- "version": "v1.3.1",
+ "version": "1.4.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/promises.git",
- "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646"
+ "reference": "60d379c243457e073cff02bc323a2a86cb355631"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/a59da6cf61d80060647ff4d3eb2c03a2bc694646",
- "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646",
+ "url": "https://api.github.com/repos/guzzle/promises/zipball/60d379c243457e073cff02bc323a2a86cb355631",
+ "reference": "60d379c243457e073cff02bc323a2a86cb355631",
"shasum": ""
},
"require": {
- "php": ">=5.5.0"
+ "php": ">=5.5"
},
"require-dev": {
- "phpunit/phpunit": "^4.0"
+ "symfony/phpunit-bridge": "^4.4 || ^5.1"
},
"type": "library",
"extra": {
@@ -2036,20 +2063,20 @@
"keywords": [
"promise"
],
- "time": "2016-12-20T10:07:11+00:00"
+ "time": "2020-09-30T07:37:28+00:00"
},
{
"name": "guzzlehttp/psr7",
- "version": "1.6.1",
+ "version": "1.7.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
- "reference": "239400de7a173fe9901b9ac7c06497751f00727a"
+ "reference": "53330f47520498c0ae1f61f7e2c90f55690c06a3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a",
- "reference": "239400de7a173fe9901b9ac7c06497751f00727a",
+ "url": "https://api.github.com/repos/guzzle/psr7/zipball/53330f47520498c0ae1f61f7e2c90f55690c06a3",
+ "reference": "53330f47520498c0ae1f61f7e2c90f55690c06a3",
"shasum": ""
},
"require": {
@@ -2062,15 +2089,15 @@
},
"require-dev": {
"ext-zlib": "*",
- "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8"
+ "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.10"
},
"suggest": {
- "zendframework/zend-httphandlerrunner": "Emit PSR-7 responses"
+ "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.6-dev"
+ "dev-master": "1.7-dev"
}
},
"autoload": {
@@ -2107,7 +2134,7 @@
"uri",
"url"
],
- "time": "2019-07-01T23:21:34+00:00"
+ "time": "2020-09-30T07:37:11+00:00"
},
{
"name": "hashids/hashids",
@@ -2460,21 +2487,21 @@
},
{
"name": "laravel/framework",
- "version": "v7.28.3",
+ "version": "v8.7.1",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
- "reference": "b0942c391975972b1a54b2dc983e33a239f169a9"
+ "reference": "3fb29e904a152b3e1fe49581f66ba5e02fe991f2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/framework/zipball/b0942c391975972b1a54b2dc983e33a239f169a9",
- "reference": "b0942c391975972b1a54b2dc983e33a239f169a9",
+ "url": "https://api.github.com/repos/laravel/framework/zipball/3fb29e904a152b3e1fe49581f66ba5e02fe991f2",
+ "reference": "3fb29e904a152b3e1fe49581f66ba5e02fe991f2",
"shasum": ""
},
"require": {
"doctrine/inflector": "^1.4|^2.0",
- "dragonmantank/cron-expression": "^2.0",
+ "dragonmantank/cron-expression": "^3.0",
"egulias/email-validator": "^2.1.10",
"ext-json": "*",
"ext-mbstring": "*",
@@ -2483,24 +2510,23 @@
"league/flysystem": "^1.0.34",
"monolog/monolog": "^2.0",
"nesbot/carbon": "^2.17",
- "opis/closure": "^3.1",
- "php": "^7.2.5",
+ "opis/closure": "^3.5.3",
+ "php": "^7.3",
"psr/container": "^1.0",
"psr/simple-cache": "^1.0",
- "ramsey/uuid": "^3.7|^4.0",
+ "ramsey/uuid": "^4.0",
"swiftmailer/swiftmailer": "^6.0",
- "symfony/console": "^5.0",
- "symfony/error-handler": "^5.0",
- "symfony/finder": "^5.0",
- "symfony/http-foundation": "^5.0",
- "symfony/http-kernel": "^5.0",
- "symfony/mime": "^5.0",
- "symfony/polyfill-php73": "^1.17",
- "symfony/process": "^5.0",
- "symfony/routing": "^5.0",
- "symfony/var-dumper": "^5.0",
+ "symfony/console": "^5.1",
+ "symfony/error-handler": "^5.1",
+ "symfony/finder": "^5.1",
+ "symfony/http-foundation": "^5.1",
+ "symfony/http-kernel": "^5.1",
+ "symfony/mime": "^5.1",
+ "symfony/process": "^5.1",
+ "symfony/routing": "^5.1",
+ "symfony/var-dumper": "^5.1",
"tijsverkoyen/css-to-inline-styles": "^2.2.2",
- "vlucas/phpdotenv": "^4.0",
+ "vlucas/phpdotenv": "^5.2",
"voku/portable-ascii": "^1.4.8"
},
"conflict": {
@@ -2514,6 +2540,7 @@
"illuminate/broadcasting": "self.version",
"illuminate/bus": "self.version",
"illuminate/cache": "self.version",
+ "illuminate/collections": "self.version",
"illuminate/config": "self.version",
"illuminate/console": "self.version",
"illuminate/container": "self.version",
@@ -2526,6 +2553,7 @@
"illuminate/hashing": "self.version",
"illuminate/http": "self.version",
"illuminate/log": "self.version",
+ "illuminate/macroable": "self.version",
"illuminate/mail": "self.version",
"illuminate/notifications": "self.version",
"illuminate/pagination": "self.version",
@@ -2544,15 +2572,14 @@
"aws/aws-sdk-php": "^3.0",
"doctrine/dbal": "^2.6",
"filp/whoops": "^2.4",
- "guzzlehttp/guzzle": "^6.3.1|^7.0",
+ "guzzlehttp/guzzle": "^6.5.5|^7.0.1",
"league/flysystem-cached-adapter": "^1.0",
"mockery/mockery": "^1.3.1",
- "moontoast/math": "^1.1",
- "orchestra/testbench-core": "^5.0",
+ "orchestra/testbench-core": "^6.0",
"pda/pheanstalk": "^4.0",
"phpunit/phpunit": "^8.4|^9.0",
"predis/predis": "^1.1.1",
- "symfony/cache": "^5.0"
+ "symfony/cache": "^5.1"
},
"suggest": {
"aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage and SES mail driver (^3.0).",
@@ -2565,37 +2592,42 @@
"ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).",
"filp/whoops": "Required for friendly error pages in development (^2.4).",
"fzaninotto/faker": "Required to use the eloquent factory builder (^1.9.1).",
- "guzzlehttp/guzzle": "Required to use the HTTP Client, Mailgun mail driver and the ping methods on schedules (^6.3.1|^7.0).",
+ "guzzlehttp/guzzle": "Required to use the HTTP Client, Mailgun mail driver and the ping methods on schedules (^6.5.5|^7.0.1).",
"laravel/tinker": "Required to use the tinker console command (^2.0).",
"league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).",
"league/flysystem-cached-adapter": "Required to use the Flysystem cache (^1.0).",
"league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).",
"mockery/mockery": "Required to use mocking (^1.3.1).",
- "moontoast/math": "Required to use ordered UUIDs (^1.1).",
"nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).",
"pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).",
"phpunit/phpunit": "Required to use assertions and run tests (^8.4|^9.0).",
"predis/predis": "Required to use the predis connector (^1.1.2).",
"psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).",
"pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^4.0).",
- "symfony/cache": "Required to PSR-6 cache bridge (^5.0).",
- "symfony/filesystem": "Required to create relative storage directory symbolic links (^5.0).",
+ "symfony/cache": "Required to PSR-6 cache bridge (^5.1).",
+ "symfony/filesystem": "Required to enable support for relative symbolic links (^5.1).",
"symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0).",
"wildbit/swiftmailer-postmark": "Required to use Postmark mail driver (^3.0)."
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "7.x-dev"
+ "dev-master": "8.x-dev"
}
},
"autoload": {
"files": [
+ "src/Illuminate/Collections/helpers.php",
+ "src/Illuminate/Events/functions.php",
"src/Illuminate/Foundation/helpers.php",
"src/Illuminate/Support/helpers.php"
],
"psr-4": {
- "Illuminate\\": "src/Illuminate/"
+ "Illuminate\\": "src/Illuminate/",
+ "Illuminate\\Support\\": [
+ "src/Illuminate/Macroable/",
+ "src/Illuminate/Collections/"
+ ]
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -2614,7 +2646,7 @@
"framework",
"laravel"
],
- "time": "2020-09-17T14:23:26+00:00"
+ "time": "2020-09-29T15:39:07+00:00"
},
{
"name": "laravel/slack-notification-channel",
@@ -2675,36 +2707,36 @@
},
{
"name": "laravel/socialite",
- "version": "v4.4.1",
+ "version": "v5.0.1",
"source": {
"type": "git",
"url": "https://github.com/laravel/socialite.git",
- "reference": "80951df0d93435b773aa00efe1fad6d5015fac75"
+ "reference": "61ad2b5f98e28f8e4e479851f8744b43ebbb9b46"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/socialite/zipball/80951df0d93435b773aa00efe1fad6d5015fac75",
- "reference": "80951df0d93435b773aa00efe1fad6d5015fac75",
+ "url": "https://api.github.com/repos/laravel/socialite/zipball/61ad2b5f98e28f8e4e479851f8744b43ebbb9b46",
+ "reference": "61ad2b5f98e28f8e4e479851f8744b43ebbb9b46",
"shasum": ""
},
"require": {
"ext-json": "*",
"guzzlehttp/guzzle": "^6.0|^7.0",
- "illuminate/http": "~5.7.0|~5.8.0|^6.0|^7.0",
- "illuminate/support": "~5.7.0|~5.8.0|^6.0|^7.0",
+ "illuminate/http": "^6.0|^7.0|^8.0",
+ "illuminate/support": "^6.0|^7.0|^8.0",
"league/oauth1-client": "^1.0",
- "php": "^7.1.3"
+ "php": "^7.2"
},
"require-dev": {
- "illuminate/contracts": "~5.7.0|~5.8.0|^6.0|^7.0",
+ "illuminate/contracts": "^6.0|^7.0",
"mockery/mockery": "^1.0",
- "orchestra/testbench": "^3.7|^3.8|^4.0|^5.0",
- "phpunit/phpunit": "^7.0|^8.0"
+ "orchestra/testbench": "^4.0|^5.0|^6.0",
+ "phpunit/phpunit": "^8.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.x-dev"
+ "dev-master": "5.x-dev"
},
"laravel": {
"providers": [
@@ -2736,7 +2768,7 @@
"laravel",
"oauth"
],
- "time": "2020-06-03T13:30:03+00:00"
+ "time": "2020-09-12T14:40:16+00:00"
},
{
"name": "laravel/tinker",
@@ -2804,30 +2836,29 @@
},
{
"name": "laravel/ui",
- "version": "v2.4.1",
+ "version": "v3.0.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/ui.git",
- "reference": "1c69ae3e8b52fe6c9eaf83b43c6dd8ef5c3f9e2c"
+ "reference": "ff6af4f0bc5a5bfe73352cdc03dbfffc4ace92d8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/ui/zipball/1c69ae3e8b52fe6c9eaf83b43c6dd8ef5c3f9e2c",
- "reference": "1c69ae3e8b52fe6c9eaf83b43c6dd8ef5c3f9e2c",
+ "url": "https://api.github.com/repos/laravel/ui/zipball/ff6af4f0bc5a5bfe73352cdc03dbfffc4ace92d8",
+ "reference": "ff6af4f0bc5a5bfe73352cdc03dbfffc4ace92d8",
"shasum": ""
},
"require": {
- "illuminate/console": "^7.0",
- "illuminate/filesystem": "^7.0",
- "illuminate/support": "^7.0",
- "php": "^7.2.5"
- },
- "require-dev": {
- "mockery/mockery": "^1.0",
- "phpunit/phpunit": "^8.0"
+ "illuminate/console": "^8.0",
+ "illuminate/filesystem": "^8.0",
+ "illuminate/support": "^8.0",
+ "php": "^7.3"
},
"type": "library",
"extra": {
+ "branch-alias": {
+ "dev-master": "3.x-dev"
+ },
"laravel": {
"providers": [
"Laravel\\Ui\\UiServiceProvider"
@@ -2855,7 +2886,7 @@
"laravel",
"ui"
],
- "time": "2020-09-22T16:51:51+00:00"
+ "time": "2020-09-11T15:34:08+00:00"
},
{
"name": "league/commonmark",
@@ -3315,16 +3346,16 @@
},
{
"name": "league/oauth1-client",
- "version": "v1.8.1",
+ "version": "v1.8.2",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/oauth1-client.git",
- "reference": "3a68155c3f27a91f4b66a2dc03996cd6f3281c9f"
+ "reference": "159c3d2bf27568f9af87d6c3f4bb616a251eb12b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/3a68155c3f27a91f4b66a2dc03996cd6f3281c9f",
- "reference": "3a68155c3f27a91f4b66a2dc03996cd6f3281c9f",
+ "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/159c3d2bf27568f9af87d6c3f4bb616a251eb12b",
+ "reference": "159c3d2bf27568f9af87d6c3f4bb616a251eb12b",
"shasum": ""
},
"require": {
@@ -3382,26 +3413,27 @@
"tumblr",
"twitter"
],
- "time": "2020-09-04T11:07:03+00:00"
+ "time": "2020-09-28T09:39:08+00:00"
},
{
"name": "league/omnipay",
- "version": "v3.0.2",
+ "version": "dev-master",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/omnipay.git",
- "reference": "9e10d91cbf84744207e13d4483e79de39b133368"
+ "reference": "1ba7c8a3312cf2342458b99c9e5b86eaae44aed2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/thephpleague/omnipay/zipball/9e10d91cbf84744207e13d4483e79de39b133368",
- "reference": "9e10d91cbf84744207e13d4483e79de39b133368",
+ "url": "https://api.github.com/repos/thephpleague/omnipay/zipball/1ba7c8a3312cf2342458b99c9e5b86eaae44aed2",
+ "reference": "1ba7c8a3312cf2342458b99c9e5b86eaae44aed2",
"shasum": ""
},
"require": {
"omnipay/common": "^3",
- "php": "^5.6|^7",
- "php-http/guzzle6-adapter": "^1.1|^2"
+ "php": "^7.2",
+ "php-http/discovery": "^1.12",
+ "php-http/guzzle7-adapter": "^0.1"
},
"require-dev": {
"omnipay/tests": "^3"
@@ -3409,7 +3441,7 @@
"type": "metapackage",
"extra": {
"branch-alias": {
- "dev-master": "3.0.x-dev"
+ "dev-master": "3.1.x-dev"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -3434,7 +3466,7 @@
"omnipay",
"payment"
],
- "time": "2019-03-20T14:28:28+00:00"
+ "time": "2020-09-22T14:02:17+00:00"
},
{
"name": "livewire/livewire",
@@ -3927,16 +3959,16 @@
},
{
"name": "nikic/php-parser",
- "version": "v4.10.1",
+ "version": "v4.10.2",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "1b479e7592812411c20c34d9ed33db3957bde66e"
+ "reference": "658f1be311a230e0907f5dfe0213742aff0596de"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/1b479e7592812411c20c34d9ed33db3957bde66e",
- "reference": "1b479e7592812411c20c34d9ed33db3957bde66e",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/658f1be311a230e0907f5dfe0213742aff0596de",
+ "reference": "658f1be311a230e0907f5dfe0213742aff0596de",
"shasum": ""
},
"require": {
@@ -3975,7 +4007,7 @@
"parser",
"php"
],
- "time": "2020-09-23T18:23:49+00:00"
+ "time": "2020-09-26T10:30:38+00:00"
},
{
"name": "nwidart/laravel-modules",
@@ -4190,65 +4222,6 @@
],
"time": "2018-05-15T10:35:58+00:00"
},
- {
- "name": "omnipay/stripe",
- "version": "v3.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/thephpleague/omnipay-stripe.git",
- "reference": "37df2a791e8feab45543125f4c5f22d5d305096d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/thephpleague/omnipay-stripe/zipball/37df2a791e8feab45543125f4c5f22d5d305096d",
- "reference": "37df2a791e8feab45543125f4c5f22d5d305096d",
- "shasum": ""
- },
- "require": {
- "omnipay/common": "^3"
- },
- "require-dev": {
- "omnipay/tests": "^3",
- "phpro/grumphp": "^0.14",
- "squizlabs/php_codesniffer": "^3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Omnipay\\Stripe\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Adrian Macneil",
- "email": "adrian@adrianmacneil.com"
- },
- {
- "name": "Omnipay Contributors",
- "homepage": "https://github.com/thephpleague/omnipay-stripe/contributors"
- }
- ],
- "description": "Stripe driver for the Omnipay payment processing library",
- "homepage": "https://github.com/thephpleague/omnipay-stripe",
- "keywords": [
- "gateway",
- "merchant",
- "omnipay",
- "pay",
- "payment",
- "stripe"
- ],
- "time": "2019-08-31T10:55:06+00:00"
- },
{
"name": "opis/closure",
"version": "3.5.7",
@@ -4492,22 +4465,22 @@
"time": "2020-09-22T13:31:04+00:00"
},
{
- "name": "php-http/guzzle6-adapter",
- "version": "v2.0.1",
+ "name": "php-http/guzzle7-adapter",
+ "version": "0.1.0",
"source": {
"type": "git",
- "url": "https://github.com/php-http/guzzle6-adapter.git",
- "reference": "6074a4b1f4d5c21061b70bab3b8ad484282fe31f"
+ "url": "https://github.com/php-http/guzzle7-adapter.git",
+ "reference": "5b361e0dbd7d9d5e21f80400bcccf9fb8d5d1f1e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-http/guzzle6-adapter/zipball/6074a4b1f4d5c21061b70bab3b8ad484282fe31f",
- "reference": "6074a4b1f4d5c21061b70bab3b8ad484282fe31f",
+ "url": "https://api.github.com/repos/php-http/guzzle7-adapter/zipball/5b361e0dbd7d9d5e21f80400bcccf9fb8d5d1f1e",
+ "reference": "5b361e0dbd7d9d5e21f80400bcccf9fb8d5d1f1e",
"shasum": ""
},
"require": {
- "guzzlehttp/guzzle": "^6.0",
- "php": "^7.1",
+ "guzzlehttp/guzzle": "^7.0",
+ "php": "^7.2",
"php-http/httplug": "^2.0",
"psr/http-client": "^1.0"
},
@@ -4517,19 +4490,18 @@
"psr/http-client-implementation": "1.0"
},
"require-dev": {
- "ext-curl": "*",
"php-http/client-integration-tests": "^2.0",
"phpunit/phpunit": "^7.4"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.x-dev"
+ "dev-master": "0.2.x-dev"
}
},
"autoload": {
"psr-4": {
- "Http\\Adapter\\Guzzle6\\": "src/"
+ "Http\\Adapter\\Guzzle7\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -4538,21 +4510,17 @@
],
"authors": [
{
- "name": "Márk Sági-Kazár",
- "email": "mark.sagikazar@gmail.com"
- },
- {
- "name": "David de Boer",
- "email": "david@ddeboer.nl"
+ "name": "Tobias Nyholm",
+ "email": "tobias.nyholm@gmail.com"
}
],
- "description": "Guzzle 6 HTTP Adapter",
+ "description": "Guzzle 7 HTTP Adapter",
"homepage": "http://httplug.io",
"keywords": [
"Guzzle",
"http"
],
- "time": "2018-12-16T14:44:03+00:00"
+ "time": "2020-09-17T07:29:54+00:00"
},
{
"name": "php-http/httplug",
@@ -5907,21 +5875,21 @@
},
{
"name": "sentry/sdk",
- "version": "2.2.0",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/getsentry/sentry-php-sdk.git",
- "reference": "089858b1b27d3705a5fd1c32d8d10beb55980190"
+ "reference": "908ea3fd0e7a19ccf4b53d1c247c44231595d008"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/getsentry/sentry-php-sdk/zipball/089858b1b27d3705a5fd1c32d8d10beb55980190",
- "reference": "089858b1b27d3705a5fd1c32d8d10beb55980190",
+ "url": "https://api.github.com/repos/getsentry/sentry-php-sdk/zipball/908ea3fd0e7a19ccf4b53d1c247c44231595d008",
+ "reference": "908ea3fd0e7a19ccf4b53d1c247c44231595d008",
"shasum": ""
},
"require": {
"http-interop/http-factory-guzzle": "^1.0",
- "sentry/sentry": "^2.5",
+ "sentry/sentry": "^3.0",
"symfony/http-client": "^4.3|^5.0"
},
"type": "metapackage",
@@ -5956,20 +5924,20 @@
"type": "custom"
}
],
- "time": "2020-09-14T09:30:55+00:00"
+ "time": "2020-09-28T07:49:07+00:00"
},
{
"name": "sentry/sentry",
- "version": "2.5.0",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/getsentry/sentry-php.git",
- "reference": "bab5b73dbaf5f0ff62317e1611d952764d5514a9"
+ "reference": "b77ff3783060ce3213011ddae369e550ec985dc8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/getsentry/sentry-php/zipball/bab5b73dbaf5f0ff62317e1611d952764d5514a9",
- "reference": "bab5b73dbaf5f0ff62317e1611d952764d5514a9",
+ "url": "https://api.github.com/repos/getsentry/sentry-php/zipball/b77ff3783060ce3213011ddae369e550ec985dc8",
+ "reference": "b77ff3783060ce3213011ddae369e550ec985dc8",
"shasum": ""
},
"require": {
@@ -5977,8 +5945,9 @@
"ext-mbstring": "*",
"guzzlehttp/promises": "^1.3",
"guzzlehttp/psr7": "^1.6",
- "jean85/pretty-package-versions": "^1.2",
- "php": "^7.1",
+ "jean85/pretty-package-versions": "^1.5",
+ "ocramius/package-versions": "^1.8",
+ "php": "^7.2",
"php-http/async-client-implementation": "^1.0",
"php-http/client-common": "^1.5|^2.0",
"php-http/discovery": "^1.6.1",
@@ -5987,7 +5956,8 @@
"psr/http-factory": "^1.0",
"psr/http-message-implementation": "^1.0",
"psr/log": "^1.0",
- "symfony/options-resolver": "^2.7|^3.0|^4.0|^5.0",
+ "symfony/options-resolver": "^3.4.4|^4.0|^5.0",
+ "symfony/polyfill-php80": "^1.17",
"symfony/polyfill-uuid": "^1.13.1"
},
"conflict": {
@@ -5996,6 +5966,7 @@
},
"require-dev": {
"friendsofphp/php-cs-fixer": "^2.16",
+ "http-interop/http-factory-guzzle": "^1.0",
"monolog/monolog": "^1.3|^2.0",
"php-http/mock-client": "^1.3",
"phpstan/extension-installer": "^1.0",
@@ -6011,7 +5982,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.5.x-dev"
+ "dev-master": "3.0.x-dev"
}
},
"autoload": {
@@ -6053,26 +6024,26 @@
"type": "custom"
}
],
- "time": "2020-09-14T07:02:40+00:00"
+ "time": "2020-09-28T07:11:32+00:00"
},
{
"name": "sentry/sentry-laravel",
- "version": "1.9.0",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/getsentry/sentry-laravel.git",
- "reference": "8567e70d03081cbc04e35eb3fa7389d06816196e"
+ "reference": "ed8f28507f18474223df7de4c86e210c09dda630"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/getsentry/sentry-laravel/zipball/8567e70d03081cbc04e35eb3fa7389d06816196e",
- "reference": "8567e70d03081cbc04e35eb3fa7389d06816196e",
+ "url": "https://api.github.com/repos/getsentry/sentry-laravel/zipball/ed8f28507f18474223df7de4c86e210c09dda630",
+ "reference": "ed8f28507f18474223df7de4c86e210c09dda630",
"shasum": ""
},
"require": {
"illuminate/support": "5.0 - 5.8 | ^6.0 | ^7.0 | ^8.0",
- "php": "^7.1",
- "sentry/sdk": "^2.1"
+ "php": "^7.2",
+ "sentry/sdk": "^3.0"
},
"require-dev": {
"friendsofphp/php-cs-fixer": "2.16.*",
@@ -6083,12 +6054,13 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.x-dev",
+ "dev-master": "2.x-dev",
"dev-0.x": "0.x-dev"
},
"laravel": {
"providers": [
- "Sentry\\Laravel\\ServiceProvider"
+ "Sentry\\Laravel\\ServiceProvider",
+ "Sentry\\Laravel\\Tracing\\ServiceProvider"
],
"aliases": {
"Sentry": "Sentry\\Laravel\\Facade"
@@ -6132,20 +6104,20 @@
"type": "custom"
}
],
- "time": "2020-09-07T07:16:41+00:00"
+ "time": "2020-09-28T08:31:49+00:00"
},
{
"name": "spatie/browsershot",
- "version": "3.38.0",
+ "version": "3.39.0",
"source": {
"type": "git",
"url": "https://github.com/spatie/browsershot.git",
- "reference": "97ebb1dc0750f9c543162cb1e44d5b4916b17a7c"
+ "reference": "572968978e5e07513f44819b0e744403c13fa1a1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/browsershot/zipball/97ebb1dc0750f9c543162cb1e44d5b4916b17a7c",
- "reference": "97ebb1dc0750f9c543162cb1e44d5b4916b17a7c",
+ "url": "https://api.github.com/repos/spatie/browsershot/zipball/572968978e5e07513f44819b0e744403c13fa1a1",
+ "reference": "572968978e5e07513f44819b0e744403c13fa1a1",
"shasum": ""
},
"require": {
@@ -6194,7 +6166,7 @@
"type": "github"
}
],
- "time": "2020-09-22T06:26:15+00:00"
+ "time": "2020-09-24T08:59:01+00:00"
},
{
"name": "spatie/image",
@@ -6348,27 +6320,27 @@
},
{
"name": "staudenmeir/eloquent-has-many-deep",
- "version": "v1.12",
+ "version": "v1.13",
"source": {
"type": "git",
"url": "https://github.com/staudenmeir/eloquent-has-many-deep.git",
- "reference": "7417572873c9fb4fa84e894ebbf324629cbc63c0"
+ "reference": "6ba7af2a83e263bd27ee4e65fafabf89c2efcb26"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/staudenmeir/eloquent-has-many-deep/zipball/7417572873c9fb4fa84e894ebbf324629cbc63c0",
- "reference": "7417572873c9fb4fa84e894ebbf324629cbc63c0",
+ "url": "https://api.github.com/repos/staudenmeir/eloquent-has-many-deep/zipball/6ba7af2a83e263bd27ee4e65fafabf89c2efcb26",
+ "reference": "6ba7af2a83e263bd27ee4e65fafabf89c2efcb26",
"shasum": ""
},
"require": {
- "illuminate/database": "^7.0",
- "php": "^7.2.5"
+ "illuminate/database": "^8.0",
+ "php": "^7.3"
},
"require-dev": {
- "illuminate/pagination": "^7.0",
- "laravel/homestead": "^10.0",
- "phpunit/phpunit": "^8.5",
- "staudenmeir/eloquent-eager-limit": "^1.5"
+ "illuminate/pagination": "^8.0",
+ "laravel/homestead": "^11.0",
+ "phpunit/phpunit": "^9.3",
+ "staudenmeir/eloquent-eager-limit": "^1.6"
},
"type": "library",
"autoload": {
@@ -6387,20 +6359,26 @@
}
],
"description": "Laravel Eloquent HasManyThrough relationships with unlimited levels",
- "time": "2020-01-31T12:37:57+00:00"
+ "funding": [
+ {
+ "url": "https://paypal.me/JonasStaudenmeir",
+ "type": "custom"
+ }
+ ],
+ "time": "2020-08-19T20:13:24+00:00"
},
{
"name": "stripe/stripe-php",
- "version": "v7.54.0",
+ "version": "v7.57.0",
"source": {
"type": "git",
"url": "https://github.com/stripe/stripe-php.git",
- "reference": "3a5cff6ce6f5f2f0fc75164d3677bd5dc3e96fe3"
+ "reference": "e2475efff624c6b9b62e8ea14ba7ee4e417cbfe5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/stripe/stripe-php/zipball/3a5cff6ce6f5f2f0fc75164d3677bd5dc3e96fe3",
- "reference": "3a5cff6ce6f5f2f0fc75164d3677bd5dc3e96fe3",
+ "url": "https://api.github.com/repos/stripe/stripe-php/zipball/e2475efff624c6b9b62e8ea14ba7ee4e417cbfe5",
+ "reference": "e2475efff624c6b9b62e8ea14ba7ee4e417cbfe5",
"shasum": ""
},
"require": {
@@ -6444,7 +6422,7 @@
"payment processing",
"stripe"
],
- "time": "2020-09-23T21:48:00+00:00"
+ "time": "2020-09-30T05:53:53+00:00"
},
{
"name": "swiftmailer/swiftmailer",
@@ -6510,16 +6488,16 @@
},
{
"name": "symfony/console",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "186f395b256065ba9b890c0a4e48a91d598fa2cf"
+ "reference": "04c3a31fe8ea94b42c9e2d1acc93d19782133b00"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/186f395b256065ba9b890c0a4e48a91d598fa2cf",
- "reference": "186f395b256065ba9b890c0a4e48a91d598fa2cf",
+ "url": "https://api.github.com/repos/symfony/console/zipball/04c3a31fe8ea94b42c9e2d1acc93d19782133b00",
+ "reference": "04c3a31fe8ea94b42c9e2d1acc93d19782133b00",
"shasum": ""
},
"require": {
@@ -6599,11 +6577,11 @@
"type": "tidelift"
}
],
- "time": "2020-09-02T07:07:40+00:00"
+ "time": "2020-09-18T14:27:32+00:00"
},
{
"name": "symfony/css-selector",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
@@ -6734,16 +6712,16 @@
},
{
"name": "symfony/error-handler",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/error-handler.git",
- "reference": "525636d4b84e06c6ca72d96b6856b5b169416e6a"
+ "reference": "d2f1d4996d5499f1261164d10080e4120001f041"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/error-handler/zipball/525636d4b84e06c6ca72d96b6856b5b169416e6a",
- "reference": "525636d4b84e06c6ca72d96b6856b5b169416e6a",
+ "url": "https://api.github.com/repos/symfony/error-handler/zipball/d2f1d4996d5499f1261164d10080e4120001f041",
+ "reference": "d2f1d4996d5499f1261164d10080e4120001f041",
"shasum": ""
},
"require": {
@@ -6801,20 +6779,20 @@
"type": "tidelift"
}
],
- "time": "2020-08-17T10:01:29+00:00"
+ "time": "2020-09-27T03:44:28+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "94871fc0a69c3c5da57764187724cdce0755899c"
+ "reference": "d5de97d6af175a9e8131c546db054ca32842dd0f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/94871fc0a69c3c5da57764187724cdce0755899c",
- "reference": "94871fc0a69c3c5da57764187724cdce0755899c",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d5de97d6af175a9e8131c546db054ca32842dd0f",
+ "reference": "d5de97d6af175a9e8131c546db054ca32842dd0f",
"shasum": ""
},
"require": {
@@ -6834,6 +6812,7 @@
"psr/log": "~1.0",
"symfony/config": "^4.4|^5.0",
"symfony/dependency-injection": "^4.4|^5.0",
+ "symfony/error-handler": "^4.4|^5.0",
"symfony/expression-language": "^4.4|^5.0",
"symfony/http-foundation": "^4.4|^5.0",
"symfony/service-contracts": "^1.1|^2",
@@ -6887,7 +6866,7 @@
"type": "tidelift"
}
],
- "time": "2020-08-13T14:19:42+00:00"
+ "time": "2020-09-18T14:27:32+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@@ -6967,16 +6946,16 @@
},
{
"name": "symfony/filesystem",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "f7b9ed6142a34252d219801d9767dedbd711da1a"
+ "reference": "f3194303d3077829dbbc1d18f50288b2a01146f2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/f7b9ed6142a34252d219801d9767dedbd711da1a",
- "reference": "f7b9ed6142a34252d219801d9767dedbd711da1a",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/f3194303d3077829dbbc1d18f50288b2a01146f2",
+ "reference": "f3194303d3077829dbbc1d18f50288b2a01146f2",
"shasum": ""
},
"require": {
@@ -7027,20 +7006,20 @@
"type": "tidelift"
}
],
- "time": "2020-08-21T17:19:47+00:00"
+ "time": "2020-09-02T16:23:27+00:00"
},
{
"name": "symfony/finder",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "2b765f0cf6612b3636e738c0689b29aa63088d5d"
+ "reference": "2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/2b765f0cf6612b3636e738c0689b29aa63088d5d",
- "reference": "2b765f0cf6612b3636e738c0689b29aa63088d5d",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8",
+ "reference": "2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8",
"shasum": ""
},
"require": {
@@ -7090,26 +7069,26 @@
"type": "tidelift"
}
],
- "time": "2020-08-17T10:01:29+00:00"
+ "time": "2020-09-02T16:23:27+00:00"
},
{
"name": "symfony/http-client",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client.git",
- "reference": "21c4372e9cd2305313f4d4792d7b9fa7c25ade53"
+ "reference": "4a5f2750b54e3cfc5b6711dd78fdbac6563ee7bf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-client/zipball/21c4372e9cd2305313f4d4792d7b9fa7c25ade53",
- "reference": "21c4372e9cd2305313f4d4792d7b9fa7c25ade53",
+ "url": "https://api.github.com/repos/symfony/http-client/zipball/4a5f2750b54e3cfc5b6711dd78fdbac6563ee7bf",
+ "reference": "4a5f2750b54e3cfc5b6711dd78fdbac6563ee7bf",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
"psr/log": "^1.0",
- "symfony/http-client-contracts": "^2.1.1",
+ "symfony/http-client-contracts": "^2.2",
"symfony/polyfill-php73": "^1.11",
"symfony/polyfill-php80": "^1.15",
"symfony/service-contracts": "^1.0|^2"
@@ -7176,7 +7155,7 @@
"type": "tidelift"
}
],
- "time": "2020-09-02T08:02:12+00:00"
+ "time": "2020-09-27T03:44:28+00:00"
},
{
"name": "symfony/http-client-contracts",
@@ -7255,16 +7234,16 @@
},
{
"name": "symfony/http-foundation",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
- "reference": "41a4647f12870e9d41d9a7d72ff0614a27208558"
+ "reference": "6cca6b2e4b69fc5bace160d14cf1ee5f71483db4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/41a4647f12870e9d41d9a7d72ff0614a27208558",
- "reference": "41a4647f12870e9d41d9a7d72ff0614a27208558",
+ "url": "https://api.github.com/repos/symfony/http-foundation/zipball/6cca6b2e4b69fc5bace160d14cf1ee5f71483db4",
+ "reference": "6cca6b2e4b69fc5bace160d14cf1ee5f71483db4",
"shasum": ""
},
"require": {
@@ -7326,20 +7305,20 @@
"type": "tidelift"
}
],
- "time": "2020-08-17T07:48:54+00:00"
+ "time": "2020-09-13T05:01:27+00:00"
},
{
"name": "symfony/http-kernel",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "3e32676e6cb5d2081c91a56783471ff8a7f7110b"
+ "reference": "17227644c3c66dcf32bdfeceff4364d090cd6756"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/3e32676e6cb5d2081c91a56783471ff8a7f7110b",
- "reference": "3e32676e6cb5d2081c91a56783471ff8a7f7110b",
+ "url": "https://api.github.com/repos/symfony/http-kernel/zipball/17227644c3c66dcf32bdfeceff4364d090cd6756",
+ "reference": "17227644c3c66dcf32bdfeceff4364d090cd6756",
"shasum": ""
},
"require": {
@@ -7348,6 +7327,7 @@
"symfony/deprecation-contracts": "^2.1",
"symfony/error-handler": "^4.4|^5.0",
"symfony/event-dispatcher": "^5.0",
+ "symfony/http-client-contracts": "^1.1|^2",
"symfony/http-foundation": "^4.4|^5.0",
"symfony/polyfill-ctype": "^1.8",
"symfony/polyfill-php73": "^1.9",
@@ -7439,20 +7419,20 @@
"type": "tidelift"
}
],
- "time": "2020-09-02T08:15:18+00:00"
+ "time": "2020-09-27T04:33:19+00:00"
},
{
"name": "symfony/mime",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/mime.git",
- "reference": "89a2c9b4cb7b5aa516cf55f5194c384f444c81dc"
+ "reference": "4404d6545125863561721514ad9388db2661eec5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/mime/zipball/89a2c9b4cb7b5aa516cf55f5194c384f444c81dc",
- "reference": "89a2c9b4cb7b5aa516cf55f5194c384f444c81dc",
+ "url": "https://api.github.com/repos/symfony/mime/zipball/4404d6545125863561721514ad9388db2661eec5",
+ "reference": "4404d6545125863561721514ad9388db2661eec5",
"shasum": ""
},
"require": {
@@ -7516,20 +7496,20 @@
"type": "tidelift"
}
],
- "time": "2020-08-17T10:01:29+00:00"
+ "time": "2020-09-02T16:23:27+00:00"
},
{
"name": "symfony/options-resolver",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/options-resolver.git",
- "reference": "9ff59517938f88d90b6e65311fef08faa640f681"
+ "reference": "4c7e155bf7d93ea4ba3824d5a14476694a5278dd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/options-resolver/zipball/9ff59517938f88d90b6e65311fef08faa640f681",
- "reference": "9ff59517938f88d90b6e65311fef08faa640f681",
+ "url": "https://api.github.com/repos/symfony/options-resolver/zipball/4c7e155bf7d93ea4ba3824d5a14476694a5278dd",
+ "reference": "4c7e155bf7d93ea4ba3824d5a14476694a5278dd",
"shasum": ""
},
"require": {
@@ -7586,7 +7566,7 @@
"type": "tidelift"
}
],
- "time": "2020-07-12T12:58:00+00:00"
+ "time": "2020-09-27T03:44:28+00:00"
},
{
"name": "symfony/polyfill-ctype",
@@ -8447,16 +8427,16 @@
},
{
"name": "symfony/process",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "1864216226af21eb76d9477f691e7cbf198e0402"
+ "reference": "d3a2e64866169586502f0cd9cab69135ad12cee9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/1864216226af21eb76d9477f691e7cbf198e0402",
- "reference": "1864216226af21eb76d9477f691e7cbf198e0402",
+ "url": "https://api.github.com/repos/symfony/process/zipball/d3a2e64866169586502f0cd9cab69135ad12cee9",
+ "reference": "d3a2e64866169586502f0cd9cab69135ad12cee9",
"shasum": ""
},
"require": {
@@ -8507,20 +8487,20 @@
"type": "tidelift"
}
],
- "time": "2020-07-23T08:36:24+00:00"
+ "time": "2020-09-02T16:23:27+00:00"
},
{
"name": "symfony/routing",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
- "reference": "47b0218344cb6af25c93ca8ee1137fafbee5005d"
+ "reference": "d36e06eb02a55522a8eed070c1cbc3dc3c389876"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/47b0218344cb6af25c93ca8ee1137fafbee5005d",
- "reference": "47b0218344cb6af25c93ca8ee1137fafbee5005d",
+ "url": "https://api.github.com/repos/symfony/routing/zipball/d36e06eb02a55522a8eed070c1cbc3dc3c389876",
+ "reference": "d36e06eb02a55522a8eed070c1cbc3dc3c389876",
"shasum": ""
},
"require": {
@@ -8599,7 +8579,7 @@
"type": "tidelift"
}
],
- "time": "2020-08-10T08:03:57+00:00"
+ "time": "2020-09-02T16:23:27+00:00"
},
{
"name": "symfony/service-contracts",
@@ -8679,16 +8659,16 @@
},
{
"name": "symfony/string",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "0de4cc1e18bb596226c06a82e2e7e9bc6001a63a"
+ "reference": "4a9afe9d07bac506f75bcee8ed3ce76da5a9343e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/0de4cc1e18bb596226c06a82e2e7e9bc6001a63a",
- "reference": "0de4cc1e18bb596226c06a82e2e7e9bc6001a63a",
+ "url": "https://api.github.com/repos/symfony/string/zipball/4a9afe9d07bac506f75bcee8ed3ce76da5a9343e",
+ "reference": "4a9afe9d07bac506f75bcee8ed3ce76da5a9343e",
"shasum": ""
},
"require": {
@@ -8760,20 +8740,20 @@
"type": "tidelift"
}
],
- "time": "2020-08-17T07:48:54+00:00"
+ "time": "2020-09-15T12:23:47+00:00"
},
{
"name": "symfony/translation",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation.git",
- "reference": "917b02cdc5f33e0309b8e9d33ee1480b20687413"
+ "reference": "e3cdd5119b1b5bf0698c351b8ee20fb5a4ea248b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation/zipball/917b02cdc5f33e0309b8e9d33ee1480b20687413",
- "reference": "917b02cdc5f33e0309b8e9d33ee1480b20687413",
+ "url": "https://api.github.com/repos/symfony/translation/zipball/e3cdd5119b1b5bf0698c351b8ee20fb5a4ea248b",
+ "reference": "e3cdd5119b1b5bf0698c351b8ee20fb5a4ea248b",
"shasum": ""
},
"require": {
@@ -8852,7 +8832,7 @@
"type": "tidelift"
}
],
- "time": "2020-08-17T10:01:29+00:00"
+ "time": "2020-09-27T03:44:28+00:00"
},
{
"name": "symfony/translation-contracts",
@@ -8931,16 +8911,16 @@
},
{
"name": "symfony/var-dumper",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "b43a3905262bcf97b2510f0621f859ca4f5287be"
+ "reference": "c976c115a0d788808f7e71834c8eb0844f678d02"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/b43a3905262bcf97b2510f0621f859ca4f5287be",
- "reference": "b43a3905262bcf97b2510f0621f859ca4f5287be",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/c976c115a0d788808f7e71834c8eb0844f678d02",
+ "reference": "c976c115a0d788808f7e71834c8eb0844f678d02",
"shasum": ""
},
"require": {
@@ -9017,7 +8997,7 @@
"type": "tidelift"
}
],
- "time": "2020-08-17T07:42:30+00:00"
+ "time": "2020-09-18T14:27:32+00:00"
},
{
"name": "tijsverkoyen/css-to-inline-styles",
@@ -9070,21 +9050,21 @@
},
{
"name": "turbo124/beacon",
- "version": "1.0.0",
+ "version": "1.0.3",
"source": {
"type": "git",
"url": "https://github.com/turbo124/beacon.git",
- "reference": "21e1ba46776fae8dc4bcf672890b257e3452be59"
+ "reference": "687484955bdc8bfca957ccd060e6c1fa41ada056"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/turbo124/beacon/zipball/21e1ba46776fae8dc4bcf672890b257e3452be59",
- "reference": "21e1ba46776fae8dc4bcf672890b257e3452be59",
+ "url": "https://api.github.com/repos/turbo124/beacon/zipball/687484955bdc8bfca957ccd060e6c1fa41ada056",
+ "reference": "687484955bdc8bfca957ccd060e6c1fa41ada056",
"shasum": ""
},
"require": {
- "guzzlehttp/guzzle": "^6.5",
- "illuminate/support": "^6.0|^7.0",
+ "guzzlehttp/guzzle": "^7",
+ "illuminate/support": "^6.0|^7.0|^8.0",
"php": "^7.3"
},
"require-dev": {
@@ -9126,41 +9106,109 @@
"lightlogs",
"turbo124"
],
- "time": "2020-06-10T22:55:22+00:00"
+ "time": "2020-10-01T05:21:36+00:00"
},
{
- "name": "vlucas/phpdotenv",
- "version": "v4.1.8",
+ "name": "turbo124/laravel-gmail",
+ "version": "v5.0.0",
"source": {
"type": "git",
- "url": "https://github.com/vlucas/phpdotenv.git",
- "reference": "572af79d913627a9d70374d27a6f5d689a35de32"
+ "url": "https://github.com/turbo124/laravel-gmail.git",
+ "reference": "2f623fbdcfbcbce1d9946ccdd1274528a9783bcf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/572af79d913627a9d70374d27a6f5d689a35de32",
- "reference": "572af79d913627a9d70374d27a6f5d689a35de32",
+ "url": "https://api.github.com/repos/turbo124/laravel-gmail/zipball/2f623fbdcfbcbce1d9946ccdd1274528a9783bcf",
+ "reference": "2f623fbdcfbcbce1d9946ccdd1274528a9783bcf",
"shasum": ""
},
"require": {
- "php": "^5.5.9 || ^7.0 || ^8.0",
- "phpoption/phpoption": "^1.7.3",
- "symfony/polyfill-ctype": "^1.17"
+ "google/apiclient": "^2.5",
+ "illuminate/auth": "~5.8|^6.0|^7.0|^8.0",
+ "illuminate/config": "~5.8|^6.0|^7.0|^8.0",
+ "illuminate/database": "~5.8|^6.0|^7.0|^8.0",
+ "illuminate/routing": "~5.8|^6.0|^7.0|^8.0",
+ "illuminate/session": "~5.8|^6.0|^7.0|^8.0",
+ "illuminate/support": "~5.8|^6.0|^7.0|^8.0",
+ "php": "^7.2",
+ "swiftmailer/swiftmailer": "~5.8|^6.0"
+ },
+ "require-dev": {
+ "mockery/mockery": "^1.0",
+ "orchestra/testbench": "^4.0",
+ "phpunit/phpunit": "^8.5",
+ "squizlabs/php_codesniffer": "~3.4"
+ },
+ "type": "library",
+ "extra": {
+ "laravel": {
+ "providers": [
+ "Dacastro4\\LaravelGmail\\LaravelGmailServiceProvider"
+ ],
+ "aliases": {
+ "LaravelGmail": "Dacastro4\\LaravelGmail\\Facade\\LaravelGmail"
+ }
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Dacastro4\\LaravelGmail\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Daniel Castro",
+ "email": "danielcastro04@gmail.com",
+ "homepage": "https://danielcastro.me"
+ }
+ ],
+ "description": "Gmail API package for Laravel",
+ "keywords": [
+ "api",
+ "gmail",
+ "laravel"
+ ],
+ "time": "2020-10-01T03:04:41+00:00"
+ },
+ {
+ "name": "vlucas/phpdotenv",
+ "version": "v5.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/vlucas/phpdotenv.git",
+ "reference": "fba64139db67123c7a57072e5f8d3db10d160b66"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/fba64139db67123c7a57072e5f8d3db10d160b66",
+ "reference": "fba64139db67123c7a57072e5f8d3db10d160b66",
+ "shasum": ""
+ },
+ "require": {
+ "ext-pcre": "*",
+ "graham-campbell/result-type": "^1.0.1",
+ "php": "^7.1.3 || ^8.0",
+ "phpoption/phpoption": "^1.7.4",
+ "symfony/polyfill-ctype": "^1.17",
+ "symfony/polyfill-mbstring": "^1.17",
+ "symfony/polyfill-php80": "^1.17"
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.4.1",
"ext-filter": "*",
- "ext-pcre": "*",
- "phpunit/phpunit": "^4.8.35 || ^5.7.27 || ^6.5.6 || ^7.0"
+ "phpunit/phpunit": "^7.5.20 || ^8.5.2 || ^9.0"
},
"suggest": {
- "ext-filter": "Required to use the boolean validator.",
- "ext-pcre": "Required to use most of the library."
+ "ext-filter": "Required to use the boolean validator."
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "5.2-dev"
}
},
"autoload": {
@@ -9200,7 +9248,7 @@
"type": "tidelift"
}
],
- "time": "2020-07-14T19:22:52+00:00"
+ "time": "2020-09-14T15:57:31+00:00"
},
{
"name": "voku/portable-ascii",
@@ -9529,34 +9577,32 @@
},
{
"name": "darkaonline/l5-swagger",
- "version": "7.0.1",
+ "version": "8.0.2",
"source": {
"type": "git",
"url": "https://github.com/DarkaOnLine/L5-Swagger.git",
- "reference": "64e9cfaa0065f1c9d9b85c203a1de893698c7336"
+ "reference": "9b900e353503237ed983cae17277ff12fc1aaaf9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/DarkaOnLine/L5-Swagger/zipball/64e9cfaa0065f1c9d9b85c203a1de893698c7336",
- "reference": "64e9cfaa0065f1c9d9b85c203a1de893698c7336",
+ "url": "https://api.github.com/repos/DarkaOnLine/L5-Swagger/zipball/9b900e353503237ed983cae17277ff12fc1aaaf9",
+ "reference": "9b900e353503237ed983cae17277ff12fc1aaaf9",
"shasum": ""
},
"require": {
- "laravel/framework": "^7.0",
+ "ext-json": "*",
+ "laravel/framework": "^8.0 || ^7.0",
"php": "^7.2",
"swagger-api/swagger-ui": "^3.0",
"symfony/yaml": "^5.0",
- "zircote/swagger-php": "~2.0|3.*"
+ "zircote/swagger-php": "3.*"
},
"require-dev": {
"mockery/mockery": "1.*",
- "orchestra/testbench": "5.*",
+ "orchestra/testbench": "6.* || 5.*",
"php-coveralls/php-coveralls": "^2.0",
"phpunit/phpunit": "8.*"
},
- "suggest": {
- "zircote/swagger-php:~2.0": "!!! Require Swagger-PHP ~2.0 for @SWG annotations support !!!"
- },
"type": "library",
"extra": {
"laravel": {
@@ -9598,7 +9644,7 @@
"type": "github"
}
],
- "time": "2020-08-18T06:29:25+00:00"
+ "time": "2020-09-09T05:12:50+00:00"
},
{
"name": "doctrine/annotations",
@@ -10215,35 +10261,35 @@
},
{
"name": "nunomaduro/collision",
- "version": "v4.2.0",
+ "version": "v5.0.2",
"source": {
"type": "git",
"url": "https://github.com/nunomaduro/collision.git",
- "reference": "d50490417eded97be300a92cd7df7badc37a9018"
+ "reference": "4a343299054e9368d0db4a982a780cc4ffa12707"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nunomaduro/collision/zipball/d50490417eded97be300a92cd7df7badc37a9018",
- "reference": "d50490417eded97be300a92cd7df7badc37a9018",
+ "url": "https://api.github.com/repos/nunomaduro/collision/zipball/4a343299054e9368d0db4a982a780cc4ffa12707",
+ "reference": "4a343299054e9368d0db4a982a780cc4ffa12707",
"shasum": ""
},
"require": {
"facade/ignition-contracts": "^1.0",
- "filp/whoops": "^2.4",
- "php": "^7.2.5",
+ "filp/whoops": "^2.7.2",
+ "php": "^7.3",
"symfony/console": "^5.0"
},
"require-dev": {
- "facade/ignition": "^2.0",
- "fideloper/proxy": "^4.2",
- "friendsofphp/php-cs-fixer": "^2.16",
- "fruitcake/laravel-cors": "^1.0",
- "laravel/framework": "^7.0",
- "laravel/tinker": "^2.0",
- "nunomaduro/larastan": "^0.5",
- "orchestra/testbench": "^5.0",
- "phpstan/phpstan": "^0.12.3",
- "phpunit/phpunit": "^8.5.1 || ^9.0"
+ "fideloper/proxy": "^4.4.0",
+ "friendsofphp/php-cs-fixer": "^2.16.4",
+ "fruitcake/laravel-cors": "^2.0.1",
+ "laravel/framework": "^8.0",
+ "laravel/tinker": "^2.4.1",
+ "nunomaduro/larastan": "^0.6.2",
+ "nunomaduro/mock-final-classes": "^1.0",
+ "orchestra/testbench": "^6.0",
+ "phpstan/phpstan": "^0.12.36",
+ "phpunit/phpunit": "^9.3.3"
},
"type": "library",
"extra": {
@@ -10295,32 +10341,33 @@
"type": "patreon"
}
],
- "time": "2020-04-04T19:56:08+00:00"
+ "time": "2020-08-27T18:58:22+00:00"
},
{
"name": "phar-io/manifest",
- "version": "1.0.3",
+ "version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/phar-io/manifest.git",
- "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4"
+ "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
- "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/85265efd3af7ba3ca4b2a2c34dbfc5788dd29133",
+ "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-phar": "*",
- "phar-io/version": "^2.0",
- "php": "^5.6 || ^7.0"
+ "ext-xmlwriter": "*",
+ "phar-io/version": "^3.0.1",
+ "php": "^7.2 || ^8.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "2.0.x-dev"
}
},
"autoload": {
@@ -10350,24 +10397,24 @@
}
],
"description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
- "time": "2018-07-08T19:23:20+00:00"
+ "time": "2020-06-27T14:33:11+00:00"
},
{
"name": "phar-io/version",
- "version": "2.0.1",
+ "version": "3.0.2",
"source": {
"type": "git",
"url": "https://github.com/phar-io/version.git",
- "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6"
+ "reference": "c6bb6825def89e0a32220f88337f8ceaf1975fa0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6",
- "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6",
+ "url": "https://api.github.com/repos/phar-io/version/zipball/c6bb6825def89e0a32220f88337f8ceaf1975fa0",
+ "reference": "c6bb6825def89e0a32220f88337f8ceaf1975fa0",
"shasum": ""
},
"require": {
- "php": "^5.6 || ^7.0"
+ "php": "^7.2 || ^8.0"
},
"type": "library",
"autoload": {
@@ -10397,7 +10444,7 @@
}
],
"description": "Library for handling version information and constraints",
- "time": "2018-07-08T19:19:57+00:00"
+ "time": "2020-06-27T14:39:04+00:00"
},
{
"name": "phpdocumentor/reflection-common",
@@ -10547,28 +10594,28 @@
},
{
"name": "phpspec/prophecy",
- "version": "1.11.1",
+ "version": "1.12.1",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "b20034be5efcdab4fb60ca3a29cba2949aead160"
+ "reference": "8ce87516be71aae9b956f81906aaf0338e0d8a2d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/b20034be5efcdab4fb60ca3a29cba2949aead160",
- "reference": "b20034be5efcdab4fb60ca3a29cba2949aead160",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/8ce87516be71aae9b956f81906aaf0338e0d8a2d",
+ "reference": "8ce87516be71aae9b956f81906aaf0338e0d8a2d",
"shasum": ""
},
"require": {
"doctrine/instantiator": "^1.2",
- "php": "^7.2",
- "phpdocumentor/reflection-docblock": "^5.0",
+ "php": "^7.2 || ~8.0, <8.1",
+ "phpdocumentor/reflection-docblock": "^5.2",
"sebastian/comparator": "^3.0 || ^4.0",
"sebastian/recursion-context": "^3.0 || ^4.0"
},
"require-dev": {
"phpspec/phpspec": "^6.0",
- "phpunit/phpunit": "^8.0"
+ "phpunit/phpunit": "^8.0 || ^9.0 <9.3"
},
"type": "library",
"extra": {
@@ -10606,44 +10653,48 @@
"spy",
"stub"
],
- "time": "2020-07-08T12:44:21+00:00"
+ "time": "2020-09-29T09:10:42+00:00"
},
{
"name": "phpunit/php-code-coverage",
- "version": "7.0.10",
+ "version": "9.1.11",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf"
+ "reference": "c9394cb9d07ecfa9351b96f2e296bad473195f4d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f1884187926fbb755a9aaf0b3836ad3165b478bf",
- "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/c9394cb9d07ecfa9351b96f2e296bad473195f4d",
+ "reference": "c9394cb9d07ecfa9351b96f2e296bad473195f4d",
"shasum": ""
},
"require": {
"ext-dom": "*",
+ "ext-libxml": "*",
"ext-xmlwriter": "*",
- "php": "^7.2",
- "phpunit/php-file-iterator": "^2.0.2",
- "phpunit/php-text-template": "^1.2.1",
- "phpunit/php-token-stream": "^3.1.1",
- "sebastian/code-unit-reverse-lookup": "^1.0.1",
- "sebastian/environment": "^4.2.2",
- "sebastian/version": "^2.0.1",
- "theseer/tokenizer": "^1.1.3"
+ "nikic/php-parser": "^4.8",
+ "php": ">=7.3",
+ "phpunit/php-file-iterator": "^3.0.3",
+ "phpunit/php-text-template": "^2.0.2",
+ "sebastian/code-unit-reverse-lookup": "^2.0.2",
+ "sebastian/complexity": "^2.0",
+ "sebastian/environment": "^5.1.2",
+ "sebastian/lines-of-code": "^1.0",
+ "sebastian/version": "^3.0.1",
+ "theseer/tokenizer": "^1.2.0"
},
"require-dev": {
- "phpunit/phpunit": "^8.2.2"
+ "phpunit/phpunit": "^9.3"
},
"suggest": {
- "ext-xdebug": "^2.7.2"
+ "ext-pcov": "*",
+ "ext-xdebug": "*"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "7.0-dev"
+ "dev-master": "9.1-dev"
}
},
"autoload": {
@@ -10669,32 +10720,38 @@
"testing",
"xunit"
],
- "time": "2019-11-20T13:55:58+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-19T05:29:17+00:00"
},
{
"name": "phpunit/php-file-iterator",
- "version": "2.0.2",
+ "version": "3.0.5",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "050bedf145a257b1ff02746c31894800e5122946"
+ "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/050bedf145a257b1ff02746c31894800e5122946",
- "reference": "050bedf145a257b1ff02746c31894800e5122946",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/aa4be8575f26070b100fccb67faabb28f21f66f8",
+ "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^7.1"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "3.0-dev"
}
},
"autoload": {
@@ -10719,26 +10776,99 @@
"filesystem",
"iterator"
],
- "time": "2018-09-13T20:33:42+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:57:25+00:00"
},
{
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
+ "name": "phpunit/php-invoker",
+ "version": "3.1.1",
"source": {
"type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
+ "url": "https://github.com/sebastianbergmann/php-invoker.git",
+ "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
+ "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "ext-pcntl": "*",
+ "phpunit/phpunit": "^9.3"
+ },
+ "suggest": {
+ "ext-pcntl": "*"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.1-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Invoke callables with a timeout",
+ "homepage": "https://github.com/sebastianbergmann/php-invoker/",
+ "keywords": [
+ "process"
+ ],
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:58:55+00:00"
+ },
+ {
+ "name": "phpunit/php-text-template",
+ "version": "2.0.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/php-text-template.git",
+ "reference": "18c887016e60e52477e54534956d7b47bc52cd84"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/18c887016e60e52477e54534956d7b47bc52cd84",
+ "reference": "18c887016e60e52477e54534956d7b47bc52cd84",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.0-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -10760,32 +10890,38 @@
"keywords": [
"template"
],
- "time": "2015-06-21T13:50:34+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T06:03:05+00:00"
},
{
"name": "phpunit/php-timer",
- "version": "2.1.2",
+ "version": "5.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "1038454804406b0b5f5f520358e78c1c2f71501e"
+ "reference": "c9ff14f493699e2f6adee9fd06a0245b276643b7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/1038454804406b0b5f5f520358e78c1c2f71501e",
- "reference": "1038454804406b0b5f5f520358e78c1c2f71501e",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/c9ff14f493699e2f6adee9fd06a0245b276643b7",
+ "reference": "c9ff14f493699e2f6adee9fd06a0245b276643b7",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^7.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.1-dev"
+ "dev-master": "5.0-dev"
}
},
"autoload": {
@@ -10809,106 +10945,65 @@
"keywords": [
"timer"
],
- "time": "2019-06-07T04:22:29+00:00"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/995192df77f63a59e47f025390d2d1fdf8f425ff",
- "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": "^7.1"
- },
- "require-dev": {
- "phpunit/phpunit": "^7.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
+ "funding": [
{
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
}
],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "abandoned": true,
- "time": "2019-09-17T06:23:10+00:00"
+ "time": "2020-09-28T06:00:25+00:00"
},
{
"name": "phpunit/phpunit",
- "version": "8.5.8",
+ "version": "9.3.11",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "34c18baa6a44f1d1fbf0338907139e9dce95b997"
+ "reference": "f7316ea106df7c9507f4fdaa88c47bc10a3b27a1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/34c18baa6a44f1d1fbf0338907139e9dce95b997",
- "reference": "34c18baa6a44f1d1fbf0338907139e9dce95b997",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f7316ea106df7c9507f4fdaa88c47bc10a3b27a1",
+ "reference": "f7316ea106df7c9507f4fdaa88c47bc10a3b27a1",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.2.0",
+ "doctrine/instantiator": "^1.3.1",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
"ext-mbstring": "*",
"ext-xml": "*",
"ext-xmlwriter": "*",
- "myclabs/deep-copy": "^1.9.1",
- "phar-io/manifest": "^1.0.3",
- "phar-io/version": "^2.0.1",
- "php": "^7.2",
- "phpspec/prophecy": "^1.8.1",
- "phpunit/php-code-coverage": "^7.0.7",
- "phpunit/php-file-iterator": "^2.0.2",
- "phpunit/php-text-template": "^1.2.1",
- "phpunit/php-timer": "^2.1.2",
- "sebastian/comparator": "^3.0.2",
- "sebastian/diff": "^3.0.2",
- "sebastian/environment": "^4.2.2",
- "sebastian/exporter": "^3.1.1",
- "sebastian/global-state": "^3.0.0",
- "sebastian/object-enumerator": "^3.0.3",
- "sebastian/resource-operations": "^2.0.1",
- "sebastian/type": "^1.1.3",
- "sebastian/version": "^2.0.1"
+ "myclabs/deep-copy": "^1.10.1",
+ "phar-io/manifest": "^2.0.1",
+ "phar-io/version": "^3.0.2",
+ "php": ">=7.3",
+ "phpspec/prophecy": "^1.11.1",
+ "phpunit/php-code-coverage": "^9.1.11",
+ "phpunit/php-file-iterator": "^3.0.4",
+ "phpunit/php-invoker": "^3.1",
+ "phpunit/php-text-template": "^2.0.2",
+ "phpunit/php-timer": "^5.0.1",
+ "sebastian/cli-parser": "^1.0",
+ "sebastian/code-unit": "^1.0.5",
+ "sebastian/comparator": "^4.0.3",
+ "sebastian/diff": "^4.0.2",
+ "sebastian/environment": "^5.1.2",
+ "sebastian/exporter": "^4.0.2",
+ "sebastian/global-state": "^5.0",
+ "sebastian/object-enumerator": "^4.0.2",
+ "sebastian/resource-operations": "^3.0.2",
+ "sebastian/type": "^2.2.1",
+ "sebastian/version": "^3.0.1"
},
"require-dev": {
- "ext-pdo": "*"
+ "ext-pdo": "*",
+ "phpspec/prophecy-phpunit": "^2.0.1"
},
"suggest": {
"ext-soap": "*",
- "ext-xdebug": "*",
- "phpunit/php-invoker": "^2.0.0"
+ "ext-xdebug": "*"
},
"bin": [
"phpunit"
@@ -10916,12 +11011,15 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "8.5-dev"
+ "dev-master": "9.3-dev"
}
},
"autoload": {
"classmap": [
"src/"
+ ],
+ "files": [
+ "src/Framework/Assert/Functions.php"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -10952,7 +11050,7 @@
"type": "github"
}
],
- "time": "2020-06-22T07:06:58+00:00"
+ "time": "2020-09-24T08:08:49+00:00"
},
{
"name": "scrivo/highlight.php",
@@ -11030,29 +11128,133 @@
"time": "2020-08-27T03:24:44+00:00"
},
{
- "name": "sebastian/code-unit-reverse-lookup",
+ "name": "sebastian/cli-parser",
"version": "1.0.1",
"source": {
"type": "git",
- "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18"
+ "url": "https://github.com/sebastianbergmann/cli-parser.git",
+ "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
- "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
+ "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2",
+ "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2",
"shasum": ""
},
"require": {
- "php": "^5.6 || ^7.0"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^5.7 || ^6.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "1.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library for parsing CLI options",
+ "homepage": "https://github.com/sebastianbergmann/cli-parser",
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T06:08:49+00:00"
+ },
+ {
+ "name": "sebastian/code-unit",
+ "version": "1.0.6",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/code-unit.git",
+ "reference": "d3a241b6028ff9d8e97d2b6ebd4090d01f92fad8"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/d3a241b6028ff9d8e97d2b6ebd4090d01f92fad8",
+ "reference": "d3a241b6028ff9d8e97d2b6ebd4090d01f92fad8",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Collection of value objects that represent the PHP code units",
+ "homepage": "https://github.com/sebastianbergmann/code-unit",
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:28:46+00:00"
+ },
+ {
+ "name": "sebastian/code-unit-reverse-lookup",
+ "version": "2.0.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
+ "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
+ "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.0-dev"
}
},
"autoload": {
@@ -11072,34 +11274,40 @@
],
"description": "Looks up which function or method a line of code belongs to",
"homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
- "time": "2017-03-04T06:30:41+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:30:19+00:00"
},
{
"name": "sebastian/comparator",
- "version": "3.0.2",
+ "version": "4.0.5",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da"
+ "reference": "7a8ff306445707539c1a6397372a982a1ec55120"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/5de4fc177adf9bce8df98d8d141a7559d7ccf6da",
- "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/7a8ff306445707539c1a6397372a982a1ec55120",
+ "reference": "7a8ff306445707539c1a6397372a982a1ec55120",
"shasum": ""
},
"require": {
- "php": "^7.1",
- "sebastian/diff": "^3.0",
- "sebastian/exporter": "^3.1"
+ "php": ">=7.3",
+ "sebastian/diff": "^4.0",
+ "sebastian/exporter": "^4.0"
},
"require-dev": {
- "phpunit/phpunit": "^7.1"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-master": "4.0-dev"
}
},
"autoload": {
@@ -11112,6 +11320,10 @@
"BSD-3-Clause"
],
"authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ },
{
"name": "Jeff Welch",
"email": "whatthejeff@gmail.com"
@@ -11123,10 +11335,6 @@
{
"name": "Bernhard Schussek",
"email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
}
],
"description": "Provides the functionality to compare PHP values for equality",
@@ -11136,33 +11344,39 @@
"compare",
"equality"
],
- "time": "2018-07-12T15:12:46+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-30T06:47:25+00:00"
},
{
- "name": "sebastian/diff",
- "version": "3.0.2",
+ "name": "sebastian/complexity",
+ "version": "2.0.1",
"source": {
"type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29"
+ "url": "https://github.com/sebastianbergmann/complexity.git",
+ "reference": "ba8cc2da0c0bfbc813d03b56406734030c7f1eff"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/720fcc7e9b5cf384ea68d9d930d480907a0c1a29",
- "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29",
+ "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/ba8cc2da0c0bfbc813d03b56406734030c7f1eff",
+ "reference": "ba8cc2da0c0bfbc813d03b56406734030c7f1eff",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "nikic/php-parser": "^4.7",
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^7.5 || ^8.0",
- "symfony/process": "^2 || ^3.3 || ^4"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-master": "2.0-dev"
}
},
"autoload": {
@@ -11176,12 +11390,65 @@
],
"authors": [
{
- "name": "Kore Nordmann",
- "email": "mail@kore-nordmann.de"
- },
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library for calculating the complexity of PHP code units",
+ "homepage": "https://github.com/sebastianbergmann/complexity",
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T06:05:03+00:00"
+ },
+ {
+ "name": "sebastian/diff",
+ "version": "4.0.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/diff.git",
+ "reference": "ffc949a1a2aae270ea064453d7535b82e4c32092"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ffc949a1a2aae270ea064453d7535b82e4c32092",
+ "reference": "ffc949a1a2aae270ea064453d7535b82e4c32092",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3",
+ "symfony/process": "^4.2 || ^5"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "4.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
{
"name": "Sebastian Bergmann",
"email": "sebastian@phpunit.de"
+ },
+ {
+ "name": "Kore Nordmann",
+ "email": "mail@kore-nordmann.de"
}
],
"description": "Diff implementation",
@@ -11192,27 +11459,33 @@
"unidiff",
"unified diff"
],
- "time": "2019-02-04T06:01:07+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:32:55+00:00"
},
{
"name": "sebastian/environment",
- "version": "4.2.3",
+ "version": "5.1.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368"
+ "reference": "388b6ced16caa751030f6a69e588299fa09200ac"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/464c90d7bdf5ad4e8a6aea15c091fec0603d4368",
- "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/388b6ced16caa751030f6a69e588299fa09200ac",
+ "reference": "388b6ced16caa751030f6a69e588299fa09200ac",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^7.5"
+ "phpunit/phpunit": "^9.3"
},
"suggest": {
"ext-posix": "*"
@@ -11220,7 +11493,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.2-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -11245,34 +11518,40 @@
"environment",
"hhvm"
],
- "time": "2019-11-20T08:46:58+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:52:38+00:00"
},
{
"name": "sebastian/exporter",
- "version": "3.1.2",
+ "version": "4.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e"
+ "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/68609e1261d215ea5b21b7987539cbfbe156ec3e",
- "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/d89cc98761b8cb5a1a235a6b703ae50d34080e65",
+ "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65",
"shasum": ""
},
"require": {
- "php": "^7.0",
- "sebastian/recursion-context": "^3.0"
+ "php": ">=7.3",
+ "sebastian/recursion-context": "^4.0"
},
"require-dev": {
"ext-mbstring": "*",
- "phpunit/phpunit": "^6.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1.x-dev"
+ "dev-master": "4.0-dev"
}
},
"autoload": {
@@ -11312,30 +11591,36 @@
"export",
"exporter"
],
- "time": "2019-09-14T09:02:43+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:24:23+00:00"
},
{
"name": "sebastian/global-state",
- "version": "3.0.0",
+ "version": "5.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4"
+ "reference": "ea779cb749a478b22a2564ac41cd7bda79c78dc7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4",
- "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4",
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/ea779cb749a478b22a2564ac41cd7bda79c78dc7",
+ "reference": "ea779cb749a478b22a2564ac41cd7bda79c78dc7",
"shasum": ""
},
"require": {
- "php": "^7.2",
- "sebastian/object-reflector": "^1.1.1",
- "sebastian/recursion-context": "^3.0"
+ "php": ">=7.3",
+ "sebastian/object-reflector": "^2.0",
+ "sebastian/recursion-context": "^4.0"
},
"require-dev": {
"ext-dom": "*",
- "phpunit/phpunit": "^8.0"
+ "phpunit/phpunit": "^9.3"
},
"suggest": {
"ext-uopz": "*"
@@ -11343,7 +11628,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-master": "5.0-dev"
}
},
"autoload": {
@@ -11366,34 +11651,93 @@
"keywords": [
"global state"
],
- "time": "2019-02-01T05:30:01+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:54:06+00:00"
},
{
- "name": "sebastian/object-enumerator",
- "version": "3.0.3",
+ "name": "sebastian/lines-of-code",
+ "version": "1.0.1",
"source": {
"type": "git",
- "url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5"
+ "url": "https://github.com/sebastianbergmann/lines-of-code.git",
+ "reference": "6514b8f21906b8b46f520d1fbd17a4523fa59a54"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/7cfd9e65d11ffb5af41198476395774d4c8a84c5",
- "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5",
+ "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/6514b8f21906b8b46f520d1fbd17a4523fa59a54",
+ "reference": "6514b8f21906b8b46f520d1fbd17a4523fa59a54",
"shasum": ""
},
"require": {
- "php": "^7.0",
- "sebastian/object-reflector": "^1.1.1",
- "sebastian/recursion-context": "^3.0"
+ "nikic/php-parser": "^4.6",
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^6.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0.x-dev"
+ "dev-master": "1.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library for counting the lines of code in PHP source code",
+ "homepage": "https://github.com/sebastianbergmann/lines-of-code",
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T06:07:27+00:00"
+ },
+ {
+ "name": "sebastian/object-enumerator",
+ "version": "4.0.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/object-enumerator.git",
+ "reference": "f6f5957013d84725427d361507e13513702888a4"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/f6f5957013d84725427d361507e13513702888a4",
+ "reference": "f6f5957013d84725427d361507e13513702888a4",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.3",
+ "sebastian/object-reflector": "^2.0",
+ "sebastian/recursion-context": "^4.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "4.0-dev"
}
},
"autoload": {
@@ -11413,122 +11757,33 @@
],
"description": "Traverses array structures and object graphs to enumerate all referenced objects",
"homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "time": "2017-08-03T12:35:26+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:55:06+00:00"
},
{
"name": "sebastian/object-reflector",
- "version": "1.1.1",
+ "version": "2.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-reflector.git",
- "reference": "773f97c67f28de00d397be301821b06708fca0be"
+ "reference": "d9d0ab3b12acb1768bc1e0a89b23c90d2043cbe5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/773f97c67f28de00d397be301821b06708fca0be",
- "reference": "773f97c67f28de00d397be301821b06708fca0be",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/d9d0ab3b12acb1768bc1e0a89b23c90d2043cbe5",
+ "reference": "d9d0ab3b12acb1768bc1e0a89b23c90d2043cbe5",
"shasum": ""
},
"require": {
- "php": "^7.0"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^6.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Allows reflection of object attributes, including inherited and non-public ones",
- "homepage": "https://github.com/sebastianbergmann/object-reflector/",
- "time": "2017-03-29T09:07:27+00:00"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "3.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8",
- "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8",
- "shasum": ""
- },
- "require": {
- "php": "^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^6.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2017-03-03T06:23:57+00:00"
- },
- {
- "name": "sebastian/resource-operations",
- "version": "2.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/4d7a795d35b889bf80a0cc04e08d77cedfa917a9",
- "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9",
- "shasum": ""
- },
- "require": {
- "php": "^7.1"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
@@ -11551,34 +11806,150 @@
"email": "sebastian@phpunit.de"
}
],
- "description": "Provides a list of PHP built-in functions that operate on resources",
- "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "time": "2018-10-04T04:07:39+00:00"
+ "description": "Allows reflection of object attributes, including inherited and non-public ones",
+ "homepage": "https://github.com/sebastianbergmann/object-reflector/",
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:56:16+00:00"
},
{
- "name": "sebastian/type",
- "version": "1.1.3",
+ "name": "sebastian/recursion-context",
+ "version": "4.0.3",
"source": {
"type": "git",
- "url": "https://github.com/sebastianbergmann/type.git",
- "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3"
+ "url": "https://github.com/sebastianbergmann/recursion-context.git",
+ "reference": "ed8c9cd355089134bc9cba421b5cfdd58f0eaef7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/3aaaa15fa71d27650d62a948be022fe3b48541a3",
- "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/ed8c9cd355089134bc9cba421b5cfdd58f0eaef7",
+ "reference": "ed8c9cd355089134bc9cba421b5cfdd58f0eaef7",
"shasum": ""
},
"require": {
- "php": "^7.2"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^8.2"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.1-dev"
+ "dev-master": "4.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ },
+ {
+ "name": "Jeff Welch",
+ "email": "whatthejeff@gmail.com"
+ },
+ {
+ "name": "Adam Harvey",
+ "email": "aharvey@php.net"
+ }
+ ],
+ "description": "Provides functionality to recursively process PHP variables",
+ "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:17:32+00:00"
+ },
+ {
+ "name": "sebastian/resource-operations",
+ "version": "3.0.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/resource-operations.git",
+ "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
+ "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Provides a list of PHP built-in functions that operate on resources",
+ "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T06:45:17+00:00"
+ },
+ {
+ "name": "sebastian/type",
+ "version": "2.2.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/type.git",
+ "reference": "e494dcaeb89d1458c9ccd8c819745245a1669aea"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/e494dcaeb89d1458c9ccd8c819745245a1669aea",
+ "reference": "e494dcaeb89d1458c9ccd8c819745245a1669aea",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.2-dev"
}
},
"autoload": {
@@ -11599,29 +11970,35 @@
],
"description": "Collection of value objects that represent the types of the PHP type system",
"homepage": "https://github.com/sebastianbergmann/type",
- "time": "2019-07-02T08:10:15+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T06:01:38+00:00"
},
{
"name": "sebastian/version",
- "version": "2.0.1",
+ "version": "3.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/version.git",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019"
+ "reference": "c6c1022351a901512170118436c764e473f6de8c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019",
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c",
+ "reference": "c6c1022351a901512170118436c764e473f6de8c",
"shasum": ""
},
"require": {
- "php": ">=5.6"
+ "php": ">=7.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "3.0-dev"
}
},
"autoload": {
@@ -11642,7 +12019,13 @@
],
"description": "Library that helps with managing the version number of Git-hosted PHP projects",
"homepage": "https://github.com/sebastianbergmann/version",
- "time": "2016-10-03T07:35:21+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T06:39:44+00:00"
},
{
"name": "swagger-api/swagger-ui",
@@ -11703,16 +12086,16 @@
},
{
"name": "symfony/debug",
- "version": "v4.4.13",
+ "version": "v4.4.14",
"source": {
"type": "git",
"url": "https://github.com/symfony/debug.git",
- "reference": "aeb73aca16a8f1fe958230fe44e6cf4c84cbb85e"
+ "reference": "726b85e69342e767d60e3853b98559a68ff74183"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/aeb73aca16a8f1fe958230fe44e6cf4c84cbb85e",
- "reference": "aeb73aca16a8f1fe958230fe44e6cf4c84cbb85e",
+ "url": "https://api.github.com/repos/symfony/debug/zipball/726b85e69342e767d60e3853b98559a68ff74183",
+ "reference": "726b85e69342e767d60e3853b98559a68ff74183",
"shasum": ""
},
"require": {
@@ -11770,20 +12153,20 @@
"type": "tidelift"
}
],
- "time": "2020-08-10T07:47:39+00:00"
+ "time": "2020-09-09T05:20:36+00:00"
},
{
"name": "symfony/yaml",
- "version": "v5.1.5",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "a44bd3a91bfbf8db12367fa6ffac9c3eb1a8804a"
+ "reference": "e147a68cb66a8b510f4b7481fe4da5b2ab65ec6a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/a44bd3a91bfbf8db12367fa6ffac9c3eb1a8804a",
- "reference": "a44bd3a91bfbf8db12367fa6ffac9c3eb1a8804a",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/e147a68cb66a8b510f4b7481fe4da5b2ab65ec6a",
+ "reference": "e147a68cb66a8b510f4b7481fe4da5b2ab65ec6a",
"shasum": ""
},
"require": {
@@ -11847,7 +12230,7 @@
"type": "tidelift"
}
],
- "time": "2020-08-26T08:30:57+00:00"
+ "time": "2020-09-27T03:44:28+00:00"
},
{
"name": "theseer/tokenizer",
@@ -11946,24 +12329,24 @@
},
{
"name": "wildbit/postmark-php",
- "version": "2.11.0",
+ "version": "4.0.0",
"source": {
"type": "git",
"url": "https://github.com/wildbit/postmark-php.git",
- "reference": "dd738b4de6d7dc3d296a1a7bad8f0b26f9693410"
+ "reference": "136e3d0884411ca23d0bac02470cfa1d14be676c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/wildbit/postmark-php/zipball/dd738b4de6d7dc3d296a1a7bad8f0b26f9693410",
- "reference": "dd738b4de6d7dc3d296a1a7bad8f0b26f9693410",
+ "url": "https://api.github.com/repos/wildbit/postmark-php/zipball/136e3d0884411ca23d0bac02470cfa1d14be676c",
+ "reference": "136e3d0884411ca23d0bac02470cfa1d14be676c",
"shasum": ""
},
"require": {
- "guzzlehttp/guzzle": "~6.0",
- "php": ">=5.5.0"
+ "guzzlehttp/guzzle": "^6.0|^7.0",
+ "php": ">=7.0.0"
},
"require-dev": {
- "phpunit/phpunit": "4.4.0"
+ "phpunit/phpunit": "^6.0.0"
},
"type": "library",
"autoload": {
@@ -11976,7 +12359,7 @@
"MIT"
],
"description": "The officially supported client for Postmark (http://postmarkapp.com)",
- "time": "2020-06-08T08:42:08+00:00"
+ "time": "2020-09-10T16:36:51+00:00"
},
{
"name": "zircote/swagger-php",
diff --git a/config/ninja.php b/config/ninja.php
index a32f6a39402d..c21ae376ba0f 100644
--- a/config/ninja.php
+++ b/config/ninja.php
@@ -29,7 +29,8 @@ return [
'enabled_modules' => 32767,
'phantomjs_key' => env('PHANTOMJS_KEY', false),
'phantomjs_secret' => env('PHANTOMJS_SECRET', false),
-
+ 'trusted_proxies' => env('TRUSTED_PROXIES', false),
+
'sentry_dsn' => env('SENTRY_LARAVEL_DSN', 'https://9b4e15e575214354a7d666489783904a@sentry.invoicing.co/6'),
'environment' => env('NINJA_ENVIRONMENT', 'selfhost'), // 'hosted', 'development', 'selfhost', 'reseller'
diff --git a/database/factories/AccountFactory.php b/database/factories/AccountFactory.php
index dc068b1ae9ac..78017ca57e60 100644
--- a/database/factories/AccountFactory.php
+++ b/database/factories/AccountFactory.php
@@ -1,12 +1,40 @@
define(App\Models\Account::class, function (Faker $faker) {
- return [
- 'default_company_id' => 1,
- 'key' => Str::random(32),
- 'report_errors' => 1,
- ];
-});
+class AccountFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Account::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'default_company_id' => 1,
+ 'key' => Str::random(32),
+ 'report_errors' => 1,
+ ];
+ }
+
+}
diff --git a/database/factories/ClientContactFactory.php b/database/factories/ClientContactFactory.php
index 1a46709125be..8a6d739774b6 100644
--- a/database/factories/ClientContactFactory.php
+++ b/database/factories/ClientContactFactory.php
@@ -1,28 +1,48 @@
$this->faker->firstName,
+ 'last_name' => $this->faker->lastName,
+ 'phone' => $this->faker->phoneNumber,
+ 'email_verified_at' => now(),
+ 'email' => $this->faker->unique()->safeEmail,
+ 'send_email' => true,
+ 'password' => bcrypt('password'),
+ 'remember_token' => \Illuminate\Support\Str::random(10),
+ 'contact_key' => \Illuminate\Support\Str::random(40),
+ ];
+ }
+
+}
-$factory->define(App\Models\ClientContact::class, function (Faker $faker) {
- return [
- 'first_name' => $faker->firstName,
- 'last_name' => $faker->lastName,
- 'phone' => $faker->phoneNumber,
- 'email_verified_at' => now(),
- 'email' => $faker->unique()->safeEmail,
- 'send_email' => true,
- 'password' => bcrypt('password'),
- 'remember_token' => \Illuminate\Support\Str::random(10),
- 'contact_key' => \Illuminate\Support\Str::random(40),
- ];
-});
diff --git a/database/factories/ClientFactory.php b/database/factories/ClientFactory.php
index b30259928009..07f26b4e4401 100644
--- a/database/factories/ClientFactory.php
+++ b/database/factories/ClientFactory.php
@@ -1,35 +1,64 @@
define(App\Models\Client::class, function (Faker $faker) {
- return [
- 'name' => $faker->company(),
- 'website' => $faker->url,
- 'private_notes' => $faker->text(200),
- 'balance' => 0,
- 'paid_to_date' => 0,
- 'vat_number' => $faker->numberBetween(123456789, 987654321),
- 'id_number' => '',
- 'custom_value1' => '',
- 'custom_value2' => '',
- 'custom_value3' => '',
- 'custom_value4' => '',
- 'address1' => $faker->buildingNumber,
- 'address2' => $faker->streetAddress,
- 'city' => $faker->city,
- 'state' => $faker->state,
- 'postal_code' => $faker->postcode,
- 'country_id' => 4,
- 'shipping_address1' => $faker->buildingNumber,
- 'shipping_address2' => $faker->streetAddress,
- 'shipping_city' => $faker->city,
- 'shipping_state' => $faker->state,
- 'shipping_postal_code' => $faker->postcode,
- 'shipping_country_id' => 4,
- 'settings' => ClientSettings::defaults(),
- 'client_hash' => \Illuminate\Support\Str::random(40),
- ];
-});
+class ClientFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Client::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+
+ return [
+ 'name' => $this->faker->company(),
+ 'website' => $this->faker->url,
+ 'private_notes' => $this->faker->text(200),
+ 'balance' => 0,
+ 'paid_to_date' => 0,
+ 'vat_number' => $this->faker->numberBetween(123456789, 987654321),
+ 'id_number' => '',
+ 'custom_value1' => '',
+ 'custom_value2' => '',
+ 'custom_value3' => '',
+ 'custom_value4' => '',
+ 'address1' => $this->faker->buildingNumber,
+ 'address2' => $this->faker->streetAddress,
+ 'city' => $this->faker->city,
+ 'state' => $this->faker->state,
+ 'postal_code' => $this->faker->postcode,
+ 'country_id' => 4,
+ 'shipping_address1' => $this->faker->buildingNumber,
+ 'shipping_address2' => $this->faker->streetAddress,
+ 'shipping_city' => $this->faker->city,
+ 'shipping_state' => $this->faker->state,
+ 'shipping_postal_code' => $this->faker->postcode,
+ 'shipping_country_id' => 4,
+ 'settings' => ClientSettings::defaults(),
+ 'client_hash' => \Illuminate\Support\Str::random(40),
+ ];
+ }
+}
\ No newline at end of file
diff --git a/database/factories/ClientLocationFactory.php b/database/factories/ClientLocationFactory.php
deleted file mode 100644
index 179da5ebc6d9..000000000000
--- a/database/factories/ClientLocationFactory.php
+++ /dev/null
@@ -1,18 +0,0 @@
-define(App\Models\ClientLocation::class, function (Faker $faker) {
- return [
- 'address1' => $faker->buildingNumber,
- 'address2' => $faker->streetAddress,
- 'city' => $faker->city,
- 'state' => $faker->state,
- 'postal_code' => $faker->postcode,
- 'country_id' => 4,
- 'latitude' => $faker->latitude,
- 'longitude' => $faker->longitude,
- 'description' => $faker->paragraph,
- 'private_notes' => $faker->paragraph,
- ];
-});
diff --git a/database/factories/CompanyFactory.php b/database/factories/CompanyFactory.php
index 0308c4fe512e..b01724b8ace8 100644
--- a/database/factories/CompanyFactory.php
+++ b/database/factories/CompanyFactory.php
@@ -1,29 +1,58 @@
define(App\Models\Company::class, function (Faker $faker) {
- return [
- //'name' => $faker->name,
- 'company_key' => strtolower(\Illuminate\Support\Str::random(config('ninja.key_length'))),
- 'ip' => $faker->ipv4,
- 'db' => config('database.default'),
- 'settings' => CompanySettings::defaults(),
- 'is_large' => false,
- 'custom_fields' => (object) [
- //'invoice1' => 'Custom Date|date',
- // 'invoice2' => '2|switch',
- // 'invoice3' => '3|',
- // 'invoice4' => '4',
- // 'client1'=>'1',
- // 'client2'=>'2',
- // 'client3'=>'3|date',
- // 'client4'=>'4|switch',
- // 'company1'=>'1|date',
- // 'company2'=>'2|switch',
- // 'company3'=>'3',
- // 'company4'=>'4',
- ],
- ];
-});
+class CompanyFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Company::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ //'name' => $this->faker->name,
+ 'company_key' => strtolower(\Illuminate\Support\Str::random(config('ninja.key_length'))),
+ 'ip' => $this->faker->ipv4,
+ 'db' => config('database.default'),
+ 'settings' => CompanySettings::defaults(),
+ 'is_large' => false,
+ 'custom_fields' => (object) [
+ //'invoice1' => 'Custom Date|date',
+ // 'invoice2' => '2|switch',
+ // 'invoice3' => '3|',
+ // 'invoice4' => '4',
+ // 'client1'=>'1',
+ // 'client2'=>'2',
+ // 'client3'=>'3|date',
+ // 'client4'=>'4|switch',
+ // 'company1'=>'1|date',
+ // 'company2'=>'2|switch',
+ // 'company3'=>'3',
+ // 'company4'=>'4',
+ ],
+ ];
+ }
+}
diff --git a/database/factories/CreditFactory.php b/database/factories/CreditFactory.php
index e24b867432b3..dd60d0e0ef53 100644
--- a/database/factories/CreditFactory.php
+++ b/database/factories/CreditFactory.php
@@ -1,30 +1,59 @@
define(App\Models\Credit::class, function (Faker $faker) {
- return [
- 'status_id' => App\Models\Credit::STATUS_DRAFT,
- 'discount' => $faker->numberBetween(1, 10),
- 'is_amount_discount' => (bool) random_int(0, 1),
- 'tax_name1' => 'GST',
- 'tax_rate1' => 10,
- 'tax_name2' => 'VAT',
- 'tax_rate2' => 17.5,
- //'tax_name3' => 'THIRDTAX',
- //'tax_rate3' => 5,
- // 'custom_value1' => $faker->numberBetween(1,4),
- // 'custom_value2' => $faker->numberBetween(1,4),
- // 'custom_value3' => $faker->numberBetween(1,4),
- // 'custom_value4' => $faker->numberBetween(1,4),
- 'is_deleted' => false,
- 'po_number' => $faker->text(10),
- 'date' => $faker->date(),
- 'due_date' => $faker->date(),
- 'line_items' => InvoiceItemFactory::generateCredit(5),
- 'terms' => $faker->text(500),
- ];
-});
+class CreditFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Credit::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'status_id' => Credit::STATUS_DRAFT,
+ 'discount' => $this->faker->numberBetween(1, 10),
+ 'is_amount_discount' => (bool) random_int(0, 1),
+ 'tax_name1' => 'GST',
+ 'tax_rate1' => 10,
+ 'tax_name2' => 'VAT',
+ 'tax_rate2' => 17.5,
+ //'tax_name3' => 'THIRDTAX',
+ //'tax_rate3' => 5,
+ // 'custom_value1' => $this->faker->numberBetween(1,4),
+ // 'custom_value2' => $this->faker->numberBetween(1,4),
+ // 'custom_value3' => $this->faker->numberBetween(1,4),
+ // 'custom_value4' => $this->faker->numberBetween(1,4),
+ 'is_deleted' => false,
+ 'po_number' => $this->faker->text(10),
+ 'date' => $this->faker->date(),
+ 'due_date' => $this->faker->date(),
+ 'line_items' => InvoiceItemFactory::generateCredit(5),
+ 'terms' => $this->faker->text(500),
+ ];
+ }
+}
diff --git a/database/factories/ExpenseFactory.php b/database/factories/ExpenseFactory.php
index 31ad21ab0f6c..675b801328f5 100644
--- a/database/factories/ExpenseFactory.php
+++ b/database/factories/ExpenseFactory.php
@@ -1,22 +1,47 @@
define(App\Models\Expense::class, function (Faker $faker) {
- return [
- 'amount' => $faker->numberBetween(1, 10),
- 'custom_value1' => $faker->text(10),
- 'custom_value2' => $faker->text(10),
- 'custom_value3' => $faker->text(10),
- 'custom_value4' => $faker->text(10),
- 'exchange_rate' => $faker->randomFloat(2, 0, 1),
- 'expense_date' => $faker->date(),
- 'is_deleted' => false,
- 'public_notes' => $faker->text(50),
- 'private_notes' => $faker->text(50),
- 'transaction_reference' => $faker->text(5),
- ];
-});
+class ExpenseFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Expense::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'amount' => $this->faker->numberBetween(1, 10),
+ 'custom_value1' => $this->faker->text(10),
+ 'custom_value2' => $this->faker->text(10),
+ 'custom_value3' => $this->faker->text(10),
+ 'custom_value4' => $this->faker->text(10),
+ 'exchange_rate' => $this->faker->randomFloat(2, 0, 1),
+ 'expense_date' => $this->faker->date(),
+ 'is_deleted' => false,
+ 'public_notes' => $this->faker->text(50),
+ 'private_notes' => $this->faker->text(50),
+ 'transaction_reference' => $this->faker->text(5),
+ ];
+ }
+}
diff --git a/database/factories/GatewayFactory.php b/database/factories/GatewayFactory.php
index 744af9ab603b..e1c61cf3d7ca 100644
--- a/database/factories/GatewayFactory.php
+++ b/database/factories/GatewayFactory.php
@@ -1,17 +1,45 @@
define(App\Models\Gateway::class, function (Faker $faker) {
- return [
- 'key' => '3b6621f970ab18887c4f6dca78d3f8bb',
- 'visible' => true,
- 'sort_order' =>1,
- 'name' => 'demo',
- 'provider' => 'test',
- 'is_offsite' => true,
- 'is_secure' => true,
- 'fields' => '',
- 'default_gateway_type_id' => 1,
- ];
-});
+class GatewayFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Gateway::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'key' => '3b6621f970ab18887c4f6dca78d3f8bb',
+ 'visible' => true,
+ 'sort_order' =>1,
+ 'name' => 'demo',
+ 'provider' => 'test',
+ 'is_offsite' => true,
+ 'is_secure' => true,
+ 'fields' => '',
+ 'default_gateway_type_id' => 1,
+ ];
+ }
+}
\ No newline at end of file
diff --git a/database/factories/InvoiceFactory.php b/database/factories/InvoiceFactory.php
index 61d416af41ef..7562a1d62c60 100644
--- a/database/factories/InvoiceFactory.php
+++ b/database/factories/InvoiceFactory.php
@@ -1,31 +1,60 @@
define(App\Models\Invoice::class, function (Faker $faker) {
- return [
- 'status_id' => App\Models\Invoice::STATUS_SENT,
- 'number' => $faker->ean13(),
- 'discount' => $faker->numberBetween(1, 10),
- 'is_amount_discount' => (bool) random_int(0, 1),
- 'tax_name1' => 'GST',
- 'tax_rate1' => 10,
- 'tax_name2' => 'VAT',
- 'tax_rate2' => 17.5,
- //'tax_name3' => 'THIRDTAX',
- //'tax_rate3' => 5,
- 'custom_value1' => $faker->date,
- 'custom_value2' => rand(0, 1) ? 'yes' : 'no',
- // 'custom_value3' => $faker->numberBetween(1,4),
- // 'custom_value4' => $faker->numberBetween(1,4),
- 'is_deleted' => false,
- 'po_number' => $faker->text(10),
- 'date' => $faker->date(),
- 'due_date' => $faker->date(),
- 'line_items' => InvoiceItemFactory::generate(5),
- 'terms' => $faker->text(500),
- ];
-});
+class InvoiceFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Invoice::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'status_id' => Invoice::STATUS_SENT,
+ 'number' => $this->faker->ean13(),
+ 'discount' => $this->faker->numberBetween(1, 10),
+ 'is_amount_discount' => (bool) random_int(0, 1),
+ 'tax_name1' => 'GST',
+ 'tax_rate1' => 10,
+ 'tax_name2' => 'VAT',
+ 'tax_rate2' => 17.5,
+ //'tax_name3' => 'THIRDTAX',
+ //'tax_rate3' => 5,
+ 'custom_value1' => $this->faker->date,
+ 'custom_value2' => rand(0, 1) ? 'yes' : 'no',
+ // 'custom_value3' => $this->faker->numberBetween(1,4),
+ // 'custom_value4' => $this->faker->numberBetween(1,4),
+ 'is_deleted' => false,
+ 'po_number' => $this->faker->text(10),
+ 'date' => $this->faker->date(),
+ 'due_date' => $this->faker->date(),
+ 'line_items' => InvoiceItemFactory::generate(5),
+ 'terms' => $this->faker->text(500),
+ ];
+ }
+}
\ No newline at end of file
diff --git a/database/factories/InvoiceInvitationFactory.php b/database/factories/InvoiceInvitationFactory.php
index 8eb6abba473a..8d462245a274 100644
--- a/database/factories/InvoiceInvitationFactory.php
+++ b/database/factories/InvoiceInvitationFactory.php
@@ -1,10 +1,37 @@
define(App\Models\InvoiceInvitation::class, function (Faker $faker) {
- return [
- 'key' => Str::random(40),
- ];
-});
+class InvoiceInvitationFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = InvoiceInvitation::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'key' => Str::random(40),
+ ];
+ }
+}
\ No newline at end of file
diff --git a/database/factories/PaymentFactory.php b/database/factories/PaymentFactory.php
index 32c6b10315f0..83088b5c7d81 100644
--- a/database/factories/PaymentFactory.php
+++ b/database/factories/PaymentFactory.php
@@ -1,17 +1,44 @@
define(App\Models\Payment::class, function (Faker $faker) {
- return [
- 'is_deleted' => false,
- 'amount' => $faker->numberBetween(1, 10),
- 'date' => $faker->date(),
- 'transaction_reference' => $faker->text(10),
- 'type_id' => Payment::TYPE_CREDIT_CARD,
- 'status_id' => Payment::STATUS_COMPLETED,
- ];
-});
+class PaymentFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Payment::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'is_deleted' => false,
+ 'amount' => $this->faker->numberBetween(1, 10),
+ 'date' => $this->faker->date(),
+ 'transaction_reference' => $this->faker->text(10),
+ 'type_id' => Payment::TYPE_CREDIT_CARD,
+ 'status_id' => Payment::STATUS_COMPLETED,
+ ];
+ }
+}
\ No newline at end of file
diff --git a/database/factories/ProductFactory.php b/database/factories/ProductFactory.php
index 342cbe52a6ac..d55e061f6450 100644
--- a/database/factories/ProductFactory.php
+++ b/database/factories/ProductFactory.php
@@ -1,24 +1,53 @@
define(App\Models\Product::class, function (Faker $faker) {
- return [
- 'product_key' => $faker->text(7),
- 'notes' => $faker->text(20),
- 'cost' => $faker->numberBetween(1, 1000),
- 'price' => $faker->numberBetween(1, 1000),
- 'quantity' => $faker->numberBetween(1, 100),
- 'tax_name1' => 'GST',
- 'tax_rate1' => 10,
- 'tax_name2' => 'VAT',
- 'tax_rate2' => 17.5,
- 'tax_name3' => 'THIRDTAX',
- 'tax_rate3' => 5,
- 'custom_value1' => $faker->text(20),
- 'custom_value2' => $faker->text(20),
- 'custom_value3' => $faker->text(20),
- 'custom_value4' => $faker->text(20),
- 'is_deleted' => false,
- ];
-});
+use App\Models\Product;
+use Illuminate\Database\Eloquent\Factories\Factory;
+use Illuminate\Support\Str;
+
+class ProductFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Product::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'product_key' => $this->faker->text(7),
+ 'notes' => $this->faker->text(20),
+ 'cost' => $this->faker->numberBetween(1, 1000),
+ 'price' => $this->faker->numberBetween(1, 1000),
+ 'quantity' => $this->faker->numberBetween(1, 100),
+ 'tax_name1' => 'GST',
+ 'tax_rate1' => 10,
+ 'tax_name2' => 'VAT',
+ 'tax_rate2' => 17.5,
+ 'tax_name3' => 'THIRDTAX',
+ 'tax_rate3' => 5,
+ 'custom_value1' => $this->faker->text(20),
+ 'custom_value2' => $this->faker->text(20),
+ 'custom_value3' => $this->faker->text(20),
+ 'custom_value4' => $this->faker->text(20),
+ 'is_deleted' => false,
+ ];
+ }
+}
\ No newline at end of file
diff --git a/database/factories/ProjectFactory.php b/database/factories/ProjectFactory.php
index 859745cb7b98..06083f94302e 100644
--- a/database/factories/ProjectFactory.php
+++ b/database/factories/ProjectFactory.php
@@ -1,12 +1,40 @@
define(App\Models\Project::class, function (Faker $faker) {
- return [
- 'name' => $faker->name(),
- 'description' => $faker->text(50),
- ];
-});
+
+use App\Models\Project;
+use Illuminate\Database\Eloquent\Factories\Factory;
+use Illuminate\Support\Str;
+
+class ProjectFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Project::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'name' => $this->faker->name(),
+ 'description' => $this->faker->text(50),
+ ];
+ }
+}
diff --git a/database/factories/QuoteFactory.php b/database/factories/QuoteFactory.php
index 54d87288fcc1..243cb66a1c4f 100644
--- a/database/factories/QuoteFactory.php
+++ b/database/factories/QuoteFactory.php
@@ -1,26 +1,53 @@
define(App\Models\Quote::class, function (Faker $faker) {
- return [
- 'status_id' => App\Models\Quote::STATUS_DRAFT,
- 'discount' => $faker->numberBetween(1, 10),
- 'is_amount_discount' => $faker->boolean(),
- 'tax_name1' => 'GST',
- 'tax_rate1' => 10,
- 'tax_name2' => 'VAT',
- 'tax_rate2' => 17.5,
- 'tax_name3' => 'THIRDTAX',
- 'tax_rate3' => 5,
- // 'custom_value1' => $faker->numberBetween(1, 4),
- // 'custom_value2' => $faker->numberBetween(1, 4),
- // 'custom_value3' => $faker->numberBetween(1, 4),
- // 'custom_value4' => $faker->numberBetween(1, 4),
- 'is_deleted' => false,
- 'po_number' => $faker->text(10),
- 'line_items' => false,
- ];
-});
+use App\Models\Quote;
+use Illuminate\Database\Eloquent\Factories\Factory;
+use Illuminate\Support\Str;
+
+class QuoteFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Quote::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'status_id' => Quote::STATUS_DRAFT,
+ 'discount' => $this->faker->numberBetween(1, 10),
+ 'is_amount_discount' => $this->faker->boolean(),
+ 'tax_name1' => 'GST',
+ 'tax_rate1' => 10,
+ 'tax_name2' => 'VAT',
+ 'tax_rate2' => 17.5,
+ 'tax_name3' => 'THIRDTAX',
+ 'tax_rate3' => 5,
+ // 'custom_value1' => $this->faker->numberBetween(1, 4),
+ // 'custom_value2' => $this->faker->numberBetween(1, 4),
+ // 'custom_value3' => $this->faker->numberBetween(1, 4),
+ // 'custom_value4' => $this->faker->numberBetween(1, 4),
+ 'is_deleted' => false,
+ 'po_number' => $this->faker->text(10),
+ 'line_items' => false,
+ ];
+ }
+}
\ No newline at end of file
diff --git a/database/factories/QuoteInvitationFactory.php b/database/factories/QuoteInvitationFactory.php
index 2cf3b27210e6..1a1cffc34d2f 100644
--- a/database/factories/QuoteInvitationFactory.php
+++ b/database/factories/QuoteInvitationFactory.php
@@ -1,10 +1,38 @@
define(App\Models\QuoteInvitation::class, function (Faker $faker) {
- return [
- 'key' => Str::random(40),
- ];
-});
+class QuoteInvitationFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = QuoteInvitation::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'key' => Str::random(40),
+ ];
+ }
+}
diff --git a/database/factories/RecurringInvoiceFactory.php b/database/factories/RecurringInvoiceFactory.php
index 44b9410959dd..34b6ff30311d 100644
--- a/database/factories/RecurringInvoiceFactory.php
+++ b/database/factories/RecurringInvoiceFactory.php
@@ -1,34 +1,61 @@
define(App\Models\RecurringInvoice::class, function (Faker $faker) {
- return [
- 'status_id' => App\Models\RecurringInvoice::STATUS_ACTIVE,
- 'discount' => $faker->numberBetween(1, 10),
- 'is_amount_discount' => $faker->boolean(),
- 'tax_name1' => 'GST',
- 'tax_rate1' => 10,
- 'tax_name2' => 'VAT',
- 'tax_rate2' => 17.5,
- 'tax_name3' => 'THIRDTAX',
- 'tax_rate3' => 5,
- 'custom_value1' => $faker->numberBetween(1, 4),
- 'custom_value2' => $faker->numberBetween(1, 4),
- 'custom_value3' => $faker->numberBetween(1, 4),
- 'custom_value4' => $faker->numberBetween(1, 4),
- 'is_deleted' => false,
- 'po_number' => $faker->text(10),
- 'date' => $faker->date(),
- 'due_date' => $faker->date(),
- 'line_items' => false,
- 'frequency_id' => App\Models\RecurringInvoice::FREQUENCY_MONTHLY,
- 'last_sent_date' => now()->subMonth(),
- 'next_send_date' => now()->addMonthNoOverflow(),
- 'remaining_cycles' => $faker->numberBetween(1, 10),
- 'amount' => $faker->randomFloat(2, $min = 1, $max = 1000), // 48.8932
+use App\Models\RecurringInvoice;
+use Illuminate\Database\Eloquent\Factories\Factory;
+use Illuminate\Support\Str;
- ];
-});
+class RecurringInvoiceFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = RecurringInvoice::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'status_id' => RecurringInvoice::STATUS_ACTIVE,
+ 'discount' => $this->faker->numberBetween(1, 10),
+ 'is_amount_discount' => $this->faker->boolean(),
+ 'tax_name1' => 'GST',
+ 'tax_rate1' => 10,
+ 'tax_name2' => 'VAT',
+ 'tax_rate2' => 17.5,
+ 'tax_name3' => 'THIRDTAX',
+ 'tax_rate3' => 5,
+ 'custom_value1' => $this->faker->numberBetween(1, 4),
+ 'custom_value2' => $this->faker->numberBetween(1, 4),
+ 'custom_value3' => $this->faker->numberBetween(1, 4),
+ 'custom_value4' => $this->faker->numberBetween(1, 4),
+ 'is_deleted' => false,
+ 'po_number' => $this->faker->text(10),
+ 'date' => $this->faker->date(),
+ 'due_date' => $this->faker->date(),
+ 'line_items' => false,
+ 'frequency_id' => RecurringInvoice::FREQUENCY_MONTHLY,
+ 'last_sent_date' => now()->subMonth(),
+ 'next_send_date' => now()->addMonthNoOverflow(),
+ 'remaining_cycles' => $this->faker->numberBetween(1, 10),
+ 'amount' => $this->faker->randomFloat(2, $min = 1, $max = 1000), // 48.8932
+
+ ];
+ }
+}
diff --git a/database/factories/RecurringQuoteFactory.php b/database/factories/RecurringQuoteFactory.php
index 8bbcdd91aedb..6b76d48baf77 100644
--- a/database/factories/RecurringQuoteFactory.php
+++ b/database/factories/RecurringQuoteFactory.php
@@ -1,34 +1,61 @@
define(App\Models\RecurringQuote::class, function (Faker $faker) {
- return [
- 'status_id' => App\Models\RecurringQuote::STATUS_DRAFT,
- 'number' => $faker->text(256),
- 'discount' => $faker->numberBetween(1, 10),
- 'is_amount_discount' => $faker->boolean(),
- 'tax_name1' => 'GST',
- 'tax_rate1' => 10,
- 'tax_name2' => 'VAT',
- 'tax_rate2' => 17.5,
- 'tax_name3' => 'THIRDTAX',
- 'tax_rate3' => 5,
- 'custom_value1' => $faker->numberBetween(1, 4),
- 'custom_value2' => $faker->numberBetween(1, 4),
- 'custom_value3' => $faker->numberBetween(1, 4),
- 'custom_value4' => $faker->numberBetween(1, 4),
- 'is_deleted' => false,
- 'po_number' => $faker->text(10),
- 'date' => $faker->date(),
- 'due_date' => $faker->date(),
- 'line_items' => false,
- 'frequency_id' => App\Models\RecurringQuote::FREQUENCY_MONTHLY,
- 'start_date' => $faker->date(),
- 'last_sent_date' => $faker->date(),
- 'next_send_date' => $faker->date(),
- 'remaining_cycles' => $faker->numberBetween(1, 10),
- ];
-});
+class RecurringQuoteFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = RecurringQuote::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'status_id' => RecurringQuote::STATUS_DRAFT,
+ 'number' => $this->faker->text(256),
+ 'discount' => $this->faker->numberBetween(1, 10),
+ 'is_amount_discount' => $this->faker->boolean(),
+ 'tax_name1' => 'GST',
+ 'tax_rate1' => 10,
+ 'tax_name2' => 'VAT',
+ 'tax_rate2' => 17.5,
+ 'tax_name3' => 'THIRDTAX',
+ 'tax_rate3' => 5,
+ 'custom_value1' => $this->faker->numberBetween(1, 4),
+ 'custom_value2' => $this->faker->numberBetween(1, 4),
+ 'custom_value3' => $this->faker->numberBetween(1, 4),
+ 'custom_value4' => $this->faker->numberBetween(1, 4),
+ 'is_deleted' => false,
+ 'po_number' => $this->faker->text(10),
+ 'date' => $this->faker->date(),
+ 'due_date' => $this->faker->date(),
+ 'line_items' => false,
+ 'frequency_id' => RecurringQuote::FREQUENCY_MONTHLY,
+ 'start_date' => $this->faker->date(),
+ 'last_sent_date' => $this->faker->date(),
+ 'next_send_date' => $this->faker->date(),
+ 'remaining_cycles' => $this->faker->numberBetween(1, 10),
+ ];
+ }
+}
diff --git a/database/factories/TaskFactory.php b/database/factories/TaskFactory.php
index d01f8781d648..759114c9d8f2 100644
--- a/database/factories/TaskFactory.php
+++ b/database/factories/TaskFactory.php
@@ -1,11 +1,38 @@
define(App\Models\Task::class, function (Faker $faker) {
- return [
- 'description' => $faker->text(50),
- ];
-});
+use App\Models\Task;
+use Illuminate\Database\Eloquent\Factories\Factory;
+use Illuminate\Support\Str;
+
+class TaskFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Task::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'description' => $this->faker->text(50),
+ ];
+ }
+}
\ No newline at end of file
diff --git a/database/factories/UserFactory.php b/database/factories/UserFactory.php
index cf974883efc6..598f1a4deb9b 100644
--- a/database/factories/UserFactory.php
+++ b/database/factories/UserFactory.php
@@ -1,26 +1,44 @@
define(App\Models\User::class, function (Faker $faker) {
- return [
- 'first_name' => $faker->name,
- 'last_name' => $faker->name,
- 'phone' => $faker->phoneNumber,
- 'email' => config('ninja.testvars.username'),
- 'email_verified_at' => now(),
- 'password' => bcrypt(config('ninja.testvars.password')), // secret
- 'remember_token' => \Illuminate\Support\Str::random(10),
- ];
-});
+class UserFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = User::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'first_name' => $this->faker->name,
+ 'last_name' => $this->faker->name,
+ 'phone' => $this->faker->phoneNumber,
+ 'email' => config('ninja.testvars.username'),
+ 'email_verified_at' => now(),
+ 'password' => bcrypt(config('ninja.testvars.password')), // secret
+ 'remember_token' => \Illuminate\Support\Str::random(10),
+ ];
+ }
+}
diff --git a/database/factories/VendorContactFactory.php b/database/factories/VendorContactFactory.php
index 679a44032877..13fa826bb304 100644
--- a/database/factories/VendorContactFactory.php
+++ b/database/factories/VendorContactFactory.php
@@ -1,23 +1,41 @@
define(App\Models\VendorContact::class, function (Faker $faker) {
- return [
- 'first_name' => $faker->firstName,
- 'last_name' => $faker->lastName,
- 'phone' => $faker->phoneNumber,
- 'email' => $faker->unique()->safeEmail,
- ];
-});
+class VendorContactFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = VendorContact::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'first_name' => $this->faker->firstName,
+ 'last_name' => $this->faker->lastName,
+ 'phone' => $this->faker->phoneNumber,
+ 'email' => $this->faker->unique()->safeEmail,
+ ];
+ }
+}
\ No newline at end of file
diff --git a/database/factories/VendorFactory.php b/database/factories/VendorFactory.php
index 9f28f2999893..8c4830a31f47 100644
--- a/database/factories/VendorFactory.php
+++ b/database/factories/VendorFactory.php
@@ -1,23 +1,51 @@
define(App\Models\Vendor::class, function (Faker $faker) {
- return [
- 'name' => $faker->name(),
- 'website' => $faker->url,
- 'private_notes' => $faker->text(200),
- 'vat_number' => $faker->text(25),
- 'id_number' => $faker->text(20),
- 'custom_value1' => $faker->text(20),
- 'custom_value2' => $faker->text(20),
- 'custom_value3' => $faker->text(20),
- 'custom_value4' => $faker->text(20),
- 'address1' => $faker->buildingNumber,
- 'address2' => $faker->streetAddress,
- 'city' => $faker->city,
- 'state' => $faker->state,
- 'postal_code' => $faker->postcode,
- 'country_id' => 4,
- ];
-});
+class VendorFactory extends Factory
+{
+ /**
+ * The name of the factory's corresponding model.
+ *
+ * @var string
+ */
+ protected $model = Vendor::class;
+
+ /**
+ * Define the model's default state.
+ *
+ * @return array
+ */
+ public function definition()
+ {
+ return [
+ 'name' => $this->faker->name(),
+ 'website' => $this->faker->url,
+ 'private_notes' => $this->faker->text(200),
+ 'vat_number' => $this->faker->text(25),
+ 'id_number' => $this->faker->text(20),
+ 'custom_value1' => $this->faker->text(20),
+ 'custom_value2' => $this->faker->text(20),
+ 'custom_value3' => $this->faker->text(20),
+ 'custom_value4' => $this->faker->text(20),
+ 'address1' => $this->faker->buildingNumber,
+ 'address2' => $this->faker->streetAddress,
+ 'city' => $this->faker->city,
+ 'state' => $this->faker->state,
+ 'postal_code' => $this->faker->postcode,
+ 'country_id' => 4,
+ ];
+ }
+}
\ No newline at end of file
diff --git a/database/migrations/2020_09_27_215800_update_gateway_table_visible_column.php b/database/migrations/2020_09_27_215800_update_gateway_table_visible_column.php
index 66558cbb13fa..607bfdb2865e 100644
--- a/database/migrations/2020_09_27_215800_update_gateway_table_visible_column.php
+++ b/database/migrations/2020_09_27_215800_update_gateway_table_visible_column.php
@@ -17,8 +17,11 @@ class UpdateGatewayTableVisibleColumn extends Migration
Gateway::query()->update(['visible' => 0]);
Gateway::whereIn('id', [1,15,20,39])->update(['visible' => 1]);
+
}
+
+
/**
* Reverse the migrations.
*
diff --git a/database/seeds/BanksSeeder.php b/database/seeders/BanksSeeder.php
similarity index 99%
rename from database/seeds/BanksSeeder.php
rename to database/seeders/BanksSeeder.php
index 2eca0929e046..107715a4e4ca 100644
--- a/database/seeds/BanksSeeder.php
+++ b/database/seeders/BanksSeeder.php
@@ -1,13 +1,24 @@
createBanks();
}
@@ -22,7 +33,7 @@ class BanksSeeder extends Seeder
$banks = json_decode($banks);
foreach ($banks as $bank) {
- if (! DB::table('banks')->where('remote_id', '=', $bank->id)->count()) {
+ if (! \DB::table('banks')->where('remote_id', '=', $bank->id)->count()) {
if (! isset($bank->fid) || ! isset($bank->org)) {
continue;
}
diff --git a/database/seeds/ConstantsSeeder.php b/database/seeders/ConstantsSeeder.php
similarity index 97%
rename from database/seeds/ConstantsSeeder.php
rename to database/seeders/ConstantsSeeder.php
index 66d6607ca701..64de9971d052 100644
--- a/database/seeds/ConstantsSeeder.php
+++ b/database/seeders/ConstantsSeeder.php
@@ -1,4 +1,15 @@
getList();
foreach ($countries as $countryId => $country) {
if ($record = Country::whereCountryCode($country['country-code'])->first()) {
diff --git a/database/seeds/CurrenciesSeeder.php b/database/seeders/CurrenciesSeeder.php
similarity index 97%
rename from database/seeds/CurrenciesSeeder.php
rename to database/seeders/CurrenciesSeeder.php
index 5ed060cd9977..850511099278 100644
--- a/database/seeds/CurrenciesSeeder.php
+++ b/database/seeders/CurrenciesSeeder.php
@@ -1,13 +1,25 @@
command->info('Running DatabaseSeeder');
+
+ if (Timezone::count()) {
+ $this->command->info('Skipping: already run');
+
+ return;
+ }
+
+ Model::unguard();
+
+ $this->call([
+ ConstantsSeeder::class,
+ PaymentLibrariesSeeder::class,
+ BanksSeeder::class,
+ CurrenciesSeeder::class,
+ LanguageSeeder::class,
+ CountriesSeeder::class,
+ IndustrySeeder::class,
+ PaymentTypesSeeder::class,
+ GatewayTypesSeeder::class,
+ DateFormatsSeeder::class,
+ DesignSeeder::class,
+ ]);
+
+ }
+}
diff --git a/database/seeds/DateFormatsSeeder.php b/database/seeders/DateFormatsSeeder.php
similarity index 92%
rename from database/seeds/DateFormatsSeeder.php
rename to database/seeders/DateFormatsSeeder.php
index 6be42eaea94e..c774eed66252 100644
--- a/database/seeds/DateFormatsSeeder.php
+++ b/database/seeders/DateFormatsSeeder.php
@@ -1,14 +1,26 @@
createDesigns();
}
diff --git a/database/seeds/GatewayTypesSeeder.php b/database/seeders/GatewayTypesSeeder.php
similarity index 80%
rename from database/seeds/GatewayTypesSeeder.php
rename to database/seeders/GatewayTypesSeeder.php
index b85a135fd992..25a814132bdb 100644
--- a/database/seeds/GatewayTypesSeeder.php
+++ b/database/seeders/GatewayTypesSeeder.php
@@ -1,13 +1,25 @@
1, 'alias' => 'credit_card', 'name' => 'Credit Card'],
diff --git a/database/seeds/IndustrySeeder.php b/database/seeders/IndustrySeeder.php
similarity index 85%
rename from database/seeds/IndustrySeeder.php
rename to database/seeders/IndustrySeeder.php
index 461432d19e9a..e89cf43cca56 100644
--- a/database/seeds/IndustrySeeder.php
+++ b/database/seeders/IndustrySeeder.php
@@ -1,13 +1,25 @@
1, 'name' => 'Accounting & Legal'],
@@ -52,6 +64,5 @@ class IndustrySeeder extends Seeder
}
}
- Eloquent::reguard();
}
}
diff --git a/database/seeds/LanguageSeeder.php b/database/seeders/LanguageSeeder.php
similarity index 87%
rename from database/seeds/LanguageSeeder.php
rename to database/seeders/LanguageSeeder.php
index 44539b06a779..6311a6b86857 100644
--- a/database/seeds/LanguageSeeder.php
+++ b/database/seeders/LanguageSeeder.php
@@ -1,13 +1,25 @@
1, 'name' => 'Authorize.Net', 'provider' => 'Authorize', 'sort_order' => 5, 'key' => '3b6621f970ab18887c4f6dca78d3f8bb', 'fields' => '{"apiLoginId":"","transactionKey":"","testMode":false,"developerMode":false,"liveEndpoint":"https:\/\/api2.authorize.net\/xml\/v1\/request.api","developerEndpoint":"https:\/\/apitest.authorize.net\/xml\/v1\/request.api"}
@@ -81,5 +93,16 @@ class PaymentLibrariesSeeder extends Seeder
Gateway::create($gateway);
}
}
+
+ Gateway::query()->update(['visible' => 0]);
+
+ Gateway::whereIn('id', [1,15,20,39])->update(['visible' => 1]);
+
+ Gateway::all()->each(function ($gateway){
+
+ $gateway->site_url = $gateway->getHelp();
+ $gateway->save();
+
+ });
}
}
diff --git a/database/seeds/PaymentTermsSeeder.php b/database/seeders/PaymentTermsSeeder.php
similarity index 65%
rename from database/seeds/PaymentTermsSeeder.php
rename to database/seeders/PaymentTermsSeeder.php
index 8964832d4835..a0c4c62f0087 100644
--- a/database/seeds/PaymentTermsSeeder.php
+++ b/database/seeders/PaymentTermsSeeder.php
@@ -1,13 +1,25 @@
0, 'name' => 'Net 0'],
diff --git a/database/seeds/PaymentTypesSeeder.php b/database/seeders/PaymentTypesSeeder.php
similarity index 91%
rename from database/seeds/PaymentTypesSeeder.php
rename to database/seeders/PaymentTypesSeeder.php
index 57df0455feb3..cef35ed5b994 100644
--- a/database/seeds/PaymentTypesSeeder.php
+++ b/database/seeders/PaymentTypesSeeder.php
@@ -1,6 +1,18 @@
'Apply Credit'],
diff --git a/database/seeds/RandomDataSeeder.php b/database/seeders/RandomDataSeeder.php
similarity index 88%
rename from database/seeds/RandomDataSeeder.php
rename to database/seeders/RandomDataSeeder.php
index 932e5edb6efd..e0c4991d8413 100644
--- a/database/seeds/RandomDataSeeder.php
+++ b/database/seeders/RandomDataSeeder.php
@@ -1,4 +1,14 @@
command->info('Running RandomDataSeeder');
- Eloquent::unguard();
+ Model::unguard();
$faker = \Faker\Factory::create();
- $account = factory(\App\Models\Account::class)->create();
- $company = factory(\App\Models\Company::class)->create([
+ $account = Account::factory()->create();
+ $company = Company::factory()->create([
'account_id' => $account->id,
]);
$account->default_company_id = $company->id;
$account->save();
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'email' => $faker->email,
'account_id' => $account->id,
'confirmation_code' => $this->createDbHash(config('database.default')),
@@ -111,7 +124,7 @@ class RandomDataSeeder extends Seeder
$u2 = User::where('email', 'demo@invoiceninja.com')->first();
if (! $u2) {
- $u2 = factory(\App\Models\User::class)->create([
+ $u2 = User::factory()->create([
'email' => 'demo@invoiceninja.com',
'password' => Hash::make('demo'),
'account_id' => $account->id,
@@ -137,7 +150,7 @@ class RandomDataSeeder extends Seeder
]);
}
- $client = factory(\App\Models\Client::class)->create([
+ $client = Client::factory()->create([
'user_id' => $user->id,
'company_id' => $company->id,
]);
@@ -155,15 +168,15 @@ class RandomDataSeeder extends Seeder
'contact_key' => \Illuminate\Support\Str::random(40),
]);
- factory(\App\Models\Client::class, 1)->create(['user_id' => $user->id, 'company_id' => $company->id])->each(function ($c) use ($user, $company) {
- factory(\App\Models\ClientContact::class, 1)->create([
+ Client::factory()->create(['user_id' => $user->id, 'company_id' => $company->id])->each(function ($c) use ($user, $company) {
+ ClientContact::factory()->create([
'user_id' => $user->id,
'client_id' => $c->id,
'company_id' => $company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, 5)->create([
+ ClientContact::factory()->count(5)->create([
'user_id' => $user->id,
'client_id' => $c->id,
'company_id' => $company->id,
@@ -171,10 +184,10 @@ class RandomDataSeeder extends Seeder
});
/* Product Factory */
- factory(\App\Models\Product::class, 2)->create(['user_id' => $user->id, 'company_id' => $company->id]);
+ Product::factory()->count(2)->create(['user_id' => $user->id, 'company_id' => $company->id]);
/* Invoice Factory */
- factory(\App\Models\Invoice::class, 2)->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id]);
+ Invoice::factory()->count(2)->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id]);
$invoices = Invoice::all();
$invoice_repo = new InvoiceRepository();
@@ -228,7 +241,7 @@ class RandomDataSeeder extends Seeder
});
/*Credits*/
- factory(\App\Models\Credit::class, 2)->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id]);
+ Credit::factory()->count(2)->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id]);
$credits = Credit::cursor();
$credit_repo = new CreditRepository();
@@ -253,12 +266,10 @@ class RandomDataSeeder extends Seeder
});
/* Recurring Invoice Factory */
- factory(\App\Models\RecurringInvoice::class, 1)->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id]);
-
- // factory(\App\Models\Payment::class,20)->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id, 'settings' => ClientSettings::buildClientSettings($company->settings, $client->settings)]);
+ RecurringInvoice::factory()->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id]);
/*Credits*/
- factory(\App\Models\Quote::class, 1)->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id]);
+ Quote::factory()->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id]);
$quotes = Quote::cursor();
$quote_repo = new QuoteRepository();
diff --git a/database/seeds/UsersTableSeeder.php b/database/seeders/UsersTableSeeder.php
similarity index 75%
rename from database/seeds/UsersTableSeeder.php
rename to database/seeders/UsersTableSeeder.php
index b50278132e6c..9596cb609b41 100644
--- a/database/seeds/UsersTableSeeder.php
+++ b/database/seeders/UsersTableSeeder.php
@@ -1,4 +1,15 @@
command->info('Running UsersTableSeeder');
- Eloquent::unguard();
+ Model::unguard();
$faker = \Faker\Factory::create();
- $account = factory(\App\Models\Account::class)->create();
- $company = factory(\App\Models\Company::class)->create([
+ $account = Account::factory()->create();
+ $company = Company::factory()->create([
'account_id' => $account->id,
'domain' => 'ninja.test',
]);
@@ -35,7 +47,7 @@ class UsersTableSeeder extends Seeder
$account->default_company_id = $company->id;
$account->save();
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'account_id' => $account->id,
'confirmation_code' => $this->createDbHash(config('database.default')),
]);
@@ -59,7 +71,7 @@ class UsersTableSeeder extends Seeder
'is_locked' => 0,
]);
- $client = factory(\App\Models\Client::class)->create([
+ $client = Client::factory()->create([
'user_id' => $user->id,
'company_id' => $company->id,
]);
@@ -74,15 +86,15 @@ class UsersTableSeeder extends Seeder
'client_id' =>$client->id,
]);
- factory(\App\Models\Client::class, 20)->create(['user_id' => $user->id, 'company_id' => $company->id])->each(function ($c) use ($user, $company) {
- factory(\App\Models\ClientContact::class, 1)->create([
+ Client::factory()->count(20)->create(['user_id' => $user->id, 'company_id' => $company->id])->each(function ($c) use ($user, $company) {
+ ClientContact::factory()->create([
'user_id' => $user->id,
'client_id' => $c->id,
'company_id' => $company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, 10)->create([
+ ClientContact::factory()->count(10)->create([
'user_id' => $user->id,
'client_id' => $c->id,
'company_id' => $company->id,
diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php
deleted file mode 100644
index 7786a4997dd8..000000000000
--- a/database/seeds/DatabaseSeeder.php
+++ /dev/null
@@ -1,38 +0,0 @@
-command->info('Running DatabaseSeeder');
-
- if (Timezone::count()) {
- $this->command->info('Skipping: already run');
-
- return;
- }
-
- Eloquent::unguard();
-
- $this->call('ConstantsSeeder');
- $this->call('PaymentLibrariesSeeder');
- $this->call('BanksSeeder');
- $this->call('CurrenciesSeeder');
- $this->call('LanguageSeeder');
- $this->call('CountriesSeeder');
- $this->call('IndustrySeeder');
- //$this->call('PaymentTermsSeeder');
- $this->call('PaymentTypesSeeder');
- $this->call('GatewayTypesSeeder');
- $this->call('DateFormatsSeeder');
- $this->call('DesignSeeder');
- }
-}
diff --git a/phpunit.xml b/phpunit.xml
index f1f54561c8b9..30a152af0175 100644
--- a/phpunit.xml
+++ b/phpunit.xml
@@ -1,69 +1,58 @@
-
-
-
- ./tests/Unit
-
-
-
- ./tests/Integration
-
-
-
- ./tests/Feature
-
-
-
- ./tests/Pdf
-
-
-
-
- ./app
-
- ./vendor
- ./app/Providers
- ./app/Http
- ./app/Models
- ./app/Transformers
- ./app/Events
- ./app/Observers
- ./app/Policies
- ./app/Jobs
- ./app/Factory
- ./app/Helpers
- ./app/Libraries
- ./app/Listeners
- ./app/Mail
- ./app/Notifications
- ./app/Providers
- ./app/Repositories
- ./app/Filters
- ./app/Console/Kernel.php
- ./app/Constants.php
- ./app/Libraries/OFX.php
- ./app/Exceptions/Handler.php
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ ./app
+
+
+ ./vendor
+ ./app/Providers
+ ./app/Http
+ ./app/Models
+ ./app/Transformers
+ ./app/Events
+ ./app/Observers
+ ./app/Policies
+ ./app/Jobs
+ ./app/Factory
+ ./app/Helpers
+ ./app/Libraries
+ ./app/Listeners
+ ./app/Mail
+ ./app/Notifications
+ ./app/Providers
+ ./app/Repositories
+ ./app/Filters
+ ./app/Console/Kernel.php
+ ./app/Constants.php
+ ./app/Libraries/OFX.php
+ ./app/Exceptions/Handler.php
+
+
+
+
+
+
+
+ ./tests/Unit
+
+
+ ./tests/Integration
+
+
+ ./tests/Feature
+
+
+ ./tests/Pdf
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/Feature/ClientTest.php b/tests/Feature/ClientTest.php
index 4a48d8ad5da4..d7496d1d9fcf 100644
--- a/tests/Feature/ClientTest.php
+++ b/tests/Feature/ClientTest.php
@@ -134,15 +134,15 @@ class ClientTest extends TestCase
*/
public function testClientRestEndPoints()
{
- factory(\App\Models\Client::class, 3)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
- factory(\App\Models\ClientContact::class, 1)->create([
+ Client::factory()->count(3)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, 2)->create([
+ ClientContact::factory()->count(2)->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
@@ -204,15 +204,15 @@ class ClientTest extends TestCase
public function testDefaultTimeZoneFromClientModel()
{
- $account = factory(\App\Models\Account::class)->create();
- $company = factory(\App\Models\Company::class)->create([
+ $account = Account::factory()->create();
+ $company = Company::factory()->create([
'account_id' => $account->id,
]);
$account->default_company_id = $company->id;
$account->save();
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'account_id' => $account->id,
'confirmation_code' => $this->createDbHash(config('database.default')),
'email' => 'whiz@gmail.com',
@@ -239,15 +239,15 @@ class ClientTest extends TestCase
'is_locked' => 0,
]);
- factory(\App\Models\Client::class, 3)->create(['user_id' => $user->id, 'company_id' => $company->id])->each(function ($c) use ($user, $company) {
- factory(\App\Models\ClientContact::class, 1)->create([
+ Client::factory()->count(3)->create(['user_id' => $user->id, 'company_id' => $company->id])->each(function ($c) use ($user, $company) {
+ ClientContact::factory()->create([
'user_id' => $user->id,
'client_id' => $c->id,
'company_id' => $company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, 2)->create([
+ ClientContact::factory()->count(2)->create([
'user_id' => $user->id,
'client_id' => $c->id,
'company_id' => $company->id,
@@ -270,15 +270,15 @@ class ClientTest extends TestCase
public function testCreatingClientAndContacts()
{
- $account = factory(\App\Models\Account::class)->create();
- $company = factory(\App\Models\Company::class)->create([
- 'account_id' => $account->id,
- ]);
+ $account = Account::factory()->create();
+ $company = Company::factory()->create([
+ 'account_id' => $account->id,
+ ]);
$account->default_company_id = $company->id;
$account->save();
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'account_id' => $account->id,
'confirmation_code' => $this->createDbHash(config('database.default')),
'email' => 'whiz@gmail.com',
diff --git a/tests/Feature/CreditTest.php b/tests/Feature/CreditTest.php
index f763b6ac2f57..ff0a2b6497ce 100644
--- a/tests/Feature/CreditTest.php
+++ b/tests/Feature/CreditTest.php
@@ -12,6 +12,7 @@ namespace Tests\Feature;
use App\Models\Account;
use App\Models\Client;
+use App\Models\ClientContact;
use App\Models\Credit;
use App\Utils\Traits\MakesHash;
use Illuminate\Database\Eloquent\Model;
@@ -41,15 +42,15 @@ class CreditTest extends TestCase
public function testCreditsList()
{
- factory(Client::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
- factory(\App\Models\ClientContact::class, 1)->create([
+ Client::factory()->count(3)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
@@ -58,7 +59,7 @@ class CreditTest extends TestCase
$client = Client::all()->first();
- factory(Credit::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
+ Credit::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
$response = $this->withHeaders([
'X-API-SECRET' => config('ninja.api_secret'),
diff --git a/tests/Feature/InvitationTest.php b/tests/Feature/InvitationTest.php
index 26713aeee6ed..4151de5b7453 100644
--- a/tests/Feature/InvitationTest.php
+++ b/tests/Feature/InvitationTest.php
@@ -18,6 +18,8 @@ use App\Factory\InvoiceInvitationFactory;
use App\Jobs\Account\CreateAccount;
use App\Models\Account;
use App\Models\Client;
+use App\Models\ClientContact;
+use App\Models\Company;
use App\Models\Invoice;
use App\Models\InvoiceInvitation;
use App\Models\User;
@@ -56,8 +58,8 @@ class InvitationTest extends TestCase
public function testInvoiceCreationAfterInvoiceMarkedSent()
{
- $account = factory(\App\Models\Account::class)->create();
- $company = factory(\App\Models\Company::class)->create([
+ $account = Account::factory()->create();
+ $company = Company::factory()->create([
'account_id' => $account->id,
]);
@@ -67,7 +69,7 @@ class InvitationTest extends TestCase
$user = User::where('email', 'user@example.com')->first();
if (! $user) {
- $user = factory(\App\Models\User::class)->create([
+ $user = User::factory()->create([
'account_id' => $account->id,
'confirmation_code' => $this->createDbHash(config('database.default')),
]);
@@ -94,15 +96,15 @@ class InvitationTest extends TestCase
'is_locked' => 0,
]);
- factory(\App\Models\Client::class)->create(['user_id' => $user->id, 'company_id' => $company->id])->each(function ($c) use ($user, $company) {
- factory(\App\Models\ClientContact::class, 1)->create([
+ Client::factory()->create(['user_id' => $user->id, 'company_id' => $company->id])->each(function ($c) use ($user, $company) {
+ ClientContact::factory()->create([
'user_id' => $user->id,
'client_id' => $c->id,
'company_id' => $company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, 2)->create([
+ ClientContact::factory()->count(2)->create([
'user_id' => $user->id,
'client_id' => $c->id,
'company_id' => $company->id,
@@ -111,7 +113,7 @@ class InvitationTest extends TestCase
$client = Client::whereUserId($user->id)->whereCompanyId($company->id)->first();
- factory(\App\Models\Invoice::class, 5)->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id]);
+ Invoice::factory()->count(5)->create(['user_id' => $user->id, 'company_id' => $company->id, 'client_id' => $client->id]);
$invoice = Invoice::whereUserId($user->id)->whereCompanyId($company->id)->whereClientId($client->id)->first();
diff --git a/tests/Feature/InvoiceTest.php b/tests/Feature/InvoiceTest.php
index 1961a463699c..bb620767f769 100644
--- a/tests/Feature/InvoiceTest.php
+++ b/tests/Feature/InvoiceTest.php
@@ -15,6 +15,7 @@ use App\DataMapper\CompanySettings;
use App\Factory\InvoiceFactory;
use App\Models\Account;
use App\Models\Client;
+use App\Models\ClientContact;
use App\Models\Invoice;
use App\Utils\Traits\MakesHash;
use Illuminate\Database\Eloquent\Model;
@@ -51,15 +52,15 @@ class InvoiceTest extends TestCase
public function testInvoiceList()
{
- factory(\App\Models\Client::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
- factory(\App\Models\ClientContact::class, 1)->create([
+ Client::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
@@ -68,7 +69,7 @@ class InvoiceTest extends TestCase
$client = Client::all()->first();
- factory(\App\Models\Invoice::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
+ Invoice::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
$response = $this->withHeaders([
'X-API-SECRET' => config('ninja.api_secret'),
@@ -153,7 +154,7 @@ class InvoiceTest extends TestCase
public function testUniqueNumberValidation()
{
/* stub a invoice in the DB that we will use to test against later */
- $invoice = factory(\App\Models\Invoice::class)->create([
+ $invoice = Invoice::factory()->create([
'user_id' => $this->user->id,
'client_id' => $this->client->id,
'company_id' => $this->company->id,
diff --git a/tests/Feature/LoginTest.php b/tests/Feature/LoginTest.php
index eaef3032df81..0bd80007d02b 100644
--- a/tests/Feature/LoginTest.php
+++ b/tests/Feature/LoginTest.php
@@ -13,6 +13,7 @@ namespace Tests\Feature;
use App\DataMapper\CompanySettings;
use App\Models\Account;
use App\Models\Client;
+use App\Models\Company;
use App\Models\CompanyToken;
use App\Models\User;
use App\Utils\Traits\UserSessionAttributes;
@@ -58,7 +59,7 @@ class LoginTest extends TestCase
// $user = factory(User::class)->create([
// // 'account_id' => $account->id,
// ]);
- // $company = factory(\App\Models\Company::class)->make([
+ // $company = Company::factory()->make([
// 'account_id' => $account->id,
// ]);
@@ -90,7 +91,7 @@ class LoginTest extends TestCase
// $user = factory(User::class)->create([
// // 'account_id' => $account->id,
// ]);
- // $company = factory(\App\Models\Company::class)->make([
+ // $company = Company::factory()->make([
// 'account_id' => $account->id,
// ]);
@@ -120,7 +121,7 @@ class LoginTest extends TestCase
// $user = factory(User::class)->create([
// // 'account_id' => $account->id,
// ]);
- // $company = factory(\App\Models\Company::class)->make([
+ // $company = Company::factory()->make([
// 'account_id' => $account->id,
// ]);
@@ -140,14 +141,14 @@ class LoginTest extends TestCase
public function testApiLogin()
{
- $account = factory(Account::class)->create();
- $user = factory(User::class)->create([
+ $account = Account::factory()->create();
+ $user = User::factory()->create([
'account_id' => $account->id,
'email' => 'test@example.com',
'password' => \Hash::make('123456'),
]);
- $company = factory(\App\Models\Company::class)->create([
+ $company = Company::factory()->create([
'account_id' => $account->id,
]);
diff --git a/tests/Feature/PaymentTest.php b/tests/Feature/PaymentTest.php
index 22f3401f7579..48419f546de9 100644
--- a/tests/Feature/PaymentTest.php
+++ b/tests/Feature/PaymentTest.php
@@ -20,6 +20,7 @@ use App\Helpers\Invoice\InvoiceSum;
use App\Models\Account;
use App\Models\Activity;
use App\Models\Client;
+use App\Models\ClientContact;
use App\Models\Credit;
use App\Models\Invoice;
use App\Models\Payment;
@@ -67,15 +68,15 @@ class PaymentTest extends TestCase
public function testPaymentList()
{
- factory(\App\Models\Client::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
- factory(\App\Models\ClientContact::class, 1)->create([
+ Client::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
@@ -84,7 +85,7 @@ class PaymentTest extends TestCase
$client = Client::all()->first();
- factory(\App\Models\Payment::class, 1)->create(
+ Payment::factory()->create(
['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $client->id]
);
@@ -98,7 +99,7 @@ class PaymentTest extends TestCase
public function testPaymentRESTEndPoints()
{
- factory(\App\Models\Payment::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
+ Payment::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
$Payment = Payment::all()->last();
@@ -271,7 +272,7 @@ class PaymentTest extends TestCase
$client = ClientFactory::create($this->company->id, $this->user->id);
$client->save();
- factory(\App\Models\ClientContact::class)->create([
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $client->id,
'company_id' =>$this->company->id,
@@ -347,7 +348,7 @@ class PaymentTest extends TestCase
$client->setRelation('company', $this->company);
$client->save();
- $client_contact = factory(\App\Models\ClientContact::class, 1)->create([
+ $client_contact = ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $client->id,
'company_id' => $this->company->id,
@@ -423,7 +424,7 @@ class PaymentTest extends TestCase
$client = ClientFactory::create($this->company->id, $this->user->id);
$client->save();
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $client->id,
'company_id' => $this->company->id,
@@ -431,7 +432,7 @@ class PaymentTest extends TestCase
'send_email' => true,
]);
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $client->id,
'company_id' => $this->company->id,
@@ -495,7 +496,7 @@ class PaymentTest extends TestCase
$client = ClientFactory::create($this->company->id, $this->user->id);
$client->save();
- $contact = factory(\App\Models\ClientContact::class, 1)->create([
+$contact = ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $this->client->id,
'company_id' => $this->company->id,
@@ -503,7 +504,7 @@ class PaymentTest extends TestCase
'send_email' => true,
]);
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $this->client->id,
'company_id' => $this->company->id,
diff --git a/tests/Feature/RecurringInvoiceTest.php b/tests/Feature/RecurringInvoiceTest.php
index baa1e5d687e4..ed04d5e968df 100644
--- a/tests/Feature/RecurringInvoiceTest.php
+++ b/tests/Feature/RecurringInvoiceTest.php
@@ -14,6 +14,7 @@ use App\DataMapper\ClientSettings;
use App\DataMapper\CompanySettings;
use App\Models\Account;
use App\Models\Client;
+use App\Models\ClientContact;
use App\Models\RecurringInvoice;
use App\Utils\Traits\MakesHash;
use Illuminate\Database\Eloquent\Model;
@@ -55,15 +56,16 @@ class RecurringInvoiceTest extends TestCase
public function testRecurringInvoiceList()
{
- factory(\App\Models\Client::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
- factory(\App\Models\ClientContact::class, 1)->create([
+ Client::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
+
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
@@ -72,7 +74,7 @@ class RecurringInvoiceTest extends TestCase
$client = Client::all()->first();
- factory(\App\Models\RecurringInvoice::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
+ RecurringInvoice::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
$response = $this->withHeaders([
'X-API-SECRET' => config('ninja.api_secret'),
@@ -84,15 +86,16 @@ class RecurringInvoiceTest extends TestCase
public function testRecurringInvoiceRESTEndPoints()
{
- factory(\App\Models\Client::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
- factory(\App\Models\ClientContact::class, 1)->create([
+ Client::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id])->each(function ($c) {
+
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
'is_primary' => 1,
]);
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $c->id,
'company_id' => $this->company->id,
@@ -100,7 +103,7 @@ class RecurringInvoiceTest extends TestCase
});
$client = Client::all()->first();
- factory(\App\Models\RecurringInvoice::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
+ RecurringInvoice::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
$RecurringInvoice = RecurringInvoice::where('user_id', $this->user->id)->first();
$RecurringInvoice->save();
diff --git a/tests/Feature/RecurringQuoteTest.php b/tests/Feature/RecurringQuoteTest.php
index 2bad66392b40..36b4d1ceec7a 100644
--- a/tests/Feature/RecurringQuoteTest.php
+++ b/tests/Feature/RecurringQuoteTest.php
@@ -55,7 +55,7 @@ class RecurringQuoteTest extends TestCase
public function testRecurringQuoteList()
{
- factory(\App\Models\RecurringQuote::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
+ RecurringQuote::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
$response = $this->withHeaders([
'X-API-SECRET' => config('ninja.api_secret'),
@@ -67,7 +67,7 @@ class RecurringQuoteTest extends TestCase
public function testRecurringQuoteRESTEndPoints()
{
- factory(\App\Models\RecurringQuote::class, 1)->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
+ RecurringQuote::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]);
$RecurringQuote = RecurringQuote::where('user_id', $this->user->id)->first();
$RecurringQuote->save();
diff --git a/tests/Feature/Shop/ShopInvoiceTest.php b/tests/Feature/Shop/ShopInvoiceTest.php
index 92244ba09c3d..75a388bdd188 100644
--- a/tests/Feature/Shop/ShopInvoiceTest.php
+++ b/tests/Feature/Shop/ShopInvoiceTest.php
@@ -12,6 +12,7 @@ namespace Tests\Feature\Shop;
use App\Factory\CompanyUserFactory;
use App\Models\CompanyToken;
+use App\Models\Product;
use App\Utils\Traits\MakesHash;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Routing\Middleware\ThrottleRequests;
@@ -98,7 +99,7 @@ class ShopInvoiceTest extends TestCase
$this->company->enable_shop_api = true;
$this->company->save();
- $product = factory(\App\Models\Product::class)->create([
+ $product = Product::factory()->create([
'user_id' => $this->user->id,
'company_id' => $this->company->id,
]);
diff --git a/tests/Feature/UserTest.php b/tests/Feature/UserTest.php
index b1b30570bf74..ff3e97d6c8ea 100644
--- a/tests/Feature/UserTest.php
+++ b/tests/Feature/UserTest.php
@@ -138,7 +138,7 @@ class UserTest extends TestCase
$this->withoutMiddleware(PasswordProtection::class);
/* Create New Company */
- $company2 = factory(\App\Models\Company::class)->create([
+ $company2 = Company::factory()->create([
'account_id' => $this->account->id,
]);
diff --git a/tests/Integration/CompanyLedgerTest.php b/tests/Integration/CompanyLedgerTest.php
index 9f442cfbb285..0f438b5c8c57 100644
--- a/tests/Integration/CompanyLedgerTest.php
+++ b/tests/Integration/CompanyLedgerTest.php
@@ -19,6 +19,8 @@ use App\Factory\InvoiceItemFactory;
use App\Jobs\Invoice\MarkInvoicePaid;
use App\Models\Account;
use App\Models\Activity;
+use App\Models\Client;
+use App\Models\ClientContact;
use App\Models\Company;
use App\Models\CompanyLedger;
use App\Models\CompanyToken;
@@ -79,8 +81,8 @@ class CompanyLedgerTest extends TestCase
}
}
- $this->account = factory(\App\Models\Account::class)->create();
- $this->company = factory(\App\Models\Company::class)->create([
+ $this->account = Account::factory()->create();
+ $this->company = Company::factory()->create([
'account_id' => $this->account->id,
]);
@@ -108,7 +110,7 @@ class CompanyLedgerTest extends TestCase
$this->user = User::whereEmail('user@example.com')->first();
if (! $this->user) {
- $this->user = factory(\App\Models\User::class)->create([
+ $this->user = User::factory()->create([
'account_id' => $this->account->id,
'password' => Hash::make('ALongAndBriliantPassword'),
'confirmation_code' => $this->createDbHash(config('database.default')),
@@ -130,12 +132,12 @@ class CompanyLedgerTest extends TestCase
$company_token->token = $this->token;
$company_token->save();
- $this->client = factory(\App\Models\Client::class)->create([
+ $this->client = Client::factory()->create([
'user_id' => $this->user->id,
'company_id' => $this->company->id,
]);
- factory(\App\Models\ClientContact::class, 1)->create([
+ ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $this->client->id,
'company_id' => $this->company->id,
diff --git a/tests/Integration/MultiDBUserTest.php b/tests/Integration/MultiDBUserTest.php
index 73e8d003a6f7..0b804eeea372 100644
--- a/tests/Integration/MultiDBUserTest.php
+++ b/tests/Integration/MultiDBUserTest.php
@@ -40,18 +40,18 @@ class MultiDBUserTest extends TestCase
User::unguard();
- $ac = factory(\App\Models\Account::class)->make();
+ $ac = Account::factory()->make();
$ac->setHidden(['hashed_id']);
$account = Account::on('db-ninja-01')->create($ac->toArray());
$account2 = Account::on('db-ninja-02')->create($ac->toArray());
- $company = factory(\App\Models\Company::class)->make([
+ $company = Company::factory()->make([
'account_id' => $account->id,
]);
- $company2 = factory(\App\Models\Company::class)->make([
+ $company2 = Company::factory()->make([
'account_id' => $account2->id,
]);
diff --git a/tests/Integration/UniqueEmailTest.php b/tests/Integration/UniqueEmailTest.php
index 4da343184f4d..650fe58f2f2e 100644
--- a/tests/Integration/UniqueEmailTest.php
+++ b/tests/Integration/UniqueEmailTest.php
@@ -42,12 +42,12 @@ class UniqueEmailTest extends TestCase
$this->rule = new NewUniqueUserRule();
- $ac = factory(\App\Models\Account::class)->make();
+ $ac = Account::factory()->make();
$ac->setHidden(['hashed_id']);
$account = Account::on('db-ninja-01')->create($ac->toArray());
- $company = factory(\App\Models\Company::class)->make([
+ $company = Company::factory()->make([
'account_id' => $account->id,
]);
@@ -55,11 +55,11 @@ class UniqueEmailTest extends TestCase
Company::on('db-ninja-01')->create($company->toArray());
- $ac2 = factory(\App\Models\Account::class)->make();
+ $ac2 = Account::factory()->make();
$ac2->setHidden(['hashed_id']);
$account2 = Account::on('db-ninja-02')->create($ac2->toArray());
- $company2 = factory(\App\Models\Company::class)->make([
+ $company2 = Company::factory()->make([
'account_id' => $account2->id,
]);
diff --git a/tests/MockAccountData.php b/tests/MockAccountData.php
index a7d99c0266ac..36dcf0e9fd30 100644
--- a/tests/MockAccountData.php
+++ b/tests/MockAccountData.php
@@ -24,17 +24,23 @@ use App\Factory\InvoiceInvitationFactory;
use App\Factory\InvoiceItemFactory;
use App\Factory\InvoiceToRecurringInvoiceFactory;
use App\Helpers\Invoice\InvoiceSum;
+use App\Models\Account;
use App\Models\Client;
use App\Models\ClientContact;
+use App\Models\Company;
use App\Models\CompanyGateway;
use App\Models\CompanyToken;
use App\Models\Credit;
+use App\Models\Expense;
use App\Models\GroupSetting;
use App\Models\Invoice;
use App\Models\InvoiceInvitation;
use App\Models\Quote;
+use App\Models\QuoteInvitation;
use App\Models\RecurringInvoice;
use App\Models\User;
+use App\Models\Vendor;
+use App\Models\VendorContact;
use App\Utils\Traits\CompanyGatewayFeesAndLimitsSaver;
use App\Utils\Traits\GeneratesCounter;
use App\Utils\Traits\MakesHash;
@@ -96,10 +102,11 @@ trait MockAccountData
}
}
- $this->account = factory(\App\Models\Account::class)->create();
- $this->company = factory(\App\Models\Company::class)->create([
- 'account_id' => $this->account->id,
- ]);
+
+ $this->account = Account::factory()->create();
+ $this->company = Company::factory()->create([
+ 'account_id' => $this->account->id,
+ ]);
$settings = CompanySettings::defaults();
@@ -125,10 +132,11 @@ trait MockAccountData
$this->user = User::whereEmail('user@example.com')->first();
if (! $this->user) {
- $this->user = factory(\App\Models\User::class)->create([
- 'account_id' => $this->account->id,
- 'confirmation_code' => $this->createDbHash(config('database.default')),
- ]);
+
+ $this->user = User::factory()->create([
+ 'account_id' => $this->account->id,
+ 'confirmation_code' => $this->createDbHash(config('database.default')),
+ ]);
}
$this->user->password = Hash::make('ALongAndBriliantPassword');
@@ -150,12 +158,12 @@ trait MockAccountData
$company_token->save();
- $this->client = factory(\App\Models\Client::class)->create([
+ $this->client = Client::factory()->create([
'user_id' => $this->user->id,
'company_id' => $this->company->id,
]);
- $contact = factory(\App\Models\ClientContact::class)->create([
+ $contact = ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $this->client->id,
'company_id' => $this->company->id,
@@ -163,19 +171,21 @@ trait MockAccountData
'send_email' => true,
]);
- $contact2 = factory(\App\Models\ClientContact::class)->create([
+
+ $contact2 = ClientContact::factory()->create([
'user_id' => $this->user->id,
'client_id' => $this->client->id,
'company_id' => $this->company->id,
'send_email' => true,
]);
- $this->vendor = factory(\App\Models\Vendor::class)->create([
+ $this->vendor = Vendor::factory()->create([
'user_id' => $this->user->id,
'company_id' => $this->company->id,
]);
- $vendor_contact = factory(\App\Models\VendorContact::class)->create([
+
+ $vendor_contact = VendorContact::factory()->create([
'user_id' => $this->user->id,
'vendor_id' => $this->vendor->id,
'company_id' => $this->company->id,
@@ -183,22 +193,20 @@ trait MockAccountData
'send_email' => true,
]);
- $vendor_contact2 = factory(\App\Models\VendorContact::class)->create([
+ $vendor_contact2 = VendorContact::factory()->create([
'user_id' => $this->user->id,
'vendor_id' => $this->vendor->id,
'company_id' => $this->company->id,
'send_email' => true,
]);
- $this->expense = factory(\App\Models\Expense::class)->create([
+
+
+ $this->expense = Expense::factory()->create([
'user_id' => $this->user->id,
'company_id' => $this->company->id,
]);
- // $rels = collect($contact, $contact2);
- // $this->client->setRelation('contacts', $rels);
- // $this->client->save();
-
$gs = new GroupSetting;
$gs->name = 'Test';
$gs->company_id = $this->client->company_id;
@@ -215,7 +223,7 @@ trait MockAccountData
$this->invoice = InvoiceFactory::create($this->company->id, $this->user->id); //stub the company and user_id
$this->invoice->client_id = $this->client->id;
- // $this->invoice = factory(\App\Models\Invoice::class)->create([
+ // $this->invoice = Invoice::factory()->create([
// 'user_id' => $this->user->id,
// 'client_id' => $this->client->id,
// 'company_id' => $this->company->id,
@@ -238,15 +246,14 @@ trait MockAccountData
//$this->invoice->service()->createInvitations()->markSent();
//$this->invoice->service()->createInvitations();
-
- factory(\App\Models\InvoiceInvitation::class)->create([
+ InvoiceInvitation::factory()->create([
'user_id' => $this->user->id,
'company_id' => $this->company->id,
'client_contact_id' => $contact->id,
'invoice_id' => $this->invoice->id,
]);
- factory(\App\Models\InvoiceInvitation::class)->create([
+ InvoiceInvitation::factory()->create([
'user_id' => $this->user->id,
'company_id' => $this->company->id,
'client_contact_id' => $contact2->id,
@@ -255,7 +262,7 @@ trait MockAccountData
$this->invoice->service()->markSent();
- $this->quote = factory(\App\Models\Quote::class)->create([
+ $this->quote = Quote::factory()->create([
'user_id' => $this->user->id,
'client_id' => $this->client->id,
'company_id' => $this->company->id,
@@ -276,14 +283,14 @@ trait MockAccountData
//$this->quote->service()->createInvitations()->markSent();
- factory(\App\Models\QuoteInvitation::class)->create([
+ QuoteInvitation::factory()->create([
'user_id' => $this->user->id,
'company_id' => $this->company->id,
'client_contact_id' => $contact->id,
'quote_id' => $this->quote->id,
]);
- factory(\App\Models\QuoteInvitation::class)->create([
+ QuoteInvitation::factory()->create([
'user_id' => $this->user->id,
'company_id' => $this->company->id,
'client_contact_id' => $contact2->id,