diff --git a/app/Datatables/ClientDatatable.php b/app/Datatables/ClientDatatable.php
index a9926fd43497..35b3ff48f991 100644
--- a/app/Datatables/ClientDatatable.php
+++ b/app/Datatables/ClientDatatable.php
@@ -2,8 +2,95 @@
namespace App\Datatables;
+use App\Models\Client;
+use App\Utils\Traits\UserSessionAttributes;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\DB;
+use Illuminate\Support\Facades\Log;
class ClientDatatable
{
-
+
+ /**
+ * ?sort=&page=1&per_page=20
+ */
+ public static function query(Request $request, int $company_id)
+ {
+ /**
+ *
+ * $sort_col is returned col|asc
+ * needs to be exploded
+ *
+ */
+ $sort_col = explode("|", $request->input('sort'));
+
+ return response()->json(self::find($company_id, $request->input('filter'))->orderBy($sort_col[0], $sort_col[1])->paginate($request->input('per_page')), 200);
+ }
+
+
+ private static function find(int $company_id, $filter, $userId = false)
+ {
+ $query = DB::table('clients')
+ ->join('companies', 'companies.id', '=', 'clients.company_id')
+ ->join('client_contacts', 'client_contacts.client_id', '=', 'clients.id')
+ ->where('clients.company_id', '=', $company_id)
+ ->where('client_contacts.is_primary', '=', true)
+ ->where('client_contacts.deleted_at', '=', null)
+ //->whereRaw('(clients.name != "" or contacts.first_name != "" or contacts.last_name != "" or contacts.email != "")') // filter out buy now invoices
+ ->select(
+ DB::raw('COALESCE(clients.currency_id, companies.currency_id) currency_id'),
+ DB::raw('COALESCE(clients.country_id, companies.country_id) country_id'),
+ DB::raw("CONCAT(COALESCE(client_contacts.first_name, ''), ' ', COALESCE(client_contacts.last_name, '')) contact"),
+ 'clients.id',
+ 'clients.name',
+ 'clients.private_notes',
+ 'client_contacts.first_name',
+ 'client_contacts.last_name',
+ 'clients.balance',
+ 'clients.last_login',
+ 'clients.created_at',
+ 'clients.created_at as client_created_at',
+ 'client_contacts.phone',
+ 'client_contacts.email',
+ 'clients.deleted_at',
+ 'clients.is_deleted',
+ 'clients.user_id',
+ 'clients.id_number'
+ );
+/*
+ if(Auth::user()->account->customFieldsOption('client1_filter')) {
+ $query->addSelect('clients.custom_value1');
+ }
+
+ if(Auth::user()->account->customFieldsOption('client2_filter')) {
+ $query->addSelect('clients.custom_value2');
+ }
+
+ $this->applyFilters($query, ENTITY_CLIENT);
+*/
+ if ($filter) {
+ $query->where(function ($query) use ($filter) {
+ $query->where('clients.name', 'like', '%'.$filter.'%')
+ ->orWhere('clients.id_number', 'like', '%'.$filter.'%')
+ ->orWhere('client_contacts.first_name', 'like', '%'.$filter.'%')
+ ->orWhere('client_contacts.last_name', 'like', '%'.$filter.'%')
+ ->orWhere('client_contacts.email', 'like', '%'.$filter.'%');
+ });
+/*
+ if(Auth::user()->account->customFieldsOption('client1_filter')) {
+ $query->orWhere('clients.custom_value1', 'like' , '%'.$filter.'%');
+ }
+
+ if(Auth::user()->account->customFieldsOption('client2_filter')) {
+ $query->orWhere('clients.custom_value2', 'like' , '%'.$filter.'%');
+ }
+*/
+ }
+
+ if ($userId) {
+ $query->where('clients.user_id', '=', $userId);
+ }
+
+ return $query;
+ }
}
\ No newline at end of file
diff --git a/app/Http/Controllers/ClientController.php b/app/Http/Controllers/ClientController.php
index bebd9bd149a5..795ee3348057 100644
--- a/app/Http/Controllers/ClientController.php
+++ b/app/Http/Controllers/ClientController.php
@@ -2,6 +2,7 @@
namespace App\Http\Controllers;
+use App\Datatables\ClientDatatable;
use App\Http\Requests\Client\EditClientRequest;
use App\Http\Requests\Client\StoreClientRequest;
use App\Http\Requests\Client\UpdateClientRequest;
@@ -31,13 +32,14 @@ class ClientController extends Controller
$this->clientRepo = $clientRepo;
}
- /**
- * Display a listing of the resource.
- *
- * @return \Illuminate\Http\Response
- */
- public function index(Builder $builder)
+ public function index()
{
+
+ if(request('page'))
+ return ClientDatatable::query(request(), $this->getCurrentCompanyId());
+
+ return view('client.vue_list');
+ /*
if (request()->ajax()) {
/*
@@ -49,7 +51,8 @@ class ClientController extends Controller
});
*/
- $clients = Client::query()->where('company_id', '=', $this->getCurrentCompanyId());
+/*
+ $clients = Client::query();
return DataTables::of($clients->get())
->addColumn('full_name', function ($clients) {
@@ -95,6 +98,7 @@ class ClientController extends Controller
$data['html'] = $html;
return view('client.list', $data);
+ */
}
/**
diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php
index a5e1805d0432..35c7743200fc 100644
--- a/app/Providers/RouteServiceProvider.php
+++ b/app/Providers/RouteServiceProvider.php
@@ -31,21 +31,9 @@ class RouteServiceProvider extends ServiceProvider
Route::bind('client', function ($value) {
$client = \App\Models\Client::where('id', $this->decodePrimaryKey($value))->first() ?? abort(404);
$client->load('contacts', 'primary_contact');
-
return $client;
-
});
-
- Route::bind('c', function ($value) {
- $client = \App\Models\Client::where('id', $this->decodePrimaryKey($value))->first() ?? abort(404);
- $client->load('contacts', 'primary_contact');
-
- return $client;
-
- });
-
-
Route::bind('invoice', function ($value) {
return \App\Models\Invoice::where('id', $this->decodePrimaryKey($value))->first() ?? abort(404);
});
diff --git a/composer.lock b/composer.lock
index b1894d6d5e81..8309a0ad5ad4 100644
--- a/composer.lock
+++ b/composer.lock
@@ -325,16 +325,16 @@
},
{
"name": "egulias/email-validator",
- "version": "2.1.6",
+ "version": "2.1.7",
"source": {
"type": "git",
"url": "https://github.com/egulias/EmailValidator.git",
- "reference": "0578b32b30b22de3e8664f797cf846fc9246f786"
+ "reference": "709f21f92707308cdf8f9bcfa1af4cb26586521e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/0578b32b30b22de3e8664f797cf846fc9246f786",
- "reference": "0578b32b30b22de3e8664f797cf846fc9246f786",
+ "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/709f21f92707308cdf8f9bcfa1af4cb26586521e",
+ "reference": "709f21f92707308cdf8f9bcfa1af4cb26586521e",
"shasum": ""
},
"require": {
@@ -378,7 +378,7 @@
"validation",
"validator"
],
- "time": "2018-09-25T20:47:26+00:00"
+ "time": "2018-12-04T22:38:24+00:00"
},
{
"name": "erusev/parsedown",
@@ -598,32 +598,33 @@
},
{
"name": "guzzlehttp/psr7",
- "version": "1.4.2",
+ "version": "1.5.2",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
- "reference": "f5b8a8512e2b58b0071a7280e39f14f72e05d87c"
+ "reference": "9f83dded91781a01c63574e387eaa769be769115"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/f5b8a8512e2b58b0071a7280e39f14f72e05d87c",
- "reference": "f5b8a8512e2b58b0071a7280e39f14f72e05d87c",
+ "url": "https://api.github.com/repos/guzzle/psr7/zipball/9f83dded91781a01c63574e387eaa769be769115",
+ "reference": "9f83dded91781a01c63574e387eaa769be769115",
"shasum": ""
},
"require": {
"php": ">=5.4.0",
- "psr/http-message": "~1.0"
+ "psr/http-message": "~1.0",
+ "ralouphie/getallheaders": "^2.0.5"
},
"provide": {
"psr/http-message-implementation": "1.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.0"
+ "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.4-dev"
+ "dev-master": "1.5-dev"
}
},
"autoload": {
@@ -653,13 +654,14 @@
"keywords": [
"http",
"message",
+ "psr-7",
"request",
"response",
"stream",
"uri",
"url"
],
- "time": "2017-03-20T17:10:46+00:00"
+ "time": "2018-12-04T20:46:45+00:00"
},
{
"name": "hashids/hashids",
@@ -771,33 +773,34 @@
},
{
"name": "jakub-onderka/php-console-highlighter",
- "version": "v0.3.2",
+ "version": "v0.4",
"source": {
"type": "git",
"url": "https://github.com/JakubOnderka/PHP-Console-Highlighter.git",
- "reference": "7daa75df45242c8d5b75a22c00a201e7954e4fb5"
+ "reference": "9f7a229a69d52506914b4bc61bfdb199d90c5547"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Highlighter/zipball/7daa75df45242c8d5b75a22c00a201e7954e4fb5",
- "reference": "7daa75df45242c8d5b75a22c00a201e7954e4fb5",
+ "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Highlighter/zipball/9f7a229a69d52506914b4bc61bfdb199d90c5547",
+ "reference": "9f7a229a69d52506914b4bc61bfdb199d90c5547",
"shasum": ""
},
"require": {
- "jakub-onderka/php-console-color": "~0.1",
- "php": ">=5.3.0"
+ "ext-tokenizer": "*",
+ "jakub-onderka/php-console-color": "~0.2",
+ "php": ">=5.4.0"
},
"require-dev": {
"jakub-onderka/php-code-style": "~1.0",
- "jakub-onderka/php-parallel-lint": "~0.5",
+ "jakub-onderka/php-parallel-lint": "~1.0",
"jakub-onderka/php-var-dump-check": "~0.1",
"phpunit/phpunit": "~4.0",
"squizlabs/php_codesniffer": "~1.5"
},
"type": "library",
"autoload": {
- "psr-0": {
- "JakubOnderka\\PhpConsoleHighlighter": "src/"
+ "psr-4": {
+ "JakubOnderka\\PhpConsoleHighlighter\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -811,7 +814,8 @@
"homepage": "http://www.acci.cz/"
}
],
- "time": "2015-04-20T18:58:01+00:00"
+ "description": "Highlight PHP code in terminal",
+ "time": "2018-09-29T18:48:56+00:00"
},
{
"name": "laracasts/presenter",
@@ -861,16 +865,16 @@
},
{
"name": "laravel/framework",
- "version": "v5.7.12",
+ "version": "v5.7.19",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
- "reference": "4cb5bf13e0cd50015f8e6a420a52fa8b90758eb1"
+ "reference": "5c1d1ec7e8563ea31826fd5eb3f6791acf01160c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/framework/zipball/4cb5bf13e0cd50015f8e6a420a52fa8b90758eb1",
- "reference": "4cb5bf13e0cd50015f8e6a420a52fa8b90758eb1",
+ "url": "https://api.github.com/repos/laravel/framework/zipball/5c1d1ec7e8563ea31826fd5eb3f6791acf01160c",
+ "reference": "5c1d1ec7e8563ea31826fd5eb3f6791acf01160c",
"shasum": ""
},
"require": {
@@ -879,6 +883,8 @@
"erusev/parsedown": "^1.7",
"ext-mbstring": "*",
"ext-openssl": "*",
+ "laravel/nexmo-notification-channel": "^1.0",
+ "laravel/slack-notification-channel": "^1.0",
"league/flysystem": "^1.0.8",
"monolog/monolog": "^1.12",
"nesbot/carbon": "^1.26.3",
@@ -936,6 +942,7 @@
"aws/aws-sdk-php": "^3.0",
"doctrine/dbal": "^2.6",
"filp/whoops": "^2.1.4",
+ "guzzlehttp/guzzle": "^6.3",
"league/flysystem-cached-adapter": "^1.0",
"mockery/mockery": "^1.0",
"moontoast/math": "^1.1",
@@ -1000,7 +1007,121 @@
"framework",
"laravel"
],
- "time": "2018-10-30T14:44:34+00:00"
+ "time": "2018-12-18T14:00:38+00:00"
+ },
+ {
+ "name": "laravel/nexmo-notification-channel",
+ "version": "v1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/laravel/nexmo-notification-channel.git",
+ "reference": "03edd42a55b306ff980c9950899d5a2b03260d48"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/laravel/nexmo-notification-channel/zipball/03edd42a55b306ff980c9950899d5a2b03260d48",
+ "reference": "03edd42a55b306ff980c9950899d5a2b03260d48",
+ "shasum": ""
+ },
+ "require": {
+ "nexmo/client": "^1.0",
+ "php": "^7.1.3"
+ },
+ "require-dev": {
+ "illuminate/notifications": "~5.7",
+ "mockery/mockery": "^1.0",
+ "phpunit/phpunit": "^7.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ },
+ "laravel": {
+ "providers": [
+ "Illuminate\\Notifications\\NexmoChannelServiceProvider"
+ ]
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Illuminate\\Notifications\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Taylor Otwell",
+ "email": "taylor@laravel.com"
+ }
+ ],
+ "description": "Nexmo Notification Channel for laravel.",
+ "keywords": [
+ "laravel",
+ "nexmo",
+ "notifications"
+ ],
+ "time": "2018-12-04T12:57:08+00:00"
+ },
+ {
+ "name": "laravel/slack-notification-channel",
+ "version": "v1.0.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/laravel/slack-notification-channel.git",
+ "reference": "6e164293b754a95f246faf50ab2bbea3e4923cc9"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/laravel/slack-notification-channel/zipball/6e164293b754a95f246faf50ab2bbea3e4923cc9",
+ "reference": "6e164293b754a95f246faf50ab2bbea3e4923cc9",
+ "shasum": ""
+ },
+ "require": {
+ "guzzlehttp/guzzle": "^6.0",
+ "php": "^7.1.3"
+ },
+ "require-dev": {
+ "illuminate/notifications": "~5.7",
+ "mockery/mockery": "^1.0",
+ "phpunit/phpunit": "^7.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ },
+ "laravel": {
+ "providers": [
+ "Illuminate\\Notifications\\SlackChannelServiceProvider"
+ ]
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Illuminate\\Notifications\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Taylor Otwell",
+ "email": "taylor@laravel.com"
+ }
+ ],
+ "description": "Slack Notification Channel for laravel.",
+ "keywords": [
+ "laravel",
+ "notifications",
+ "slack"
+ ],
+ "time": "2018-12-12T13:12:06+00:00"
},
{
"name": "laravel/socialite",
@@ -1197,17 +1318,75 @@
"time": "2018-09-05T18:32:53+00:00"
},
{
- "name": "league/flysystem",
- "version": "1.0.48",
+ "name": "lcobucci/jwt",
+ "version": "3.2.5",
"source": {
"type": "git",
- "url": "https://github.com/thephpleague/flysystem.git",
- "reference": "a6ded5b2f6055e2db97b4b859fdfca2b952b78aa"
+ "url": "https://github.com/lcobucci/jwt.git",
+ "reference": "82be04b4753f8b7693b62852b7eab30f97524f9b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/a6ded5b2f6055e2db97b4b859fdfca2b952b78aa",
- "reference": "a6ded5b2f6055e2db97b4b859fdfca2b952b78aa",
+ "url": "https://api.github.com/repos/lcobucci/jwt/zipball/82be04b4753f8b7693b62852b7eab30f97524f9b",
+ "reference": "82be04b4753f8b7693b62852b7eab30f97524f9b",
+ "shasum": ""
+ },
+ "require": {
+ "ext-openssl": "*",
+ "php": ">=5.5"
+ },
+ "require-dev": {
+ "mdanter/ecc": "~0.3.1",
+ "mikey179/vfsstream": "~1.5",
+ "phpmd/phpmd": "~2.2",
+ "phpunit/php-invoker": "~1.1",
+ "phpunit/phpunit": "~4.5",
+ "squizlabs/php_codesniffer": "~2.3"
+ },
+ "suggest": {
+ "mdanter/ecc": "Required to use Elliptic Curves based algorithms."
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.1-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Lcobucci\\JWT\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Luís Otávio Cobucci Oblonczyk",
+ "email": "lcobucci@gmail.com",
+ "role": "developer"
+ }
+ ],
+ "description": "A simple library to work with JSON Web Token and JSON Web Signature",
+ "keywords": [
+ "JWS",
+ "jwt"
+ ],
+ "time": "2018-11-11T12:22:26+00:00"
+ },
+ {
+ "name": "league/flysystem",
+ "version": "1.0.49",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/thephpleague/flysystem.git",
+ "reference": "a63cc83d8a931b271be45148fa39ba7156782ffd"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/a63cc83d8a931b271be45148fa39ba7156782ffd",
+ "reference": "a63cc83d8a931b271be45148fa39ba7156782ffd",
"shasum": ""
},
"require": {
@@ -1278,7 +1457,7 @@
"sftp",
"storage"
],
- "time": "2018-10-15T13:53:10+00:00"
+ "time": "2018-11-23T23:41:29+00:00"
},
{
"name": "league/fractal",
@@ -1570,16 +1749,16 @@
},
{
"name": "monolog/monolog",
- "version": "1.23.0",
+ "version": "1.24.0",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/monolog.git",
- "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4"
+ "reference": "bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/fd8c787753b3a2ad11bc60c063cff1358a32a3b4",
- "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4",
+ "url": "https://api.github.com/repos/Seldaek/monolog/zipball/bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266",
+ "reference": "bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266",
"shasum": ""
},
"require": {
@@ -1644,20 +1823,20 @@
"logging",
"psr-3"
],
- "time": "2017-06-19T01:22:40+00:00"
+ "time": "2018-11-05T09:00:11+00:00"
},
{
"name": "nesbot/carbon",
- "version": "1.34.0",
+ "version": "1.36.1",
"source": {
"type": "git",
"url": "https://github.com/briannesbitt/Carbon.git",
- "reference": "1dbd3cb01c5645f3e7deda7aa46ef780d95fcc33"
+ "reference": "63da8cdf89d7a5efe43aabc794365f6e7b7b8983"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/1dbd3cb01c5645f3e7deda7aa46ef780d95fcc33",
- "reference": "1dbd3cb01c5645f3e7deda7aa46ef780d95fcc33",
+ "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/63da8cdf89d7a5efe43aabc794365f6e7b7b8983",
+ "reference": "63da8cdf89d7a5efe43aabc794365f6e7b7b8983",
"shasum": ""
},
"require": {
@@ -1665,9 +1844,12 @@
"symfony/translation": "~2.6 || ~3.0 || ~4.0"
},
"require-dev": {
- "friendsofphp/php-cs-fixer": "~2",
"phpunit/phpunit": "^4.8.35 || ^5.7"
},
+ "suggest": {
+ "friendsofphp/php-cs-fixer": "Needed for the `composer phpcs` command. Allow to automatically fix code style.",
+ "phpstan/phpstan": "Needed for the `composer phpstan` command. Allow to detect potential errors."
+ },
"type": "library",
"extra": {
"laravel": {
@@ -1699,7 +1881,55 @@
"datetime",
"time"
],
- "time": "2018-09-20T19:36:25+00:00"
+ "time": "2018-11-22T18:23:02+00:00"
+ },
+ {
+ "name": "nexmo/client",
+ "version": "1.6.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/Nexmo/nexmo-php.git",
+ "reference": "01809cc1e17a5af275913c49bb5d444eb6cc06d4"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/Nexmo/nexmo-php/zipball/01809cc1e17a5af275913c49bb5d444eb6cc06d4",
+ "reference": "01809cc1e17a5af275913c49bb5d444eb6cc06d4",
+ "shasum": ""
+ },
+ "require": {
+ "lcobucci/jwt": "^3.2",
+ "php": ">=5.6",
+ "php-http/client-implementation": "^1.0",
+ "php-http/guzzle6-adapter": "^1.0",
+ "zendframework/zend-diactoros": "^1.3"
+ },
+ "require-dev": {
+ "estahn/phpunit-json-assertions": "^1.0.0",
+ "php-http/mock-client": "^0.3.0",
+ "phpunit/phpunit": "^5.7",
+ "squizlabs/php_codesniffer": "^3.1"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Nexmo\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Tim Lytle",
+ "email": "tim@nexmo.com",
+ "homepage": "http://twitter.com/tjlytle",
+ "role": "Developer"
+ }
+ ],
+ "description": "PHP Client for using Nexmo's API.",
+ "time": "2018-12-17T10:47:50+00:00"
},
{
"name": "nikic/php-parser",
@@ -1824,16 +2054,16 @@
},
{
"name": "opis/closure",
- "version": "3.1.1",
+ "version": "3.1.2",
"source": {
"type": "git",
"url": "https://github.com/opis/closure.git",
- "reference": "d3209e46ad6c69a969b705df0738fd0dbe26ef9e"
+ "reference": "de00c69a2328d3ee5baa71fc584dc643222a574c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/opis/closure/zipball/d3209e46ad6c69a969b705df0738fd0dbe26ef9e",
- "reference": "d3209e46ad6c69a969b705df0738fd0dbe26ef9e",
+ "url": "https://api.github.com/repos/opis/closure/zipball/de00c69a2328d3ee5baa71fc584dc643222a574c",
+ "reference": "de00c69a2328d3ee5baa71fc584dc643222a574c",
"shasum": ""
},
"require": {
@@ -1841,7 +2071,7 @@
},
"require-dev": {
"jeremeamia/superclosure": "^2.0",
- "phpunit/phpunit": "^4.0"
+ "phpunit/phpunit": "^4.0|^5.0|^6.0|^7.0"
},
"type": "library",
"extra": {
@@ -1881,7 +2111,7 @@
"serialization",
"serialize"
],
- "time": "2018-10-02T13:36:53+00:00"
+ "time": "2018-12-16T21:48:23+00:00"
},
{
"name": "paragonie/random_compat",
@@ -1929,17 +2159,183 @@
"time": "2018-07-02T15:55:56+00:00"
},
{
- "name": "phpoffice/phpspreadsheet",
- "version": "1.5.0",
+ "name": "php-http/guzzle6-adapter",
+ "version": "v1.1.1",
"source": {
"type": "git",
- "url": "https://github.com/PHPOffice/PhpSpreadsheet.git",
- "reference": "2dfd06c59825914a1a325f2a2ed13634b9d8c411"
+ "url": "https://github.com/php-http/guzzle6-adapter.git",
+ "reference": "a56941f9dc6110409cfcddc91546ee97039277ab"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/2dfd06c59825914a1a325f2a2ed13634b9d8c411",
- "reference": "2dfd06c59825914a1a325f2a2ed13634b9d8c411",
+ "url": "https://api.github.com/repos/php-http/guzzle6-adapter/zipball/a56941f9dc6110409cfcddc91546ee97039277ab",
+ "reference": "a56941f9dc6110409cfcddc91546ee97039277ab",
+ "shasum": ""
+ },
+ "require": {
+ "guzzlehttp/guzzle": "^6.0",
+ "php": ">=5.5.0",
+ "php-http/httplug": "^1.0"
+ },
+ "provide": {
+ "php-http/async-client-implementation": "1.0",
+ "php-http/client-implementation": "1.0"
+ },
+ "require-dev": {
+ "ext-curl": "*",
+ "php-http/adapter-integration-tests": "^0.4"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.2-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Http\\Adapter\\Guzzle6\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Márk Sági-Kazár",
+ "email": "mark.sagikazar@gmail.com"
+ },
+ {
+ "name": "David de Boer",
+ "email": "david@ddeboer.nl"
+ }
+ ],
+ "description": "Guzzle 6 HTTP Adapter",
+ "homepage": "http://httplug.io",
+ "keywords": [
+ "Guzzle",
+ "http"
+ ],
+ "time": "2016-05-10T06:13:32+00:00"
+ },
+ {
+ "name": "php-http/httplug",
+ "version": "v1.1.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-http/httplug.git",
+ "reference": "1c6381726c18579c4ca2ef1ec1498fdae8bdf018"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-http/httplug/zipball/1c6381726c18579c4ca2ef1ec1498fdae8bdf018",
+ "reference": "1c6381726c18579c4ca2ef1ec1498fdae8bdf018",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.4",
+ "php-http/promise": "^1.0",
+ "psr/http-message": "^1.0"
+ },
+ "require-dev": {
+ "henrikbjorn/phpspec-code-coverage": "^1.0",
+ "phpspec/phpspec": "^2.4"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.1-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Http\\Client\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Eric GELOEN",
+ "email": "geloen.eric@gmail.com"
+ },
+ {
+ "name": "Márk Sági-Kazár",
+ "email": "mark.sagikazar@gmail.com"
+ }
+ ],
+ "description": "HTTPlug, the HTTP client abstraction for PHP",
+ "homepage": "http://httplug.io",
+ "keywords": [
+ "client",
+ "http"
+ ],
+ "time": "2016-08-31T08:30:17+00:00"
+ },
+ {
+ "name": "php-http/promise",
+ "version": "v1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-http/promise.git",
+ "reference": "dc494cdc9d7160b9a09bd5573272195242ce7980"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-http/promise/zipball/dc494cdc9d7160b9a09bd5573272195242ce7980",
+ "reference": "dc494cdc9d7160b9a09bd5573272195242ce7980",
+ "shasum": ""
+ },
+ "require-dev": {
+ "henrikbjorn/phpspec-code-coverage": "^1.0",
+ "phpspec/phpspec": "^2.4"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.1-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Http\\Promise\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Márk Sági-Kazár",
+ "email": "mark.sagikazar@gmail.com"
+ },
+ {
+ "name": "Joel Wurtz",
+ "email": "joel.wurtz@gmail.com"
+ }
+ ],
+ "description": "Promise used for asynchronous HTTP requests",
+ "homepage": "http://httplug.io",
+ "keywords": [
+ "promise"
+ ],
+ "time": "2016-01-26T13:27:02+00:00"
+ },
+ {
+ "name": "phpoffice/phpspreadsheet",
+ "version": "1.5.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/PHPOffice/PhpSpreadsheet.git",
+ "reference": "cd60531c44f580fbdfbd55dfb935af791f09be5d"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/cd60531c44f580fbdfbd55dfb935af791f09be5d",
+ "reference": "cd60531c44f580fbdfbd55dfb935af791f09be5d",
"shasum": ""
},
"require": {
@@ -1964,6 +2360,7 @@
"friendsofphp/php-cs-fixer": "@stable",
"jpgraph/jpgraph": "^4.0",
"mpdf/mpdf": "^7.0.0",
+ "phpcompatibility/php-compatibility": "^8.0",
"phpunit/phpunit": "^5.7",
"squizlabs/php_codesniffer": "^3.3",
"tecnickcom/tcpdf": "^6.2"
@@ -1985,20 +2382,23 @@
"LGPL-2.1-or-later"
],
"authors": [
- {
- "name": "Maarten Balliauw",
- "homepage": "http://blog.maartenballiauw.be"
- },
{
"name": "Erik Tilt"
},
{
- "name": "Franck Lefevre",
- "homepage": "http://rootslabs.net"
+ "name": "Adrien Crivelli"
+ },
+ {
+ "name": "Maarten Balliauw",
+ "homepage": "https://blog.maartenballiauw.be"
},
{
"name": "Mark Baker",
- "homepage": "http://markbakeruk.net"
+ "homepage": "https://markbakeruk.net"
+ },
+ {
+ "name": "Franck Lefevre",
+ "homepage": "https://rootslabs.net"
}
],
"description": "PHPSpreadsheet - Read, Create and Write Spreadsheet documents in PHP - Spreadsheet engine",
@@ -2013,7 +2413,7 @@
"xls",
"xlsx"
],
- "time": "2018-10-21T10:04:54+00:00"
+ "time": "2018-11-25T17:40:15+00:00"
},
{
"name": "predis/predis",
@@ -2166,16 +2566,16 @@
},
{
"name": "psr/log",
- "version": "1.0.2",
+ "version": "1.1.0",
"source": {
"type": "git",
"url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
+ "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
+ "url": "https://api.github.com/repos/php-fig/log/zipball/6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd",
+ "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd",
"shasum": ""
},
"require": {
@@ -2209,7 +2609,7 @@
"psr",
"psr-3"
],
- "time": "2016-10-10T12:19:37+00:00"
+ "time": "2018-11-20T15:27:04+00:00"
},
{
"name": "psr/simple-cache",
@@ -2333,6 +2733,46 @@
],
"time": "2018-10-13T15:16:03+00:00"
},
+ {
+ "name": "ralouphie/getallheaders",
+ "version": "2.0.5",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/ralouphie/getallheaders.git",
+ "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/5601c8a83fbba7ef674a7369456d12f1e0d0eafa",
+ "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "~3.7.0",
+ "satooshi/php-coveralls": ">=1.0"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "src/getallheaders.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Ralph Khattar",
+ "email": "ralph.khattar@gmail.com"
+ }
+ ],
+ "description": "A polyfill for getallheaders.",
+ "time": "2016-02-11T07:05:27+00:00"
+ },
{
"name": "ramsey/uuid",
"version": "3.8.0",
@@ -2544,20 +2984,21 @@
},
{
"name": "symfony/console",
- "version": "v4.1.7",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "432122af37d8cd52fba1b294b11976e0d20df595"
+ "reference": "4dff24e5d01e713818805c1862d2e3f901ee7dd0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/432122af37d8cd52fba1b294b11976e0d20df595",
- "reference": "432122af37d8cd52fba1b294b11976e0d20df595",
+ "url": "https://api.github.com/repos/symfony/console/zipball/4dff24e5d01e713818805c1862d2e3f901ee7dd0",
+ "reference": "4dff24e5d01e713818805c1862d2e3f901ee7dd0",
"shasum": ""
},
"require": {
"php": "^7.1.3",
+ "symfony/contracts": "^1.0",
"symfony/polyfill-mbstring": "~1.0"
},
"conflict": {
@@ -2581,7 +3022,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -2608,20 +3049,88 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
- "time": "2018-10-31T09:30:44+00:00"
+ "time": "2018-11-27T07:40:44+00:00"
},
{
- "name": "symfony/css-selector",
- "version": "v4.1.7",
+ "name": "symfony/contracts",
+ "version": "v1.0.2",
"source": {
"type": "git",
- "url": "https://github.com/symfony/css-selector.git",
- "reference": "d67de79a70a27d93c92c47f37ece958bf8de4d8a"
+ "url": "https://github.com/symfony/contracts.git",
+ "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/d67de79a70a27d93c92c47f37ece958bf8de4d8a",
- "reference": "d67de79a70a27d93c92c47f37ece958bf8de4d8a",
+ "url": "https://api.github.com/repos/symfony/contracts/zipball/1aa7ab2429c3d594dd70689604b5cf7421254cdf",
+ "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.1.3"
+ },
+ "require-dev": {
+ "psr/cache": "^1.0",
+ "psr/container": "^1.0"
+ },
+ "suggest": {
+ "psr/cache": "When using the Cache contracts",
+ "psr/container": "When using the Service contracts",
+ "symfony/cache-contracts-implementation": "",
+ "symfony/service-contracts-implementation": "",
+ "symfony/translation-contracts-implementation": ""
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Contracts\\": ""
+ },
+ "exclude-from-classmap": [
+ "**/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "A set of abstractions extracted out of the Symfony components",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "abstractions",
+ "contracts",
+ "decoupling",
+ "interfaces",
+ "interoperability",
+ "standards"
+ ],
+ "time": "2018-12-05T08:06:11+00:00"
+ },
+ {
+ "name": "symfony/css-selector",
+ "version": "v4.2.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/css-selector.git",
+ "reference": "aa9fa526ba1b2ec087ffdfb32753803d999fcfcd"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/css-selector/zipball/aa9fa526ba1b2ec087ffdfb32753803d999fcfcd",
+ "reference": "aa9fa526ba1b2ec087ffdfb32753803d999fcfcd",
"shasum": ""
},
"require": {
@@ -2630,7 +3139,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -2661,20 +3170,20 @@
],
"description": "Symfony CssSelector Component",
"homepage": "https://symfony.com",
- "time": "2018-10-02T16:36:10+00:00"
+ "time": "2018-11-11T19:52:12+00:00"
},
{
"name": "symfony/debug",
- "version": "v4.1.7",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/debug.git",
- "reference": "19090917b848a799cbae4800abf740fe4eb71c1d"
+ "reference": "e0a2b92ee0b5b934f973d90c2f58e18af109d276"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/19090917b848a799cbae4800abf740fe4eb71c1d",
- "reference": "19090917b848a799cbae4800abf740fe4eb71c1d",
+ "url": "https://api.github.com/repos/symfony/debug/zipball/e0a2b92ee0b5b934f973d90c2f58e18af109d276",
+ "reference": "e0a2b92ee0b5b934f973d90c2f58e18af109d276",
"shasum": ""
},
"require": {
@@ -2690,7 +3199,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -2717,24 +3226,25 @@
],
"description": "Symfony Debug Component",
"homepage": "https://symfony.com",
- "time": "2018-10-31T09:09:42+00:00"
+ "time": "2018-11-28T18:24:18+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v4.1.7",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "552541dad078c85d9414b09c041ede488b456cd5"
+ "reference": "921f49c3158a276d27c0d770a5a347a3b718b328"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/552541dad078c85d9414b09c041ede488b456cd5",
- "reference": "552541dad078c85d9414b09c041ede488b456cd5",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/921f49c3158a276d27c0d770a5a347a3b718b328",
+ "reference": "921f49c3158a276d27c0d770a5a347a3b718b328",
"shasum": ""
},
"require": {
- "php": "^7.1.3"
+ "php": "^7.1.3",
+ "symfony/contracts": "^1.0"
},
"conflict": {
"symfony/dependency-injection": "<3.4"
@@ -2753,7 +3263,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -2780,20 +3290,20 @@
],
"description": "Symfony EventDispatcher Component",
"homepage": "https://symfony.com",
- "time": "2018-10-10T13:52:42+00:00"
+ "time": "2018-12-01T08:52:38+00:00"
},
{
"name": "symfony/finder",
- "version": "v4.1.7",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "1f17195b44543017a9c9b2d437c670627e96ad06"
+ "reference": "e53d477d7b5c4982d0e1bfd2298dbee63d01441d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/1f17195b44543017a9c9b2d437c670627e96ad06",
- "reference": "1f17195b44543017a9c9b2d437c670627e96ad06",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/e53d477d7b5c4982d0e1bfd2298dbee63d01441d",
+ "reference": "e53d477d7b5c4982d0e1bfd2298dbee63d01441d",
"shasum": ""
},
"require": {
@@ -2802,7 +3312,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -2829,20 +3339,20 @@
],
"description": "Symfony Finder Component",
"homepage": "https://symfony.com",
- "time": "2018-10-03T08:47:56+00:00"
+ "time": "2018-11-11T19:52:12+00:00"
},
{
"name": "symfony/http-foundation",
- "version": "v4.1.7",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
- "reference": "82d494c1492b0dd24bbc5c2d963fb02eb44491af"
+ "reference": "1b31f3017fadd8cb05cf2c8aebdbf3b12a943851"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/82d494c1492b0dd24bbc5c2d963fb02eb44491af",
- "reference": "82d494c1492b0dd24bbc5c2d963fb02eb44491af",
+ "url": "https://api.github.com/repos/symfony/http-foundation/zipball/1b31f3017fadd8cb05cf2c8aebdbf3b12a943851",
+ "reference": "1b31f3017fadd8cb05cf2c8aebdbf3b12a943851",
"shasum": ""
},
"require": {
@@ -2856,7 +3366,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -2883,25 +3393,26 @@
],
"description": "Symfony HttpFoundation Component",
"homepage": "https://symfony.com",
- "time": "2018-10-31T09:09:42+00:00"
+ "time": "2018-11-26T10:55:26+00:00"
},
{
"name": "symfony/http-kernel",
- "version": "v4.1.7",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "958be64ab13b65172ad646ef5ae20364c2305fae"
+ "reference": "b39ceffc0388232c309cbde3a7c3685f2ec0a624"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/958be64ab13b65172ad646ef5ae20364c2305fae",
- "reference": "958be64ab13b65172ad646ef5ae20364c2305fae",
+ "url": "https://api.github.com/repos/symfony/http-kernel/zipball/b39ceffc0388232c309cbde3a7c3685f2ec0a624",
+ "reference": "b39ceffc0388232c309cbde3a7c3685f2ec0a624",
"shasum": ""
},
"require": {
"php": "^7.1.3",
"psr/log": "~1.0",
+ "symfony/contracts": "^1.0.2",
"symfony/debug": "~3.4|~4.0",
"symfony/event-dispatcher": "~4.1",
"symfony/http-foundation": "^4.1.1",
@@ -2909,7 +3420,8 @@
},
"conflict": {
"symfony/config": "<3.4",
- "symfony/dependency-injection": "<4.1",
+ "symfony/dependency-injection": "<4.2",
+ "symfony/translation": "<4.2",
"symfony/var-dumper": "<4.1.1",
"twig/twig": "<1.34|<2.4,>=2"
},
@@ -2922,7 +3434,7 @@
"symfony/config": "~3.4|~4.0",
"symfony/console": "~3.4|~4.0",
"symfony/css-selector": "~3.4|~4.0",
- "symfony/dependency-injection": "^4.1",
+ "symfony/dependency-injection": "^4.2",
"symfony/dom-crawler": "~3.4|~4.0",
"symfony/expression-language": "~3.4|~4.0",
"symfony/finder": "~3.4|~4.0",
@@ -2930,7 +3442,7 @@
"symfony/routing": "~3.4|~4.0",
"symfony/stopwatch": "~3.4|~4.0",
"symfony/templating": "~3.4|~4.0",
- "symfony/translation": "~3.4|~4.0",
+ "symfony/translation": "~4.2",
"symfony/var-dumper": "^4.1.1"
},
"suggest": {
@@ -2943,7 +3455,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -2970,7 +3482,7 @@
],
"description": "Symfony HttpKernel Component",
"homepage": "https://symfony.com",
- "time": "2018-11-03T11:11:23+00:00"
+ "time": "2018-12-06T17:39:52+00:00"
},
{
"name": "symfony/polyfill-ctype",
@@ -3146,16 +3658,16 @@
},
{
"name": "symfony/process",
- "version": "v4.1.7",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "3e83acef94d979b1de946599ef86b3a352abcdc9"
+ "reference": "2b341009ccec76837a7f46f59641b431e4d4c2b0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/3e83acef94d979b1de946599ef86b3a352abcdc9",
- "reference": "3e83acef94d979b1de946599ef86b3a352abcdc9",
+ "url": "https://api.github.com/repos/symfony/process/zipball/2b341009ccec76837a7f46f59641b431e4d4c2b0",
+ "reference": "2b341009ccec76837a7f46f59641b431e4d4c2b0",
"shasum": ""
},
"require": {
@@ -3164,7 +3676,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -3191,34 +3703,34 @@
],
"description": "Symfony Process Component",
"homepage": "https://symfony.com",
- "time": "2018-10-14T20:48:13+00:00"
+ "time": "2018-11-20T16:22:05+00:00"
},
{
"name": "symfony/routing",
- "version": "v4.1.7",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
- "reference": "d4a3c14cfbe6b9c05a1d6e948654022d4d1ad3fd"
+ "reference": "649460207e77da6c545326c7f53618d23ad2c866"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/d4a3c14cfbe6b9c05a1d6e948654022d4d1ad3fd",
- "reference": "d4a3c14cfbe6b9c05a1d6e948654022d4d1ad3fd",
+ "url": "https://api.github.com/repos/symfony/routing/zipball/649460207e77da6c545326c7f53618d23ad2c866",
+ "reference": "649460207e77da6c545326c7f53618d23ad2c866",
"shasum": ""
},
"require": {
"php": "^7.1.3"
},
"conflict": {
- "symfony/config": "<3.4",
+ "symfony/config": "<4.2",
"symfony/dependency-injection": "<3.4",
"symfony/yaml": "<3.4"
},
"require-dev": {
"doctrine/annotations": "~1.0",
"psr/log": "~1.0",
- "symfony/config": "~3.4|~4.0",
+ "symfony/config": "~4.2",
"symfony/dependency-injection": "~3.4|~4.0",
"symfony/expression-language": "~3.4|~4.0",
"symfony/http-foundation": "~3.4|~4.0",
@@ -3235,7 +3747,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -3268,24 +3780,25 @@
"uri",
"url"
],
- "time": "2018-10-28T18:38:52+00:00"
+ "time": "2018-12-03T22:08:12+00:00"
},
{
"name": "symfony/translation",
- "version": "v4.1.7",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation.git",
- "reference": "aa04dc1c75b7d3da7bd7003104cd0cfc5dff635c"
+ "reference": "c0e2191e9bed845946ab3d99767513b56ca7dcd6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation/zipball/aa04dc1c75b7d3da7bd7003104cd0cfc5dff635c",
- "reference": "aa04dc1c75b7d3da7bd7003104cd0cfc5dff635c",
+ "url": "https://api.github.com/repos/symfony/translation/zipball/c0e2191e9bed845946ab3d99767513b56ca7dcd6",
+ "reference": "c0e2191e9bed845946ab3d99767513b56ca7dcd6",
"shasum": ""
},
"require": {
"php": "^7.1.3",
+ "symfony/contracts": "^1.0.2",
"symfony/polyfill-mbstring": "~1.0"
},
"conflict": {
@@ -3293,6 +3806,9 @@
"symfony/dependency-injection": "<3.4",
"symfony/yaml": "<3.4"
},
+ "provide": {
+ "symfony/translation-contracts-implementation": "1.0"
+ },
"require-dev": {
"psr/log": "~1.0",
"symfony/config": "~3.4|~4.0",
@@ -3310,7 +3826,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -3337,20 +3853,20 @@
],
"description": "Symfony Translation Component",
"homepage": "https://symfony.com",
- "time": "2018-10-28T18:38:52+00:00"
+ "time": "2018-12-06T10:45:32+00:00"
},
{
"name": "symfony/var-dumper",
- "version": "v4.1.7",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "60319b45653580b0cdacca499344577d87732f16"
+ "reference": "db61258540350725f4beb6b84006e32398acd120"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/60319b45653580b0cdacca499344577d87732f16",
- "reference": "60319b45653580b0cdacca499344577d87732f16",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/db61258540350725f4beb6b84006e32398acd120",
+ "reference": "db61258540350725f4beb6b84006e32398acd120",
"shasum": ""
},
"require": {
@@ -3378,7 +3894,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -3412,7 +3928,7 @@
"debug",
"dump"
],
- "time": "2018-10-02T16:36:10+00:00"
+ "time": "2018-11-25T12:50:42+00:00"
},
{
"name": "tijsverkoyen/css-to-inline-styles",
@@ -3599,16 +4115,16 @@
},
{
"name": "yajra/laravel-datatables",
- "version": "v1.2.0",
+ "version": "v1.3.0",
"source": {
"type": "git",
"url": "https://github.com/yajra/datatables.git",
- "reference": "060c1ef2dc8b3e688852698ca263e6130a2239e5"
+ "reference": "78436010aebd6cb7de9111deae0aada789ea4ad5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/yajra/datatables/zipball/060c1ef2dc8b3e688852698ca263e6130a2239e5",
- "reference": "060c1ef2dc8b3e688852698ca263e6130a2239e5",
+ "url": "https://api.github.com/repos/yajra/datatables/zipball/78436010aebd6cb7de9111deae0aada789ea4ad5",
+ "reference": "78436010aebd6cb7de9111deae0aada789ea4ad5",
"shasum": ""
},
"require": {
@@ -3616,7 +4132,7 @@
"yajra/laravel-datatables-buttons": "3.*|4.*",
"yajra/laravel-datatables-editor": "1.*",
"yajra/laravel-datatables-fractal": "1.*",
- "yajra/laravel-datatables-html": "3.*",
+ "yajra/laravel-datatables-html": "3.*|4.*",
"yajra/laravel-datatables-oracle": "8.*"
},
"type": "library",
@@ -3641,27 +4157,27 @@
"jquery",
"laravel"
],
- "time": "2018-11-02T03:53:13+00:00"
+ "time": "2018-11-14T08:34:21+00:00"
},
{
"name": "yajra/laravel-datatables-buttons",
- "version": "v4.4.0",
+ "version": "v4.5.0",
"source": {
"type": "git",
"url": "https://github.com/yajra/laravel-datatables-buttons.git",
- "reference": "649f0f6c02b391e349cff3f186aa88b61fb0cdd0"
+ "reference": "95933d631df42affbaea6bc85fd0ebf5e642889a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/yajra/laravel-datatables-buttons/zipball/649f0f6c02b391e349cff3f186aa88b61fb0cdd0",
- "reference": "649f0f6c02b391e349cff3f186aa88b61fb0cdd0",
+ "url": "https://api.github.com/repos/yajra/laravel-datatables-buttons/zipball/95933d631df42affbaea6bc85fd0ebf5e642889a",
+ "reference": "95933d631df42affbaea6bc85fd0ebf5e642889a",
"shasum": ""
},
"require": {
"illuminate/console": "^5.5",
"maatwebsite/excel": "^3.0",
"php": ">=7.0",
- "yajra/laravel-datatables-html": "3.*",
+ "yajra/laravel-datatables-html": "3.*|4.*",
"yajra/laravel-datatables-oracle": "8.*"
},
"require-dev": {
@@ -3705,7 +4221,7 @@
"jquery",
"laravel"
],
- "time": "2018-10-06T02:23:34+00:00"
+ "time": "2018-11-14T08:48:02+00:00"
},
{
"name": "yajra/laravel-datatables-editor",
@@ -3771,16 +4287,16 @@
},
{
"name": "yajra/laravel-datatables-fractal",
- "version": "v1.2.1",
+ "version": "v1.3.0",
"source": {
"type": "git",
"url": "https://github.com/yajra/laravel-datatables-fractal.git",
- "reference": "23804250ce32ddba216295ce47f713f551dba45c"
+ "reference": "79d9e2c6c358b65b18ca392a1063c1a4631b4700"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/yajra/laravel-datatables-fractal/zipball/23804250ce32ddba216295ce47f713f551dba45c",
- "reference": "23804250ce32ddba216295ce47f713f551dba45c",
+ "url": "https://api.github.com/repos/yajra/laravel-datatables-fractal/zipball/79d9e2c6c358b65b18ca392a1063c1a4631b4700",
+ "reference": "79d9e2c6c358b65b18ca392a1063c1a4631b4700",
"shasum": ""
},
"require": {
@@ -3825,20 +4341,20 @@
"fractal",
"laravel"
],
- "time": "2018-06-12T06:23:13+00:00"
+ "time": "2018-11-15T01:09:11+00:00"
},
{
"name": "yajra/laravel-datatables-html",
- "version": "v3.12.7",
+ "version": "v3.13.0",
"source": {
"type": "git",
"url": "https://github.com/yajra/laravel-datatables-html.git",
- "reference": "50be05aeb281fb5009a27d3aecb6df2633095e68"
+ "reference": "1c3c2ef2e88f965ad62fe21b98daac99f77151b2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/yajra/laravel-datatables-html/zipball/50be05aeb281fb5009a27d3aecb6df2633095e68",
- "reference": "50be05aeb281fb5009a27d3aecb6df2633095e68",
+ "url": "https://api.github.com/repos/yajra/laravel-datatables-html/zipball/1c3c2ef2e88f965ad62fe21b98daac99f77151b2",
+ "reference": "1c3c2ef2e88f965ad62fe21b98daac99f77151b2",
"shasum": ""
},
"require": {
@@ -3884,20 +4400,20 @@
"jquery",
"laravel"
],
- "time": "2018-11-03T04:21:45+00:00"
+ "time": "2018-11-10T05:15:10+00:00"
},
{
"name": "yajra/laravel-datatables-oracle",
- "version": "v8.9.2",
+ "version": "v8.13.1",
"source": {
"type": "git",
"url": "https://github.com/yajra/laravel-datatables.git",
- "reference": "3b084b9b7b4aac46f0bfc2d71b9b3a67d794f4e9"
+ "reference": "3d7f05687069d90ca5dc3e75bf269e13eecccc76"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/yajra/laravel-datatables/zipball/3b084b9b7b4aac46f0bfc2d71b9b3a67d794f4e9",
- "reference": "3b084b9b7b4aac46f0bfc2d71b9b3a67d794f4e9",
+ "url": "https://api.github.com/repos/yajra/laravel-datatables/zipball/3d7f05687069d90ca5dc3e75bf269e13eecccc76",
+ "reference": "3d7f05687069d90ca5dc3e75bf269e13eecccc76",
"shasum": ""
},
"require": {
@@ -3955,7 +4471,71 @@
"jquery",
"laravel"
],
- "time": "2018-10-30T14:23:18+00:00"
+ "time": "2018-11-23T08:05:22+00:00"
+ },
+ {
+ "name": "zendframework/zend-diactoros",
+ "version": "1.8.6",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/zendframework/zend-diactoros.git",
+ "reference": "20da13beba0dde8fb648be3cc19765732790f46e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/20da13beba0dde8fb648be3cc19765732790f46e",
+ "reference": "20da13beba0dde8fb648be3cc19765732790f46e",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^5.6 || ^7.0",
+ "psr/http-message": "^1.0"
+ },
+ "provide": {
+ "psr/http-message-implementation": "1.0"
+ },
+ "require-dev": {
+ "ext-dom": "*",
+ "ext-libxml": "*",
+ "php-http/psr7-integration-tests": "dev-master",
+ "phpunit/phpunit": "^5.7.16 || ^6.0.8 || ^7.2.7",
+ "zendframework/zend-coding-standard": "~1.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.8.x-dev",
+ "dev-develop": "1.9.x-dev",
+ "dev-release-2.0": "2.0.x-dev"
+ }
+ },
+ "autoload": {
+ "files": [
+ "src/functions/create_uploaded_file.php",
+ "src/functions/marshal_headers_from_sapi.php",
+ "src/functions/marshal_method_from_sapi.php",
+ "src/functions/marshal_protocol_version_from_sapi.php",
+ "src/functions/marshal_uri_from_sapi.php",
+ "src/functions/normalize_server.php",
+ "src/functions/normalize_uploaded_files.php",
+ "src/functions/parse_cookie_header.php"
+ ],
+ "psr-4": {
+ "Zend\\Diactoros\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-2-Clause"
+ ],
+ "description": "PSR HTTP Message implementations",
+ "homepage": "https://github.com/zendframework/zend-diactoros",
+ "keywords": [
+ "http",
+ "psr",
+ "psr-7"
+ ],
+ "time": "2018-09-05T19:29:37+00:00"
}
],
"packages-dev": [
@@ -4295,16 +4875,16 @@
},
{
"name": "laravel/dusk",
- "version": "v4.0.2",
+ "version": "v4.0.4",
"source": {
"type": "git",
"url": "https://github.com/laravel/dusk.git",
- "reference": "9810f8609c8b53d9a3bac7d38c56530e0d77a6bb"
+ "reference": "3b2df334d92b6215400ddd183253eb4bcc07debb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/dusk/zipball/9810f8609c8b53d9a3bac7d38c56530e0d77a6bb",
- "reference": "9810f8609c8b53d9a3bac7d38c56530e0d77a6bb",
+ "url": "https://api.github.com/repos/laravel/dusk/zipball/3b2df334d92b6215400ddd183253eb4bcc07debb",
+ "reference": "3b2df334d92b6215400ddd183253eb4bcc07debb",
"shasum": ""
},
"require": {
@@ -4352,7 +4932,7 @@
"testing",
"webdriver"
],
- "time": "2018-10-03T15:37:05+00:00"
+ "time": "2018-12-19T13:55:39+00:00"
},
{
"name": "mockery/mockery",
@@ -4469,26 +5049,27 @@
},
{
"name": "nunomaduro/collision",
- "version": "v2.1.0",
+ "version": "v2.1.1",
"source": {
"type": "git",
"url": "https://github.com/nunomaduro/collision.git",
- "reference": "1149ad9f36f61b121ae61f5f6de820fc77b51e6b"
+ "reference": "b5feb0c0d92978ec7169232ce5d70d6da6b29f63"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nunomaduro/collision/zipball/1149ad9f36f61b121ae61f5f6de820fc77b51e6b",
- "reference": "1149ad9f36f61b121ae61f5f6de820fc77b51e6b",
+ "url": "https://api.github.com/repos/nunomaduro/collision/zipball/b5feb0c0d92978ec7169232ce5d70d6da6b29f63",
+ "reference": "b5feb0c0d92978ec7169232ce5d70d6da6b29f63",
"shasum": ""
},
"require": {
"filp/whoops": "^2.1.4",
- "jakub-onderka/php-console-highlighter": "0.3.*",
+ "jakub-onderka/php-console-highlighter": "0.3.*|0.4.*",
"php": "^7.1",
"symfony/console": "~2.8|~3.3|~4.0"
},
"require-dev": {
"laravel/framework": "5.7.*",
+ "nunomaduro/larastan": "^0.3.0",
"phpstan/phpstan": "^0.10",
"phpunit/phpunit": "~7.3"
},
@@ -4528,7 +5109,7 @@
"php",
"symfony"
],
- "time": "2018-10-03T20:01:54+00:00"
+ "time": "2018-11-21T21:40:54+00:00"
},
{
"name": "phar-io/manifest",
@@ -5101,16 +5682,16 @@
},
{
"name": "phpunit/phpunit",
- "version": "7.4.3",
+ "version": "7.5.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "c151651fb6ed264038d486ea262e243af72e5e64"
+ "reference": "c23d78776ad415d5506e0679723cb461d71f488f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c151651fb6ed264038d486ea262e243af72e5e64",
- "reference": "c151651fb6ed264038d486ea262e243af72e5e64",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c23d78776ad415d5506e0679723cb461d71f488f",
+ "reference": "c23d78776ad415d5506e0679723cb461d71f488f",
"shasum": ""
},
"require": {
@@ -5131,7 +5712,7 @@
"phpunit/php-timer": "^2.0",
"sebastian/comparator": "^3.0",
"sebastian/diff": "^3.0",
- "sebastian/environment": "^3.1 || ^4.0",
+ "sebastian/environment": "^4.0",
"sebastian/exporter": "^3.1",
"sebastian/global-state": "^2.0",
"sebastian/object-enumerator": "^3.0.3",
@@ -5155,7 +5736,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "7.4-dev"
+ "dev-master": "7.5-dev"
}
},
"autoload": {
@@ -5181,7 +5762,7 @@
"testing",
"xunit"
],
- "time": "2018-10-23T05:57:41+00:00"
+ "time": "2018-12-12T07:20:32+00:00"
},
{
"name": "sebastian/code-unit-reverse-lookup",
@@ -5350,28 +5931,28 @@
},
{
"name": "sebastian/environment",
- "version": "3.1.0",
+ "version": "4.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "cd0871b3975fb7fc44d11314fd1ee20925fce4f5"
+ "reference": "febd209a219cea7b56ad799b30ebbea34b71eb8f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/cd0871b3975fb7fc44d11314fd1ee20925fce4f5",
- "reference": "cd0871b3975fb7fc44d11314fd1ee20925fce4f5",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/febd209a219cea7b56ad799b30ebbea34b71eb8f",
+ "reference": "febd209a219cea7b56ad799b30ebbea34b71eb8f",
"shasum": ""
},
"require": {
- "php": "^7.0"
+ "php": "^7.1"
},
"require-dev": {
- "phpunit/phpunit": "^6.1"
+ "phpunit/phpunit": "^7.4"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1.x-dev"
+ "dev-master": "4.0-dev"
}
},
"autoload": {
@@ -5396,7 +5977,7 @@
"environment",
"hhvm"
],
- "time": "2017-07-01T08:51:00+00:00"
+ "time": "2018-11-25T09:31:21+00:00"
},
{
"name": "sebastian/exporter",
diff --git a/package.json b/package.json
index b00bec156b1e..8e65a8631417 100644
--- a/package.json
+++ b/package.json
@@ -18,6 +18,7 @@
"@types/core-js": "^0.9.36",
"@types/jest": "^23.3.9",
"axios": "^0.18",
+ "babel-preset-stage-2": "^6.24.1",
"bootstrap": "^4.0.0",
"chart.js": "^2.7.2",
"cross-env": "^5.1",
@@ -32,7 +33,8 @@
"popper.js": "^1.12",
"simple-line-icons": "2.4.1",
"ts-jest": "^23.10.5",
- "vue": "^2.5.17"
+ "vue": "^2.5.17",
+ "vuetable-2": "^1.7.5"
},
"dependencies": {
"@types/lodash": "^4.14.118",
@@ -43,6 +45,7 @@
"socket.io-client": "^2.1.1",
"ts-loader": "3.5.0",
"typescript": "^3.1.6",
+ "vue-events": "^3.1.0",
"vue-i18n": "^8.3.0",
"vue-select": "^2.5.1",
"vue-toastr": "^2.0.16"
diff --git a/public/js/client_create.js b/public/js/client_create.js
index db47945e39fc..e634a94d16aa 100644
--- a/public/js/client_create.js
+++ b/public/js/client_create.js
@@ -14979,18 +14979,6 @@ new vue_1.default({
form: new form_1.default(client_object)
};
},
- mounted: function () {
- //console.log('mounted')
- },
- beforeMount: function () {
- //console.log('before mount')
- },
- created: function () {
- //console.dir('created')
- },
- updated: function () {
- //console.dir('updated')
- },
methods: {
remove: function (contact) {
var index = this.form.contacts.indexOf(contact);
diff --git a/public/js/client_create.min.js b/public/js/client_create.min.js
index db47945e39fc..e634a94d16aa 100644
--- a/public/js/client_create.min.js
+++ b/public/js/client_create.min.js
@@ -14979,18 +14979,6 @@ new vue_1.default({
form: new form_1.default(client_object)
};
},
- mounted: function () {
- //console.log('mounted')
- },
- beforeMount: function () {
- //console.log('before mount')
- },
- created: function () {
- //console.dir('created')
- },
- updated: function () {
- //console.dir('updated')
- },
methods: {
remove: function (contact) {
var index = this.form.contacts.indexOf(contact);
diff --git a/public/js/client_edit.js b/public/js/client_edit.js
index 3b768016ce8f..fc4478248721 100644
--- a/public/js/client_edit.js
+++ b/public/js/client_edit.js
@@ -34363,6 +34363,78 @@ module.exports = function(module) {
};
+/***/ }),
+
+/***/ "./resources/js/src/bootstrap.js":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash__ = __webpack_require__("./node_modules/lodash/lodash.js");
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash__);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_toastr__ = __webpack_require__("./node_modules/vue-toastr/dist/vue-toastr.js");
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_toastr___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_toastr__);
+// lodash handles our translations
+
+
+// import Toastr
+
+
+// Import toastr scss file: need webpack sass-loader
+__webpack_require__("./node_modules/vue-toastr/src/vue-toastr.scss");
+
+// Register vue component
+Vue.component('vue-toastr', __WEBPACK_IMPORTED_MODULE_1_vue_toastr___default.a);
+
+// Global translation helper
+Vue.prototype.trans = function (string) {
+ return __WEBPACK_IMPORTED_MODULE_0_lodash__["get"](i18n, string);
+};
+
+window.axios = __webpack_require__("./node_modules/axios/index.js");
+window.Vue = __webpack_require__("./node_modules/vue/dist/vue.common.js");
+
+window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
+
+/* Development only*/
+Vue.config.devtools = true;
+
+window.axios.defaults.headers.common = {
+ 'X-Requested-With': 'XMLHttpRequest',
+ 'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').getAttribute('content')
+};
+
+/**
+ * Next we will register the CSRF Token as a common header with Axios so that
+ * all outgoing HTTP requests automatically have it attached. This is just
+ * a simple convenience so we don't have to attach every token manually.
+ */
+
+var token = document.head.querySelector('meta[name="csrf-token"]');
+
+if (token) {
+ window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
+} else {
+ console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
+}
+
+/**
+ * Echo exposes an expressive API for subscribing to channels and listening
+ * for events that are broadcast by Laravel. Echo and event broadcasting
+ * allows your team to easily build robust real-time web applications.
+ */
+
+// import Echo from 'laravel-echo'
+
+// window.Pusher = require('pusher-js');
+
+// window.Echo = new Echo({
+// broadcaster: 'pusher',
+// key: process.env.MIX_PUSHER_APP_KEY,
+// cluster: process.env.MIX_PUSHER_APP_CLUSTER,
+// encrypted: true
+// });
+
/***/ }),
/***/ "./resources/js/src/client/client_edit.ts":
@@ -34370,28 +34442,14 @@ module.exports = function(module) {
"use strict";
-var __importStar = (this && this.__importStar) || function (mod) {
- if (mod && mod.__esModule) return mod;
- var result = {};
- if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
- result["default"] = mod;
- return result;
-};
+/* Allows us to use our native translation easily using {{ trans() }} syntax */
+//const _ = require('lodash');
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
-/* Allows us to use our native translation easily using {{ trans() }} syntax */
-//const _ = require('lodash');
-var _ = __importStar(__webpack_require__("./node_modules/lodash/lodash.js"));
+__webpack_require__("./resources/js/src/bootstrap.js");
var vue_1 = __importDefault(__webpack_require__("./node_modules/vue/dist/vue.common.js"));
-// import Toastr
-var vue_toastr_1 = __importDefault(__webpack_require__("./node_modules/vue-toastr/dist/vue-toastr.js"));
-// import toastr scss file: need webpack sass-loader
-__webpack_require__("./node_modules/vue-toastr/src/vue-toastr.scss");
-// Register vue component
-vue_1.default.component('vue-toastr', vue_toastr_1.default);
-vue_1.default.prototype.trans = function (string) { return _.get(i18n, string); };
/**
* Next, we will create a fresh Vue application instance and attach it to
* the page. Then, you may begin adding components to this application
diff --git a/public/js/client_edit.min.js b/public/js/client_edit.min.js
index 3b768016ce8f..fc4478248721 100644
--- a/public/js/client_edit.min.js
+++ b/public/js/client_edit.min.js
@@ -34363,6 +34363,78 @@ module.exports = function(module) {
};
+/***/ }),
+
+/***/ "./resources/js/src/bootstrap.js":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash__ = __webpack_require__("./node_modules/lodash/lodash.js");
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_lodash___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_lodash__);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_toastr__ = __webpack_require__("./node_modules/vue-toastr/dist/vue-toastr.js");
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_toastr___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_vue_toastr__);
+// lodash handles our translations
+
+
+// import Toastr
+
+
+// Import toastr scss file: need webpack sass-loader
+__webpack_require__("./node_modules/vue-toastr/src/vue-toastr.scss");
+
+// Register vue component
+Vue.component('vue-toastr', __WEBPACK_IMPORTED_MODULE_1_vue_toastr___default.a);
+
+// Global translation helper
+Vue.prototype.trans = function (string) {
+ return __WEBPACK_IMPORTED_MODULE_0_lodash__["get"](i18n, string);
+};
+
+window.axios = __webpack_require__("./node_modules/axios/index.js");
+window.Vue = __webpack_require__("./node_modules/vue/dist/vue.common.js");
+
+window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
+
+/* Development only*/
+Vue.config.devtools = true;
+
+window.axios.defaults.headers.common = {
+ 'X-Requested-With': 'XMLHttpRequest',
+ 'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').getAttribute('content')
+};
+
+/**
+ * Next we will register the CSRF Token as a common header with Axios so that
+ * all outgoing HTTP requests automatically have it attached. This is just
+ * a simple convenience so we don't have to attach every token manually.
+ */
+
+var token = document.head.querySelector('meta[name="csrf-token"]');
+
+if (token) {
+ window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
+} else {
+ console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
+}
+
+/**
+ * Echo exposes an expressive API for subscribing to channels and listening
+ * for events that are broadcast by Laravel. Echo and event broadcasting
+ * allows your team to easily build robust real-time web applications.
+ */
+
+// import Echo from 'laravel-echo'
+
+// window.Pusher = require('pusher-js');
+
+// window.Echo = new Echo({
+// broadcaster: 'pusher',
+// key: process.env.MIX_PUSHER_APP_KEY,
+// cluster: process.env.MIX_PUSHER_APP_CLUSTER,
+// encrypted: true
+// });
+
/***/ }),
/***/ "./resources/js/src/client/client_edit.ts":
@@ -34370,28 +34442,14 @@ module.exports = function(module) {
"use strict";
-var __importStar = (this && this.__importStar) || function (mod) {
- if (mod && mod.__esModule) return mod;
- var result = {};
- if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
- result["default"] = mod;
- return result;
-};
+/* Allows us to use our native translation easily using {{ trans() }} syntax */
+//const _ = require('lodash');
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
-/* Allows us to use our native translation easily using {{ trans() }} syntax */
-//const _ = require('lodash');
-var _ = __importStar(__webpack_require__("./node_modules/lodash/lodash.js"));
+__webpack_require__("./resources/js/src/bootstrap.js");
var vue_1 = __importDefault(__webpack_require__("./node_modules/vue/dist/vue.common.js"));
-// import Toastr
-var vue_toastr_1 = __importDefault(__webpack_require__("./node_modules/vue-toastr/dist/vue-toastr.js"));
-// import toastr scss file: need webpack sass-loader
-__webpack_require__("./node_modules/vue-toastr/src/vue-toastr.scss");
-// Register vue component
-vue_1.default.component('vue-toastr', vue_toastr_1.default);
-vue_1.default.prototype.trans = function (string) { return _.get(i18n, string); };
/**
* Next, we will create a fresh Vue application instance and attach it to
* the page. Then, you may begin adding components to this application
diff --git a/public/js/client_list.js b/public/js/client_list.js
new file mode 100644
index 000000000000..8a5b81317bc1
--- /dev/null
+++ b/public/js/client_list.js
@@ -0,0 +1,18368 @@
+/******/ (function(modules) { // webpackBootstrap
+/******/ // The module cache
+/******/ var installedModules = {};
+/******/
+/******/ // The require function
+/******/ function __webpack_require__(moduleId) {
+/******/
+/******/ // Check if module is in cache
+/******/ if(installedModules[moduleId]) {
+/******/ return installedModules[moduleId].exports;
+/******/ }
+/******/ // Create a new module (and put it into the cache)
+/******/ var module = installedModules[moduleId] = {
+/******/ i: moduleId,
+/******/ l: false,
+/******/ exports: {}
+/******/ };
+/******/
+/******/ // Execute the module function
+/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+/******/
+/******/ // Flag the module as loaded
+/******/ module.l = true;
+/******/
+/******/ // Return the exports of the module
+/******/ return module.exports;
+/******/ }
+/******/
+/******/
+/******/ // expose the modules object (__webpack_modules__)
+/******/ __webpack_require__.m = modules;
+/******/
+/******/ // expose the module cache
+/******/ __webpack_require__.c = installedModules;
+/******/
+/******/ // define getter function for harmony exports
+/******/ __webpack_require__.d = function(exports, name, getter) {
+/******/ if(!__webpack_require__.o(exports, name)) {
+/******/ Object.defineProperty(exports, name, {
+/******/ configurable: false,
+/******/ enumerable: true,
+/******/ get: getter
+/******/ });
+/******/ }
+/******/ };
+/******/
+/******/ // getDefaultExport function for compatibility with non-harmony modules
+/******/ __webpack_require__.n = function(module) {
+/******/ var getter = module && module.__esModule ?
+/******/ function getDefault() { return module['default']; } :
+/******/ function getModuleExports() { return module; };
+/******/ __webpack_require__.d(getter, 'a', getter);
+/******/ return getter;
+/******/ };
+/******/
+/******/ // Object.prototype.hasOwnProperty.call
+/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
+/******/
+/******/ // __webpack_public_path__
+/******/ __webpack_require__.p = "/";
+/******/
+/******/ // Load entry module and return exports
+/******/ return __webpack_require__(__webpack_require__.s = 2);
+/******/ })
+/************************************************************************/
+/******/ ({
+
+/***/ "./node_modules/babel-loader/lib/index.js?{\"cacheDirectory\":true,\"presets\":[[\"env\",{\"modules\":false,\"targets\":{\"browsers\":[\"> 2%\"],\"uglify\":true}}]],\"plugins\":[\"transform-object-rest-spread\",[\"transform-runtime\",{\"polyfill\":false,\"helpers\":false}]]}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/vuetable-2/src/components/Vuetable.vue":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_typeof__ = __webpack_require__("./node_modules/babel-runtime/helpers/typeof.js");
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_typeof__);
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios__ = __webpack_require__("./node_modules/vuetable-2/node_modules/axios/index.js");
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_axios__);
+
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ props: {
+ fields: {
+ type: Array,
+ required: true
+ },
+ loadOnStart: {
+ type: Boolean,
+ default: true
+ },
+ apiUrl: {
+ type: String,
+ default: ''
+ },
+ httpMethod: {
+ type: String,
+ default: 'get',
+ validator: function validator(value) {
+ return ['get', 'post'].indexOf(value) > -1;
+ }
+ },
+ reactiveApiUrl: {
+ type: Boolean,
+ default: true
+ },
+ apiMode: {
+ type: Boolean,
+ default: true
+ },
+ data: {
+ type: [Array, Object],
+ default: null
+ },
+ dataTotal: {
+ type: Number,
+ default: 0
+ },
+ dataManager: {
+ type: Function,
+ default: null
+ },
+ dataPath: {
+ type: String,
+ default: 'data'
+ },
+ paginationPath: {
+ type: [String],
+ default: 'links.pagination'
+ },
+ queryParams: {
+ type: [Object, Function],
+ default: function _default() {
+ return {
+ sort: 'sort',
+ page: 'page',
+ perPage: 'per_page'
+ };
+ }
+ },
+ appendParams: {
+ type: Object,
+ default: function _default() {
+ return {};
+ }
+ },
+ httpOptions: {
+ type: Object,
+ default: function _default() {
+ return {};
+ }
+ },
+ httpFetch: {
+ type: Function,
+ default: null
+ },
+ perPage: {
+ type: Number,
+ default: 10
+ },
+ initialPage: {
+ type: Number,
+ default: 1
+ },
+ sortOrder: {
+ type: Array,
+ default: function _default() {
+ return [];
+ }
+ },
+ multiSort: {
+ type: Boolean,
+ default: function _default() {
+ return false;
+ }
+ },
+ tableHeight: {
+ type: String,
+ default: null
+ },
+
+ multiSortKey: {
+ type: String,
+ default: 'alt'
+ },
+
+ rowClassCallback: {
+ type: [String, Function],
+ default: ''
+ },
+ rowClass: {
+ type: [String, Function],
+ default: ''
+ },
+ detailRowComponent: {
+ type: String,
+ default: ''
+ },
+ detailRowTransition: {
+ type: String,
+ default: ''
+ },
+ trackBy: {
+ type: String,
+ default: 'id'
+ },
+ css: {
+ type: Object,
+ default: function _default() {
+ return {
+ tableClass: 'ui blue selectable celled stackable attached table',
+ loadingClass: 'loading',
+ ascendingIcon: 'blue chevron up icon',
+ descendingIcon: 'blue chevron down icon',
+ ascendingClass: 'sorted-asc',
+ descendingClass: 'sorted-desc',
+ sortableIcon: '',
+ detailRowClass: 'vuetable-detail-row',
+ handleIcon: 'grey sidebar icon',
+ tableBodyClass: 'vuetable-semantic-no-top vuetable-fixed-layout',
+ tableHeaderClass: 'vuetable-fixed-layout'
+ };
+ }
+ },
+ minRows: {
+ type: Number,
+ default: 0
+ },
+ silent: {
+ type: Boolean,
+ default: false
+ },
+ noDataTemplate: {
+ type: String,
+ default: function _default() {
+ return 'No Data Available';
+ }
+ },
+ showSortIcons: {
+ type: Boolean,
+ default: true
+ }
+ },
+ data: function data() {
+ return {
+ eventPrefix: 'vuetable:',
+ tableFields: [],
+ tableData: null,
+ tablePagination: null,
+ currentPage: this.initialPage,
+ selectedTo: [],
+ visibleDetailRows: [],
+ lastScrollPosition: 0,
+ scrollBarWidth: '17px',
+ scrollVisible: false
+ };
+ },
+ mounted: function mounted() {
+ this.normalizeFields();
+ this.normalizeSortOrder();
+ if (this.isFixedHeader) {
+ this.scrollBarWidth = this.getScrollBarWidth() + 'px';
+ }
+ this.$nextTick(function () {
+ this.fireEvent('initialized', this.tableFields);
+ });
+
+ if (this.loadOnStart) {
+ this.loadData();
+ }
+ if (this.isFixedHeader) {
+ var elem = this.$el.getElementsByClassName('vuetable-body-wrapper')[0];
+ if (elem != null) {
+ elem.addEventListener('scroll', this.handleScroll);
+ }
+ }
+ },
+ destroyed: function destroyed() {
+ var elem = this.$el.getElementsByClassName('vuetable-body-wrapper')[0];
+ if (elem != null) {
+ elem.removeEventListener('scroll', this.handleScroll);
+ }
+ },
+
+ computed: {
+ version: function version() {
+ return VERSION;
+ },
+ useDetailRow: function useDetailRow() {
+ if (this.tableData && this.tableData[0] && this.detailRowComponent !== '' && typeof this.tableData[0][this.trackBy] === 'undefined') {
+ this.warn('You need to define unique row identifier in order for detail-row feature to work. Use `track-by` prop to define one!');
+ return false;
+ }
+
+ return this.detailRowComponent !== '';
+ },
+ countVisibleFields: function countVisibleFields() {
+ return this.tableFields.filter(function (field) {
+ return field.visible;
+ }).length;
+ },
+ countTableData: function countTableData() {
+ if (this.tableData === null) {
+ return 0;
+ }
+ return this.tableData.length;
+ },
+ displayEmptyDataRow: function displayEmptyDataRow() {
+ return this.countTableData === 0 && this.noDataTemplate.length > 0;
+ },
+ lessThanMinRows: function lessThanMinRows() {
+ if (this.tableData === null || this.tableData.length === 0) {
+ return true;
+ }
+ return this.tableData.length < this.minRows;
+ },
+ blankRows: function blankRows() {
+ if (this.tableData === null || this.tableData.length === 0) {
+ return this.minRows;
+ }
+ if (this.tableData.length >= this.minRows) {
+ return 0;
+ }
+
+ return this.minRows - this.tableData.length;
+ },
+ isApiMode: function isApiMode() {
+ return this.apiMode;
+ },
+ isDataMode: function isDataMode() {
+ return !this.apiMode;
+ },
+ isFixedHeader: function isFixedHeader() {
+ return this.tableHeight != null;
+ }
+ },
+ methods: {
+ getScrollBarWidth: function getScrollBarWidth() {
+ var outer = document.createElement('div');
+ var inner = document.createElement('div');
+
+ outer.style.visibility = 'hidden';
+ outer.style.width = '100px';
+
+ inner.style.width = '100%';
+
+ outer.appendChild(inner);
+ document.body.appendChild(outer);
+
+ var widthWithoutScrollbar = outer.offsetWidth;
+
+ outer.style.overflow = 'scroll';
+
+ var widthWithScrollbar = inner.offsetWidth;
+
+ document.body.removeChild(outer);
+
+ return widthWithoutScrollbar - widthWithScrollbar;
+ },
+ handleScroll: function handleScroll(e) {
+ var horizontal = e.currentTarget.scrollLeft;
+ if (horizontal != this.lastScrollPosition) {
+ var header = this.$el.getElementsByClassName('vuetable-head-wrapper')[0];
+ if (header != null) {
+ header.scrollLeft = horizontal;
+ }
+ this.lastScrollPosition = horizontal;
+ }
+ },
+ normalizeFields: function normalizeFields() {
+ if (typeof this.fields === 'undefined') {
+ this.warn('You need to provide "fields" prop.');
+ return;
+ }
+
+ this.tableFields = [];
+ var self = this;
+ var obj = void 0;
+ this.fields.forEach(function (field, i) {
+ if (typeof field === 'string') {
+ obj = {
+ name: field,
+ title: self.setTitle(field),
+ titleClass: '',
+ dataClass: '',
+ callback: null,
+ visible: true
+ };
+ } else {
+ obj = {
+ name: field.name,
+ width: field.width,
+ title: field.title === undefined ? self.setTitle(field.name) : field.title,
+ sortField: field.sortField,
+ titleClass: field.titleClass === undefined ? '' : field.titleClass,
+ dataClass: field.dataClass === undefined ? '' : field.dataClass,
+ callback: field.callback === undefined ? '' : field.callback,
+ visible: field.visible === undefined ? true : field.visible
+ };
+ }
+ self.tableFields.push(obj);
+ });
+ },
+ setData: function setData(data) {
+ if (data === null || typeof data === 'undefined') return;
+
+ this.fireEvent('loading');
+
+ if (Array.isArray(data)) {
+ this.tableData = data;
+ this.fireEvent('loaded');
+ return;
+ }
+
+ this.tableData = this.getObjectValue(data, this.dataPath, null);
+ this.tablePagination = this.getObjectValue(data, this.paginationPath, null);
+
+ this.$nextTick(function () {
+ this.fixHeader();
+ this.fireEvent('pagination-data', this.tablePagination);
+ this.fireEvent('loaded');
+ });
+ },
+ setTitle: function setTitle(str) {
+ if (this.isSpecialField(str)) {
+ return '';
+ }
+
+ return this.titleCase(str);
+ },
+ getTitle: function getTitle(field) {
+ if (typeof field.title === 'function') return field.title();
+
+ return typeof field.title === 'undefined' ? field.name.replace('.', ' ') : field.title;
+ },
+ renderTitle: function renderTitle(field) {
+ var title = this.getTitle(field);
+
+ if (title.length > 0 && this.isInCurrentSortGroup(field) || this.hasSortableIcon(field)) {
+ var style = 'opacity:' + this.sortIconOpacity(field) + ';position:relative;float:right';
+ var iconTag = this.showSortIcons ? this.renderIconTag(['sort-icon', this.sortIcon(field)], 'style="' + style + '"') : '';
+ return title + ' ' + iconTag;
+ }
+
+ return title;
+ },
+ renderSequence: function renderSequence(index) {
+ return this.tablePagination ? this.tablePagination.from + index : index;
+ },
+ renderNormalField: function renderNormalField(field, item) {
+ return this.hasCallback(field) ? this.callCallback(field, item) : this.getObjectValue(item, field.name, '');
+ },
+ isSpecialField: function isSpecialField(fieldName) {
+ return fieldName.slice(0, 2) === '__';
+ },
+ titleCase: function titleCase(str) {
+ return str.replace(/\w+/g, function (txt) {
+ return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
+ });
+ },
+ camelCase: function camelCase(str) {
+ var delimiter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '_';
+
+ var self = this;
+ return str.split(delimiter).map(function (item) {
+ return self.titleCase(item);
+ }).join('');
+ },
+ notIn: function notIn(str, arr) {
+ return arr.indexOf(str) === -1;
+ },
+ loadData: function loadData() {
+ var success = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.loadSuccess;
+ var failed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.loadFailed;
+
+ if (this.isDataMode) {
+ this.callDataManager();
+ return;
+ }
+
+ this.fireEvent('loading');
+
+ this.httpOptions['params'] = this.getAppendParams(this.getAllQueryParams());
+
+ return this.fetch(this.apiUrl, this.httpOptions).then(success, failed).catch(function () {
+ return failed();
+ });
+ },
+ fetch: function fetch(apiUrl, httpOptions) {
+ return this.httpFetch ? this.httpFetch(apiUrl, httpOptions) : __WEBPACK_IMPORTED_MODULE_1_axios___default.a[this.httpMethod](apiUrl, httpOptions);
+ },
+ loadSuccess: function loadSuccess(response) {
+ this.fireEvent('load-success', response);
+
+ var body = this.transform(response.data);
+
+ this.tableData = this.getObjectValue(body, this.dataPath, null);
+ this.tablePagination = this.getObjectValue(body, this.paginationPath, null);
+
+ if (this.tablePagination === null) {
+ this.warn('vuetable: pagination-path "' + this.paginationPath + '" not found. ' + 'It looks like the data returned from the sever does not have pagination information ' + "or you may have set it incorrectly.\n" + 'You can explicitly suppress this warning by setting pagination-path="".');
+ }
+
+ this.$nextTick(function () {
+ this.fixHeader();
+ this.fireEvent('pagination-data', this.tablePagination);
+ this.fireEvent('loaded');
+ });
+ },
+ fixHeader: function fixHeader() {
+ if (!this.isFixedHeader) {
+ return;
+ }
+
+ var elem = this.$el.getElementsByClassName('vuetable-body-wrapper')[0];
+ if (elem != null) {
+ if (elem.scrollHeight > elem.clientHeight) {
+ this.scrollVisible = true;
+ } else {
+ this.scrollVisible = false;
+ }
+ }
+ },
+ loadFailed: function loadFailed(response) {
+ console.error('load-error', response);
+ this.fireEvent('load-error', response);
+ this.fireEvent('loaded');
+ },
+ transform: function transform(data) {
+ var func = 'transform';
+
+ if (this.parentFunctionExists(func)) {
+ return this.$parent[func].call(this.$parent, data);
+ }
+
+ return data;
+ },
+ parentFunctionExists: function parentFunctionExists(func) {
+ return func !== '' && typeof this.$parent[func] === 'function';
+ },
+ callParentFunction: function callParentFunction(func, args) {
+ var defaultValue = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
+
+ if (this.parentFunctionExists(func)) {
+ return this.$parent[func].call(this.$parent, args);
+ }
+
+ return defaultValue;
+ },
+ fireEvent: function fireEvent(eventName, args) {
+ this.$emit(this.eventPrefix + eventName, args);
+ },
+ warn: function warn(msg) {
+ if (!this.silent) {
+ console.warn(msg);
+ }
+ },
+ getAllQueryParams: function getAllQueryParams() {
+ var params = {};
+
+ if (typeof this.queryParams === 'function') {
+ params = this.queryParams(this.sortOrder, this.currentPage, this.perPage);
+ return (typeof params === 'undefined' ? 'undefined' : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_typeof___default()(params)) !== 'object' ? {} : params;
+ }
+
+ params[this.queryParams.sort] = this.getSortParam();
+ params[this.queryParams.page] = this.currentPage;
+ params[this.queryParams.perPage] = this.perPage;
+
+ return params;
+ },
+ getSortParam: function getSortParam() {
+ if (!this.sortOrder || this.sortOrder.field == '') {
+ return '';
+ }
+
+ if (typeof this.$parent['getSortParam'] === 'function') {
+ return this.$parent['getSortParam'].call(this.$parent, this.sortOrder);
+ }
+
+ return this.getDefaultSortParam();
+ },
+ getDefaultSortParam: function getDefaultSortParam() {
+ var result = '';
+
+ for (var i = 0; i < this.sortOrder.length; i++) {
+ var fieldName = typeof this.sortOrder[i].sortField === 'undefined' ? this.sortOrder[i].field : this.sortOrder[i].sortField;
+
+ result += fieldName + '|' + this.sortOrder[i].direction + (i + 1 < this.sortOrder.length ? ',' : '');
+ }
+ return result;
+ },
+ getAppendParams: function getAppendParams(params) {
+ for (var x in this.appendParams) {
+ params[x] = this.appendParams[x];
+ }
+
+ return params;
+ },
+ extractName: function extractName(string) {
+ return string.split(':')[0].trim();
+ },
+ extractArgs: function extractArgs(string) {
+ return string.split(':')[1];
+ },
+ isSortable: function isSortable(field) {
+ return !(typeof field.sortField === 'undefined');
+ },
+ isInCurrentSortGroup: function isInCurrentSortGroup(field) {
+ return this.currentSortOrderPosition(field) !== false;
+ },
+ hasSortableIcon: function hasSortableIcon(field) {
+ return this.isSortable(field) && this.css.sortableIcon != '';
+ },
+ currentSortOrderPosition: function currentSortOrderPosition(field) {
+ if (!this.isSortable(field)) {
+ return false;
+ }
+
+ for (var i = 0; i < this.sortOrder.length; i++) {
+ if (this.fieldIsInSortOrderPosition(field, i)) {
+ return i;
+ }
+ }
+
+ return false;
+ },
+ fieldIsInSortOrderPosition: function fieldIsInSortOrderPosition(field, i) {
+ return this.sortOrder[i].field === field.name && this.sortOrder[i].sortField === field.sortField;
+ },
+ orderBy: function orderBy(field, event) {
+ if (!this.isSortable(field)) return;
+
+ var key = this.multiSortKey.toLowerCase() + 'Key';
+
+ if (this.multiSort && event[key]) {
+ this.multiColumnSort(field);
+ } else {
+ this.singleColumnSort(field);
+ }
+
+ this.currentPage = 1;
+ if (this.apiMode || this.dataManager) {
+ this.loadData();
+ }
+ },
+ multiColumnSort: function multiColumnSort(field) {
+ var i = this.currentSortOrderPosition(field);
+
+ if (i === false) {
+ this.sortOrder.push({
+ field: field.name,
+ sortField: field.sortField,
+ direction: 'asc'
+ });
+ } else {
+ if (this.sortOrder[i].direction === 'asc') {
+ this.sortOrder[i].direction = 'desc';
+ } else {
+ this.sortOrder.splice(i, 1);
+ }
+ }
+ },
+ singleColumnSort: function singleColumnSort(field) {
+ if (this.sortOrder.length === 0) {
+ this.clearSortOrder();
+ }
+
+ this.sortOrder.splice(1);
+
+ if (this.fieldIsInSortOrderPosition(field, 0)) {
+ this.sortOrder[0].direction = this.sortOrder[0].direction === 'asc' ? 'desc' : 'asc';
+ } else {
+ this.sortOrder[0].direction = 'asc';
+ }
+ this.sortOrder[0].field = field.name;
+ this.sortOrder[0].sortField = field.sortField;
+ },
+ clearSortOrder: function clearSortOrder() {
+ this.sortOrder.push({
+ field: '',
+ sortField: '',
+ direction: 'asc'
+ });
+ },
+ sortClass: function sortClass(field) {
+ var cls = '';
+ var i = this.currentSortOrderPosition(field);
+
+ if (i !== false) {
+ cls = this.sortOrder[i].direction == 'asc' ? this.css.ascendingClass : this.css.descendingClass;
+ }
+
+ return cls;
+ },
+ sortIcon: function sortIcon(field) {
+ var cls = this.css.sortableIcon;
+ var i = this.currentSortOrderPosition(field);
+
+ if (i !== false) {
+ cls = this.sortOrder[i].direction == 'asc' ? this.css.ascendingIcon : this.css.descendingIcon;
+ }
+
+ return cls;
+ },
+ sortIconOpacity: function sortIconOpacity(field) {
+ var max = 1.0,
+ min = 0.3,
+ step = 0.3;
+
+ var count = this.sortOrder.length;
+ var current = this.currentSortOrderPosition(field);
+
+ if (max - count * step < min) {
+ step = (max - min) / (count - 1);
+ }
+
+ var opacity = max - current * step;
+
+ return opacity;
+ },
+ hasCallback: function hasCallback(item) {
+ return item.callback ? true : false;
+ },
+ callCallback: function callCallback(field, item) {
+ if (!this.hasCallback(field)) return;
+
+ if (typeof field.callback == 'function') {
+ return field.callback(this.getObjectValue(item, field.name));
+ }
+
+ var args = field.callback.split('|');
+ var func = args.shift();
+
+ if (typeof this.$parent[func] === 'function') {
+ var value = this.getObjectValue(item, field.name);
+
+ return args.length > 0 ? this.$parent[func].apply(this.$parent, [value].concat(args)) : this.$parent[func].call(this.$parent, value);
+ }
+
+ return null;
+ },
+ getObjectValue: function getObjectValue(object, path, defaultValue) {
+ defaultValue = typeof defaultValue === 'undefined' ? null : defaultValue;
+
+ var obj = object;
+ if (path.trim() != '') {
+ var keys = path.split('.');
+ keys.forEach(function (key) {
+ if (obj !== null && typeof obj[key] !== 'undefined' && obj[key] !== null) {
+ obj = obj[key];
+ } else {
+ obj = defaultValue;
+ return;
+ }
+ });
+ }
+ return obj;
+ },
+ toggleCheckbox: function toggleCheckbox(dataItem, fieldName, event) {
+ var isChecked = event.target.checked;
+ var idColumn = this.trackBy;
+
+ if (dataItem[idColumn] === undefined) {
+ this.warn('__checkbox field: The "' + this.trackBy + '" field does not exist! Make sure the field you specify in "track-by" prop does exist.');
+ return;
+ }
+
+ var key = dataItem[idColumn];
+ if (isChecked) {
+ this.selectId(key);
+ } else {
+ this.unselectId(key);
+ }
+ this.$emit('vuetable:checkbox-toggled', isChecked, dataItem);
+ },
+ selectId: function selectId(key) {
+ if (!this.isSelectedRow(key)) {
+ this.selectedTo.push(key);
+ }
+ },
+ unselectId: function unselectId(key) {
+ this.selectedTo = this.selectedTo.filter(function (item) {
+ return item !== key;
+ });
+ },
+ isSelectedRow: function isSelectedRow(key) {
+ return this.selectedTo.indexOf(key) >= 0;
+ },
+ rowSelected: function rowSelected(dataItem, fieldName) {
+ var idColumn = this.trackBy;
+ var key = dataItem[idColumn];
+
+ return this.isSelectedRow(key);
+ },
+ checkCheckboxesState: function checkCheckboxesState(fieldName) {
+ if (!this.tableData) return;
+
+ var self = this;
+ var idColumn = this.trackBy;
+ var selector = 'th.vuetable-th-checkbox-' + idColumn + ' input[type=checkbox]';
+ var els = document.querySelectorAll(selector);
+
+ if (els.forEach === undefined) els.forEach = function (cb) {
+ [].forEach.call(els, cb);
+ };
+
+ var selected = this.tableData.filter(function (item) {
+ return self.selectedTo.indexOf(item[idColumn]) >= 0;
+ });
+
+ if (selected.length <= 0) {
+ els.forEach(function (el) {
+ el.indeterminate = false;
+ });
+ return false;
+ } else if (selected.length < this.perPage) {
+ els.forEach(function (el) {
+ el.indeterminate = true;
+ });
+ return true;
+ } else {
+ els.forEach(function (el) {
+ el.indeterminate = false;
+ });
+ return true;
+ }
+ },
+ toggleAllCheckboxes: function toggleAllCheckboxes(fieldName, event) {
+ var self = this;
+ var isChecked = event.target.checked;
+ var idColumn = this.trackBy;
+
+ if (isChecked) {
+ this.tableData.forEach(function (dataItem) {
+ self.selectId(dataItem[idColumn]);
+ });
+ } else {
+ this.tableData.forEach(function (dataItem) {
+ self.unselectId(dataItem[idColumn]);
+ });
+ }
+ this.$emit('vuetable:checkbox-toggled-all', isChecked);
+ },
+ gotoPreviousPage: function gotoPreviousPage() {
+ if (this.currentPage > 1) {
+ this.currentPage--;
+ this.loadData();
+ }
+ },
+ gotoNextPage: function gotoNextPage() {
+ if (this.currentPage < this.tablePagination.last_page) {
+ this.currentPage++;
+ this.loadData();
+ }
+ },
+ gotoPage: function gotoPage(page) {
+ if (page != this.currentPage && page > 0 && page <= this.tablePagination.last_page) {
+ this.currentPage = page;
+ this.loadData();
+ }
+ },
+ isVisibleDetailRow: function isVisibleDetailRow(rowId) {
+ return this.visibleDetailRows.indexOf(rowId) >= 0;
+ },
+ showDetailRow: function showDetailRow(rowId) {
+ if (!this.isVisibleDetailRow(rowId)) {
+ this.visibleDetailRows.push(rowId);
+ }
+ },
+ hideDetailRow: function hideDetailRow(rowId) {
+ if (this.isVisibleDetailRow(rowId)) {
+ this.visibleDetailRows.splice(this.visibleDetailRows.indexOf(rowId), 1);
+ }
+ },
+ toggleDetailRow: function toggleDetailRow(rowId) {
+ if (this.isVisibleDetailRow(rowId)) {
+ this.hideDetailRow(rowId);
+ } else {
+ this.showDetailRow(rowId);
+ }
+ },
+ showField: function showField(index) {
+ if (index < 0 || index > this.tableFields.length) return;
+
+ this.tableFields[index].visible = true;
+ },
+ hideField: function hideField(index) {
+ if (index < 0 || index > this.tableFields.length) return;
+
+ this.tableFields[index].visible = false;
+ },
+ toggleField: function toggleField(index) {
+ if (index < 0 || index > this.tableFields.length) return;
+
+ this.tableFields[index].visible = !this.tableFields[index].visible;
+ },
+ renderIconTag: function renderIconTag(classes) {
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
+
+ return typeof this.css.renderIcon === 'undefined' ? '' : this.css.renderIcon(classes, options);
+ },
+ makePagination: function makePagination() {
+ var total = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
+ var perPage = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
+ var currentPage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
+
+ var pagination = {};
+ total = total === null ? this.dataTotal : total;
+ perPage = perPage === null ? this.perPage : perPage;
+ currentPage = currentPage === null ? this.currentPage : currentPage;
+
+ return {
+ 'total': total,
+ 'per_page': perPage,
+ 'current_page': currentPage,
+ 'last_page': Math.ceil(total / perPage) || 0,
+ 'next_page_url': '',
+ 'prev_page_url': '',
+ 'from': (currentPage - 1) * perPage + 1,
+ 'to': Math.min(currentPage * perPage, total)
+ };
+ },
+ normalizeSortOrder: function normalizeSortOrder() {
+ this.sortOrder.forEach(function (item) {
+ item.sortField = item.sortField || item.field;
+ });
+ },
+ callDataManager: function callDataManager() {
+ if (this.dataManager === null && this.data === null) return;
+
+ if (Array.isArray(this.data)) {
+ return this.setData(this.data);
+ }
+
+ this.normalizeSortOrder();
+
+ return this.setData(this.dataManager ? this.dataManager(this.sortOrder, this.makePagination()) : this.data);
+ },
+ onRowClass: function onRowClass(dataItem, index) {
+ if (this.rowClassCallback !== '') {
+ this.warn('"row-class-callback" prop is deprecated, please use "row-class" prop instead.');
+ return;
+ }
+
+ if (typeof this.rowClass === 'function') {
+ return this.rowClass(dataItem, index);
+ }
+
+ return this.rowClass;
+ },
+ onRowChanged: function onRowChanged(dataItem) {
+ this.fireEvent('row-changed', dataItem);
+ return true;
+ },
+ onRowClicked: function onRowClicked(dataItem, event) {
+ this.$emit(this.eventPrefix + 'row-clicked', dataItem, event);
+ return true;
+ },
+ onRowDoubleClicked: function onRowDoubleClicked(dataItem, event) {
+ this.$emit(this.eventPrefix + 'row-dblclicked', dataItem, event);
+ },
+ onDetailRowClick: function onDetailRowClick(dataItem, event) {
+ this.$emit(this.eventPrefix + 'detail-row-clicked', dataItem, event);
+ },
+ onCellClicked: function onCellClicked(dataItem, field, event) {
+ this.$emit(this.eventPrefix + 'cell-clicked', dataItem, field, event);
+ },
+ onCellDoubleClicked: function onCellDoubleClicked(dataItem, field, event) {
+ this.$emit(this.eventPrefix + 'cell-dblclicked', dataItem, field, event);
+ },
+ onCellRightClicked: function onCellRightClicked(dataItem, field, event) {
+ this.$emit(this.eventPrefix + 'cell-rightclicked', dataItem, field, event);
+ },
+ changePage: function changePage(page) {
+ if (page === 'prev') {
+ this.gotoPreviousPage();
+ } else if (page === 'next') {
+ this.gotoNextPage();
+ } else {
+ this.gotoPage(page);
+ }
+ },
+ reload: function reload() {
+ return this.loadData();
+ },
+ refresh: function refresh() {
+ this.currentPage = 1;
+ return this.loadData();
+ },
+ resetData: function resetData() {
+ this.tableData = null;
+ this.tablePagination = null;
+ this.fireEvent('data-reset');
+ }
+ },
+ watch: {
+ 'multiSort': function multiSort(newVal, oldVal) {
+ if (newVal === false && this.sortOrder.length > 1) {
+ this.sortOrder.splice(1);
+ this.loadData();
+ }
+ },
+ 'apiUrl': function apiUrl(newVal, oldVal) {
+ if (this.reactiveApiUrl && newVal !== oldVal) this.refresh();
+ },
+ 'data': function data(newVal, oldVal) {
+ this.setData(newVal);
+ },
+ 'tableHeight': function tableHeight(newVal, oldVal) {
+ this.fixHeader();
+ }
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?{\"cacheDirectory\":true,\"presets\":[[\"env\",{\"modules\":false,\"targets\":{\"browsers\":[\"> 2%\"],\"uglify\":true}}]],\"plugins\":[\"transform-object-rest-spread\",[\"transform-runtime\",{\"polyfill\":false,\"helpers\":false}]]}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/vuetable-2/src/components/VuetablePagination.vue":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VuetablePaginationMixin_vue__ = __webpack_require__("./node_modules/vuetable-2/src/components/VuetablePaginationMixin.vue");
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VuetablePaginationMixin_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__VuetablePaginationMixin_vue__);
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ mixins: [__WEBPACK_IMPORTED_MODULE_0__VuetablePaginationMixin_vue___default.a]
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?{\"cacheDirectory\":true,\"presets\":[[\"env\",{\"modules\":false,\"targets\":{\"browsers\":[\"> 2%\"],\"uglify\":true}}]],\"plugins\":[\"transform-object-rest-spread\",[\"transform-runtime\",{\"polyfill\":false,\"helpers\":false}]]}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/vuetable-2/src/components/VuetablePaginationInfo.vue":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VuetablePaginationInfoMixin_vue__ = __webpack_require__("./node_modules/vuetable-2/src/components/VuetablePaginationInfoMixin.vue");
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VuetablePaginationInfoMixin_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__VuetablePaginationInfoMixin_vue__);
+
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ mixins: [__WEBPACK_IMPORTED_MODULE_0__VuetablePaginationInfoMixin_vue___default.a]
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?{\"cacheDirectory\":true,\"presets\":[[\"env\",{\"modules\":false,\"targets\":{\"browsers\":[\"> 2%\"],\"uglify\":true}}]],\"plugins\":[\"transform-object-rest-spread\",[\"transform-runtime\",{\"polyfill\":false,\"helpers\":false}]]}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/vuetable-2/src/components/VuetablePaginationInfoMixin.vue":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ props: {
+ css: {
+ type: Object,
+ default: function _default() {
+ return {
+ infoClass: 'left floated left aligned six wide column'
+ };
+ }
+ },
+ infoTemplate: {
+ type: String,
+ default: function _default() {
+ return "Displaying {from} to {to} of {total} items";
+ }
+ },
+ noDataTemplate: {
+ type: String,
+ default: function _default() {
+ return 'No relevant data';
+ }
+ }
+ },
+ data: function data() {
+ return {
+ tablePagination: null
+ };
+ },
+ computed: {
+ paginationInfo: function paginationInfo() {
+ if (this.tablePagination == null || this.tablePagination.total == 0) {
+ return this.noDataTemplate;
+ }
+
+ return this.infoTemplate.replace('{from}', this.tablePagination.from || 0).replace('{to}', this.tablePagination.to || 0).replace('{total}', this.tablePagination.total || 0);
+ }
+ },
+ methods: {
+ setPaginationData: function setPaginationData(tablePagination) {
+ this.tablePagination = tablePagination;
+ },
+ resetData: function resetData() {
+ this.tablePagination = null;
+ }
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?{\"cacheDirectory\":true,\"presets\":[[\"env\",{\"modules\":false,\"targets\":{\"browsers\":[\"> 2%\"],\"uglify\":true}}]],\"plugins\":[\"transform-object-rest-spread\",[\"transform-runtime\",{\"polyfill\":false,\"helpers\":false}]]}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/vuetable-2/src/components/VuetablePaginationMixin.vue":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ props: {
+ css: {
+ type: Object,
+ default: function _default() {
+ return {
+ wrapperClass: 'ui right floated pagination menu',
+ activeClass: 'active large',
+ disabledClass: 'disabled',
+ pageClass: 'item',
+ linkClass: 'icon item',
+ paginationClass: 'ui bottom attached segment grid',
+ paginationInfoClass: 'left floated left aligned six wide column',
+ dropdownClass: 'ui search dropdown',
+ icons: {
+ first: 'angle double left icon',
+ prev: 'left chevron icon',
+ next: 'right chevron icon',
+ last: 'angle double right icon'
+ }
+ };
+ }
+ },
+ onEachSide: {
+ type: Number,
+ default: function _default() {
+ return 2;
+ }
+ }
+ },
+ data: function data() {
+ return {
+ eventPrefix: 'vuetable-pagination:',
+ tablePagination: null
+ };
+ },
+ computed: {
+ totalPage: function totalPage() {
+ return this.tablePagination === null ? 0 : this.tablePagination.last_page;
+ },
+ isOnFirstPage: function isOnFirstPage() {
+ return this.tablePagination === null ? false : this.tablePagination.current_page === 1;
+ },
+ isOnLastPage: function isOnLastPage() {
+ return this.tablePagination === null ? false : this.tablePagination.current_page === this.tablePagination.last_page;
+ },
+ notEnoughPages: function notEnoughPages() {
+ return this.totalPage < this.onEachSide * 2 + 4;
+ },
+ windowSize: function windowSize() {
+ return this.onEachSide * 2 + 1;
+ },
+ windowStart: function windowStart() {
+ if (!this.tablePagination || this.tablePagination.current_page <= this.onEachSide) {
+ return 1;
+ } else if (this.tablePagination.current_page >= this.totalPage - this.onEachSide) {
+ return this.totalPage - this.onEachSide * 2;
+ }
+
+ return this.tablePagination.current_page - this.onEachSide;
+ }
+ },
+ methods: {
+ loadPage: function loadPage(page) {
+ this.$emit(this.eventPrefix + 'change-page', page);
+ },
+ isCurrentPage: function isCurrentPage(page) {
+ return page === this.tablePagination.current_page;
+ },
+ setPaginationData: function setPaginationData(tablePagination) {
+ this.tablePagination = tablePagination;
+ },
+ resetData: function resetData() {
+ this.tablePagination = null;
+ }
+ }
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?{\"cacheDirectory\":true,\"presets\":[[\"env\",{\"modules\":false,\"targets\":{\"browsers\":[\"> 2%\"],\"uglify\":true}}]],\"plugins\":[\"transform-object-rest-spread\",[\"transform-runtime\",{\"polyfill\":false,\"helpers\":false}]]}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./resources/js/src/components/util/VuetablePaginationBootstrap.vue":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vuetable_2_src_components_VuetablePaginationMixin__ = __webpack_require__("./node_modules/vuetable-2/src/components/VuetablePaginationMixin.vue");
+/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vuetable_2_src_components_VuetablePaginationMixin___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_vuetable_2_src_components_VuetablePaginationMixin__);
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ mixins: [__WEBPACK_IMPORTED_MODULE_0_vuetable_2_src_components_VuetablePaginationMixin___default.a]
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-runtime/core-js/symbol.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+module.exports = { "default": __webpack_require__("./node_modules/core-js/library/fn/symbol/index.js"), __esModule: true };
+
+/***/ }),
+
+/***/ "./node_modules/babel-runtime/core-js/symbol/iterator.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+module.exports = { "default": __webpack_require__("./node_modules/core-js/library/fn/symbol/iterator.js"), __esModule: true };
+
+/***/ }),
+
+/***/ "./node_modules/babel-runtime/helpers/typeof.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+exports.__esModule = true;
+
+var _iterator = __webpack_require__("./node_modules/babel-runtime/core-js/symbol/iterator.js");
+
+var _iterator2 = _interopRequireDefault(_iterator);
+
+var _symbol = __webpack_require__("./node_modules/babel-runtime/core-js/symbol.js");
+
+var _symbol2 = _interopRequireDefault(_symbol);
+
+var _typeof = typeof _symbol2.default === "function" && typeof _iterator2.default === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj; };
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.default = typeof _symbol2.default === "function" && _typeof(_iterator2.default) === "symbol" ? function (obj) {
+ return typeof obj === "undefined" ? "undefined" : _typeof(obj);
+} : function (obj) {
+ return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof(obj);
+};
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/fn/symbol/index.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+__webpack_require__("./node_modules/core-js/library/modules/es6.symbol.js");
+__webpack_require__("./node_modules/core-js/library/modules/es6.object.to-string.js");
+__webpack_require__("./node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
+__webpack_require__("./node_modules/core-js/library/modules/es7.symbol.observable.js");
+module.exports = __webpack_require__("./node_modules/core-js/library/modules/_core.js").Symbol;
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/fn/symbol/iterator.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+__webpack_require__("./node_modules/core-js/library/modules/es6.string.iterator.js");
+__webpack_require__("./node_modules/core-js/library/modules/web.dom.iterable.js");
+module.exports = __webpack_require__("./node_modules/core-js/library/modules/_wks-ext.js").f('iterator');
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_a-function.js":
+/***/ (function(module, exports) {
+
+module.exports = function (it) {
+ if (typeof it != 'function') throw TypeError(it + ' is not a function!');
+ return it;
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_add-to-unscopables.js":
+/***/ (function(module, exports) {
+
+module.exports = function () { /* empty */ };
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_an-object.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("./node_modules/core-js/library/modules/_is-object.js");
+module.exports = function (it) {
+ if (!isObject(it)) throw TypeError(it + ' is not an object!');
+ return it;
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_array-includes.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// false -> Array#indexOf
+// true -> Array#includes
+var toIObject = __webpack_require__("./node_modules/core-js/library/modules/_to-iobject.js");
+var toLength = __webpack_require__("./node_modules/core-js/library/modules/_to-length.js");
+var toAbsoluteIndex = __webpack_require__("./node_modules/core-js/library/modules/_to-absolute-index.js");
+module.exports = function (IS_INCLUDES) {
+ return function ($this, el, fromIndex) {
+ var O = toIObject($this);
+ var length = toLength(O.length);
+ var index = toAbsoluteIndex(fromIndex, length);
+ var value;
+ // Array#includes uses SameValueZero equality algorithm
+ // eslint-disable-next-line no-self-compare
+ if (IS_INCLUDES && el != el) while (length > index) {
+ value = O[index++];
+ // eslint-disable-next-line no-self-compare
+ if (value != value) return true;
+ // Array#indexOf ignores holes, Array#includes - not
+ } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
+ if (O[index] === el) return IS_INCLUDES || index || 0;
+ } return !IS_INCLUDES && -1;
+ };
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_cof.js":
+/***/ (function(module, exports) {
+
+var toString = {}.toString;
+
+module.exports = function (it) {
+ return toString.call(it).slice(8, -1);
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_core.js":
+/***/ (function(module, exports) {
+
+var core = module.exports = { version: '2.5.7' };
+if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_ctx.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// optional / simple context binding
+var aFunction = __webpack_require__("./node_modules/core-js/library/modules/_a-function.js");
+module.exports = function (fn, that, length) {
+ aFunction(fn);
+ if (that === undefined) return fn;
+ switch (length) {
+ case 1: return function (a) {
+ return fn.call(that, a);
+ };
+ case 2: return function (a, b) {
+ return fn.call(that, a, b);
+ };
+ case 3: return function (a, b, c) {
+ return fn.call(that, a, b, c);
+ };
+ }
+ return function (/* ...args */) {
+ return fn.apply(that, arguments);
+ };
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_defined.js":
+/***/ (function(module, exports) {
+
+// 7.2.1 RequireObjectCoercible(argument)
+module.exports = function (it) {
+ if (it == undefined) throw TypeError("Can't call method on " + it);
+ return it;
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_descriptors.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// Thank's IE8 for his funny defineProperty
+module.exports = !__webpack_require__("./node_modules/core-js/library/modules/_fails.js")(function () {
+ return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
+});
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_dom-create.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var isObject = __webpack_require__("./node_modules/core-js/library/modules/_is-object.js");
+var document = __webpack_require__("./node_modules/core-js/library/modules/_global.js").document;
+// typeof document.createElement is 'object' in old IE
+var is = isObject(document) && isObject(document.createElement);
+module.exports = function (it) {
+ return is ? document.createElement(it) : {};
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_enum-bug-keys.js":
+/***/ (function(module, exports) {
+
+// IE 8- don't enum bug keys
+module.exports = (
+ 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
+).split(',');
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_enum-keys.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// all enumerable object keys, includes symbols
+var getKeys = __webpack_require__("./node_modules/core-js/library/modules/_object-keys.js");
+var gOPS = __webpack_require__("./node_modules/core-js/library/modules/_object-gops.js");
+var pIE = __webpack_require__("./node_modules/core-js/library/modules/_object-pie.js");
+module.exports = function (it) {
+ var result = getKeys(it);
+ var getSymbols = gOPS.f;
+ if (getSymbols) {
+ var symbols = getSymbols(it);
+ var isEnum = pIE.f;
+ var i = 0;
+ var key;
+ while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
+ } return result;
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_export.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("./node_modules/core-js/library/modules/_global.js");
+var core = __webpack_require__("./node_modules/core-js/library/modules/_core.js");
+var ctx = __webpack_require__("./node_modules/core-js/library/modules/_ctx.js");
+var hide = __webpack_require__("./node_modules/core-js/library/modules/_hide.js");
+var has = __webpack_require__("./node_modules/core-js/library/modules/_has.js");
+var PROTOTYPE = 'prototype';
+
+var $export = function (type, name, source) {
+ var IS_FORCED = type & $export.F;
+ var IS_GLOBAL = type & $export.G;
+ var IS_STATIC = type & $export.S;
+ var IS_PROTO = type & $export.P;
+ var IS_BIND = type & $export.B;
+ var IS_WRAP = type & $export.W;
+ var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
+ var expProto = exports[PROTOTYPE];
+ var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
+ var key, own, out;
+ if (IS_GLOBAL) source = name;
+ for (key in source) {
+ // contains in native
+ own = !IS_FORCED && target && target[key] !== undefined;
+ if (own && has(exports, key)) continue;
+ // export native or passed
+ out = own ? target[key] : source[key];
+ // prevent global pollution for namespaces
+ exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
+ // bind timers to global for call from export context
+ : IS_BIND && own ? ctx(out, global)
+ // wrap global constructors for prevent change them in library
+ : IS_WRAP && target[key] == out ? (function (C) {
+ var F = function (a, b, c) {
+ if (this instanceof C) {
+ switch (arguments.length) {
+ case 0: return new C();
+ case 1: return new C(a);
+ case 2: return new C(a, b);
+ } return new C(a, b, c);
+ } return C.apply(this, arguments);
+ };
+ F[PROTOTYPE] = C[PROTOTYPE];
+ return F;
+ // make static versions for prototype methods
+ })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
+ if (IS_PROTO) {
+ (exports.virtual || (exports.virtual = {}))[key] = out;
+ // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
+ if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
+ }
+ }
+};
+// type bitmap
+$export.F = 1; // forced
+$export.G = 2; // global
+$export.S = 4; // static
+$export.P = 8; // proto
+$export.B = 16; // bind
+$export.W = 32; // wrap
+$export.U = 64; // safe
+$export.R = 128; // real proto method for `library`
+module.exports = $export;
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_fails.js":
+/***/ (function(module, exports) {
+
+module.exports = function (exec) {
+ try {
+ return !!exec();
+ } catch (e) {
+ return true;
+ }
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_global.js":
+/***/ (function(module, exports) {
+
+// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+var global = module.exports = typeof window != 'undefined' && window.Math == Math
+ ? window : typeof self != 'undefined' && self.Math == Math ? self
+ // eslint-disable-next-line no-new-func
+ : Function('return this')();
+if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_has.js":
+/***/ (function(module, exports) {
+
+var hasOwnProperty = {}.hasOwnProperty;
+module.exports = function (it, key) {
+ return hasOwnProperty.call(it, key);
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_hide.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var dP = __webpack_require__("./node_modules/core-js/library/modules/_object-dp.js");
+var createDesc = __webpack_require__("./node_modules/core-js/library/modules/_property-desc.js");
+module.exports = __webpack_require__("./node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
+ return dP.f(object, key, createDesc(1, value));
+} : function (object, key, value) {
+ object[key] = value;
+ return object;
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_html.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var document = __webpack_require__("./node_modules/core-js/library/modules/_global.js").document;
+module.exports = document && document.documentElement;
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_ie8-dom-define.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+module.exports = !__webpack_require__("./node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__("./node_modules/core-js/library/modules/_fails.js")(function () {
+ return Object.defineProperty(__webpack_require__("./node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
+});
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_iobject.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// fallback for non-array-like ES3 and non-enumerable old V8 strings
+var cof = __webpack_require__("./node_modules/core-js/library/modules/_cof.js");
+// eslint-disable-next-line no-prototype-builtins
+module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
+ return cof(it) == 'String' ? it.split('') : Object(it);
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_is-array.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// 7.2.2 IsArray(argument)
+var cof = __webpack_require__("./node_modules/core-js/library/modules/_cof.js");
+module.exports = Array.isArray || function isArray(arg) {
+ return cof(arg) == 'Array';
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_is-object.js":
+/***/ (function(module, exports) {
+
+module.exports = function (it) {
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_iter-create.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var create = __webpack_require__("./node_modules/core-js/library/modules/_object-create.js");
+var descriptor = __webpack_require__("./node_modules/core-js/library/modules/_property-desc.js");
+var setToStringTag = __webpack_require__("./node_modules/core-js/library/modules/_set-to-string-tag.js");
+var IteratorPrototype = {};
+
+// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
+__webpack_require__("./node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__("./node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });
+
+module.exports = function (Constructor, NAME, next) {
+ Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
+ setToStringTag(Constructor, NAME + ' Iterator');
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_iter-define.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var LIBRARY = __webpack_require__("./node_modules/core-js/library/modules/_library.js");
+var $export = __webpack_require__("./node_modules/core-js/library/modules/_export.js");
+var redefine = __webpack_require__("./node_modules/core-js/library/modules/_redefine.js");
+var hide = __webpack_require__("./node_modules/core-js/library/modules/_hide.js");
+var Iterators = __webpack_require__("./node_modules/core-js/library/modules/_iterators.js");
+var $iterCreate = __webpack_require__("./node_modules/core-js/library/modules/_iter-create.js");
+var setToStringTag = __webpack_require__("./node_modules/core-js/library/modules/_set-to-string-tag.js");
+var getPrototypeOf = __webpack_require__("./node_modules/core-js/library/modules/_object-gpo.js");
+var ITERATOR = __webpack_require__("./node_modules/core-js/library/modules/_wks.js")('iterator');
+var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
+var FF_ITERATOR = '@@iterator';
+var KEYS = 'keys';
+var VALUES = 'values';
+
+var returnThis = function () { return this; };
+
+module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
+ $iterCreate(Constructor, NAME, next);
+ var getMethod = function (kind) {
+ if (!BUGGY && kind in proto) return proto[kind];
+ switch (kind) {
+ case KEYS: return function keys() { return new Constructor(this, kind); };
+ case VALUES: return function values() { return new Constructor(this, kind); };
+ } return function entries() { return new Constructor(this, kind); };
+ };
+ var TAG = NAME + ' Iterator';
+ var DEF_VALUES = DEFAULT == VALUES;
+ var VALUES_BUG = false;
+ var proto = Base.prototype;
+ var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
+ var $default = $native || getMethod(DEFAULT);
+ var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
+ var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
+ var methods, key, IteratorPrototype;
+ // Fix native
+ if ($anyNative) {
+ IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
+ if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
+ // Set @@toStringTag to native iterators
+ setToStringTag(IteratorPrototype, TAG, true);
+ // fix for some old engines
+ if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
+ }
+ }
+ // fix Array#{values, @@iterator}.name in V8 / FF
+ if (DEF_VALUES && $native && $native.name !== VALUES) {
+ VALUES_BUG = true;
+ $default = function values() { return $native.call(this); };
+ }
+ // Define iterator
+ if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
+ hide(proto, ITERATOR, $default);
+ }
+ // Plug for library
+ Iterators[NAME] = $default;
+ Iterators[TAG] = returnThis;
+ if (DEFAULT) {
+ methods = {
+ values: DEF_VALUES ? $default : getMethod(VALUES),
+ keys: IS_SET ? $default : getMethod(KEYS),
+ entries: $entries
+ };
+ if (FORCED) for (key in methods) {
+ if (!(key in proto)) redefine(proto, key, methods[key]);
+ } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
+ }
+ return methods;
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_iter-step.js":
+/***/ (function(module, exports) {
+
+module.exports = function (done, value) {
+ return { value: value, done: !!done };
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_iterators.js":
+/***/ (function(module, exports) {
+
+module.exports = {};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_library.js":
+/***/ (function(module, exports) {
+
+module.exports = true;
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_meta.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var META = __webpack_require__("./node_modules/core-js/library/modules/_uid.js")('meta');
+var isObject = __webpack_require__("./node_modules/core-js/library/modules/_is-object.js");
+var has = __webpack_require__("./node_modules/core-js/library/modules/_has.js");
+var setDesc = __webpack_require__("./node_modules/core-js/library/modules/_object-dp.js").f;
+var id = 0;
+var isExtensible = Object.isExtensible || function () {
+ return true;
+};
+var FREEZE = !__webpack_require__("./node_modules/core-js/library/modules/_fails.js")(function () {
+ return isExtensible(Object.preventExtensions({}));
+});
+var setMeta = function (it) {
+ setDesc(it, META, { value: {
+ i: 'O' + ++id, // object ID
+ w: {} // weak collections IDs
+ } });
+};
+var fastKey = function (it, create) {
+ // return primitive with prefix
+ if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
+ if (!has(it, META)) {
+ // can't set metadata to uncaught frozen object
+ if (!isExtensible(it)) return 'F';
+ // not necessary to add metadata
+ if (!create) return 'E';
+ // add missing metadata
+ setMeta(it);
+ // return object ID
+ } return it[META].i;
+};
+var getWeak = function (it, create) {
+ if (!has(it, META)) {
+ // can't set metadata to uncaught frozen object
+ if (!isExtensible(it)) return true;
+ // not necessary to add metadata
+ if (!create) return false;
+ // add missing metadata
+ setMeta(it);
+ // return hash weak collections IDs
+ } return it[META].w;
+};
+// add metadata on freeze-family methods calling
+var onFreeze = function (it) {
+ if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
+ return it;
+};
+var meta = module.exports = {
+ KEY: META,
+ NEED: false,
+ fastKey: fastKey,
+ getWeak: getWeak,
+ onFreeze: onFreeze
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-create.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
+var anObject = __webpack_require__("./node_modules/core-js/library/modules/_an-object.js");
+var dPs = __webpack_require__("./node_modules/core-js/library/modules/_object-dps.js");
+var enumBugKeys = __webpack_require__("./node_modules/core-js/library/modules/_enum-bug-keys.js");
+var IE_PROTO = __webpack_require__("./node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
+var Empty = function () { /* empty */ };
+var PROTOTYPE = 'prototype';
+
+// Create object with fake `null` prototype: use iframe Object with cleared prototype
+var createDict = function () {
+ // Thrash, waste and sodomy: IE GC bug
+ var iframe = __webpack_require__("./node_modules/core-js/library/modules/_dom-create.js")('iframe');
+ var i = enumBugKeys.length;
+ var lt = '<';
+ var gt = '>';
+ var iframeDocument;
+ iframe.style.display = 'none';
+ __webpack_require__("./node_modules/core-js/library/modules/_html.js").appendChild(iframe);
+ iframe.src = 'javascript:'; // eslint-disable-line no-script-url
+ // createDict = iframe.contentWindow.Object;
+ // html.removeChild(iframe);
+ iframeDocument = iframe.contentWindow.document;
+ iframeDocument.open();
+ iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
+ iframeDocument.close();
+ createDict = iframeDocument.F;
+ while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
+ return createDict();
+};
+
+module.exports = Object.create || function create(O, Properties) {
+ var result;
+ if (O !== null) {
+ Empty[PROTOTYPE] = anObject(O);
+ result = new Empty();
+ Empty[PROTOTYPE] = null;
+ // add "__proto__" for Object.getPrototypeOf polyfill
+ result[IE_PROTO] = O;
+ } else result = createDict();
+ return Properties === undefined ? result : dPs(result, Properties);
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-dp.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var anObject = __webpack_require__("./node_modules/core-js/library/modules/_an-object.js");
+var IE8_DOM_DEFINE = __webpack_require__("./node_modules/core-js/library/modules/_ie8-dom-define.js");
+var toPrimitive = __webpack_require__("./node_modules/core-js/library/modules/_to-primitive.js");
+var dP = Object.defineProperty;
+
+exports.f = __webpack_require__("./node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
+ anObject(O);
+ P = toPrimitive(P, true);
+ anObject(Attributes);
+ if (IE8_DOM_DEFINE) try {
+ return dP(O, P, Attributes);
+ } catch (e) { /* empty */ }
+ if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
+ if ('value' in Attributes) O[P] = Attributes.value;
+ return O;
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-dps.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var dP = __webpack_require__("./node_modules/core-js/library/modules/_object-dp.js");
+var anObject = __webpack_require__("./node_modules/core-js/library/modules/_an-object.js");
+var getKeys = __webpack_require__("./node_modules/core-js/library/modules/_object-keys.js");
+
+module.exports = __webpack_require__("./node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
+ anObject(O);
+ var keys = getKeys(Properties);
+ var length = keys.length;
+ var i = 0;
+ var P;
+ while (length > i) dP.f(O, P = keys[i++], Properties[P]);
+ return O;
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-gopd.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var pIE = __webpack_require__("./node_modules/core-js/library/modules/_object-pie.js");
+var createDesc = __webpack_require__("./node_modules/core-js/library/modules/_property-desc.js");
+var toIObject = __webpack_require__("./node_modules/core-js/library/modules/_to-iobject.js");
+var toPrimitive = __webpack_require__("./node_modules/core-js/library/modules/_to-primitive.js");
+var has = __webpack_require__("./node_modules/core-js/library/modules/_has.js");
+var IE8_DOM_DEFINE = __webpack_require__("./node_modules/core-js/library/modules/_ie8-dom-define.js");
+var gOPD = Object.getOwnPropertyDescriptor;
+
+exports.f = __webpack_require__("./node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
+ O = toIObject(O);
+ P = toPrimitive(P, true);
+ if (IE8_DOM_DEFINE) try {
+ return gOPD(O, P);
+ } catch (e) { /* empty */ }
+ if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-gopn-ext.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+var toIObject = __webpack_require__("./node_modules/core-js/library/modules/_to-iobject.js");
+var gOPN = __webpack_require__("./node_modules/core-js/library/modules/_object-gopn.js").f;
+var toString = {}.toString;
+
+var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
+ ? Object.getOwnPropertyNames(window) : [];
+
+var getWindowNames = function (it) {
+ try {
+ return gOPN(it);
+ } catch (e) {
+ return windowNames.slice();
+ }
+};
+
+module.exports.f = function getOwnPropertyNames(it) {
+ return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-gopn.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
+var $keys = __webpack_require__("./node_modules/core-js/library/modules/_object-keys-internal.js");
+var hiddenKeys = __webpack_require__("./node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');
+
+exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
+ return $keys(O, hiddenKeys);
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-gops.js":
+/***/ (function(module, exports) {
+
+exports.f = Object.getOwnPropertySymbols;
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-gpo.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
+var has = __webpack_require__("./node_modules/core-js/library/modules/_has.js");
+var toObject = __webpack_require__("./node_modules/core-js/library/modules/_to-object.js");
+var IE_PROTO = __webpack_require__("./node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
+var ObjectProto = Object.prototype;
+
+module.exports = Object.getPrototypeOf || function (O) {
+ O = toObject(O);
+ if (has(O, IE_PROTO)) return O[IE_PROTO];
+ if (typeof O.constructor == 'function' && O instanceof O.constructor) {
+ return O.constructor.prototype;
+ } return O instanceof Object ? ObjectProto : null;
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-keys-internal.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var has = __webpack_require__("./node_modules/core-js/library/modules/_has.js");
+var toIObject = __webpack_require__("./node_modules/core-js/library/modules/_to-iobject.js");
+var arrayIndexOf = __webpack_require__("./node_modules/core-js/library/modules/_array-includes.js")(false);
+var IE_PROTO = __webpack_require__("./node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
+
+module.exports = function (object, names) {
+ var O = toIObject(object);
+ var i = 0;
+ var result = [];
+ var key;
+ for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
+ // Don't enum bug & hidden keys
+ while (names.length > i) if (has(O, key = names[i++])) {
+ ~arrayIndexOf(result, key) || result.push(key);
+ }
+ return result;
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-keys.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// 19.1.2.14 / 15.2.3.14 Object.keys(O)
+var $keys = __webpack_require__("./node_modules/core-js/library/modules/_object-keys-internal.js");
+var enumBugKeys = __webpack_require__("./node_modules/core-js/library/modules/_enum-bug-keys.js");
+
+module.exports = Object.keys || function keys(O) {
+ return $keys(O, enumBugKeys);
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_object-pie.js":
+/***/ (function(module, exports) {
+
+exports.f = {}.propertyIsEnumerable;
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_property-desc.js":
+/***/ (function(module, exports) {
+
+module.exports = function (bitmap, value) {
+ return {
+ enumerable: !(bitmap & 1),
+ configurable: !(bitmap & 2),
+ writable: !(bitmap & 4),
+ value: value
+ };
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_redefine.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+module.exports = __webpack_require__("./node_modules/core-js/library/modules/_hide.js");
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_set-to-string-tag.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var def = __webpack_require__("./node_modules/core-js/library/modules/_object-dp.js").f;
+var has = __webpack_require__("./node_modules/core-js/library/modules/_has.js");
+var TAG = __webpack_require__("./node_modules/core-js/library/modules/_wks.js")('toStringTag');
+
+module.exports = function (it, tag, stat) {
+ if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_shared-key.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var shared = __webpack_require__("./node_modules/core-js/library/modules/_shared.js")('keys');
+var uid = __webpack_require__("./node_modules/core-js/library/modules/_uid.js");
+module.exports = function (key) {
+ return shared[key] || (shared[key] = uid(key));
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_shared.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var core = __webpack_require__("./node_modules/core-js/library/modules/_core.js");
+var global = __webpack_require__("./node_modules/core-js/library/modules/_global.js");
+var SHARED = '__core-js_shared__';
+var store = global[SHARED] || (global[SHARED] = {});
+
+(module.exports = function (key, value) {
+ return store[key] || (store[key] = value !== undefined ? value : {});
+})('versions', []).push({
+ version: core.version,
+ mode: __webpack_require__("./node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
+ copyright: '© 2018 Denis Pushkarev (zloirock.ru)'
+});
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_string-at.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__("./node_modules/core-js/library/modules/_to-integer.js");
+var defined = __webpack_require__("./node_modules/core-js/library/modules/_defined.js");
+// true -> String#at
+// false -> String#codePointAt
+module.exports = function (TO_STRING) {
+ return function (that, pos) {
+ var s = String(defined(that));
+ var i = toInteger(pos);
+ var l = s.length;
+ var a, b;
+ if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
+ a = s.charCodeAt(i);
+ return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
+ ? TO_STRING ? s.charAt(i) : a
+ : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
+ };
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_to-absolute-index.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var toInteger = __webpack_require__("./node_modules/core-js/library/modules/_to-integer.js");
+var max = Math.max;
+var min = Math.min;
+module.exports = function (index, length) {
+ index = toInteger(index);
+ return index < 0 ? max(index + length, 0) : min(index, length);
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_to-integer.js":
+/***/ (function(module, exports) {
+
+// 7.1.4 ToInteger
+var ceil = Math.ceil;
+var floor = Math.floor;
+module.exports = function (it) {
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_to-iobject.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// to indexed object, toObject with fallback for non-array-like ES3 strings
+var IObject = __webpack_require__("./node_modules/core-js/library/modules/_iobject.js");
+var defined = __webpack_require__("./node_modules/core-js/library/modules/_defined.js");
+module.exports = function (it) {
+ return IObject(defined(it));
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_to-length.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// 7.1.15 ToLength
+var toInteger = __webpack_require__("./node_modules/core-js/library/modules/_to-integer.js");
+var min = Math.min;
+module.exports = function (it) {
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_to-object.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// 7.1.13 ToObject(argument)
+var defined = __webpack_require__("./node_modules/core-js/library/modules/_defined.js");
+module.exports = function (it) {
+ return Object(defined(it));
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_to-primitive.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+// 7.1.1 ToPrimitive(input [, PreferredType])
+var isObject = __webpack_require__("./node_modules/core-js/library/modules/_is-object.js");
+// instead of the ES6 spec version, we didn't implement @@toPrimitive case
+// and the second argument - flag - preferred type is a string
+module.exports = function (it, S) {
+ if (!isObject(it)) return it;
+ var fn, val;
+ if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
+ if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
+ if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
+ throw TypeError("Can't convert object to primitive value");
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_uid.js":
+/***/ (function(module, exports) {
+
+var id = 0;
+var px = Math.random();
+module.exports = function (key) {
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_wks-define.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var global = __webpack_require__("./node_modules/core-js/library/modules/_global.js");
+var core = __webpack_require__("./node_modules/core-js/library/modules/_core.js");
+var LIBRARY = __webpack_require__("./node_modules/core-js/library/modules/_library.js");
+var wksExt = __webpack_require__("./node_modules/core-js/library/modules/_wks-ext.js");
+var defineProperty = __webpack_require__("./node_modules/core-js/library/modules/_object-dp.js").f;
+module.exports = function (name) {
+ var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
+ if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
+};
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_wks-ext.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+exports.f = __webpack_require__("./node_modules/core-js/library/modules/_wks.js");
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/_wks.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+var store = __webpack_require__("./node_modules/core-js/library/modules/_shared.js")('wks');
+var uid = __webpack_require__("./node_modules/core-js/library/modules/_uid.js");
+var Symbol = __webpack_require__("./node_modules/core-js/library/modules/_global.js").Symbol;
+var USE_SYMBOL = typeof Symbol == 'function';
+
+var $exports = module.exports = function (name) {
+ return store[name] || (store[name] =
+ USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
+};
+
+$exports.store = store;
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/es6.array.iterator.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var addToUnscopables = __webpack_require__("./node_modules/core-js/library/modules/_add-to-unscopables.js");
+var step = __webpack_require__("./node_modules/core-js/library/modules/_iter-step.js");
+var Iterators = __webpack_require__("./node_modules/core-js/library/modules/_iterators.js");
+var toIObject = __webpack_require__("./node_modules/core-js/library/modules/_to-iobject.js");
+
+// 22.1.3.4 Array.prototype.entries()
+// 22.1.3.13 Array.prototype.keys()
+// 22.1.3.29 Array.prototype.values()
+// 22.1.3.30 Array.prototype[@@iterator]()
+module.exports = __webpack_require__("./node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
+ this._t = toIObject(iterated); // target
+ this._i = 0; // next index
+ this._k = kind; // kind
+// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
+}, function () {
+ var O = this._t;
+ var kind = this._k;
+ var index = this._i++;
+ if (!O || index >= O.length) {
+ this._t = undefined;
+ return step(1);
+ }
+ if (kind == 'keys') return step(0, index);
+ if (kind == 'values') return step(0, O[index]);
+ return step(0, [index, O[index]]);
+}, 'values');
+
+// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
+Iterators.Arguments = Iterators.Array;
+
+addToUnscopables('keys');
+addToUnscopables('values');
+addToUnscopables('entries');
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/es6.object.to-string.js":
+/***/ (function(module, exports) {
+
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/es6.string.iterator.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+var $at = __webpack_require__("./node_modules/core-js/library/modules/_string-at.js")(true);
+
+// 21.1.3.27 String.prototype[@@iterator]()
+__webpack_require__("./node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
+ this._t = String(iterated); // target
+ this._i = 0; // next index
+// 21.1.5.2.1 %StringIteratorPrototype%.next()
+}, function () {
+ var O = this._t;
+ var index = this._i;
+ var point;
+ if (index >= O.length) return { value: undefined, done: true };
+ point = $at(O, index);
+ this._i += point.length;
+ return { value: point, done: false };
+});
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/es6.symbol.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+// ECMAScript 6 symbols shim
+var global = __webpack_require__("./node_modules/core-js/library/modules/_global.js");
+var has = __webpack_require__("./node_modules/core-js/library/modules/_has.js");
+var DESCRIPTORS = __webpack_require__("./node_modules/core-js/library/modules/_descriptors.js");
+var $export = __webpack_require__("./node_modules/core-js/library/modules/_export.js");
+var redefine = __webpack_require__("./node_modules/core-js/library/modules/_redefine.js");
+var META = __webpack_require__("./node_modules/core-js/library/modules/_meta.js").KEY;
+var $fails = __webpack_require__("./node_modules/core-js/library/modules/_fails.js");
+var shared = __webpack_require__("./node_modules/core-js/library/modules/_shared.js");
+var setToStringTag = __webpack_require__("./node_modules/core-js/library/modules/_set-to-string-tag.js");
+var uid = __webpack_require__("./node_modules/core-js/library/modules/_uid.js");
+var wks = __webpack_require__("./node_modules/core-js/library/modules/_wks.js");
+var wksExt = __webpack_require__("./node_modules/core-js/library/modules/_wks-ext.js");
+var wksDefine = __webpack_require__("./node_modules/core-js/library/modules/_wks-define.js");
+var enumKeys = __webpack_require__("./node_modules/core-js/library/modules/_enum-keys.js");
+var isArray = __webpack_require__("./node_modules/core-js/library/modules/_is-array.js");
+var anObject = __webpack_require__("./node_modules/core-js/library/modules/_an-object.js");
+var isObject = __webpack_require__("./node_modules/core-js/library/modules/_is-object.js");
+var toIObject = __webpack_require__("./node_modules/core-js/library/modules/_to-iobject.js");
+var toPrimitive = __webpack_require__("./node_modules/core-js/library/modules/_to-primitive.js");
+var createDesc = __webpack_require__("./node_modules/core-js/library/modules/_property-desc.js");
+var _create = __webpack_require__("./node_modules/core-js/library/modules/_object-create.js");
+var gOPNExt = __webpack_require__("./node_modules/core-js/library/modules/_object-gopn-ext.js");
+var $GOPD = __webpack_require__("./node_modules/core-js/library/modules/_object-gopd.js");
+var $DP = __webpack_require__("./node_modules/core-js/library/modules/_object-dp.js");
+var $keys = __webpack_require__("./node_modules/core-js/library/modules/_object-keys.js");
+var gOPD = $GOPD.f;
+var dP = $DP.f;
+var gOPN = gOPNExt.f;
+var $Symbol = global.Symbol;
+var $JSON = global.JSON;
+var _stringify = $JSON && $JSON.stringify;
+var PROTOTYPE = 'prototype';
+var HIDDEN = wks('_hidden');
+var TO_PRIMITIVE = wks('toPrimitive');
+var isEnum = {}.propertyIsEnumerable;
+var SymbolRegistry = shared('symbol-registry');
+var AllSymbols = shared('symbols');
+var OPSymbols = shared('op-symbols');
+var ObjectProto = Object[PROTOTYPE];
+var USE_NATIVE = typeof $Symbol == 'function';
+var QObject = global.QObject;
+// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
+var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
+
+// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
+var setSymbolDesc = DESCRIPTORS && $fails(function () {
+ return _create(dP({}, 'a', {
+ get: function () { return dP(this, 'a', { value: 7 }).a; }
+ })).a != 7;
+}) ? function (it, key, D) {
+ var protoDesc = gOPD(ObjectProto, key);
+ if (protoDesc) delete ObjectProto[key];
+ dP(it, key, D);
+ if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
+} : dP;
+
+var wrap = function (tag) {
+ var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
+ sym._k = tag;
+ return sym;
+};
+
+var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
+ return typeof it == 'symbol';
+} : function (it) {
+ return it instanceof $Symbol;
+};
+
+var $defineProperty = function defineProperty(it, key, D) {
+ if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
+ anObject(it);
+ key = toPrimitive(key, true);
+ anObject(D);
+ if (has(AllSymbols, key)) {
+ if (!D.enumerable) {
+ if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
+ it[HIDDEN][key] = true;
+ } else {
+ if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
+ D = _create(D, { enumerable: createDesc(0, false) });
+ } return setSymbolDesc(it, key, D);
+ } return dP(it, key, D);
+};
+var $defineProperties = function defineProperties(it, P) {
+ anObject(it);
+ var keys = enumKeys(P = toIObject(P));
+ var i = 0;
+ var l = keys.length;
+ var key;
+ while (l > i) $defineProperty(it, key = keys[i++], P[key]);
+ return it;
+};
+var $create = function create(it, P) {
+ return P === undefined ? _create(it) : $defineProperties(_create(it), P);
+};
+var $propertyIsEnumerable = function propertyIsEnumerable(key) {
+ var E = isEnum.call(this, key = toPrimitive(key, true));
+ if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
+ return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
+};
+var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
+ it = toIObject(it);
+ key = toPrimitive(key, true);
+ if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
+ var D = gOPD(it, key);
+ if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
+ return D;
+};
+var $getOwnPropertyNames = function getOwnPropertyNames(it) {
+ var names = gOPN(toIObject(it));
+ var result = [];
+ var i = 0;
+ var key;
+ while (names.length > i) {
+ if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
+ } return result;
+};
+var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
+ var IS_OP = it === ObjectProto;
+ var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
+ var result = [];
+ var i = 0;
+ var key;
+ while (names.length > i) {
+ if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
+ } return result;
+};
+
+// 19.4.1.1 Symbol([description])
+if (!USE_NATIVE) {
+ $Symbol = function Symbol() {
+ if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
+ var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
+ var $set = function (value) {
+ if (this === ObjectProto) $set.call(OPSymbols, value);
+ if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
+ setSymbolDesc(this, tag, createDesc(1, value));
+ };
+ if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
+ return wrap(tag);
+ };
+ redefine($Symbol[PROTOTYPE], 'toString', function toString() {
+ return this._k;
+ });
+
+ $GOPD.f = $getOwnPropertyDescriptor;
+ $DP.f = $defineProperty;
+ __webpack_require__("./node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
+ __webpack_require__("./node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
+ __webpack_require__("./node_modules/core-js/library/modules/_object-gops.js").f = $getOwnPropertySymbols;
+
+ if (DESCRIPTORS && !__webpack_require__("./node_modules/core-js/library/modules/_library.js")) {
+ redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
+ }
+
+ wksExt.f = function (name) {
+ return wrap(wks(name));
+ };
+}
+
+$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });
+
+for (var es6Symbols = (
+ // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
+ 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
+).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);
+
+for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);
+
+$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
+ // 19.4.2.1 Symbol.for(key)
+ 'for': function (key) {
+ return has(SymbolRegistry, key += '')
+ ? SymbolRegistry[key]
+ : SymbolRegistry[key] = $Symbol(key);
+ },
+ // 19.4.2.5 Symbol.keyFor(sym)
+ keyFor: function keyFor(sym) {
+ if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
+ for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
+ },
+ useSetter: function () { setter = true; },
+ useSimple: function () { setter = false; }
+});
+
+$export($export.S + $export.F * !USE_NATIVE, 'Object', {
+ // 19.1.2.2 Object.create(O [, Properties])
+ create: $create,
+ // 19.1.2.4 Object.defineProperty(O, P, Attributes)
+ defineProperty: $defineProperty,
+ // 19.1.2.3 Object.defineProperties(O, Properties)
+ defineProperties: $defineProperties,
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $getOwnPropertyNames,
+ // 19.1.2.8 Object.getOwnPropertySymbols(O)
+ getOwnPropertySymbols: $getOwnPropertySymbols
+});
+
+// 24.3.2 JSON.stringify(value [, replacer [, space]])
+$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
+ var S = $Symbol();
+ // MS Edge converts symbol values to JSON as {}
+ // WebKit converts symbol values to JSON as null
+ // V8 throws on boxed symbols
+ return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
+})), 'JSON', {
+ stringify: function stringify(it) {
+ var args = [it];
+ var i = 1;
+ var replacer, $replacer;
+ while (arguments.length > i) args.push(arguments[i++]);
+ $replacer = replacer = args[1];
+ if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
+ if (!isArray(replacer)) replacer = function (key, value) {
+ if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
+ if (!isSymbol(value)) return value;
+ };
+ args[1] = replacer;
+ return _stringify.apply($JSON, args);
+ }
+});
+
+// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
+$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__("./node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
+// 19.4.3.5 Symbol.prototype[@@toStringTag]
+setToStringTag($Symbol, 'Symbol');
+// 20.2.1.9 Math[@@toStringTag]
+setToStringTag(Math, 'Math', true);
+// 24.3.3 JSON[@@toStringTag]
+setToStringTag(global.JSON, 'JSON', true);
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+__webpack_require__("./node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/es7.symbol.observable.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+__webpack_require__("./node_modules/core-js/library/modules/_wks-define.js")('observable');
+
+
+/***/ }),
+
+/***/ "./node_modules/core-js/library/modules/web.dom.iterable.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+__webpack_require__("./node_modules/core-js/library/modules/es6.array.iterator.js");
+var global = __webpack_require__("./node_modules/core-js/library/modules/_global.js");
+var hide = __webpack_require__("./node_modules/core-js/library/modules/_hide.js");
+var Iterators = __webpack_require__("./node_modules/core-js/library/modules/_iterators.js");
+var TO_STRING_TAG = __webpack_require__("./node_modules/core-js/library/modules/_wks.js")('toStringTag');
+
+var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
+ 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
+ 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
+ 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
+ 'TextTrackList,TouchList').split(',');
+
+for (var i = 0; i < DOMIterables.length; i++) {
+ var NAME = DOMIterables[i];
+ var Collection = global[NAME];
+ var proto = Collection && Collection.prototype;
+ if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
+ Iterators[NAME] = Iterators.Array;
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-15965e3b\",\"scoped\":true,\"hasInlineConfig\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./node_modules/vuetable-2/src/components/Vuetable.vue":
+/***/ (function(module, exports, __webpack_require__) {
+
+exports = module.exports = __webpack_require__("./node_modules/css-loader/lib/css-base.js")(false);
+// imports
+
+
+// module
+exports.push([module.i, "\n[v-cloak][data-v-15965e3b] {\n display: none;\n}\n.vuetable th.sortable[data-v-15965e3b]:hover {\n color: #2185d0;\n cursor: pointer;\n}\n.vuetable-body-wrapper[data-v-15965e3b] {\n position:relative;\n overflow-y:auto;\n}\n.vuetable-head-wrapper[data-v-15965e3b] {\n overflow-x: hidden;\n}\n.vuetable-actions[data-v-15965e3b] {\n width: 15%;\n padding: 12px 0px;\n text-align: center;\n}\n.vuetable-pagination[data-v-15965e3b] {\n background: #f9fafb !important;\n}\n.vuetable-pagination-info[data-v-15965e3b] {\n margin-top: auto;\n margin-bottom: auto;\n}\n.vuetable-empty-result[data-v-15965e3b] {\n text-align: center;\n}\n.vuetable-clip-text[data-v-15965e3b] {\n white-space: pre-wrap;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n}\n.vuetable-semantic-no-top[data-v-15965e3b] {\n border-top:none !important;\n margin-top:0 !important;\n}\n.vuetable-fixed-layout[data-v-15965e3b] {\n table-layout: fixed;\n}\n.vuetable-gutter-col[data-v-15965e3b] {\n padding: 0 !important;\n border-left: none !important;\n border-right: none !important;\n}\n", ""]);
+
+// exports
+
+
+/***/ }),
+
+/***/ "./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-3cd1b306\",\"scoped\":false,\"hasInlineConfig\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./resources/js/src/components/client/ClientList.vue":
+/***/ (function(module, exports, __webpack_require__) {
+
+exports = module.exports = __webpack_require__("./node_modules/css-loader/lib/css-base.js")(false);
+// imports
+
+
+// module
+exports.push([module.i, "\n.pagination {\n margin: 0;\n float: right;\n}\n.pagination a.page {\n border: 1px solid lightgray;\n border-radius: 3px;\n padding: 5px 10px;\n margin-right: 2px;\n}\n.pagination a.page.active {\n color: white;\n background-color: #337ab7;\n border: 1px solid lightgray;\n border-radius: 3px;\n padding: 5px 10px;\n margin-right: 2px;\n}\n.pagination a.btn-nav {\n border: 1px solid lightgray;\n border-radius: 3px;\n padding: 5px 7px;\n margin-right: 2px;\n}\n.pagination a.btn-nav.disabled {\n color: lightgray;\n border: 1px solid lightgray;\n border-radius: 3px;\n padding: 5px 7px;\n margin-right: 2px;\n cursor: not-allowed;\n}\n.pagination-info {\n float: left;\n}\n", ""]);
+
+// exports
+
+
+/***/ }),
+
+/***/ "./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-be66a0f4\",\"scoped\":false,\"hasInlineConfig\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./resources/js/src/components/util/VuetableFilterBar.vue":
+/***/ (function(module, exports, __webpack_require__) {
+
+exports = module.exports = __webpack_require__("./node_modules/css-loader/lib/css-base.js")(false);
+// imports
+
+
+// module
+exports.push([module.i, "\n.form-inline > * {\n margin:5px 10px;\n}\n", ""]);
+
+// exports
+
+
+/***/ }),
+
+/***/ "./node_modules/css-loader/lib/css-base.js":
+/***/ (function(module, exports) {
+
+/*
+ MIT License http://www.opensource.org/licenses/mit-license.php
+ Author Tobias Koppers @sokra
+*/
+// css base code, injected by the css-loader
+module.exports = function(useSourceMap) {
+ var list = [];
+
+ // return the list of modules as css string
+ list.toString = function toString() {
+ return this.map(function (item) {
+ var content = cssWithMappingToString(item, useSourceMap);
+ if(item[2]) {
+ return "@media " + item[2] + "{" + content + "}";
+ } else {
+ return content;
+ }
+ }).join("");
+ };
+
+ // import a list of modules into the list
+ list.i = function(modules, mediaQuery) {
+ if(typeof modules === "string")
+ modules = [[null, modules, ""]];
+ var alreadyImportedModules = {};
+ for(var i = 0; i < this.length; i++) {
+ var id = this[i][0];
+ if(typeof id === "number")
+ alreadyImportedModules[id] = true;
+ }
+ for(i = 0; i < modules.length; i++) {
+ var item = modules[i];
+ // skip already imported module
+ // this implementation is not 100% perfect for weird media query combinations
+ // when a module is imported multiple times with different media queries.
+ // I hope this will never occur (Hey this way we have smaller bundles)
+ if(typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) {
+ if(mediaQuery && !item[2]) {
+ item[2] = mediaQuery;
+ } else if(mediaQuery) {
+ item[2] = "(" + item[2] + ") and (" + mediaQuery + ")";
+ }
+ list.push(item);
+ }
+ }
+ };
+ return list;
+};
+
+function cssWithMappingToString(item, useSourceMap) {
+ var content = item[1] || '';
+ var cssMapping = item[3];
+ if (!cssMapping) {
+ return content;
+ }
+
+ if (useSourceMap && typeof btoa === 'function') {
+ var sourceMapping = toComment(cssMapping);
+ var sourceURLs = cssMapping.sources.map(function (source) {
+ return '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'
+ });
+
+ return [content].concat(sourceURLs).concat([sourceMapping]).join('\n');
+ }
+
+ return [content].join('\n');
+}
+
+// Adapted from convert-source-map (MIT)
+function toComment(sourceMap) {
+ // eslint-disable-next-line no-undef
+ var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));
+ var data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;
+
+ return '/*# ' + data + ' */';
+}
+
+
+/***/ }),
+
+/***/ "./node_modules/process/browser.js":
+/***/ (function(module, exports) {
+
+// shim for using process in browser
+var process = module.exports = {};
+
+// cached from whatever global is present so that test runners that stub it
+// don't break things. But we need to wrap it in a try catch in case it is
+// wrapped in strict mode code which doesn't define any globals. It's inside a
+// function because try/catches deoptimize in certain engines.
+
+var cachedSetTimeout;
+var cachedClearTimeout;
+
+function defaultSetTimout() {
+ throw new Error('setTimeout has not been defined');
+}
+function defaultClearTimeout () {
+ throw new Error('clearTimeout has not been defined');
+}
+(function () {
+ try {
+ if (typeof setTimeout === 'function') {
+ cachedSetTimeout = setTimeout;
+ } else {
+ cachedSetTimeout = defaultSetTimout;
+ }
+ } catch (e) {
+ cachedSetTimeout = defaultSetTimout;
+ }
+ try {
+ if (typeof clearTimeout === 'function') {
+ cachedClearTimeout = clearTimeout;
+ } else {
+ cachedClearTimeout = defaultClearTimeout;
+ }
+ } catch (e) {
+ cachedClearTimeout = defaultClearTimeout;
+ }
+} ())
+function runTimeout(fun) {
+ if (cachedSetTimeout === setTimeout) {
+ //normal enviroments in sane situations
+ return setTimeout(fun, 0);
+ }
+ // if setTimeout wasn't available but was latter defined
+ if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
+ cachedSetTimeout = setTimeout;
+ return setTimeout(fun, 0);
+ }
+ try {
+ // when when somebody has screwed with setTimeout but no I.E. maddness
+ return cachedSetTimeout(fun, 0);
+ } catch(e){
+ try {
+ // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
+ return cachedSetTimeout.call(null, fun, 0);
+ } catch(e){
+ // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
+ return cachedSetTimeout.call(this, fun, 0);
+ }
+ }
+
+
+}
+function runClearTimeout(marker) {
+ if (cachedClearTimeout === clearTimeout) {
+ //normal enviroments in sane situations
+ return clearTimeout(marker);
+ }
+ // if clearTimeout wasn't available but was latter defined
+ if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
+ cachedClearTimeout = clearTimeout;
+ return clearTimeout(marker);
+ }
+ try {
+ // when when somebody has screwed with setTimeout but no I.E. maddness
+ return cachedClearTimeout(marker);
+ } catch (e){
+ try {
+ // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
+ return cachedClearTimeout.call(null, marker);
+ } catch (e){
+ // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
+ // Some versions of I.E. have different rules for clearTimeout vs setTimeout
+ return cachedClearTimeout.call(this, marker);
+ }
+ }
+
+
+
+}
+var queue = [];
+var draining = false;
+var currentQueue;
+var queueIndex = -1;
+
+function cleanUpNextTick() {
+ if (!draining || !currentQueue) {
+ return;
+ }
+ draining = false;
+ if (currentQueue.length) {
+ queue = currentQueue.concat(queue);
+ } else {
+ queueIndex = -1;
+ }
+ if (queue.length) {
+ drainQueue();
+ }
+}
+
+function drainQueue() {
+ if (draining) {
+ return;
+ }
+ var timeout = runTimeout(cleanUpNextTick);
+ draining = true;
+
+ var len = queue.length;
+ while(len) {
+ currentQueue = queue;
+ queue = [];
+ while (++queueIndex < len) {
+ if (currentQueue) {
+ currentQueue[queueIndex].run();
+ }
+ }
+ queueIndex = -1;
+ len = queue.length;
+ }
+ currentQueue = null;
+ draining = false;
+ runClearTimeout(timeout);
+}
+
+process.nextTick = function (fun) {
+ var args = new Array(arguments.length - 1);
+ if (arguments.length > 1) {
+ for (var i = 1; i < arguments.length; i++) {
+ args[i - 1] = arguments[i];
+ }
+ }
+ queue.push(new Item(fun, args));
+ if (queue.length === 1 && !draining) {
+ runTimeout(drainQueue);
+ }
+};
+
+// v8 likes predictible objects
+function Item(fun, array) {
+ this.fun = fun;
+ this.array = array;
+}
+Item.prototype.run = function () {
+ this.fun.apply(null, this.array);
+};
+process.title = 'browser';
+process.browser = true;
+process.env = {};
+process.argv = [];
+process.version = ''; // empty string to avoid regexp issues
+process.versions = {};
+
+function noop() {}
+
+process.on = noop;
+process.addListener = noop;
+process.once = noop;
+process.off = noop;
+process.removeListener = noop;
+process.removeAllListeners = noop;
+process.emit = noop;
+process.prependListener = noop;
+process.prependOnceListener = noop;
+
+process.listeners = function (name) { return [] }
+
+process.binding = function (name) {
+ throw new Error('process.binding is not supported');
+};
+
+process.cwd = function () { return '/' };
+process.chdir = function (dir) {
+ throw new Error('process.chdir is not supported');
+};
+process.umask = function() { return 0; };
+
+
+/***/ }),
+
+/***/ "./node_modules/setimmediate/setImmediate.js":
+/***/ (function(module, exports, __webpack_require__) {
+
+/* WEBPACK VAR INJECTION */(function(global, process) {(function (global, undefined) {
+ "use strict";
+
+ if (global.setImmediate) {
+ return;
+ }
+
+ var nextHandle = 1; // Spec says greater than zero
+ var tasksByHandle = {};
+ var currentlyRunningATask = false;
+ var doc = global.document;
+ var registerImmediate;
+
+ function setImmediate(callback) {
+ // Callback can either be a function or a string
+ if (typeof callback !== "function") {
+ callback = new Function("" + callback);
+ }
+ // Copy function arguments
+ var args = new Array(arguments.length - 1);
+ for (var i = 0; i < args.length; i++) {
+ args[i] = arguments[i + 1];
+ }
+ // Store and register the task
+ var task = { callback: callback, args: args };
+ tasksByHandle[nextHandle] = task;
+ registerImmediate(nextHandle);
+ return nextHandle++;
+ }
+
+ function clearImmediate(handle) {
+ delete tasksByHandle[handle];
+ }
+
+ function run(task) {
+ var callback = task.callback;
+ var args = task.args;
+ switch (args.length) {
+ case 0:
+ callback();
+ break;
+ case 1:
+ callback(args[0]);
+ break;
+ case 2:
+ callback(args[0], args[1]);
+ break;
+ case 3:
+ callback(args[0], args[1], args[2]);
+ break;
+ default:
+ callback.apply(undefined, args);
+ break;
+ }
+ }
+
+ function runIfPresent(handle) {
+ // From the spec: "Wait until any invocations of this algorithm started before this one have completed."
+ // So if we're currently running a task, we'll need to delay this invocation.
+ if (currentlyRunningATask) {
+ // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a
+ // "too much recursion" error.
+ setTimeout(runIfPresent, 0, handle);
+ } else {
+ var task = tasksByHandle[handle];
+ if (task) {
+ currentlyRunningATask = true;
+ try {
+ run(task);
+ } finally {
+ clearImmediate(handle);
+ currentlyRunningATask = false;
+ }
+ }
+ }
+ }
+
+ function installNextTickImplementation() {
+ registerImmediate = function(handle) {
+ process.nextTick(function () { runIfPresent(handle); });
+ };
+ }
+
+ function canUsePostMessage() {
+ // The test against `importScripts` prevents this implementation from being installed inside a web worker,
+ // where `global.postMessage` means something completely different and can't be used for this purpose.
+ if (global.postMessage && !global.importScripts) {
+ var postMessageIsAsynchronous = true;
+ var oldOnMessage = global.onmessage;
+ global.onmessage = function() {
+ postMessageIsAsynchronous = false;
+ };
+ global.postMessage("", "*");
+ global.onmessage = oldOnMessage;
+ return postMessageIsAsynchronous;
+ }
+ }
+
+ function installPostMessageImplementation() {
+ // Installs an event handler on `global` for the `message` event: see
+ // * https://developer.mozilla.org/en/DOM/window.postMessage
+ // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages
+
+ var messagePrefix = "setImmediate$" + Math.random() + "$";
+ var onGlobalMessage = function(event) {
+ if (event.source === global &&
+ typeof event.data === "string" &&
+ event.data.indexOf(messagePrefix) === 0) {
+ runIfPresent(+event.data.slice(messagePrefix.length));
+ }
+ };
+
+ if (global.addEventListener) {
+ global.addEventListener("message", onGlobalMessage, false);
+ } else {
+ global.attachEvent("onmessage", onGlobalMessage);
+ }
+
+ registerImmediate = function(handle) {
+ global.postMessage(messagePrefix + handle, "*");
+ };
+ }
+
+ function installMessageChannelImplementation() {
+ var channel = new MessageChannel();
+ channel.port1.onmessage = function(event) {
+ var handle = event.data;
+ runIfPresent(handle);
+ };
+
+ registerImmediate = function(handle) {
+ channel.port2.postMessage(handle);
+ };
+ }
+
+ function installReadyStateChangeImplementation() {
+ var html = doc.documentElement;
+ registerImmediate = function(handle) {
+ // Create a
+
+
\ No newline at end of file
diff --git a/resources/js/src/components/util/VuetableFilterBar.vue b/resources/js/src/components/util/VuetableFilterBar.vue
new file mode 100644
index 000000000000..c7ab4f68644d
--- /dev/null
+++ b/resources/js/src/components/util/VuetableFilterBar.vue
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/js/src/components/util/VuetablePaginationBootstrap.vue b/resources/js/src/components/util/VuetablePaginationBootstrap.vue
new file mode 100644
index 000000000000..38e9e4a5bf8f
--- /dev/null
+++ b/resources/js/src/components/util/VuetablePaginationBootstrap.vue
@@ -0,0 +1,33 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/js/src/shims-vue.d.ts b/resources/js/src/shims-vue.d.ts
new file mode 100644
index 000000000000..5c85124f0285
--- /dev/null
+++ b/resources/js/src/shims-vue.d.ts
@@ -0,0 +1,4 @@
+declare module '*.vue' {
+ import Vue from 'vue'
+ export default Vue
+}
\ No newline at end of file
diff --git a/resources/views/client/list.blade.php b/resources/views/client/list.blade.php
index c7ed43250b11..7825ec0a184e 100644
--- a/resources/views/client/list.blade.php
+++ b/resources/views/client/list.blade.php
@@ -20,9 +20,9 @@
-
+
-
+
{!! $html->table() !!}
diff --git a/resources/views/client/vue_list.blade.php b/resources/views/client/vue_list.blade.php
new file mode 100644
index 000000000000..744e7a78bf8f
--- /dev/null
+++ b/resources/views/client/vue_list.blade.php
@@ -0,0 +1,38 @@
+@extends('layouts.master', ['header' => $header])
+
+@section('head')
+
+@endsection
+
+@section('body')
+ @parent
+
+
+ {{ Breadcrumbs::render('clients') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+@endsection
+
+@section('footer')
+
+@endsection
\ No newline at end of file
diff --git a/resources/views/vendor/mail/html/button.blade.php b/resources/views/vendor/mail/html/button.blade.php
new file mode 100644
index 000000000000..9d14d9b1619b
--- /dev/null
+++ b/resources/views/vendor/mail/html/button.blade.php
@@ -0,0 +1,19 @@
+
diff --git a/resources/views/vendor/mail/html/footer.blade.php b/resources/views/vendor/mail/html/footer.blade.php
new file mode 100644
index 000000000000..c3f9360abd4a
--- /dev/null
+++ b/resources/views/vendor/mail/html/footer.blade.php
@@ -0,0 +1,11 @@
+
+
+
+ |
+
diff --git a/resources/views/vendor/mail/html/header.blade.php b/resources/views/vendor/mail/html/header.blade.php
new file mode 100644
index 000000000000..eefabab9248b
--- /dev/null
+++ b/resources/views/vendor/mail/html/header.blade.php
@@ -0,0 +1,7 @@
+
+
+
diff --git a/resources/views/vendor/mail/html/layout.blade.php b/resources/views/vendor/mail/html/layout.blade.php
new file mode 100644
index 000000000000..4049a69c9dbb
--- /dev/null
+++ b/resources/views/vendor/mail/html/layout.blade.php
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ Illuminate\Mail\Markdown::parse($slot) }}
+
+ {{ $subcopy ?? '' }}
+ |
+
+
+ |
+
+
+ {{ $footer ?? '' }}
+
+ |
+
+
+
+
diff --git a/resources/views/vendor/mail/html/message.blade.php b/resources/views/vendor/mail/html/message.blade.php
new file mode 100644
index 000000000000..1ae9ed8f1bf6
--- /dev/null
+++ b/resources/views/vendor/mail/html/message.blade.php
@@ -0,0 +1,27 @@
+@component('mail::layout')
+ {{-- Header --}}
+ @slot('header')
+ @component('mail::header', ['url' => config('app.url')])
+ {{ config('app.name') }}
+ @endcomponent
+ @endslot
+
+ {{-- Body --}}
+ {{ $slot }}
+
+ {{-- Subcopy --}}
+ @isset($subcopy)
+ @slot('subcopy')
+ @component('mail::subcopy')
+ {{ $subcopy }}
+ @endcomponent
+ @endslot
+ @endisset
+
+ {{-- Footer --}}
+ @slot('footer')
+ @component('mail::footer')
+ © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.')
+ @endcomponent
+ @endslot
+@endcomponent
diff --git a/resources/views/vendor/mail/html/panel.blade.php b/resources/views/vendor/mail/html/panel.blade.php
new file mode 100644
index 000000000000..f397080206e6
--- /dev/null
+++ b/resources/views/vendor/mail/html/panel.blade.php
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+ {{ Illuminate\Mail\Markdown::parse($slot) }}
+ |
+
+
+ |
+
+
diff --git a/resources/views/vendor/mail/html/promotion.blade.php b/resources/views/vendor/mail/html/promotion.blade.php
new file mode 100644
index 000000000000..0debcf8a3811
--- /dev/null
+++ b/resources/views/vendor/mail/html/promotion.blade.php
@@ -0,0 +1,7 @@
+
diff --git a/resources/views/vendor/mail/html/promotion/button.blade.php b/resources/views/vendor/mail/html/promotion/button.blade.php
new file mode 100644
index 000000000000..8e79081c52ad
--- /dev/null
+++ b/resources/views/vendor/mail/html/promotion/button.blade.php
@@ -0,0 +1,13 @@
+
diff --git a/resources/views/vendor/mail/html/subcopy.blade.php b/resources/views/vendor/mail/html/subcopy.blade.php
new file mode 100644
index 000000000000..c3df7b4c0a5b
--- /dev/null
+++ b/resources/views/vendor/mail/html/subcopy.blade.php
@@ -0,0 +1,7 @@
+
+
+
+ {{ Illuminate\Mail\Markdown::parse($slot) }}
+ |
+
+
diff --git a/resources/views/vendor/mail/html/table.blade.php b/resources/views/vendor/mail/html/table.blade.php
new file mode 100644
index 000000000000..a5f3348b233a
--- /dev/null
+++ b/resources/views/vendor/mail/html/table.blade.php
@@ -0,0 +1,3 @@
+
+{{ Illuminate\Mail\Markdown::parse($slot) }}
+
diff --git a/resources/views/vendor/mail/html/themes/default.css b/resources/views/vendor/mail/html/themes/default.css
new file mode 100644
index 000000000000..aa4afb266084
--- /dev/null
+++ b/resources/views/vendor/mail/html/themes/default.css
@@ -0,0 +1,290 @@
+/* Base */
+
+body, body *:not(html):not(style):not(br):not(tr):not(code) {
+ font-family: Avenir, Helvetica, sans-serif;
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #f5f8fa;
+ color: #74787E;
+ height: 100%;
+ hyphens: auto;
+ line-height: 1.4;
+ margin: 0;
+ -moz-hyphens: auto;
+ -ms-word-break: break-all;
+ width: 100% !important;
+ -webkit-hyphens: auto;
+ -webkit-text-size-adjust: none;
+ word-break: break-all;
+ word-break: break-word;
+}
+
+p,
+ul,
+ol,
+blockquote {
+ line-height: 1.4;
+ text-align: left;
+}
+
+a {
+ color: #3869D4;
+}
+
+a img {
+ border: none;
+}
+
+/* Typography */
+
+h1 {
+ color: #2F3133;
+ font-size: 19px;
+ font-weight: bold;
+ margin-top: 0;
+ text-align: left;
+}
+
+h2 {
+ color: #2F3133;
+ font-size: 16px;
+ font-weight: bold;
+ margin-top: 0;
+ text-align: left;
+}
+
+h3 {
+ color: #2F3133;
+ font-size: 14px;
+ font-weight: bold;
+ margin-top: 0;
+ text-align: left;
+}
+
+p {
+ color: #74787E;
+ font-size: 16px;
+ line-height: 1.5em;
+ margin-top: 0;
+ text-align: left;
+}
+
+p.sub {
+ font-size: 12px;
+}
+
+img {
+ max-width: 100%;
+}
+
+/* Layout */
+
+.wrapper {
+ background-color: #f5f8fa;
+ margin: 0;
+ padding: 0;
+ width: 100%;
+ -premailer-cellpadding: 0;
+ -premailer-cellspacing: 0;
+ -premailer-width: 100%;
+}
+
+.content {
+ margin: 0;
+ padding: 0;
+ width: 100%;
+ -premailer-cellpadding: 0;
+ -premailer-cellspacing: 0;
+ -premailer-width: 100%;
+}
+
+/* Header */
+
+.header {
+ padding: 25px 0;
+ text-align: center;
+}
+
+.header a {
+ color: #bbbfc3;
+ font-size: 19px;
+ font-weight: bold;
+ text-decoration: none;
+ text-shadow: 0 1px 0 white;
+}
+
+/* Body */
+
+.body {
+ background-color: #FFFFFF;
+ border-bottom: 1px solid #EDEFF2;
+ border-top: 1px solid #EDEFF2;
+ margin: 0;
+ padding: 0;
+ width: 100%;
+ -premailer-cellpadding: 0;
+ -premailer-cellspacing: 0;
+ -premailer-width: 100%;
+}
+
+.inner-body {
+ background-color: #FFFFFF;
+ margin: 0 auto;
+ padding: 0;
+ width: 570px;
+ -premailer-cellpadding: 0;
+ -premailer-cellspacing: 0;
+ -premailer-width: 570px;
+}
+
+/* Subcopy */
+
+.subcopy {
+ border-top: 1px solid #EDEFF2;
+ margin-top: 25px;
+ padding-top: 25px;
+}
+
+.subcopy p {
+ font-size: 12px;
+}
+
+/* Footer */
+
+.footer {
+ margin: 0 auto;
+ padding: 0;
+ text-align: center;
+ width: 570px;
+ -premailer-cellpadding: 0;
+ -premailer-cellspacing: 0;
+ -premailer-width: 570px;
+}
+
+.footer p {
+ color: #AEAEAE;
+ font-size: 12px;
+ text-align: center;
+}
+
+/* Tables */
+
+.table table {
+ margin: 30px auto;
+ width: 100%;
+ -premailer-cellpadding: 0;
+ -premailer-cellspacing: 0;
+ -premailer-width: 100%;
+}
+
+.table th {
+ border-bottom: 1px solid #EDEFF2;
+ padding-bottom: 8px;
+ margin: 0;
+}
+
+.table td {
+ color: #74787E;
+ font-size: 15px;
+ line-height: 18px;
+ padding: 10px 0;
+ margin: 0;
+}
+
+.content-cell {
+ padding: 35px;
+}
+
+/* Buttons */
+
+.action {
+ margin: 30px auto;
+ padding: 0;
+ text-align: center;
+ width: 100%;
+ -premailer-cellpadding: 0;
+ -premailer-cellspacing: 0;
+ -premailer-width: 100%;
+}
+
+.button {
+ border-radius: 3px;
+ box-shadow: 0 2px 3px rgba(0, 0, 0, 0.16);
+ color: #FFF;
+ display: inline-block;
+ text-decoration: none;
+ -webkit-text-size-adjust: none;
+}
+
+.button-blue,
+.button-primary {
+ background-color: #3097D1;
+ border-top: 10px solid #3097D1;
+ border-right: 18px solid #3097D1;
+ border-bottom: 10px solid #3097D1;
+ border-left: 18px solid #3097D1;
+}
+
+.button-green,
+.button-success {
+ background-color: #2ab27b;
+ border-top: 10px solid #2ab27b;
+ border-right: 18px solid #2ab27b;
+ border-bottom: 10px solid #2ab27b;
+ border-left: 18px solid #2ab27b;
+}
+
+.button-red,
+.button-error {
+ background-color: #bf5329;
+ border-top: 10px solid #bf5329;
+ border-right: 18px solid #bf5329;
+ border-bottom: 10px solid #bf5329;
+ border-left: 18px solid #bf5329;
+}
+
+/* Panels */
+
+.panel {
+ margin: 0 0 21px;
+}
+
+.panel-content {
+ background-color: #EDEFF2;
+ padding: 16px;
+}
+
+.panel-item {
+ padding: 0;
+}
+
+.panel-item p:last-of-type {
+ margin-bottom: 0;
+ padding-bottom: 0;
+}
+
+/* Promotions */
+
+.promotion {
+ background-color: #FFFFFF;
+ border: 2px dashed #9BA2AB;
+ margin: 0;
+ margin-bottom: 25px;
+ margin-top: 25px;
+ padding: 24px;
+ width: 100%;
+ -premailer-cellpadding: 0;
+ -premailer-cellspacing: 0;
+ -premailer-width: 100%;
+}
+
+.promotion h1 {
+ text-align: center;
+}
+
+.promotion p {
+ font-size: 15px;
+ text-align: center;
+}
diff --git a/resources/views/vendor/mail/markdown/button.blade.php b/resources/views/vendor/mail/markdown/button.blade.php
new file mode 100644
index 000000000000..97444ebdcfd1
--- /dev/null
+++ b/resources/views/vendor/mail/markdown/button.blade.php
@@ -0,0 +1 @@
+{{ $slot }}: {{ $url }}
diff --git a/resources/views/vendor/mail/markdown/footer.blade.php b/resources/views/vendor/mail/markdown/footer.blade.php
new file mode 100644
index 000000000000..3338f620e42f
--- /dev/null
+++ b/resources/views/vendor/mail/markdown/footer.blade.php
@@ -0,0 +1 @@
+{{ $slot }}
diff --git a/resources/views/vendor/mail/markdown/header.blade.php b/resources/views/vendor/mail/markdown/header.blade.php
new file mode 100644
index 000000000000..aaa3e5754446
--- /dev/null
+++ b/resources/views/vendor/mail/markdown/header.blade.php
@@ -0,0 +1 @@
+[{{ $slot }}]({{ $url }})
diff --git a/resources/views/vendor/mail/markdown/layout.blade.php b/resources/views/vendor/mail/markdown/layout.blade.php
new file mode 100644
index 000000000000..9378baa0771b
--- /dev/null
+++ b/resources/views/vendor/mail/markdown/layout.blade.php
@@ -0,0 +1,9 @@
+{!! strip_tags($header) !!}
+
+{!! strip_tags($slot) !!}
+@isset($subcopy)
+
+{!! strip_tags($subcopy) !!}
+@endisset
+
+{!! strip_tags($footer) !!}
diff --git a/resources/views/vendor/mail/markdown/message.blade.php b/resources/views/vendor/mail/markdown/message.blade.php
new file mode 100644
index 000000000000..1ae9ed8f1bf6
--- /dev/null
+++ b/resources/views/vendor/mail/markdown/message.blade.php
@@ -0,0 +1,27 @@
+@component('mail::layout')
+ {{-- Header --}}
+ @slot('header')
+ @component('mail::header', ['url' => config('app.url')])
+ {{ config('app.name') }}
+ @endcomponent
+ @endslot
+
+ {{-- Body --}}
+ {{ $slot }}
+
+ {{-- Subcopy --}}
+ @isset($subcopy)
+ @slot('subcopy')
+ @component('mail::subcopy')
+ {{ $subcopy }}
+ @endcomponent
+ @endslot
+ @endisset
+
+ {{-- Footer --}}
+ @slot('footer')
+ @component('mail::footer')
+ © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.')
+ @endcomponent
+ @endslot
+@endcomponent
diff --git a/resources/views/vendor/mail/markdown/panel.blade.php b/resources/views/vendor/mail/markdown/panel.blade.php
new file mode 100644
index 000000000000..3338f620e42f
--- /dev/null
+++ b/resources/views/vendor/mail/markdown/panel.blade.php
@@ -0,0 +1 @@
+{{ $slot }}
diff --git a/resources/views/vendor/mail/markdown/promotion.blade.php b/resources/views/vendor/mail/markdown/promotion.blade.php
new file mode 100644
index 000000000000..3338f620e42f
--- /dev/null
+++ b/resources/views/vendor/mail/markdown/promotion.blade.php
@@ -0,0 +1 @@
+{{ $slot }}
diff --git a/resources/views/vendor/mail/markdown/promotion/button.blade.php b/resources/views/vendor/mail/markdown/promotion/button.blade.php
new file mode 100644
index 000000000000..aaa3e5754446
--- /dev/null
+++ b/resources/views/vendor/mail/markdown/promotion/button.blade.php
@@ -0,0 +1 @@
+[{{ $slot }}]({{ $url }})
diff --git a/resources/views/vendor/mail/markdown/subcopy.blade.php b/resources/views/vendor/mail/markdown/subcopy.blade.php
new file mode 100644
index 000000000000..3338f620e42f
--- /dev/null
+++ b/resources/views/vendor/mail/markdown/subcopy.blade.php
@@ -0,0 +1 @@
+{{ $slot }}
diff --git a/resources/views/vendor/mail/markdown/table.blade.php b/resources/views/vendor/mail/markdown/table.blade.php
new file mode 100644
index 000000000000..3338f620e42f
--- /dev/null
+++ b/resources/views/vendor/mail/markdown/table.blade.php
@@ -0,0 +1 @@
+{{ $slot }}
diff --git a/routes/web.php b/routes/web.php
index 4c7a2e55eb1c..f7878084286e 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -43,7 +43,6 @@ Route::group(['middleware' => ['auth:user', 'db']], function () {
Route::get('logout', 'Auth\LoginController@logout')->name('user.logout');
Route::resource('invoices', 'InvoiceController'); // name = (invoices. index / create / show / update / destroy / edit
Route::resource('clients', 'ClientController'); // name = (clients. index / create / show / update / destroy / edit
- Route::resource('c', 'CController'); // name = (clients. index / create / show / update / destroy / edit
Route::resource('user', 'UserProfileController'); // name = (clients. index / create / show / update / destroy / edit
Route::get('settings', 'SettingsController@index')->name('user.settings');
diff --git a/webpack.mix.js b/webpack.mix.js
index 256629f39b3d..4e79a7adb618 100644
--- a/webpack.mix.js
+++ b/webpack.mix.js
@@ -29,6 +29,7 @@ mix.webpackConfig({
mix.js('resources/js/src/client/client_edit.ts', 'public/js');
mix.js('resources/js/src/client/client_create.ts', 'public/js');
+mix.js('resources/js/src/client/client_list.ts', 'public/js');
mix.js('resources/js/src/settings/localization.ts', 'public/js');
mix.js('node_modules/@coreui/coreui/dist/js/coreui.js', 'public/js');
@@ -40,6 +41,7 @@ mix.minify('public/js/ninja.js');
mix.minify('public/js/coreui.js');
mix.minify('public/js/client_edit.js');
mix.minify('public/js/client_create.js');
+mix.minify('public/js/client_list.js');
mix.minify('public/js/localization.js');
mix.styles([