1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-05 18:52:44 +01:00

Merge remote-tracking branch 'upstream/v2' into v2-1408-cp-downloads

This commit is contained in:
Benjamin Beganović 2020-08-17 14:01:56 +02:00
commit 814dfb0346
61 changed files with 128216 additions and 125391 deletions

View File

@ -593,6 +593,19 @@ class CompanySettings extends BaseSettings
'$task.tax',
'$task.line_total',
],
'total_columns' => [
'$total_taxes',
'$line_taxes',
'$subtotal',
'$total',
'$discount',
'$custom_surcharge1',
'$custom_surcharge2',
'$custom_surcharge3',
'$custom_surcharge4',
'$paid_to_date',
'$client.balance'
],
];
return json_decode(json_encode($variables));

View File

@ -40,7 +40,7 @@ class InvoiceWasEmailedAndFailed
*
* @param Invoice $invoice
*/
public function __construct(Invoice $invoice, Company $company, array $errors, array $event_vars)
public function __construct(Invoice $invoice, Company $company, string $errors, array $event_vars)
{
$this->invoice = $invoice;

View File

@ -20,7 +20,6 @@ class CompanyGatewayFactory
$company_gateway = new CompanyGateway;
$company_gateway->company_id = $company_id;
$company_gateway->user_id = $user_id;
return $company_gateway;
}
}

View File

@ -497,80 +497,5 @@ class CompanyController extends BaseController
return response()->json(['message' => 'success'], 200);
}
/**
*
* Purge Company
*
* @OA\Post(
* path="/api/v1/companies/purge/{company}",
* operationId="postCompanyPurge",
* tags={"companies"},
* summary="Attempts to purge a company record and all its child records",
* description="Attempts to purge a company record and all its child records",
* @OA\Parameter(ref="#/components/parameters/X-Api-Secret"),
* @OA\Parameter(ref="#/components/parameters/X-Api-Token"),
* @OA\Parameter(ref="#/components/parameters/X-Requested-With"),
* @OA\Parameter(
* name="company",
* in="path",
* description="The Company Hashed ID",
* example="D2J234DFA",
* required=true,
* @OA\Schema(
* type="string",
* format="string",
* ),
* ),
* @OA\Response(
* response=200,
* description="Returns a refresh object",
* @OA\Header(header="X-MINIMUM-CLIENT-VERSION", ref="#/components/headers/X-MINIMUM-CLIENT-VERSION"),
* @OA\Header(header="X-RateLimit-Remaining", ref="#/components/headers/X-RateLimit-Remaining"),
* @OA\Header(header="X-RateLimit-Limit", ref="#/components/headers/X-RateLimit-Limit"),
* @OA\JsonContent(ref="#/components/schemas/CompanyUser"),
* ),
* @OA\Response(
* response=422,
* description="Validation error",
* @OA\JsonContent(ref="#/components/schemas/ValidationError"),
* ),
* @OA\Response(
* response="default",
* description="Unexpected Error",
* @OA\JsonContent(ref="#/components/schemas/Error"),
* ),
* )
*/
public function purgeCompany(Company $company)
{
$account = $company->account;
$company_id = $company->id;
$company->delete();
/*Set New Company*/
if($account->companies->count() >= 1)
auth()->user()->setCompany($account->companies->first());
/*Update the new default company if necessary*/
if($company_id == $account->default_company_id){
$new_default_company = $account->companies->first();
if($new_default_company){
$account->default_company_id = $new_default_company->id;
$account->save();
}
}
/*Prep response*/
$this->entity_type = CompanyUser::class;
$this->entity_transformer = CompanyUserTransformer::class;
$company_user = $account->company_users->where('user_id', auth()->user()->id);
return $this->refreshResponse($company_user);
}
}

View File

@ -78,8 +78,24 @@ class MigrationController extends BaseController
public function purgeCompany(Company $company)
{
$account = $company->account;
$company_id = $company->id;
$company->delete();
/*Update the new default company if necessary*/
if($company_id == $account->default_company_id && $account->companies->count() >= 1)
{
$new_default_company = $account->companies->first();
if($new_default_company){
$account->default_company_id = $new_default_company->id;
$account->save();
}
}
return response()->json(['message' => 'Company purged'], 200);
}
@ -127,9 +143,10 @@ class MigrationController extends BaseController
* ),
* )
*/
public function purgeCompanySaveSettings(Company $company)
public function purgeCompanySaveSettings(Request $request, Company $company)
{
$company->client->delete();
$company->clients()->delete();
$company->save();
return response()->json(['message' => 'Settings preserved'], 200);

View File

@ -675,7 +675,7 @@ class QuoteController extends BaseController
return $this->listResponse($quote);
break;
case 'email':
$this->quote->service()->sendEmail();
$quote->service()->sendEmail();
return response()->json(['message'=>'email sent'], 200);
break;
case 'mark_sent':

View File

@ -43,7 +43,7 @@ class UpdateCreditRequest extends FormRequest
}
if($this->input('number'))
$rules['number'] = 'unique:quotes,number,' . $this->id . ',id,company_id,' . $this->invoice->company_id;
$rules['number'] = 'unique:credits,number,' . $this->id . ',id,company_id,' . $this->credit->company_id;
return $rules;
}
@ -83,6 +83,8 @@ class UpdateCreditRequest extends FormRequest
$input['line_items'] = isset($input['line_items']) ? $this->cleanItems($input['line_items']) : [];
$input['id'] = $this->credit->id;
$this->replace($input);
}
}

View File

@ -75,7 +75,7 @@ class UpdateInvoiceRequest extends Request
if (array_key_exists('assigned_user_id', $input) && is_string($input['assigned_user_id'])) {
$input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
}
if (isset($input['invitations'])) {
foreach ($input['invitations'] as $key => $value) {
if (array_key_exists('id', $input['invitations'][$key]) && is_numeric($input['invitations'][$key]['id'])) {

View File

@ -51,7 +51,7 @@ class UpdateQuoteRequest extends Request
}
if($this->input('number'))
$rules['number'] = 'unique:quotes,number,' . $this->id . ',id,company_id,' . $this->invoice->company_id;
$rules['number'] = 'unique:quotes,number,' . $this->id . ',id,company_id,' . $this->quote->company_id;
return $rules;
@ -77,6 +77,8 @@ class UpdateQuoteRequest extends Request
$input['assigned_user_id'] = $this->decodePrimaryKey($input['assigned_user_id']);
}
$input['id'] = $this->quote->id;
$this->replace($input);
}
}

View File

@ -94,12 +94,16 @@ class EmailInvoice extends BaseMailerJob implements ShouldQueue
}
if (count(Mail::failures()) > 0) {
return $this->logMailError(Mail::failures(), $this->invoice->client);
$this->logMailError(Mail::failures(), $this->invoice->client);
}
else{
event(new InvoiceWasEmailed($this->invoice_invitation, $this->company, Ninja::eventVars()));
}
/* Mark invoice sent */
$this->invoice_invitation->invoice->service()->markSent()->save();
}

View File

@ -59,6 +59,9 @@ class EmailQuote implements ShouldQueue
if (count(Mail::failures()) > 0) {
return $this->logMailError(Mail::failures());
}
$this->quote_invitation->quote->markSent()->save();
}
private function logMailError($errors)

View File

