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 @@ + + + + +
+ + + + +
+ + + + +
+ {{ $slot }} +
+
+
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 @@ + + + + {{ $slot }} + + + 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 @@ + + + + + + + + + + + + + +
+ + + + + + + + + {{ $footer ?? '' }} +
+ + + + + +
+ {{ Illuminate\Mail\Markdown::parse($slot) }} + + {{ $subcopy ?? '' }} +
+
+
+ + 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 @@ + + + + +
+ {{ Illuminate\Mail\Markdown::parse($slot) }} +
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 @@ + + + + +
+ + + + +
+ {{ $slot }} +
+
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([