@ -53,6 +53,7 @@ class UpdateExchangeRates implements ShouldQueue
private function updateCurrencies()
{
info("updating currencies");
if(empty(config('ninja.currency_converter_api_key')))
return;

View File

@ -23,6 +23,7 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\ModelNotFoundException as ModelNotFoundException;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Carbon;
class BaseModel extends Model
{
@ -50,6 +51,15 @@ class BaseModel extends Model
return $this->encodePrimaryKey($this->id);
}
public function dateMutator($value)
{
if (!empty($value)) {
return (new Carbon($value))->format('Y-m-d');
}
return $value;
}
public function __call($method, $params)
{
$entity = strtolower(class_basename($this));

View File

@ -411,8 +411,7 @@ class Company extends BaseModel
public function resolveRouteBinding($value)
{
return $this
->where('id', $this->decodePrimaryKey($value))->firstOrFail();
return $this->where('id', $this->decodePrimaryKey($value))->firstOrFail();
}
public function domain()
@ -445,4 +444,5 @@ class Company extends BaseModel
}
}
}

View File

@ -71,6 +71,9 @@ class Credit extends BaseModel
];
protected $casts = [
// 'date' => 'date:Y-m-d',
// 'due_date' => 'date:Y-m-d',
// 'partial_due_date' => 'date:Y-m-d',
'line_items' => 'object',
'backup' => 'object',
'updated_at' => 'timestamp',
@ -92,36 +95,30 @@ class Credit extends BaseModel
public function getDateAttribute($value)
{
if (!empty($value)) {
//$value format 'Y:m:d H:i:s' to 'Y-m-d H:i'
return (new Carbon($value))->format('Y-m-d');
}
return $value;
return $this->dateMutator($value);
}
public function getDueDateAttribute($value)
{
if (!empty($value)) {
//$value format 'Y:m:d H:i:s' to 'Y-m-d H:i'
return (new Carbon($value))->format('Y-m-d');
}
return $value;
return $this->dateMutator($value);
}
public function getPartialDueDateAttribute($value)
{
if (!empty($value)) {
//$value format 'Y:m:d H:i:s' to 'Y-m-d H:i'
return (new Carbon($value))->format('Y-m-d');
}
return $value;
return $this->dateMutator($value);
}
public function assigned_user()
{
return $this->belongsTo(User::class, 'assigned_user_id', 'id');
}
public function history()
{
return $this->hasManyThrough(Backup::class, Activity::class);
}
public function company()
{
return $this->belongsTo(Company::class);

View File

@ -107,6 +107,9 @@ class Invoice extends BaseModel
];
protected $casts = [
// 'date' => 'date:Y-m-d',
// 'due_date' => 'date:Y-m-d',
// 'partial_due_date' => 'date:Y-m-d',
'line_items' => 'object',
'backup' => 'object',
'updated_at' => 'timestamp',
@ -114,20 +117,13 @@ class Invoice extends BaseModel
'deleted_at' => 'timestamp',
];
protected $with = [
// 'company',
// 'client',
];
protected $with = [];
protected $appends = [
'hashed_id',
'status'
];
protected $dates = [
'date',
];
const STATUS_DRAFT = 1;
const STATUS_SENT = 2;
const STATUS_PARTIAL = 3;
@ -145,28 +141,20 @@ class Invoice extends BaseModel
public function getDateAttribute($value)
{
if (!empty($value)) {
return (new Carbon($value))->format('Y-m-d');
}
return $value;
return $this->dateMutator($value);
}
public function getDueDateAttribute($value)
{
if (!empty($value)) {
return (new Carbon($value))->format('Y-m-d');
}
return $value;
return $this->dateMutator($value);
}
public function getPartialDueDateAttribute($value)
{
if (!empty($value)) {
return (new Carbon($value))->format('Y-m-d');
}
return $value;
return $this->dateMutator($value);
}
public function company()
{
return $this->belongsTo(Company::class);
@ -496,4 +484,14 @@ class Invoice extends BaseModel
// }
// }
// }
public function getBalanceDueAttribute()
{
return $this->balance;
}
public function getTotalAttribute()
{
return $this->calc()->getTotal();
}
}

View File

@ -77,9 +77,9 @@ class Quote extends BaseModel
];
protected $casts = [
'date' => 'date:Y-m-d',
'due_date' => 'date:Y-m-d',
'partial_due_date' => 'date:Y-m-d',
// 'date' => 'date:Y-m-d',
// 'due_date' => 'date:Y-m-d',
// 'partial_due_date' => 'date:Y-m-d',
'line_items' => 'object',
'backup' => 'object',
'updated_at' => 'timestamp',
@ -87,6 +87,8 @@ class Quote extends BaseModel
'deleted_at' => 'timestamp',
];
protected $dates = [];
const STATUS_DRAFT = 1;
const STATUS_SENT = 2;
const STATUS_APPROVED = 3;
@ -100,33 +102,30 @@ class Quote extends BaseModel
public function getDateAttribute($value)
{
if (!empty($value)) {
return (new Carbon($value))->format('Y-m-d');
}
return $value;
return $this->dateMutator($value);
}
public function getDueDateAttribute($value)
{
if (!empty($value)) {
return (new Carbon($value))->format('Y-m-d');
}
return $value;
return $this->dateMutator($value);
}
public function getPartialDueDateAttribute($value)
{
if (!empty($value)) {
return (new Carbon($value))->format('Y-m-d');
}
return $value;
return $this->dateMutator($value);
}
public function company()
{
return $this->belongsTo(Company::class);
}
public function history()
{
return $this->hasManyThrough(Backup::class, Activity::class);
}
public function user()
{
return $this->belongsTo(User::class)->withTrashed();
@ -250,4 +249,19 @@ class Quote extends BaseModel
return false;
}
public function getValidUntilAttribute()
{
return $this->due_date;
}
public function getBalanceDueAttribute()
{
return $this->balance;
}
public function getTotalAttribute()
{
return $this->calc()->getTotal();
}
}

View File

@ -45,7 +45,7 @@ class Bold extends BaseDesign
public function elements(array $context, string $type = 'product'): array
{
$this->context = $context;
$this->type = $type;
$this->setup();
@ -130,7 +130,7 @@ class Bold extends BaseDesign
$elements = [];
foreach ($variables as $variable) {
$elements[] = ['element' => 'tr', 'content' => '', 'elements' => [
$elements[] = ['element' => 'tr', 'properties' => ['hidden' => $this->entityVariableCheck($variable)], 'content' => '', 'elements' => [
['element' => 'th', 'content' => $variable . '_label', 'properties' => ['class' => 'text-left pr-4 font-normal']],
['element' => 'th', 'content' => $variable, 'properties' => ['class' => 'text-left pr-4 font-normal']],
]];

View File

@ -130,7 +130,7 @@ class Business extends BaseDesign
$elements = [];
foreach ($variables as $variable) {
$elements[] = ['element' => 'tr', 'content' => '', 'elements' => [
$elements[] = ['element' => 'tr', 'properties' => ['hidden' => $this->entityVariableCheck($variable)], 'content' => '', 'elements' => [
['element' => 'th', 'content' => $variable . '_label', 'properties' => ['class' => 'text-left pr-4 font-normal']],
['element' => 'th', 'content' => $variable, 'properties' => ['class' => 'text-left pr-4 font-normal']],
]];

View File

@ -117,7 +117,7 @@ class Clean extends BaseDesign
$elements = [];
foreach ($variables as $variable) {
$elements[] = ['element' => 'tr', 'content' => '', 'elements' => [
$elements[] = ['element' => 'tr', 'properties' => ['hidden' => $this->entityVariableCheck($variable)], 'content' => '', 'elements' => [
['element' => 'th', 'content' => $variable . '_label', 'properties' => ['class' => 'text-left pr-4 font-normal']],
['element' => 'th', 'content' => $variable, 'properties' => ['class' => 'text-left pr-4 font-normal']],
]];

View File

@ -130,7 +130,7 @@ class Creative extends BaseDesign
$elements = [];
foreach ($variables as $variable) {
$elements[] = ['element' => 'tr', 'content' => '', 'elements' => [
$elements[] = ['element' => 'tr', 'properties' => ['hidden' => $this->entityVariableCheck($variable)], 'content' => '', 'elements' => [
['element' => 'th', 'content' => $variable . '_label', 'properties' => ['class' => 'text-left pr-4 font-normal']],
['element' => 'th', 'content' => $variable, 'properties' => ['class' => 'text-left pr-4 font-normal']],
]];

View File

@ -91,7 +91,7 @@ class Elegant extends BaseDesign
$elements = [];
foreach ($variables as $variable) {
$elements[] = ['element' => 'tr', 'content' => '', 'elements' => [
$elements[] = ['element' => 'tr', 'properties' => ['hidden' => $this->entityVariableCheck($variable)], 'content' => '', 'elements' => [
['element' => 'th', 'content' => $variable . '_label', 'properties' => ['class' => 'text-left pr-4 font-normal']],
['element' => 'th', 'content' => $variable, 'properties' => ['class' => 'text-left pr-4 font-normal']],
]];

View File

@ -130,7 +130,7 @@ class Hipster extends BaseDesign
$elements = [];
foreach ($variables as $variable) {
$elements[] = ['element' => 'div', 'properties' => ['class' => 'space-x-4'], 'content' => '', 'elements' => [
$elements[] = ['element' => 'div', 'properties' => ['hidden' => $this->entityVariableCheck($variable), 'class' => 'space-x-4'], 'content' => '', 'elements' => [
['element' => 'span', 'content' => $variable . '_label', 'properties' => ['class' => 'font-semibold uppercase text-yellow-600']],
['element' => 'span', 'content' => $variable, 'properties' => ['class' => 'uppercase']],
]];

View File

@ -91,7 +91,7 @@ class Modern extends BaseDesign
$elements = [];
foreach ($variables as $variable) {
$elements[] = ['element' => 'tr', 'content' => '', 'elements' => [
$elements[] = ['element' => 'tr', 'properties' => ['hidden' => $this->entityVariableCheck($variable)], 'content' => '', 'elements' => [
['element' => 'th', 'content' => $variable . '_label', 'properties' => ['class' => 'text-left pr-16 lg:pr-24 font-normal']],
['element' => 'th', 'content' => $variable, 'properties' => ['class' => 'text-left pr-16 lg:pr-24 font-normal']],
]];

View File

@ -1,45 +0,0 @@
<?php
/**
* Invoice Ninja (https://invoiceninja.com)
*
* @link https://github.com/invoiceninja/invoiceninja source repository
*
* @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
*
* @license https://opensource.org/licenses/AAL
*/
namespace App\Services\PdfMaker\Designs;
use App\Services\PdfMaker\Designs\Utilities\BaseDesign;
use App\Services\PdfMaker\Designs\Utilities\DesignHelpers;
use App\Utils\Traits\MakesInvoiceValues;
/** @deprecated */
class Photo extends BaseDesign
{
use MakesInvoiceValues, DesignHelpers;
/** Global list of table elements, @var array */
public $elements;
/** @var App\Models\Client */
public $client;
/** @var App\Models\Invoice || @var App\Models\Quote */
public $entity;
/** Global state of the design, @var array */
public $context;
/** Type of entity => product||task */
public $type;
public function html()
{
return file_get_contents(
base_path('resources/views/pdf-designs/bold.html')
);
}
}

View File

@ -100,10 +100,12 @@ class Plain extends BaseDesign
$elements = [];
foreach ($variables as $variable) {
$elements[] = ['element' => 'tr', 'content' => '', 'elements' => [
$element = ['element' => 'tr', 'properties' => ['hidden' => $this->entityVariableCheck($variable)], 'content' => '', 'elements' => [
['element' => 'th', 'content' => $variable . '_label', 'properties' => ['class' => 'text-left pr-4 font-normal']],
['element' => 'th', 'content' => $variable, 'properties' => ['class' => 'text-left pr-4 font-medium']],
]];
$elements[] = $element;
}
return $elements;

View File

@ -91,7 +91,7 @@ class Playful extends BaseDesign
$elements = [];
foreach ($variables as $variable) {
$elements[] = ['element' => 'tr', 'content' => '', 'elements' => [
$elements[] = ['element' => 'tr', 'properties' => ['hidden' => $this->entityVariableCheck($variable)], 'content' => '', 'elements' => [
['element' => 'th', 'content' => $variable . '_label', 'properties' => ['class' => 'text-left pr-4 font-normal']],
['element' => 'th', 'content' => $variable, 'properties' => ['class' => 'text-left pr-4 font-medium']],
]];

View File

@ -164,4 +164,29 @@ trait DesignHelpers
['element' => 'img', 'content' => '', 'properties' => ['src' => '$app_url/images/created-by-invoiceninja-new.png', 'class' => 'h-24', 'hidden' => $this->entity->user->account->isPaid() ? 'true' : 'false']],
]];
}
public function entityVariableCheck(string $variable): bool
{
// Extract $invoice.date => date
// so we can append date as $entity->date and not $entity->$invoice.date;
try {
$_variable = explode('.', $variable)[1];
} catch (\Exception $e) {
throw new \Exception('Company settings seems to be broken. Missing $entity.variable type.');
}
if (is_null($this->entity->{$_variable})) {
info("{$this->entity->id} $_variable is null!");
return true;
}
if (empty($this->entity->{$_variable})) {
info("{$this->entity->id} $_variable is empty!");
return true;
}
info("{$this->entity->id} $_variable ALL GOOD!!");
return false;
}
}

View File

@ -27,6 +27,7 @@ class CompanyGatewayTransformer extends EntityTransformer
* @var array
*/
protected $defaultIncludes = [
'gateway'
];
/**

View File

@ -11,11 +11,13 @@
namespace App\Transformers;
use App\Models\Backup;
use App\Models\Credit;
use App\Models\CreditInvitation;
use App\Models\Document;
use App\Transformers\CreditInvitationTransformer;
use App\Transformers\DocumentTransformer;
use App\Transformers\InvoiceHistoryTransformer;
use App\Utils\Traits\MakesHash;
class CreditTransformer extends EntityTransformer
@ -25,15 +27,23 @@ class CreditTransformer extends EntityTransformer
protected $defaultIncludes = [
'invitations',
'documents',
'history',
];
protected $availableIncludes = [
'invitations',
// 'payments',
'history',
// 'client',
'documents',
];
public function includeHistory(Credit $credit)
{
$transformer = new InvoiceHistoryTransformer($this->serializer);
return $this->includeCollection($credit->history, $transformer, Backup::class);
}
public function includeInvitations(Credit $credit)
{
$transformer = new CreditInvitationTransformer($this->serializer);
@ -90,6 +100,10 @@ class CreditTransformer extends EntityTransformer
'date' => $credit->date ?: '',
'last_sent_date' => $credit->last_sent_date ?: '',
'next_send_date' => $credit->date ?: '',
'reminder1_sent' => $credit->reminder1_sent ?: '',
'reminder2_sent' => $credit->reminder2_sent ?: '',
'reminder3_sent' => $credit->reminder3_sent ?: '',
'reminder_last_sent' => $credit->reminder_last_sent ?: '',
'due_date' => $credit->due_date ?: '',
'terms' => $credit->terms ?: '',
'public_notes' => $credit->public_notes ?: '',

View File

@ -11,7 +11,9 @@
namespace App\Transformers;
use App\Models\Activity;
use App\Models\Backup;
use App\Transformers\ActivityTransformer;
use App\Utils\Traits\MakesHash;
class InvoiceHistoryTransformer extends EntityTransformer
@ -19,9 +21,11 @@ class InvoiceHistoryTransformer extends EntityTransformer
use MakesHash;
protected $defaultIncludes = [
'activity'
];
protected $availableIncludes = [
'activity'
];
public function transform(Backup $backup)
@ -35,4 +39,11 @@ class InvoiceHistoryTransformer extends EntityTransformer
'updated_at' => (int)$backup->updated_at,
];
}
public function includeActivity(Backup $backup)
{
$transformer = new ActivityTransformer($this->serializer);
return $this->includeItem($backup->activity, $transformer, Activity::class);
}
}

View File

@ -105,6 +105,10 @@ class InvoiceTransformer extends EntityTransformer
'date' => $invoice->date ?: '',
'last_sent_date' => $invoice->last_sent_date ?: '',
'next_send_date' => $invoice->date ?: '',
'reminder1_sent' => $invoice->reminder1_sent ?: '',
'reminder2_sent' => $invoice->reminder2_sent ?: '',
'reminder3_sent' => $invoice->reminder3_sent ?: '',
'reminder_last_sent' => $invoice->reminder_last_sent ?: '',
'due_date' => $invoice->due_date ?: '',
'terms' => $invoice->terms ?: '',
'public_notes' => $invoice->public_notes ?: '',

View File

@ -26,7 +26,7 @@ class PaymentTransformer extends EntityTransformer
protected $serializer;
protected $defaultIncludes = [
// 'invoices'
'paymentables',
'documents',
];

View File

@ -11,10 +11,12 @@
namespace App\Transformers;
use App\Models\Backup;
use App\Models\Document;
use App\Models\Quote;
use App\Models\QuoteInvitation;
use App\Transformers\DocumentTransformer;
use App\Transformers\InvoiceHistoryTransformer;
use App\Transformers\QuoteInvitationTransformer;
use App\Utils\Traits\MakesHash;
@ -25,15 +27,24 @@ class QuoteTransformer extends EntityTransformer
protected $defaultIncludes = [
'invitations',
'documents',
'history'
];
protected $availableIncludes = [
'invitations',
'documents',
'history'
// 'payments',
// 'client',
];
public function includeHistory(Quote $quote)
{
$transformer = new InvoiceHistoryTransformer($this->serializer);
return $this->includeCollection($quote->history, $transformer, Backup::class);
}
public function includeInvitations(Quote $quote)
{
$transformer = new QuoteInvitationTransformer($this->serializer);
@ -90,6 +101,10 @@ class QuoteTransformer extends EntityTransformer
'date' => $quote->date ?: '',
'last_sent_date' => $quote->last_sent_date ?: '',
'next_send_date' => $quote->date ?: '',
'reminder1_sent' => $quote->reminder1_sent ?: '',
'reminder2_sent' => $quote->reminder2_sent ?: '',
'reminder3_sent' => $quote->reminder3_sent ?: '',
'reminder_last_sent' => $quote->reminder_last_sent ?: '',
'due_date' => $quote->due_date ?: '',
'terms' => $quote->terms ?: '',
'public_notes' => $quote->public_notes ?: '',

265
composer.lock generated
View File

@ -107,16 +107,16 @@
},
{
"name": "aws/aws-sdk-php",
"version": "3.147.14",
"version": "3.149.0",
"source": {
"type": "git",
"url": "https://github.com/aws/aws-sdk-php.git",
"reference": "2ac5757aee4333c382c222880a51bd56930dafc4"
"reference": "0ab4ac60f94d53d55f2c7374deb75d9a58961970"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/2ac5757aee4333c382c222880a51bd56930dafc4",
"reference": "2ac5757aee4333c382c222880a51bd56930dafc4",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/0ab4ac60f94d53d55f2c7374deb75d9a58961970",
"reference": "0ab4ac60f94d53d55f2c7374deb75d9a58961970",
"shasum": ""
},
"require": {
@ -188,7 +188,7 @@
"s3",
"sdk"
],
"time": "2020-08-06T18:18:37+00:00"
"time": "2020-08-13T18:10:50+00:00"
},
{
"name": "checkout/checkout-sdk-php",
@ -514,21 +514,21 @@
},
{
"name": "composer/package-versions-deprecated",
"version": "1.10.99",
"version": "1.10.99.1",
"source": {
"type": "git",
"url": "https://github.com/composer/package-versions-deprecated.git",
"reference": "dd51b4443d58b34b6d9344cf4c288e621c9a826f"
"reference": "68c9b502036e820c33445ff4d174327f6bb87486"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/dd51b4443d58b34b6d9344cf4c288e621c9a826f",
"reference": "dd51b4443d58b34b6d9344cf4c288e621c9a826f",
"url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/68c9b502036e820c33445ff4d174327f6bb87486",
"reference": "68c9b502036e820c33445ff4d174327f6bb87486",
"shasum": ""
},
"require": {
"composer-plugin-api": "^1.1.0 || ^2.0",
"php": "^7"
"php": "^7 || ^8"
},
"replace": {
"ocramius/package-versions": "1.10.99"
@ -579,7 +579,7 @@
"type": "tidelift"
}
],
"time": "2020-07-15T08:39:18+00:00"
"time": "2020-08-13T12:55:41+00:00"
},
{
"name": "composer/semver",
@ -774,6 +774,50 @@
],
"time": "2020-06-04T11:16:35+00:00"
},
{
"name": "cweagans/composer-patches",
"version": "1.6.7",
"source": {
"type": "git",
"url": "https://github.com/cweagans/composer-patches.git",
"reference": "2e6f72a2ad8d59cd7e2b729f218bf42adb14f590"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/cweagans/composer-patches/zipball/2e6f72a2ad8d59cd7e2b729f218bf42adb14f590",
"reference": "2e6f72a2ad8d59cd7e2b729f218bf42adb14f590",
"shasum": ""
},
"require": {
"composer-plugin-api": "^1.0",
"php": ">=5.3.0"
},
"require-dev": {
"composer/composer": "~1.0",
"phpunit/phpunit": "~4.6"
},
"type": "composer-plugin",
"extra": {
"class": "cweagans\\Composer\\Patches"
},
"autoload": {
"psr-4": {
"cweagans\\Composer\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"BSD-3-Clause"
],
"authors": [
{
"name": "Cameron Eagans",
"email": "me@cweagans.net"
}
],
"description": "Provides a way to patch Composer packages.",
"time": "2019-08-29T20:11:49+00:00"
},
{
"name": "czproject/git-php",
"version": "v3.18.1",
@ -1418,16 +1462,16 @@
},
{
"name": "egulias/email-validator",
"version": "2.1.18",
"version": "2.1.19",
"source": {
"type": "git",
"url": "https://github.com/egulias/EmailValidator.git",
"reference": "cfa3d44471c7f5bfb684ac2b0da7114283d78441"
"reference": "840d5603eb84cc81a6a0382adac3293e57c1c64c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/egulias/EmailValidator/zipball/cfa3d44471c7f5bfb684ac2b0da7114283d78441",
"reference": "cfa3d44471c7f5bfb684ac2b0da7114283d78441",
"url": "https://api.github.com/repos/egulias/EmailValidator/zipball/840d5603eb84cc81a6a0382adac3293e57c1c64c",
"reference": "840d5603eb84cc81a6a0382adac3293e57c1c64c",
"shasum": ""
},
"require": {
@ -1472,7 +1516,7 @@
"validation",
"validator"
],
"time": "2020-06-16T20:11:17+00:00"
"time": "2020-08-08T21:28:19+00:00"
},
{
"name": "fedeisas/laravel-mail-css-inliner",
@ -2892,28 +2936,29 @@
},
{
"name": "league/flysystem",
"version": "1.0.70",
"version": "1.1.1",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/flysystem.git",
"reference": "585824702f534f8d3cf7fab7225e8466cc4b7493"
"reference": "6e96f54d82e71f71c4108da33ee96a7f57083710"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/thephpleague/flysystem/zipball/585824702f534f8d3cf7fab7225e8466cc4b7493",
"reference": "585824702f534f8d3cf7fab7225e8466cc4b7493",
"url": "https://api.github.com/repos/thephpleague/flysystem/zipball/6e96f54d82e71f71c4108da33ee96a7f57083710",
"reference": "6e96f54d82e71f71c4108da33ee96a7f57083710",
"shasum": ""
},
"require": {
"ext-fileinfo": "*",
"php": ">=5.5.9"
"league/mime-type-detection": "^1.3",
"php": "^7.2.5 || ^8.0"
},
"conflict": {
"league/flysystem-sftp": "<1.0.6"
},
"require-dev": {
"phpspec/phpspec": "^3.4 || ^4.0 || ^5.0 || ^6.0",
"phpunit/phpunit": "^5.7.26"
"phpspec/prophecy": "^1.11.1",
"phpunit/phpunit": "^8.5.8"
},
"suggest": {
"ext-fileinfo": "Required for MimeType",
@ -2978,7 +3023,7 @@
"type": "other"
}
],
"time": "2020-07-26T07:20:36+00:00"
"time": "2020-08-12T14:23:41+00:00"
},
{
"name": "league/flysystem-aws-s3-v3",
@ -3199,6 +3244,57 @@
],
"time": "2020-07-07T12:23:45+00:00"
},
{
"name": "league/mime-type-detection",
"version": "1.4.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/mime-type-detection.git",
"reference": "fda190b62b962d96a069fcc414d781db66d65b69"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/thephpleague/mime-type-detection/zipball/fda190b62b962d96a069fcc414d781db66d65b69",
"reference": "fda190b62b962d96a069fcc414d781db66d65b69",
"shasum": ""
},
"require": {
"ext-fileinfo": "*",
"php": "^7.2 || ^8.0"
},
"require-dev": {
"phpstan/phpstan": "^0.12.36",
"phpunit/phpunit": "^8.5.8"
},
"type": "library",
"autoload": {
"psr-4": {
"League\\MimeTypeDetection\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Frank de Jonge",
"email": "info@frankdejonge.nl"
}
],
"description": "Mime-type detection for Flysystem",
"funding": [
{
"url": "https://github.com/frankdejonge",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/league/flysystem",
"type": "tidelift"
}
],
"time": "2020-08-09T10:34:01+00:00"
},
{
"name": "league/oauth1-client",
"version": "1.7.0",
@ -3805,16 +3901,16 @@
},
{
"name": "nikic/php-parser",
"version": "v4.7.0",
"version": "v4.8.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
"reference": "21dce06dfbf0365c6a7cc8fdbdc995926c6a9300"
"reference": "8c58eb4cd4f3883f82611abeac2efbc3dbed787e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/21dce06dfbf0365c6a7cc8fdbdc995926c6a9300",
"reference": "21dce06dfbf0365c6a7cc8fdbdc995926c6a9300",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8c58eb4cd4f3883f82611abeac2efbc3dbed787e",
"reference": "8c58eb4cd4f3883f82611abeac2efbc3dbed787e",
"shasum": ""
},
"require": {
@ -3822,8 +3918,8 @@
"php": ">=7.0"
},
"require-dev": {
"ircmaxell/php-yacc": "0.0.5",
"phpunit/phpunit": "^6.5 || ^7.0 || ^8.0"
"ircmaxell/php-yacc": "^0.0.6",
"phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0"
},
"bin": [
"bin/php-parse"
@ -3831,7 +3927,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "4.7-dev"
"dev-master": "4.8-dev"
}
},
"autoload": {
@ -3853,7 +3949,7 @@
"parser",
"php"
],
"time": "2020-07-25T13:18:53+00:00"
"time": "2020-08-09T10:23:20+00:00"
},
{
"name": "nwidart/laravel-modules",
@ -4129,16 +4225,16 @@
},
{
"name": "opis/closure",
"version": "3.5.5",
"version": "3.5.6",
"source": {
"type": "git",
"url": "https://github.com/opis/closure.git",
"reference": "dec9fc5ecfca93f45cd6121f8e6f14457dff372c"
"reference": "e8d34df855b0a0549a300cb8cb4db472556e8aa9"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/opis/closure/zipball/dec9fc5ecfca93f45cd6121f8e6f14457dff372c",
"reference": "dec9fc5ecfca93f45cd6121f8e6f14457dff372c",
"url": "https://api.github.com/repos/opis/closure/zipball/e8d34df855b0a0549a300cb8cb4db472556e8aa9",
"reference": "e8d34df855b0a0549a300cb8cb4db472556e8aa9",
"shasum": ""
},
"require": {
@ -4186,7 +4282,7 @@
"serialization",
"serialize"
],
"time": "2020-06-17T14:59:55+00:00"
"time": "2020-08-11T08:46:50+00:00"
},
{
"name": "paragonie/random_compat",
@ -4838,19 +4934,20 @@
},
{
"name": "predis/predis",
"version": "v1.1.1",
"version": "v1.1.2",
"source": {
"type": "git",
"url": "https://github.com/nrk/predis.git",
"reference": "f0210e38881631afeafb56ab43405a92cafd9fd1"
"url": "https://github.com/predishq/predis.git",
"reference": "82eb18c6c3860849cb6e2ff34b0c4b39d5daee46"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nrk/predis/zipball/f0210e38881631afeafb56ab43405a92cafd9fd1",
"reference": "f0210e38881631afeafb56ab43405a92cafd9fd1",
"url": "https://api.github.com/repos/predishq/predis/zipball/82eb18c6c3860849cb6e2ff34b0c4b39d5daee46",
"reference": "82eb18c6c3860849cb6e2ff34b0c4b39d5daee46",
"shasum": ""
},
"require": {
"cweagans/composer-patches": "^1.6",
"php": ">=5.3.9"
},
"require-dev": {
@ -4861,6 +4958,18 @@
"ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol"
},
"type": "library",
"extra": {
"composer-exit-on-patch-failure": true,
"patches": {
"phpunit/phpunit-mock-objects": {
"Fix PHP 7 and 8 compatibility": "./tests/phpunit_mock_objects.patch"
},
"phpunit/phpunit": {
"Fix PHP 7 compatibility": "./tests/phpunit_php7.patch",
"Fix PHP 8 compatibility": "./tests/phpunit_php8.patch"
}
}
},
"autoload": {
"psr-4": {
"Predis\\": "src/"
@ -4884,7 +4993,17 @@
"predis",
"redis"
],
"time": "2016-06-16T16:22:20+00:00"
"funding": [
{
"url": "https://www.paypal.me/tillkruss",
"type": "custom"
},
{
"url": "https://github.com/tillkruss",
"type": "github"
}
],
"time": "2020-08-11T17:28:15+00:00"
},
{
"name": "psr/cache",
@ -5544,16 +5663,16 @@
},
{
"name": "seld/jsonlint",
"version": "1.8.0",
"version": "1.8.1",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/jsonlint.git",
"reference": "ff2aa5420bfbc296cf6a0bc785fa5b35736de7c1"
"reference": "3d5eb71705adfa34bd34b993400622932b2f62fd"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/ff2aa5420bfbc296cf6a0bc785fa5b35736de7c1",
"reference": "ff2aa5420bfbc296cf6a0bc785fa5b35736de7c1",
"url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/3d5eb71705adfa34bd34b993400622932b2f62fd",
"reference": "3d5eb71705adfa34bd34b993400622932b2f62fd",
"shasum": ""
},
"require": {
@ -5599,7 +5718,7 @@
"type": "tidelift"
}
],
"time": "2020-04-30T19:05:18+00:00"
"time": "2020-08-13T09:07:59+00:00"
},
{
"name": "seld/phar-utils",
@ -6111,16 +6230,16 @@
},
{
"name": "stripe/stripe-php",
"version": "v7.46.1",
"version": "v7.47.0",
"source": {
"type": "git",
"url": "https://github.com/stripe/stripe-php.git",
"reference": "fd57205d3e3a1dccab80538654128d5c46a1f5ac"
"reference": "b51656cb398d081fcee53a76f6edb8fd5c1a5306"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/stripe/stripe-php/zipball/fd57205d3e3a1dccab80538654128d5c46a1f5ac",
"reference": "fd57205d3e3a1dccab80538654128d5c46a1f5ac",
"url": "https://api.github.com/repos/stripe/stripe-php/zipball/b51656cb398d081fcee53a76f6edb8fd5c1a5306",
"reference": "b51656cb398d081fcee53a76f6edb8fd5c1a5306",
"shasum": ""
},
"require": {
@ -6164,7 +6283,7 @@
"payment processing",
"stripe"
],
"time": "2020-08-07T22:11:58+00:00"
"time": "2020-08-13T22:35:56+00:00"
},
{
"name": "swiftmailer/swiftmailer",
@ -8827,29 +8946,30 @@
},
{
"name": "barryvdh/laravel-debugbar",
"version": "v3.3.3",
"version": "v3.4.1",
"source": {
"type": "git",
"url": "https://github.com/barryvdh/laravel-debugbar.git",
"reference": "57f2219f6d9efe41ed1bc880d86701c52f261bf5"
"reference": "9e785aa5584e8839fd43070202dd7f2e912db51c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/57f2219f6d9efe41ed1bc880d86701c52f261bf5",
"reference": "57f2219f6d9efe41ed1bc880d86701c52f261bf5",
"url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/9e785aa5584e8839fd43070202dd7f2e912db51c",
"reference": "9e785aa5584e8839fd43070202dd7f2e912db51c",
"shasum": ""
},
"require": {
"illuminate/routing": "^5.5|^6|^7",
"illuminate/session": "^5.5|^6|^7",
"illuminate/support": "^5.5|^6|^7",
"maximebf/debugbar": "^1.15.1",
"maximebf/debugbar": "^1.16.3",
"php": ">=7.0",
"symfony/debug": "^3|^4|^5",
"symfony/finder": "^3|^4|^5"
},
"require-dev": {
"laravel/framework": "5.5.x"
"orchestra/testbench": "^3.5|^4.0|^5.0",
"phpunit/phpunit": "^6.0|^7.0|^8.5|^9.0"
},
"type": "library",
"extra": {
@ -8897,7 +9017,7 @@
"type": "github"
}
],
"time": "2020-05-05T10:53:32+00:00"
"time": "2020-08-11T10:30:51+00:00"
},
{
"name": "beyondcode/laravel-dump-server",
@ -9032,16 +9152,16 @@
},
{
"name": "doctrine/annotations",
"version": "1.10.3",
"version": "1.10.4",
"source": {
"type": "git",
"url": "https://github.com/doctrine/annotations.git",
"reference": "5db60a4969eba0e0c197a19c077780aadbc43c5d"
"reference": "bfe91e31984e2ba76df1c1339681770401ec262f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/annotations/zipball/5db60a4969eba0e0c197a19c077780aadbc43c5d",
"reference": "5db60a4969eba0e0c197a19c077780aadbc43c5d",
"url": "https://api.github.com/repos/doctrine/annotations/zipball/bfe91e31984e2ba76df1c1339681770401ec262f",
"reference": "bfe91e31984e2ba76df1c1339681770401ec262f",
"shasum": ""
},
"require": {
@ -9051,7 +9171,8 @@
},
"require-dev": {
"doctrine/cache": "1.*",
"phpunit/phpunit": "^7.5"
"phpstan/phpstan": "^0.12.20",
"phpunit/phpunit": "^7.5 || ^9.1.5"
},
"type": "library",
"extra": {
@ -9097,7 +9218,7 @@
"docblock",
"parser"
],
"time": "2020-05-25T17:24:27+00:00"
"time": "2020-08-10T19:35:50+00:00"
},
{
"name": "doctrine/instantiator",
@ -9476,16 +9597,16 @@
},
{
"name": "mockery/mockery",
"version": "1.3.2",
"version": "1.3.3",
"source": {
"type": "git",
"url": "https://github.com/mockery/mockery.git",
"reference": "9b6f117dd7d36dc3858d8d8ddf9b3d584fcae283"
"reference": "60fa2f67f6e4d3634bb4a45ff3171fa52215800d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/mockery/mockery/zipball/9b6f117dd7d36dc3858d8d8ddf9b3d584fcae283",
"reference": "9b6f117dd7d36dc3858d8d8ddf9b3d584fcae283",
"url": "https://api.github.com/repos/mockery/mockery/zipball/60fa2f67f6e4d3634bb4a45ff3171fa52215800d",
"reference": "60fa2f67f6e4d3634bb4a45ff3171fa52215800d",
"shasum": ""
},
"require": {
@ -9494,7 +9615,7 @@
"php": ">=5.6.0"
},
"require-dev": {
"phpunit/phpunit": "~5.7.10|~6.5|~7.0|~8.0|~9.0"
"phpunit/phpunit": "^5.7.10|^6.5|^7.5|^8.5|^9.3"
},
"type": "library",
"extra": {
@ -9537,7 +9658,7 @@
"test double",
"testing"
],
"time": "2020-07-09T08:23:05+00:00"
"time": "2020-08-11T18:10:21+00:00"
},
{
"name": "myclabs/deep-copy",

View File

@ -0,0 +1,17 @@
<?php
use Faker\Generator as Faker;
$factory->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,
];
});

View File

@ -0,0 +1,52 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AddReminderSentFieldsToEntityTables extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('activities', function (Blueprint $table) {
$table->unsignedInteger('quote_id')->nullable();
});
Schema::table('quotes', function (Blueprint $table) {
$table->date('reminder1_sent')->nullable();
$table->date('reminder2_sent')->nullable();
$table->date('reminder3_sent')->nullable();
$table->date('reminder_last_sent')->nullable();
});
Schema::table('invoices', function (Blueprint $table) {
$table->date('reminder1_sent')->nullable();
$table->date('reminder2_sent')->nullable();
$table->date('reminder3_sent')->nullable();
$table->date('reminder_last_sent')->nullable();
});
Schema::table('credits', function (Blueprint $table) {
$table->date('reminder1_sent')->nullable();
$table->date('reminder2_sent')->nullable();
$table->date('reminder3_sent')->nullable();
$table->date('reminder_last_sent')->nullable();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
}
}

View File

@ -1 +1 @@
{"web/assets/fonts/Roboto-Regular.ttf":["web/assets/fonts/Roboto-Regular.ttf"],"packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf":["packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf"],"packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf":["packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf"],"packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf":["packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf"],"assets/images/google-icon.png":["assets/images/google-icon.png"],"assets/images/logo.png":["assets/images/logo.png"]}
{"assets/images/payment_types/ach.png":["assets/images/payment_types/ach.png"],"assets/images/payment_types/amex.png":["assets/images/payment_types/amex.png"],"assets/images/payment_types/carteblanche.png":["assets/images/payment_types/carteblanche.png"],"assets/images/payment_types/dinerscard.png":["assets/images/payment_types/dinerscard.png"],"assets/images/payment_types/discover.png":["assets/images/payment_types/discover.png"],"packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf":["packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf"],"packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf":["packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf"],"packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf":["packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf"],"assets/images/google-icon.png":["assets/images/google-icon.png"],"assets/images/payment_types/jcb.png":["assets/images/payment_types/jcb.png"],"assets/images/payment_types/laser.png":["assets/images/payment_types/laser.png"],"assets/images/logo.png":["assets/images/logo.png"],"assets/images/payment_types/maestro.png":["assets/images/payment_types/maestro.png"],"assets/images/payment_types/mastercard.png":["assets/images/payment_types/mastercard.png"],"assets/images/payment_types/other.png":["assets/images/payment_types/other.png"],"assets/images/payment_types/paypal.png":["assets/images/payment_types/paypal.png"],"assets/images/payment_types/solo.png":["assets/images/payment_types/solo.png"],"assets/images/payment_types/switch.png":["assets/images/payment_types/switch.png"],"assets/images/payment_types/unionpay.png":["assets/images/payment_types/unionpay.png"],"assets/images/payment_types/visa.png":["assets/images/payment_types/visa.png"]}

View File

@ -1,45 +1 @@
[
{
"family": "Roboto",
"fonts": [
{
"asset": "fonts/Roboto-Regular.ttf"
}
]
},
{
"family": "MaterialIcons",
"fonts": [
{
"asset": "https://fonts.gstatic.com/s/materialicons/v42/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2"
}
]
},
{
"family": "packages/font_awesome_flutter/FontAwesomeBrands",
"fonts": [
{
"weight": 400,
"asset": "packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf"
}
]
},
{
"family": "packages/font_awesome_flutter/FontAwesomeRegular",
"fonts": [
{
"weight": 400,
"asset": "packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf"
}
]
},
{
"family": "packages/font_awesome_flutter/FontAwesomeSolid",
"fonts": [
{
"weight": 900,
"asset": "packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf"
}
]
}
]
[{"family":"MaterialIcons","fonts":[{"asset":"fonts/MaterialIcons-Regular.otf"}]},{"family":"packages/font_awesome_flutter/FontAwesomeBrands","fonts":[{"weight":400,"asset":"packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf"}]},{"family":"packages/font_awesome_flutter/FontAwesomeRegular","fonts":[{"weight":400,"asset":"packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf"}]},{"family":"packages/font_awesome_flutter/FontAwesomeSolid","fonts":[{"weight":900,"asset":"packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf"}]}]

View File

@ -852,6 +852,40 @@ angle
Copyright 2020 The ANGLE Project Authors. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
Neither the name of TransGaming Inc., Google Inc., 3DLabs Inc.
Ltd., nor the names of their contributors may be used to endorse
or promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
angle
Copyright The ANGLE Project Authors. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
@ -1442,6 +1476,7 @@ bzip2:
--------------------------------------------------------------------------------
async
cli_util
collection
convert
crypto
@ -1515,6 +1550,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
base
fuchsia_sdk
skia
zlib
Copyright 2018 The Chromium Authors. All rights reserved.
@ -1546,6 +1582,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
base
icu
zlib
Copyright 2014 The Chromium Authors. All rights reserved.
@ -5728,6 +5765,29 @@ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
extended_image
MIT License
Copyright (c) 2019 zmtzawqlp
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
--------------------------------------------------------------------------------
extended_image_library
MIT License
@ -10608,6 +10668,192 @@ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
image
Copyright 2013 Brendan Duncan
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Parts of the Image library were ported from the following sources:
==============================================================================
The JPEG encoder/decoder code is derived from the following:
https://github.com/notmasteryet/jpgjs
Copyright (C) 2011 notmasteryet
Contributors: Yury Delendik <ydelendik@mozilla.com>
Brendan Dahl <bdahl@mozilla.com>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
==============================================================================
The WebP encoder/decoder code is derived from the following:
http://git.chromium.org/gitweb/?p=webm/libwebp.git
Copyright (c) 2010, Google Inc. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
* Neither the name of Google nor the names of its contributors may
be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
==============================================================================
The TIFF decoder code is derived from the following:
Apache Batik
http://svn.apache.org/repos/asf/xmlgraphics/batik/trunk
Copyright 1999-2007 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
==============================================================================
The OpenEXR decoder is derived in part from the OpenEXR library:
Copyright (c) 2002-2011, Industrial Light & Magic, a division of
Lucasfilm Entertainment Company Ltd. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this
list of conditions and the following disclaimer in the documentation and/or
other materials provided with the distribution.
Neither the name of Industrial Light & Magic nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
===============================================================================
The PVRTC compression and decompression code is ported from Jeffrey Lim's
PvrTcCompressor:
https://bitbucket.org/jthlim/pvrtccompressor
Copyright © 2014, Jeffrey Lim. All Rights Reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. The name of the author may not be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
===============================================================================
The pvr container format decoder is derived from the QuickPVR project:
QuickPVR is Copyright (C) 2010 Limbic Software, Inc.
http://www.limbicsoftware.com/quickpvr.html
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of the Limbic Software, Inc. nor the
names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY LIMBIC SOFTWARE, INC. ''AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL LIMBIC SOFTWARE, INC. BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
image_picker
path_provider
@ -12542,6 +12788,33 @@ url_launcher_linux
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
petitparser
xml
The MIT License
Copyright (c) 2006-2020 Lukas Renggli.
All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
--------------------------------------------------------------------------------
pkg
@ -15874,26 +16147,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2003, 2010 Jean-loup Gailly.
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2003, 2010 Mark Adler
This software is provided 'as-is', without any express or implied
@ -15914,7 +16167,8 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2005 Jean-loup Gailly.
Copyright (C) 1995-2003, 2010 Mark Adler
Copyright (C) 2017 ARM, Inc.
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -15934,7 +16188,7 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2005, 2010 Jean-loup Gailly.
Copyright (C) 1995-2003, 2010, 2014, 2016 Jean-loup Gailly, Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -15974,7 +16228,7 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2006, 2010 Mark Adler
Copyright (C) 1995-2005, 2014, 2016 Jean-loup Gailly, Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -15994,7 +16248,7 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2007 Mark Adler
Copyright (C) 1995-2006, 2010, 2011, 2012, 2016 Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -16014,7 +16268,7 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2008, 2010 Mark Adler
Copyright (C) 1995-2011, 2016 Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -16034,7 +16288,7 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2009 Mark Adler
Copyright (C) 1995-2016 Jean-loup Gailly
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -16054,7 +16308,7 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2010 Jean-loup Gailly
Copyright (C) 1995-2016 Jean-loup Gailly, Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -16074,7 +16328,47 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2010 Jean-loup Gailly
Copyright (C) 1995-2016 Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2017 Jean-loup Gailly
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2017 Jean-loup Gailly
detect_data_type() function provided freely by Cosmin Truta, 2006
This software is provided 'as-is', without any express or implied
@ -16095,7 +16389,7 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2010 Jean-loup Gailly and Mark Adler
Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -16115,27 +16409,7 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2010 Jean-loup Gailly.
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
--------------------------------------------------------------------------------
zlib
Copyright (C) 1995-2010 Mark Adler
Copyright (C) 1995-2017 Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -16212,7 +16486,7 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 2004, 2005, 2010 Mark Adler
Copyright (C) 2004, 2005, 2010, 2011, 2012, 2013, 2016 Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -16252,6 +16526,26 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 2004-2017 Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
--------------------------------------------------------------------------------
zlib
Copyright (C) 2013 Intel Corporation
Authors:
Arjan van de Ven <arjan@linux.intel.com>
@ -16275,48 +16569,6 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 2013 Intel Corporation Jim Kukunas
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
--------------------------------------------------------------------------------
zlib
Copyright (C) 2013 Intel Corporation. All rights reserved.
Author:
Jim Kukunas
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
--------------------------------------------------------------------------------
zlib
Copyright (C) 2013 Intel Corporation. All rights reserved.
Authors:
Wajdi Feghali <wajdi.k.feghali@intel.com>
@ -16343,23 +16595,34 @@ freely, subject to the following restrictions:
--------------------------------------------------------------------------------
zlib
Copyright (C) 2014 Intel Corporation
Copyright (C) 2017 ARM, Inc.
Copyright 2017 The Chromium Authors. All rights reserved.
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
zlib
@ -16393,10 +16656,39 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
zlib
zlib.h -- interface of the 'zlib' general purpose compression library
version 1.2.4, March 14th, 2010
Copyright 2017 The Chromium Authors. All rights reserved.
Copyright (C) 1995-2010 Jean-loup Gailly and Mark Adler
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
zlib
version 1.2.11, January 15th, 2017
Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
@ -16413,6 +16705,3 @@ freely, subject to the following restrictions:
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
Jean-loup Gailly
Mark Adler

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 938 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

View File

@ -3,21 +3,34 @@ const MANIFEST = 'flutter-app-manifest';
const TEMP = 'flutter-temp-cache';
const CACHE_NAME = 'flutter-app-cache';
const RESOURCES = {
"main.dart.js": "21b7fe2bf7ae694e2eeeb6761c069dcc",
"main.dart.js": "71ce18a1721c33714ab274ac0bc0686c",
"/": "e65799be52f7bbcaf39d78046726b95a",
"favicon.ico": "51636d3a390451561744c42188ccd628",
"assets/fonts/MaterialIcons-Regular.ttf": "56d3ffdef7a25659eab6a68a3fbfaf16",
"assets/fonts/Roboto-Regular.ttf": "3e1af3ef546b9e6ecef9f3ba197bf7d2",
"assets/FontManifest.json": "280b2f61f6810d59bd1bcd4cf01d3bf4",
"manifest.json": "77215c1737c7639764e64a192be2f7b8",
"assets/FontManifest.json": "3ddd9b2ab1c2ae162d46e3cc7b78ba88",
"assets/fonts/MaterialIcons-Regular.otf": "a68d2a28c526b3b070aefca4bac93d25",
"assets/packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf": "2bca5ec802e40d3f4b60343e346cedde",
"assets/packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf": "2aa350bd2aeab88b601a593f793734c0",
"assets/packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf": "5a37ae808cf9f652198acde612b5328d",
"assets/assets/images/google-icon.png": "0f118259ce403274f407f5e982e681c3",
"assets/packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf": "2aa350bd2aeab88b601a593f793734c0",
"assets/AssetManifest.json": "4dc34709f43063308e23a0fd59e0ce26",
"assets/NOTICES": "83d6b2a572db318f7fb0a03eb6da198a",
"assets/assets/images/logo.png": "090f69e23311a4b6d851b3880ae52541",
"assets/NOTICES": "cf7278a783b9e716e04c275ecf12069f",
"assets/AssetManifest.json": "43bc57fb55ca8ea2fc1975108be086c9",
"assets/web/assets/fonts/Roboto-Regular.ttf": "3e1af3ef546b9e6ecef9f3ba197bf7d2",
"manifest.json": "77215c1737c7639764e64a192be2f7b8"
"assets/assets/images/payment_types/other.png": "d936e11fa3884b8c9f1bd5c914be8629",
"assets/assets/images/payment_types/switch.png": "4fa11c45327f5fdc20205821b2cfd9cc",
"assets/assets/images/payment_types/paypal.png": "8e06c094c1871376dfea1da8088c29d1",
"assets/assets/images/payment_types/discover.png": "6c0a386a00307f87db7bea366cca35f5",
"assets/assets/images/payment_types/jcb.png": "07e0942d16c5592118b72e74f2f7198c",
"assets/assets/images/payment_types/carteblanche.png": "d936e11fa3884b8c9f1bd5c914be8629",
"assets/assets/images/payment_types/mastercard.png": "6f6cdc29ee2e22e06b1ac029cb52ef71",
"assets/assets/images/payment_types/ach.png": "7433f0aff779dc98a649b7a2daf777cf",
"assets/assets/images/payment_types/solo.png": "2030c3ccaccf5d5e87916a62f5b084d6",
"assets/assets/images/payment_types/visa.png": "3ddc4a4d25c946e8ad7e6998f30fd4e3",
"assets/assets/images/payment_types/amex.png": "c49a4247984b3732a4af50a3390aa978",
"assets/assets/images/payment_types/maestro.png": "e533b92bfb50339fdbfa79e3dfe81f08",
"assets/assets/images/payment_types/unionpay.png": "7002f52004e0ab8cc0b7450b0208ccb2",
"assets/assets/images/payment_types/laser.png": "b4e6e93dd35517ac429301119ff05868",
"assets/assets/images/payment_types/dinerscard.png": "06d85186ba858c18ab7c9caa42c92024",
"assets/assets/images/google-icon.png": "0f118259ce403274f407f5e982e681c3",
"favicon.ico": "51636d3a390451561744c42188ccd628"
};
// The application shell files that are downloaded before a service worker can
@ -33,8 +46,8 @@ const CORE = [
self.addEventListener("install", (event) => {
return event.waitUntil(
caches.open(TEMP).then((cache) => {
// Provide a no-cache param to ensure the latest version is downloaded.
return cache.addAll(CORE.map((value) => new Request(value, {'cache': 'no-cache'})));
// Provide a 'reload' param to ensure the latest version is downloaded.
return cache.addAll(CORE.map((value) => new Request(value, {'cache': 'reload'})));
})
);
});
@ -116,7 +129,7 @@ self.addEventListener("fetch", (event) => {
// Either respond with the cached resource, or perform a fetch and
// lazily populate the cache. Ensure the resources are not cached
// by the browser for longer than the service worker expects.
var modifiedRequest = new Request(event.request, {'cache': 'no-cache'});
var modifiedRequest = new Request(event.request, {'cache': 'reload'});
return response || fetch(modifiedRequest).then((response) => {
cache.put(event.request, response.clone());
return response;

252227
public/main.dart.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -21,6 +21,7 @@ use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Session;
use Tests\MockAccountData;
use Tests\TestCase;
use PaymentLibrariesSeeder;
/**
* @test
@ -48,6 +49,7 @@ class CompanyGatewayApiTest extends TestCase
public function testCompanyGatewayEndPoints()
{
$data = [
'config' => 'random config',
'gateway_key' => '3b6621f970ab18887c4f6dca78d3f8bb',
@ -67,55 +69,31 @@ class CompanyGatewayApiTest extends TestCase
$response->assertStatus(200);
/* GET */
$response = $this->withHeaders([
'X-API-SECRET' => config('ninja.api_secret'),
'X-API-TOKEN' => $this->token
])->get("/api/v1/company_gateways/{$cg_id}");
$response->assertStatus(200);
/* GET CREATE */
$response = $this->withHeaders([
'X-API-SECRET' => config('ninja.api_secret'),
'X-API-TOKEN' => $this->token
])->get('/api/v1/company_gateways/create');
$response->assertStatus(200);
/* PUT */
$data = [
'config' => 'changed',
];
$response = $this->withHeaders([
'X-API-SECRET' => config('ninja.api_secret'),
'X-API-TOKEN' => $this->token
])->put("/api/v1/company_gateways/".$cg_id, $data);
$response->assertStatus(200);
$response = $this->withHeaders([
'X-API-SECRET' => config('ninja.api_secret'),
'X-API-TOKEN' => $this->token
])->delete("/api/v1/company_gateways/{$cg_id}", $data);
$response->assertStatus(200);
}
public function testCompanyGatewayFeesAndLimitsSuccess()
{
$fee = new FeesAndLimits;
$fee = (array)$fee;
@ -164,6 +142,7 @@ class CompanyGatewayApiTest extends TestCase
public function testCompanyGatewayFeesAndLimitsFails()
{
$fee_and_limit['bank_transfer'] = new FeesAndLimits;
$fee_and_limit['bank_transfer']->adjust_fee_percent = 10;
@ -186,6 +165,7 @@ class CompanyGatewayApiTest extends TestCase
public function testCompanyGatewayArrayBuilder()
{
$arr = [
'min_limit' => 1,
'max_limit' => 2