diff --git a/composer.json b/composer.json index 9b8f5e225..c6e54fb07 100644 --- a/composer.json +++ b/composer.json @@ -9,6 +9,7 @@ "type": "project", "require": { "php": "^7.1.3", + "barryvdh/laravel-dompdf": "^0.8.0@dev", "dimsav/laravel-translatable": "^9.0", "fideloper/proxy": "^4.0", "flynsarmy/db-blade-compiler": "*", diff --git a/config/app.php b/config/app.php index 70ec2a2e4..fc2887b37 100644 --- a/config/app.php +++ b/config/app.php @@ -199,6 +199,7 @@ return [ Prettus\Repository\Providers\RepositoryServiceProvider::class, Konekt\Concord\ConcordServiceProvider::class, Flynsarmy\DbBladeCompiler\DbBladeCompilerServiceProvider::class, + Barryvdh\DomPDF\ServiceProvider::class, //Webkul packages Webkul\Theme\Providers\ThemeServiceProvider::class, @@ -270,6 +271,7 @@ return [ 'Image' => Intervention\Image\Facades\Image::class, 'Cart' => Webkul\Checkout\Facades\Cart::class, 'Core' => Webkul\Core\Facades\Core::class, - 'DbView' => Flynsarmy\DbBladeCompiler\Facades\DbView::class + 'DbView' => Flynsarmy\DbBladeCompiler\Facades\DbView::class, + 'PDF' => Barryvdh\DomPDF\Facade::class ], -]; +]; \ No newline at end of file diff --git a/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php b/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php index 5f557c50c..69b396872 100644 --- a/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php @@ -103,10 +103,12 @@ class OrderDataGrid 'label' => 'Status', 'sortable' => true, 'wrapper' => function ($value) { - if($value == 'completed') + if($value == 'processing') + return 'Processing'; + else if($value == 'completed') return 'Completed'; - else if($value == "cancelled") - return 'Cancelled'; + else if($value == "canceled") + return 'Canceled'; else if($value == "closed") return 'Closed'; else if($value == "pending") diff --git a/packages/Webkul/Admin/src/Http/Controllers/Sales/InvoiceController.php b/packages/Webkul/Admin/src/Http/Controllers/Sales/InvoiceController.php index 1f0eee5bb..2b659d31e 100644 --- a/packages/Webkul/Admin/src/Http/Controllers/Sales/InvoiceController.php +++ b/packages/Webkul/Admin/src/Http/Controllers/Sales/InvoiceController.php @@ -7,6 +7,7 @@ use Illuminate\Http\Response; use Webkul\Admin\Http\Controllers\Controller; use Webkul\Sales\Repositories\OrderRepository as Order; use Webkul\Sales\Repositories\InvoiceRepository as Invoice; +use PDF; /** * Sales Invoice controller @@ -135,4 +136,19 @@ class InvoiceController extends Controller return view($this->_config['view'], compact('invoice')); } + + /** + * Print and download the for the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function print($id) + { + $invoice = $this->invoice->find($id); + + $pdf = PDF::loadView('admin::sales.invoices.pdf', compact('invoice'))->setPaper('a4'); + + return $pdf->download('invoice-' . $invoice->created_at->format('d-m-Y') . '.pdf'); + } } diff --git a/packages/Webkul/Admin/src/Http/routes.php b/packages/Webkul/Admin/src/Http/routes.php index 9dfd67ec5..6ed1fa046 100644 --- a/packages/Webkul/Admin/src/Http/routes.php +++ b/packages/Webkul/Admin/src/Http/routes.php @@ -139,6 +139,10 @@ Route::group(['middleware' => ['web']], function () { 'view' => 'admin::sales.invoices.view' ])->name('admin.sales.invoices.view'); + Route::get('/invoices/print/{id}', 'Webkul\Admin\Http\Controllers\Sales\InvoiceController@print')->defaults('_config', [ + 'view' => 'admin::sales.invoices.print' + ])->name('admin.sales.invoices.print'); + // Sales Shipments Routes Route::get('/shipments', 'Webkul\Admin\Http\Controllers\Sales\ShipmentController@index')->defaults('_config', [ diff --git a/packages/Webkul/Admin/src/Resources/assets/js/app.js b/packages/Webkul/Admin/src/Resources/assets/js/app.js index d195b7ee7..4c072be3a 100644 --- a/packages/Webkul/Admin/src/Resources/assets/js/app.js +++ b/packages/Webkul/Admin/src/Resources/assets/js/app.js @@ -28,14 +28,26 @@ $(document).ready(function () { }, methods: { - onSubmit(e) { + onSubmit: function (e) { + this.toggleButtonDisable(true); + this.$validator.validateAll().then(result => { if (result) { e.target.submit(); + } else { + this.toggleButtonDisable(false); } }); }, + toggleButtonDisable (value) { + var buttons = document.getElementsByTagName("button"); + + for (var i = 0; i < buttons.length; i++) { + buttons[i].disabled = value; + } + }, + addServerErrors() { var scope = null; for (var key in serverErrors) { diff --git a/packages/Webkul/Admin/src/Resources/lang/en/app.php b/packages/Webkul/Admin/src/Resources/lang/en/app.php index eab1661fa..f7b59bb11 100644 --- a/packages/Webkul/Admin/src/Resources/lang/en/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/en/app.php @@ -145,6 +145,7 @@ return [ ], 'invoices' => [ 'id' => 'Id', + 'invoice-id' => 'Invoice Id', 'date' => 'Invoice Date', 'order-id' => 'Order Id', 'customer-name' => 'Customer Name', @@ -157,6 +158,10 @@ return [ 'qty-ordered' => 'Qty Ordered', 'qty-to-invoice' => 'Qty to Invoice', 'view-title' => 'Invoice #:invoice_id', + 'bill-to' => 'Bill to', + 'ship-to' => 'Ship to', + 'print' => 'Print', + 'order-date' => 'Order Date' ], 'shipments' => [ 'id' => 'Id', @@ -318,6 +323,7 @@ return [ 'zip_from' => 'Zip From', 'zip_to' => 'Zip To', 'state' => 'State', + 'select-state' => 'Select a region, state or province.', 'country' => 'Country', 'tax_rate' => 'Rate', 'edit' => [ @@ -325,7 +331,7 @@ return [ 'edit-button-title' => 'Edit Rate' ], 'zip_code' => 'Zip Code', - 'is_zip' => 'Enable Zip Range' + 'is_zip' => 'Enable Zip Range', ], ], @@ -457,7 +463,10 @@ return [ 'phone' => 'Phone', 'customer_group' => 'Customer Group', 'save-btn-title' => 'Save Customer', - 'channel_name' => 'Channel Name' + 'channel_name' => 'Channel Name', + 'state' => 'State', + 'select-state' => 'Select a region, state or province.', + 'country' => 'Country' ], 'reviews' => [ 'title' => 'Reviews', diff --git a/packages/Webkul/Admin/src/Resources/views/account/edit.blade.php b/packages/Webkul/Admin/src/Resources/views/account/edit.blade.php index 68aadd005..6c75e3429 100644 --- a/packages/Webkul/Admin/src/Resources/views/account/edit.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/account/edit.blade.php @@ -37,7 +37,7 @@
- + @{{ errors.first('email') }}
diff --git a/packages/Webkul/Admin/src/Resources/views/customers/country-state.blade.php b/packages/Webkul/Admin/src/Resources/views/customers/country-state.blade.php new file mode 100644 index 000000000..3cc5189ea --- /dev/null +++ b/packages/Webkul/Admin/src/Resources/views/customers/country-state.blade.php @@ -0,0 +1,76 @@ + + +@push('scripts') + + + + +@endpush \ No newline at end of file diff --git a/packages/Webkul/Admin/src/Resources/views/sales/address.blade.php b/packages/Webkul/Admin/src/Resources/views/sales/address.blade.php index 845fd9e6e..b46b9ce56 100644 --- a/packages/Webkul/Admin/src/Resources/views/sales/address.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/sales/address.blade.php @@ -1,4 +1,6 @@ {{ $address->name }}
-{{ $address->address1 }}, {{ $address->address2 ? $address->address2 . ',' : '' }} {{ $address->state }}
-{{ country()->name($address->country) }} {{ $address->postcode }}
+{{ $address->address1 }}, {{ $address->address2 ? $address->address2 . ',' : '' }}
+{{ $address->city }}
+ {{ $address->state }}
+{{ country()->name($address->country) }} {{ $address->postcode }}

{{ __('shop::app.checkout.onepage.contact') }} : {{ $address->phone }} \ No newline at end of file diff --git a/packages/Webkul/Admin/src/Resources/views/sales/invoices/pdf.blade.php b/packages/Webkul/Admin/src/Resources/views/sales/invoices/pdf.blade.php new file mode 100644 index 000000000..f5329d212 --- /dev/null +++ b/packages/Webkul/Admin/src/Resources/views/sales/invoices/pdf.blade.php @@ -0,0 +1,225 @@ + + + + + + + + + +
+ +
+ +
+ {{ __('admin::app.sales.invoices.invoice-id') }} - + #{{ $invoice->id }} +
+ +
+ {{ __('admin::app.sales.invoices.order-id') }} - + #{{ $invoice->order_id }} +
+ +
+ {{ __('admin::app.sales.invoices.order-date') }} - + {{ $invoice->created_at->format('M d, Y') }} +
+ +
+ + + + + + + + + + + + + + +
{{ __('admin::app.sales.invoices.bill-to') }}{{ __('admin::app.sales.invoices.ship-to') }}
+

{{ $invoice->order->billing_address->name }}

+

{{ $invoice->order->billing_address->address1 }}, {{ $invoice->order->billing_address->address2 ? $invoice->order->billing_address->address2 . ',' : '' }}

+

{{ $invoice->order->billing_address->city }}

+

{{ $invoice->order->billing_address->state }}

+

{{ country()->name($invoice->order->billing_address->country) }} {{ $invoice->order->billing_address->postcode }}

+ {{ __('shop::app.checkout.onepage.contact') }} : {{ $invoice->order->billing_address->phone }} +
+

{{ $invoice->order->shipping_address->name }}

+

{{ $invoice->order->shipping_address->address1 }}, {{ $invoice->order->shipping_address->address2 ? $invoice->order->shipping_address->address2 . ',' : '' }}

+

{{ $invoice->order->shipping_address->city }}

+

{{ $invoice->order->shipping_address->state }}

+

{{ country()->name($invoice->order->shipping_address->country) }} {{ $invoice->order->shipping_address->postcode }}

+ {{ __('shop::app.checkout.onepage.contact') }} : {{ $invoice->order->shipping_address->phone }} +
+
+ +
+ + + + + + + + + + + + + + +
{{ __('admin::app.sales.orders.payment-method') }}{{ __('admin::app.sales.orders.shipping-method') }}
+ {{ core()->getConfigData('paymentmethods.' . $invoice->order->payment->method . '.title') }} + + {{ $invoice->order->shipping_title }} +
+
+ +
+ + + + + + + + + + + + + + + + @foreach ($invoice->items as $item) + + + + + + + + + + @endforeach + + +
{{ __('admin::app.sales.orders.SKU') }}{{ __('admin::app.sales.orders.product-name') }}{{ __('admin::app.sales.orders.price') }}{{ __('admin::app.sales.orders.qty') }}{{ __('admin::app.sales.orders.subtotal') }}{{ __('admin::app.sales.orders.tax-amount') }}{{ __('admin::app.sales.orders.grand-total') }}
{{ $item->child ? $item->child->sku : $item->sku }} + {{ $item->name }} + + @if ($html = $item->getOptionDetailHtml()) +

{{ $html }}

+ @endif +
{{ core()->formatBasePrice($item->base_price) }}{{ $item->qty }}{{ core()->formatBasePrice($item->base_total) }}{{ core()->formatBasePrice($item->base_tax_amount) }}{{ core()->formatBasePrice($item->base_total + $item->base_tax_amount) }}
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
{{ __('admin::app.sales.orders.subtotal') }}-{{ core()->formatBasePrice($invoice->base_sub_total) }}
{{ __('admin::app.sales.orders.shipping-handling') }}-{{ core()->formatBasePrice($invoice->base_shipping_amount) }}
{{ __('admin::app.sales.orders.tax') }}-{{ core()->formatBasePrice($invoice->base_tax_amount) }}
{{ __('admin::app.sales.orders.grand-total') }}-{{ core()->formatBasePrice($invoice->base_grand_total) }}
+ +
+ +
+ + + \ No newline at end of file diff --git a/packages/Webkul/Admin/src/Resources/views/sales/invoices/view.blade.php b/packages/Webkul/Admin/src/Resources/views/sales/invoices/view.blade.php index 4da8ee888..45bf6469c 100644 --- a/packages/Webkul/Admin/src/Resources/views/sales/invoices/view.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/sales/invoices/view.blade.php @@ -15,6 +15,9 @@
+ + {{ __('admin::app.sales.invoices.print') }} +
diff --git a/packages/Webkul/Admin/src/Resources/views/tax/tax-rates/create.blade.php b/packages/Webkul/Admin/src/Resources/views/tax/tax-rates/create.blade.php index 522495117..10e1d46a6 100644 --- a/packages/Webkul/Admin/src/Resources/views/tax/tax-rates/create.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/tax/tax-rates/create.blade.php @@ -23,104 +23,72 @@
@csrf() -
- - - - - @{{ errors.first('identifier') }} -
- -
- - - - - @{{ errors.first('state') }} -
- -
- - - - - @{{ errors.first('country') }} -
- -
- - - - - - Enable Zip Range - -
- -
- - - - - @{{ errors.first('zip_code') }} -
- -
- - - - - @{{ errors.first('zip_from') }} -
- -
- - - - - @{{ errors.first('zip_to') }} -
- -
- - - - - @{{ errors.first('tax_rate') }} -
+
- @push('scripts') - - document.getElementById("zip_code").style.display = ""; - } - } - - @endpush -@stop \ No newline at end of file + +@endpush \ No newline at end of file diff --git a/packages/Webkul/Admin/src/Resources/views/tax/tax-rates/edit.blade.php b/packages/Webkul/Admin/src/Resources/views/tax/tax-rates/edit.blade.php index 8ea19a745..efcbd8999 100644 --- a/packages/Webkul/Admin/src/Resources/views/tax/tax-rates/edit.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/tax/tax-rates/edit.blade.php @@ -6,7 +6,7 @@ @section('content')
-
+
+ @endsection \ No newline at end of file diff --git a/packages/Webkul/Shop/src/Resources/views/customers/account/address/address.blade.php b/packages/Webkul/Shop/src/Resources/views/customers/account/address/index.blade.php similarity index 69% rename from packages/Webkul/Shop/src/Resources/views/customers/account/address/address.blade.php rename to packages/Webkul/Shop/src/Resources/views/customers/account/address/index.blade.php index bb4fe94ff..f6e0d5077 100644 --- a/packages/Webkul/Shop/src/Resources/views/customers/account/address/address.blade.php +++ b/packages/Webkul/Shop/src/Resources/views/customers/account/address/index.blade.php @@ -35,37 +35,34 @@
@foreach($addresses as $address)
- {{--
- -
--}} -
{{ auth()->guard('customer')->user()->name }} - {{ $address['address1'] }} - {{ $address['address2'] }} - {{ $address['country'] }} - {{ $address['state'] }} - {{ $address['city'] }} - {{ $address['postcode'] }} + {{ $address->name }}
+ {{ $address->address1 }}, {{ $address->address2 ? $address->address2 . ',' : '' }}
+ {{ $address->city }}
+ {{ $address->state }}
+ {{ country()->name($address->country) }} {{ $address->postcode }}

+ {{ __('shop::app.customer.account.address.index.contact') }} : {{ $address->phone }} - @if($address['default_address'] == 1) + @if($address->default_address) {{ __('shop::app.customer.account.address.index.default') }} @else @endif diff --git a/packages/Webkul/Shop/src/Resources/views/customers/account/orders/pdf.blade.php b/packages/Webkul/Shop/src/Resources/views/customers/account/orders/pdf.blade.php new file mode 100644 index 000000000..b95ccbcfc --- /dev/null +++ b/packages/Webkul/Shop/src/Resources/views/customers/account/orders/pdf.blade.php @@ -0,0 +1,225 @@ + + + + + + + + + +
+ +
+ +
+ {{ __('shop::app.customer.account.order.view.invoice-id') }} - + #{{ $invoice->id }} +
+ +
+ {{ __('shop::app.customer.account.order.view.order-id') }} - + #{{ $invoice->order_id }} +
+ +
+ {{ __('shop::app.customer.account.order.view.order-date') }} - + {{ core()->formatDate($invoice->order->created_at, 'M d, Y') }} +
+ +
+ + + + + + + + + + + + + + +
{{ __('shop::app.customer.account.order.view.bill-to') }}{{ __('shop::app.customer.account.order.view.ship-to') }}
+

{{ $invoice->order->billing_address->name }}

+

{{ $invoice->order->billing_address->address1 }}, {{ $invoice->order->billing_address->address2 ? $invoice->order->billing_address->address2 . ',' : '' }}

+

{{ $invoice->order->billing_address->city }}

+

{{ $invoice->order->billing_address->state }}

+

{{ country()->name($invoice->order->billing_address->country) }} {{ $invoice->order->billing_address->postcode }}

+ {{ __('shop::app.customer.account.order.view.contact') }} : {{ $invoice->order->billing_address->phone }} +
+

{{ $invoice->order->shipping_address->name }}

+

{{ $invoice->order->shipping_address->address1 }}, {{ $invoice->order->shipping_address->address2 ? $invoice->order->shipping_address->address2 . ',' : '' }}

+

{{ $invoice->order->shipping_address->city }}

+

{{ $invoice->order->shipping_address->state }}

+

{{ country()->name($invoice->order->shipping_address->country) }} {{ $invoice->order->shipping_address->postcode }}

+ {{ __('shop::app.customer.account.order.view.contact') }} : {{ $invoice->order->shipping_address->phone }} +
+
+ +
+ + + + + + + + + + + + + + +
{{ __('shop::app.customer.account.order.view.payment-method') }}{{ __('shop::app.customer.account.order.view.shipping-method') }}
+ {{ core()->getConfigData('paymentmethods.' . $invoice->order->payment->method . '.title') }} + + {{ $invoice->order->shipping_title }} +
+
+ +
+ + + + + + + + + + + + + + + + @foreach ($invoice->items as $item) + + + + + + + + + + @endforeach + + +
{{ __('shop::app.customer.account.order.view.SKU') }}{{ __('shop::app.customer.account.order.view.product-name') }}{{ __('shop::app.customer.account.order.view.price') }}{{ __('shop::app.customer.account.order.view.qty') }}{{ __('shop::app.customer.account.order.view.subtotal') }}{{ __('shop::app.customer.account.order.view.tax-amount') }}{{ __('shop::app.customer.account.order.view.grand-total') }}
{{ $item->child ? $item->child->sku : $item->sku }} + {{ $item->name }} + + @if ($html = $item->getOptionDetailHtml()) +

{{ $html }}

+ @endif +
{{ core()->formatBasePrice($item->base_price) }}{{ $item->qty }}{{ core()->formatBasePrice($item->base_total) }}{{ core()->formatBasePrice($item->base_tax_amount) }}{{ core()->formatBasePrice($item->base_total + $item->base_tax_amount) }}
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
{{ __('shop::app.customer.account.order.view.subtotal') }}-{{ core()->formatPrice($invoice->base_sub_total, $invoice->order->order_currency_code) }}
{{ __('shop::app.customer.account.order.view.shipping-handling') }}-{{ core()->formatPrice($invoice->base_shipping_amount, $invoice->order->order_currency_code) }}
{{ __('shop::app.customer.account.order.view.tax') }}-{{ core()->formatPrice($invoice->base_tax_amount, $invoice->order->order_currency_code) }}
{{ __('shop::app.customer.account.order.view.grand-total') }}-{{ core()->formatPrice($invoice->base_grand_total, $invoice->order->order_currency_code) }}
+ +
+ +
+ + + \ No newline at end of file diff --git a/packages/Webkul/Shop/src/Resources/views/customers/account/orders/view.blade.php b/packages/Webkul/Shop/src/Resources/views/customers/account/orders/view.blade.php index 879212312..ab413dd40 100644 --- a/packages/Webkul/Shop/src/Resources/views/customers/account/orders/view.blade.php +++ b/packages/Webkul/Shop/src/Resources/views/customers/account/orders/view.blade.php @@ -230,8 +230,6 @@
- {{-- {{ dd($order->invoices) }} --}} - @if ($order->invoices->count()) @@ -240,6 +238,10 @@
{{ __('shop::app.customer.account.order.view.individual-invoice', ['invoice_id' => $invoice->id]) }} + + + {{ __('shop::app.customer.account.order.view.print') }} +
diff --git a/packages/Webkul/Shop/src/Resources/views/customers/account/profile/edit.blade.php b/packages/Webkul/Shop/src/Resources/views/customers/account/profile/edit.blade.php index 8bf634608..72162ffcf 100644 --- a/packages/Webkul/Shop/src/Resources/views/customers/account/profile/edit.blade.php +++ b/packages/Webkul/Shop/src/Resources/views/customers/account/profile/edit.blade.php @@ -25,41 +25,34 @@ @csrf
- - + + @{{ errors.first('first_name') }}
- - + + @{{ errors.first('last_name') }}
- + @{{ errors.first('gender') }}
-
+
- - @{{ errors.first('date_of_birth') }} -
- -
- - - @{{ errors.first('phone') }} +
- - + + @{{ errors.first('email') }}
diff --git a/packages/Webkul/Shop/src/Resources/views/customers/account/profile/index.blade.php b/packages/Webkul/Shop/src/Resources/views/customers/account/profile/index.blade.php index 02e1cdfc1..2e5151fb5 100644 --- a/packages/Webkul/Shop/src/Resources/views/customers/account/profile/index.blade.php +++ b/packages/Webkul/Shop/src/Resources/views/customers/account/profile/index.blade.php @@ -30,32 +30,27 @@ {{ __('shop::app.customer.account.profile.fname') }} - {{ $customer['first_name'] }} + {{ $customer->first_name }} {{ __('shop::app.customer.account.profile.lname') }} - {{ $customer['last_name'] }} + {{ $customer->last_name }} {{ __('shop::app.customer.account.profile.gender') }} - {{ $customer['gender'] }} + {{ $customer->gender }} {{ __('shop::app.customer.account.profile.dob') }} - {{ $customer['date_of_birth'] }} + {{ $customer->date_of_birth }} {{ __('shop::app.customer.account.profile.email') }} - {{ $customer['email'] }} - - - - {{ __('shop::app.customer.account.profile.phone') }} - {{ $customer['phone'] }} + {{ $customer->email }} diff --git a/packages/Webkul/Shop/src/Resources/views/products/view.blade.php b/packages/Webkul/Shop/src/Resources/views/products/view.blade.php index 19d345c16..50ce5b64b 100644 --- a/packages/Webkul/Shop/src/Resources/views/products/view.blade.php +++ b/packages/Webkul/Shop/src/Resources/views/products/view.blade.php @@ -83,7 +83,7 @@ @push('scripts') -@endpush - - - - +@endpush \ No newline at end of file diff --git a/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php b/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php index 7e920dca3..911cd0a8b 100644 --- a/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php +++ b/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php @@ -73,21 +73,19 @@ class TaxRateController extends Controller * @return mixed */ public function create() { - // dd(request()->all()); - $this->validate(request(), [ 'identifier' => 'required|string|unique:tax_rates,identifier', 'is_zip' => 'sometimes', 'zip_code' => 'sometimes|required_without:is_zip', - 'zip_from' => 'nullable|numeric|required_with:is_zip', - 'zip_to' => 'nullable|numeric|required_with:is_zip,zip_from', + 'zip_from' => 'nullable|required_with:is_zip', + 'zip_to' => 'nullable|required_with:is_zip,zip_from', 'state' => 'required|string', 'country' => 'required|string', 'tax_rate' => 'required|numeric' ]); $data = request()->all(); - // dd($data); + if(isset($data['is_zip'])) { $data['is_zip'] = 1; unset($data['zip_code']); @@ -115,13 +113,11 @@ class TaxRateController extends Controller * * @return mixed */ + public function edit($id) + { + $taxRate = $this->taxRate->find($id); - public function edit($id) { - - $data = collect($this->taxRate->findOneByField('id', $id)); - - return view($this->_config['view'])->with('data', $data); - + return view($this->_config['view'])->with('taxRate', $taxRate); } /** @@ -130,13 +126,13 @@ class TaxRateController extends Controller * * @return mixed */ - public function update($id) { - + public function update($id) + { $this->validate(request(), [ 'identifier' => 'required|string|unique:tax_rates,identifier,'.$id, 'is_zip' => 'sometimes', - 'zip_from' => 'nullable|numeric|required_with:is_zip', - 'zip_to' => 'nullable|numeric|required_with:is_zip,zip_from', + 'zip_from' => 'nullable|required_with:is_zip', + 'zip_to' => 'nullable|required_with:is_zip,zip_from', 'state' => 'required|string', 'country' => 'required|string', 'tax_rate' => 'required|numeric' diff --git a/packages/Webkul/Ui/publishable/assets/css/ui.css b/packages/Webkul/Ui/publishable/assets/css/ui.css index cd2e054ea..e3b1f78cb 100644 --- a/packages/Webkul/Ui/publishable/assets/css/ui.css +++ b/packages/Webkul/Ui/publishable/assets/css/ui.css @@ -1 +1,1574 @@ -.active.configuration-icon,.catalog-icon,.configuration-icon,.customer-icon,.dashboard-icon,.sales-icon,.settings-icon{width:48px;height:48px;display:inline-block;background-size:cover}.icon{display:inline-block;background-size:cover}.dashboard-icon{background-image:url("../images/Icon-Dashboard.svg")}.sales-icon{background-image:url("../images/Icon-Sales.svg")}.catalog-icon{background-image:url("../images/Icon-Catalog.svg")}.customer-icon{background-image:url("../images/Icon-Customers.svg")}.configuration-icon{background-image:url("../images/Icon-Configure.svg")}.settings-icon{background-image:url("../images/Icon-Settings.svg")}.angle-right-icon{background-image:url("../images/Angle-Right.svg");width:17px;height:17px}.angle-left-icon{background-image:url("../images/Angle-Left.svg");width:17px;height:17px}.arrow-down-icon{background-image:url("../images/Arrow-Down-Light.svg");width:14px;height:8px}.arrow-right-icon{background-image:url("../images/Arrow-Right.svg");width:18px;height:18px}.white-cross-sm-icon{background-image:url("../images/Icon-Sm-Cross-White.svg");width:18px;height:18px}.accordian-up-icon{background-image:url("../images/Accordion-Arrow-Up.svg");width:24px;height:24px}.accordian-down-icon{background-image:url("../images/Accordion-Arrow-Down.svg");width:24px;height:24px}.cross-icon{background-image:url("../images/Icon-Crossed.svg");width:18px;height:18px}.trash-icon{background-image:url("../images/Icon-Trash.svg");width:24px;height:24px}.remove-icon{background-image:url("../images/Icon-remove.svg");width:24px;height:24px}.pencil-lg-icon{background-image:url("../images/Icon-Pencil-Large.svg");width:24px;height:24px}.search-icon{background-image:url("../images/icon-search.svg");width:24px;height:24px}.sortable-icon{background-image:url("../images/Icon-Sortable.svg");width:24px;height:24px}.sort-down-icon,.sort-up-icon{background-image:url("../images/Icon-Sort-Down.svg");width:18px;height:18px}.sort-up-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.primary-back-icon{background-image:url("../images/Icon-Back-Primary.svg");width:24px;height:24px}.checkbox-dash-icon{background-image:url("../images/Checkbox-Dash.svg");width:24px;height:24px}.account-icon{background-image:url("../images/icon-account.svg");width:24px;height:24px}.expand-icon{background-image:url("../images/Expand-Light.svg");width:18px;height:18px}.expand-on-icon{background-image:url("../images/Expand-Light-On.svg");width:18px;height:18px}.dark-left-icon{background-image:url("../images/arrow-left-dark.svg");width:18px;height:18px}.light-right-icon{background-image:url("../images/arrow-right-light.svg");width:18px;height:18px}.folder-icon{background-image:url("../images/Folder-Icon.svg");width:24px;height:24px}.star-icon{background-image:url("../images/Star-Icon.svg");width:24px;height:24px}.arrow-down-white-icon{background-image:url("../images/down-arrow-white.svg");width:17px;height:13px}.arrow-up-white-icon{background-image:url("../images/up-arrow-white.svg");width:17px;height:13px}.profile-pic-icon{background-image:url("../images/Profile-Pic.svg");width:60px;height:60px}.graph-up-icon{background-image:url("../images/Icon-Graph-Green.svg");width:24px;height:24px}.graph-down-icon{background-image:url("../images/Icon-Graph-Red.svg");width:24px;height:24px}.no-result-icon{background-image:url("../images/limited-icon.svg");width:52px;height:47px}.active .dashboard-icon{background-image:url("../images/Icon-Dashboard-Active.svg")}.active .sales-icon{background-image:url("../images/Icon-Sales-Active.svg")}.active .catalog-icon{background-image:url("../images/Icon-Catalog-Active.svg")}.active .customer-icon{background-image:url("../images/Icon-Customers-Active.svg")}.active .settings-icon{background-image:url("../images/Icon-Settings-Active.svg")}.active .configuration-icon{background-image:url("../images/Icon-Configure-Active.svg")}.active>.arrow-down-icon{background-image:url("../images/Arrow-Down.svg");width:14px;height:8px}.active>.expand-icon{background-image:url("../images/Expand-Light-On.svg")}.active.dashboard-icon{background-image:url("../images/Icon-Dashboard-Active.svg")}.active.customer-icon{background-image:url("../images/Icon-Customers-Active.svg")}.active.sales-icon{background-image:url("../images/Icon-Sales-Active.svg")}.active.settings-icon{background-image:url("../images/Icon-Settings-Active.svg")}.active.configuration-icon{background-image:url("../images/Icon-Configure-Active.svg")}.active.arrow-down-icon{background-image:url("../images/Arrow-Down.svg");width:14px;height:8px}.active.expand-icon{background-image:url("../images/Expand-Light-On.svg")}.icon-404{background-image:url("../images/404-image.svg");width:255px;height:255px}.grid-container{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.grid-container .filter-wrapper{display:block;-webkit-box-sizing:border-box;box-sizing:border-box}.grid-container .filter-wrapper .filter-row-one,.grid-container .filter-wrapper .filter-row-two{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.grid-container .filter-wrapper .filter-row-one{height:40px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.grid-container .filter-wrapper .filter-row-one .search-filter .control{font-family:montserrat,sans-serif;padding-left:10px;width:380px;height:36px;border:2px solid #c7c7c7;border-radius:3px;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0;font-size:14px}.grid-container .filter-wrapper .filter-row-one .search-filter .ic-wrapper{display:block;height:36px;width:36px;border:2px solid #c7c7c7;border-left:none;border-radius:2px}.grid-container .filter-wrapper .filter-row-one .search-filter .ic-wrapper .search-icon{margin-left:4px;margin-top:4px;height:24px;width:24px}.grid-container .filter-wrapper .filter-row-one .dropdown-filters{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters{margin-right:5px}.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-toggle{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-family:montserrat,sans-serif;padding-left:5px;height:36px;width:150px;border:2px solid #c7c7c7;border-radius:2px;background-color:#fff;color:#8e8e8e;font-size:14px}.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-toggle,.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-toggle .dropdown-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-toggle .dropdown-header{width:100%;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-toggle .dropdown-header .arrow-down-icon{margin-right:5px}.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul li.filter-column-dropdown .filter-column-select{width:100%;background:#fff;border:2px solid #c7c7c7;border-radius:3px;height:36px;display:inline-block;vertical-align:middle;-webkit-transition:.2s cubic-bezier(.4,0,.2,1);transition:.2s cubic-bezier(.4,0,.2,1);padding:0 5px;font-family:montserrat,sans-serif;margin-top:10px;margin-bottom:5px}.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul li input,.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul li select{background:#fff;border:2px solid #c7c7c7;border-radius:3px;height:36px;max-width:100%;display:inline-block;vertical-align:middle;-webkit-transition:.2s cubic-bezier(.4,0,.2,1);transition:.2s cubic-bezier(.4,0,.2,1);padding:0 5px;font-family:montserrat,sans-serif;margin-top:10px;margin-bottom:5px}.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-condition-dropdown-datetime,.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-condition-dropdown-number,.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-condition-dropdown-string,.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-response-boolean,.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-response-datetime,.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-response-number,.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-response-string{display:none}.grid-container .filter-wrapper .filter-row-two{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:6px;margin-bottom:6px}.grid-container .filter-wrapper .filter-row-two .filter-one{margin-right:10px}.grid-container .filter-wrapper .filter-row-two .filter-one .filter-name{margin-right:5px}.grid-container .filter-wrapper .filter-row-two .filter-one .filter-value{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;background:#e7e7e7;padding-left:5px;color:#000311;vertical-align:middle}.grid-container .filter-wrapper .filter-row-two .filter-one .filter-value .f-value{margin:auto}.grid-container .filter-wrapper .filter-row-two .filter-one .filter-value .cross-icon{margin:5px;height:18px!important;width:18px!important;cursor:pointer}.grid-container .table thead .mass-action-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.grid-container .table thead .mass-action-wrapper .massaction-remove{margin-top:10px;margin-right:10px}.grid-container .table thead .mass-action-wrapper form{margin-top:8px}.grid-container .table thead .mass-action-wrapper .selected-items{margin-right:15px}.grid-container .table thead tr th.grid_head .sort-down-icon,.grid-container .table thead tr th.grid_head .sort-up-icon{margin-left:5px;margin-top:-3px;vertical-align:middle}.grid-container .table thead tr th.grid_head.sortable{cursor:pointer}.grid-container .table thead tr th{text-transform:capitalize}.grid-container .table tbody td.action a:first-child{margin-right:10px}.grid-container .table .pagination{margin-top:20px}@-webkit-keyframes jelly{0%{-webkit-transform:translateY(0) scale(.7);transform:translateY(0) scale(.7);opacity:0}70%{-webkit-transform:translateY(5px) scale(1.05);transform:translateY(5px) scale(1.05);opacity:1}to{-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1);opacity:1}}@keyframes jelly{0%{-webkit-transform:translateY(0) scale(.7);transform:translateY(0) scale(.7);opacity:0}70%{-webkit-transform:translateY(5px) scale(1.05);transform:translateY(5px) scale(1.05);opacity:1}to{-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1);opacity:1}}@-webkit-keyframes jelly-out{0%{-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1);opacity:1}30%{-webkit-transform:translateY(-5px) scale(1.05);transform:translateY(-5px) scale(1.05);opacity:1}to{-webkit-transform:translateY(0) scale(.7);transform:translateY(0) scale(.7);opacity:0}}@keyframes jelly-out{0%{-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1);opacity:1}30%{-webkit-transform:translateY(-5px) scale(1.05);transform:translateY(-5px) scale(1.05);opacity:1}to{-webkit-transform:translateY(0) scale(.7);transform:translateY(0) scale(.7);opacity:0}}*{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus{outline:none}a:active,a:focus,a:hover,a:link,a:visited{text-decoration:none;color:#0041ff}ul{margin:0;padding:0;list-style:none}h1{font-size:28px;margin-top:0}h1,h2{color:#3a3a3a}h2{font-size:18px}.tooltip{position:relative;border-bottom:1px solid #000}.tooltip .tooltiptext{visibility:hidden;width:120px;background-color:#000;color:#fff;text-align:center;border-radius:6px;padding:5px 0;position:absolute;z-index:1}.tooltip:hover .tooltiptext{visibility:visible}.hide{display:none!important}.btn{-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.2),0 0 8px 0 rgba(0,0,0,.1);box-shadow:0 1px 4px 0 rgba(0,0,0,.2),0 0 8px 0 rgba(0,0,0,.1);border-radius:3px;border:none;color:#fff;cursor:pointer;-webkit-transition:.2s cubic-bezier(.4,0,.2,1);transition:.2s cubic-bezier(.4,0,.2,1);font:inherit;display:inline-block}.btn:active,.btn:focus,.btn:hover{opacity:.75;border:none}.btn.btn-sm{padding:6px 12px}.btn.btn-md{padding:8px 16px}.btn.btn-lg{padding:10px 20px}.btn.btn-xl{padding:12px 24px;font-size:16px}.btn.btn-primary{background:#0041ff;color:#fff}.btn[disabled=disabled],.btn[disabled=disabled]:active,.btn[disabled=disabled]:hover{cursor:not-allowed;background:#b1b1ae;-webkit-box-shadow:none;box-shadow:none;opacity:1}.dropdown-open{position:relative}.dropdown-list{width:200px;margin-bottom:20px;-webkit-box-shadow:0 2px 4px 0 rgba(0,0,0,.16),0 0 9px 0 rgba(0,0,0,.16);box-shadow:0 2px 4px 0 rgba(0,0,0,.16),0 0 9px 0 rgba(0,0,0,.16);border-radius:3px;background-color:#fff;position:absolute;display:none;z-index:10;text-align:left}.dropdown-list.bottom-left{top:42px;left:0}.dropdown-list.bottom-right{top:42px;right:0}.dropdown-list.top-left{bottom:42px;left:0}.dropdown-list.top-right{bottom:42px;right:0}.dropdown-list .search-box{padding:20px;border-bottom:1px solid hsla(0,0%,64%,.2)}.dropdown-list .search-box .control{background:#fff;border:2px solid #c7c7c7;border-radius:3px;width:100%;height:36px;display:inline-block;vertical-align:middle;-webkit-transition:.2s cubic-bezier(.4,0,.2,1);transition:.2s cubic-bezier(.4,0,.2,1);padding:0 10px;font-size:15px}.dropdown-list .search-box .control:focus{border-color:#0041ff}.dropdown-list .dropdown-container{padding:20px;overflow-y:auto;max-height:280px}.dropdown-list .dropdown-container label{font-size:15px;display:inline-block;text-transform:uppercase;color:#9e9e9e;font-weight:700;padding-bottom:5px}.dropdown-list .dropdown-container ul{margin:0;list-style-type:none;padding:0}.dropdown-list .dropdown-container ul li{padding:5px 0}.dropdown-list .dropdown-container ul li a:active,.dropdown-list .dropdown-container ul li a:focus,.dropdown-list .dropdown-container ul li a:link,.dropdown-list .dropdown-container ul li a:visited{color:#333;display:block}.dropdown-list .dropdown-container ul li a:hover{color:#0041ff}.dropdown-list .dropdown-container ul li .checkbox{margin:0}.dropdown-list .dropdown-container ul li .control-group label{color:#3a3a3a;font-size:15px;font-weight:500;text-transform:capitalize;width:100%}.dropdown-list .dropdown-container .btn{width:100%;margin-top:10px}.table{width:100%;overflow-x:auto}.table table{width:100%;border-collapse:collapse;text-align:left}.table table thead th{font-weight:700;padding:12px 10px;background:#f8f9fa;color:#3a3a3a}.table table tbody td{padding:10px;border-bottom:1px solid #d3d3d3;color:#3a3a3a;vertical-align:middle}.table table tbody td.actions{text-align:right}.table table tbody td.actions .icon{cursor:pointer;vertical-align:middle}.table table tbody td.empty{text-align:center}.table table tbody tr:last-child td{border-bottom:none}.table .control-group{width:100%;margin-bottom:0}.table .control-group .control{width:100%;margin:0}.dropdown-btn{min-width:150px;text-align:left;background:#fff;border:2px solid #c7c7c7;border-radius:3px;font-size:14px;padding:8px 35px 8px 10px;cursor:pointer;position:relative}.dropdown-btn:active,.dropdown-btn:focus,.dropdown-btn:hover{opacity:.75;border:2px solid #c7c7c7}.dropdown-btn .icon{position:absolute;right:10px;top:50%;margin-top:-4px}.pagination .page-item{background:#fff;border:2px solid #c7c7c7;border-radius:3px;padding:7px 14px;margin-right:5px;font-size:16px;display:inline-block;color:#8e8e8e;vertical-align:middle;text-decoration:none}.pagination .page-item.next,.pagination .page-item.previous{padding:6px 9px}.pagination .page-item.active{background:#0041ff;color:#fff;border-color:#0041ff}.pagination .page-item .icon{vertical-align:middle;margin-bottom:3px}.checkbox{position:relative;display:block;vertical-align:middle;margin:10px 5px 5px 0}.checkbox input{left:0;opacity:0;position:absolute;top:0;z-index:100}.checkbox .checkbox-view{background-image:url("../images/Checkbox.svg");height:24px;width:24px;margin:0;display:inline-block!important;vertical-align:middle;margin-right:5px}.checkbox input:checked+.checkbox-view{background-image:url("../images/Checkbox-Checked.svg")}.checkbox input:disabled+.checkbox-view{opacity:.5;cursor:not-allowed}.radio{position:relative;display:block;margin:10px 5px 5px 0}.radio input{left:0;opacity:0;position:absolute;top:0;z-index:100}.radio .radio-view{background-image:url("../images/controls.svg");background-position:-21px 0;height:20px;width:20px;margin:0;display:inline-block!important;vertical-align:middle;margin-right:5px}.radio input:checked+.radio-view{background-position:-21px -21px}.radio input:disabled+.radio-view{opacity:.5;cursor:not-allowed}.control-group{display:block;margin-bottom:25px;font-size:15px;color:#333;width:750px;max-width:100%;position:relative}.control-group label{display:block;color:#3a3a3a}.control-group label.required:after{content:"*";color:#fc6868;font-weight:700;display:inline-block}.control-group textarea.control{height:100px;padding:10px}.control-group .control{background:#fff;border:2px solid #c7c7c7;border-radius:3px;width:70%;height:36px;display:inline-block;vertical-align:middle;-webkit-transition:.2s cubic-bezier(.4,0,.2,1);transition:.2s cubic-bezier(.4,0,.2,1);padding:0 10px;font-size:15px;margin-top:10px;margin-bottom:5px}.control-group .control:focus{border-color:#0041ff}.control-group .control[disabled=disabled]{border-color:#d3d3d3;background-color:#d3d3d3;cursor:not-allowed}.control-group .control[multiple]{height:100px}.control-group.date:after,.control-group.datetime:after{background-image:url("../images/Icon-Calendar.svg");width:24px;height:24px;content:"";display:inline-block;vertical-align:middle;margin-left:-34px;margin-top:2px}.control-group .control-info{display:block;font-style:italic;color:#6f6f6f}.control-group .control-error{display:none;color:#ff5656;margin-top:5px}.control-group.has-error .control{border-color:#fc6868}.control-group.has-error .control-error{display:block}.control-group.price .currency-code{vertical-align:middle;display:inline-block}.button-group{margin-top:20px;margin-bottom:20px}.alert-wrapper{width:300px;top:10px;right:10px;position:fixed;z-index:6;text-align:left}.alert-wrapper .alert{width:300px;padding:15px;border-radius:3px;display:inline-block;-webkit-box-shadow:0 4px 15.36px .64px rgba(0,0,0,.1),0 2px 6px 0 rgba(0,0,0,.12);box-shadow:0 4px 15.36px .64px rgba(0,0,0,.1),0 2px 6px 0 rgba(0,0,0,.12);position:relative;-webkit-animation:jelly .5s ease-in-out;animation:jelly .5s ease-in-out;-webkit-transform-origin:center top;transform-origin:center top;z-index:500;margin-bottom:10px}.alert-wrapper .alert.alert-error{background:#fc6868}.alert-wrapper .alert.alert-info{background:#204d74}.alert-wrapper .alert.alert-success{background:#4caf50}.alert-wrapper .alert.alert-warning{background:#ffc107}.alert-wrapper .alert .icon{position:absolute;right:10px;top:10px;cursor:pointer}.alert-wrapper .alert p{color:#fff;margin:0;padding:0;font-size:15px}.tabs ul{border-bottom:1px solid hsla(0,0%,64%,.2)}.tabs ul li{display:inline-block}.tabs ul li a{padding:15px 20px;cursor:pointer;margin:0 2px;text-align:center;color:#000311;display:block}.tabs ul li.active a{border-bottom:3px solid #0041ff}.accordian,accordian{display:inline-block;width:100%}.accordian .accordian-header,.accordian div[slot*=header],accordian .accordian-header,accordian div[slot*=header]{width:100%;display:inline-block;font-size:18px;color:#3a3a3a;border-bottom:1px solid hsla(0,0%,64%,.2);padding:20px 15px;cursor:pointer}.accordian .accordian-header .expand-icon,.accordian div[slot*=header] .expand-icon,accordian .accordian-header .expand-icon,accordian div[slot*=header] .expand-icon{background-image:url("../images/Expand-Light.svg");margin-right:10px;margin-top:3px}.accordian .accordian-header h1,.accordian div[slot*=header] h1,accordian .accordian-header h1,accordian div[slot*=header] h1{margin:0;font-size:20px;display:inline-block}.accordian .accordian-header .icon,.accordian div[slot*=header] .icon,accordian .accordian-header .icon,accordian div[slot*=header] .icon{float:right}.accordian .accordian-header .icon.left,.accordian div[slot*=header] .icon.left,accordian .accordian-header .icon.left,accordian div[slot*=header] .icon.left{float:left}.accordian .accordian-content,.accordian div[slot*=body],accordian .accordian-content,accordian div[slot*=body]{width:100%;padding:20px 15px;display:none;-webkit-transition:all .3s ease;transition:all .3s ease}.accordian.active>.accordian-content,accordian.active>.accordian-content{display:inline-block}.accordian.active>.accordian-header .expand-icon,accordian.active>.accordian-header .expand-icon{background-image:url("../images/Expand-Light-On.svg")}.tree-container .tree-item{padding-left:30px;display:inline-block;margin-top:10px;width:100%}.tree-container .tree-item>.tree-item{display:none}.tree-container .tree-item.active>.tree-item{display:inline-block}.tree-container .tree-item .checkbox,.tree-container .tree-item .radio{margin:0;display:inline-block}.tree-container .tree-item .expand-icon{display:inline-block;margin-right:10px;cursor:pointer;background-image:url("../images/Expand-Light.svg");width:18px;height:18px;vertical-align:middle}.tree-container .tree-item .folder-icon{vertical-align:middle;margin-right:10px}.tree-container .tree-item.active>.expand-icon{background-image:url("../images/Expand-Light-On.svg")}.tree-container>.tree-item{padding-left:0}.panel{-webkit-box-shadow:0 2px 25px 0 rgba(0,0,0,.15);box-shadow:0 2px 25px 0 rgba(0,0,0,.15);border-radius:5px;background:#fff}.panel .panel-content{padding:20px}.modal-open{overflow:hidden}.modal-overlay{display:none;overflow-y:auto;z-index:10;top:0;right:0;bottom:0;left:0;position:fixed;background:#000;opacity:.75}.modal-open .modal-overlay{display:block}.modal-container{-webkit-animation:fade-in-white .3s ease-in-out;animation:fade-in-white .3s ease-in-out;z-index:11;margin-left:-350px;width:600px;max-width:80%;background:#fff;position:fixed;left:50%;top:100px;margin-bottom:100px;-webkit-box-shadow:0 15px 25px 0 rgba(0,0,0,.03),0 20px 45px 5px rgba(0,0,0,.2);box-shadow:0 15px 25px 0 rgba(0,0,0,.03),0 20px 45px 5px rgba(0,0,0,.2);-webkit-animation:jelly .5s ease-in-out;animation:jelly .5s ease-in-out;border-radius:5px}.modal-container .modal-header{padding:20px}.modal-container .modal-header h3{display:inline-block;font-size:20px;color:#3a3a3a;margin:0}.modal-container .modal-header .icon{float:right;cursor:pointer}.modal-container .modal-body{padding:20px}.modal-container .modal-body .control-group .control{width:100%}.label{background:#e7e7e7;border-radius:2px;padding:8px;color:#000311;display:inline-block}.label.label-sm{padding:5px}.label.label-md{padding:8px}.label.label-lg{padding:11px}.label.label-xl{padding:14px}.badge{border-radius:50px;color:#fff;padding:8px}.badge.badge-sm{padding:5px}.badge.badge-md{padding:3px 10px}.badge.badge-lg{padding:11px}.badge.badge-xl{padding:14px}.badge.badge-success{background-color:#4caf50}.badge.badge-info{background-color:#0041ff}.badge.badge-danger{background-color:#fc6868}.badge.badge-warning{background-color:#ffc107}.image-wrapper{margin-bottom:20px;display:inline-block;width:100%}.image-wrapper .image-item{width:200px;height:200px;margin-right:20px;background:#f8f9fa;border-radius:3px;display:inline-block;position:relative;background-image:url("../images/placeholder-icon.svg");background-repeat:no-repeat;background-position:50%;margin-bottom:20px}.image-wrapper .image-item img.preview{width:100%;height:100%}.image-wrapper .image-item input{display:none}.image-wrapper .image-item .remove-image{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.08)),to(rgba(0,0,0,.24)));background-image:linear-gradient(-180deg,rgba(0,0,0,.08),rgba(0,0,0,.24));border-radius:0 0 4px 4px;position:absolute;bottom:0;width:100%;padding:10px;text-align:center;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.24);margin-right:20px;cursor:pointer}.image-wrapper .image-item:hover .remove-image{display:block}.image-wrapper .image-item.has-image{background-image:none}.cp-spinner{width:48px;height:48px;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box}.cp-round:before{border-radius:50%;border:6px solid #bababa}.cp-round:after,.cp-round:before{content:" ";width:48px;height:48px;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;position:absolute;top:0;left:0}.cp-round:after{border-radius:50%;border-top:6px solid #0041ff;border-right:6px solid transparent;border-bottom:6px solid transparent;border-left:6px solid transparent;-webkit-animation:spin 1s ease-in-out infinite;animation:spin 1s ease-in-out infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}} \ No newline at end of file +.dashboard-icon, .sales-icon, .catalog-icon, .customer-icon, .configuration-icon, .settings-icon, .active.configuration-icon { + width: 48px; + height: 48px; + display: inline-block; + background-size: cover; +} + +.icon { + display: inline-block; + background-size: cover; +} + +.dashboard-icon { + background-image: url("../images/Icon-Dashboard.svg"); +} + +.sales-icon { + background-image: url("../images/Icon-Sales.svg"); +} + +.catalog-icon { + background-image: url("../images/Icon-Catalog.svg"); +} + +.customer-icon { + background-image: url("../images/Icon-Customers.svg"); +} + +.configuration-icon { + background-image: url("../images/Icon-Configure.svg"); +} + +.settings-icon { + background-image: url("../images/Icon-Settings.svg"); +} + +.angle-right-icon { + background-image: url("../images/Angle-Right.svg"); + width: 17px; + height: 17px; +} + +.angle-left-icon { + background-image: url("../images/Angle-Left.svg"); + width: 17px; + height: 17px; +} + +.arrow-down-icon { + background-image: url("../images/Arrow-Down-Light.svg"); + width: 14px; + height: 8px; +} + +.arrow-right-icon { + background-image: url("../images/Arrow-Right.svg"); + width: 18px; + height: 18px; +} + +.white-cross-sm-icon { + background-image: url("../images/Icon-Sm-Cross-White.svg"); + width: 18px; + height: 18px; +} + +.accordian-up-icon { + background-image: url("../images/Accordion-Arrow-Up.svg"); + width: 24px; + height: 24px; +} + +.accordian-down-icon { + background-image: url("../images/Accordion-Arrow-Down.svg"); + width: 24px; + height: 24px; +} + +.cross-icon { + background-image: url("../images/Icon-Crossed.svg"); + width: 18px; + height: 18px; +} + +.trash-icon { + background-image: url("../images/Icon-Trash.svg"); + width: 24px; + height: 24px; +} + +.remove-icon { + background-image: url("../images/Icon-remove.svg"); + width: 24px; + height: 24px; +} + +.pencil-lg-icon { + background-image: url("../images/Icon-Pencil-Large.svg"); + width: 24px; + height: 24px; +} + +.search-icon { + background-image: url("../images/icon-search.svg"); + width: 24px; + height: 24px; +} + +.sortable-icon { + background-image: url("../images/Icon-Sortable.svg"); + width: 24px; + height: 24px; +} + +.sort-down-icon { + background-image: url("../images/Icon-Sort-Down.svg"); + width: 18px; + height: 18px; +} + +.sort-up-icon { + background-image: url("../images/Icon-Sort-Down.svg"); + width: 18px; + height: 18px; + -webkit-transform: rotate(180deg); + transform: rotate(180deg); +} + +.primary-back-icon { + background-image: url("../images/Icon-Back-Primary.svg"); + width: 24px; + height: 24px; +} + +.checkbox-dash-icon { + background-image: url("../images/Checkbox-Dash.svg"); + width: 24px; + height: 24px; +} + +.account-icon { + background-image: url("../images/icon-account.svg"); + width: 24px; + height: 24px; +} + +.expand-icon { + background-image: url("../images/Expand-Light.svg"); + width: 18px; + height: 18px; +} + +.expand-on-icon { + background-image: url("../images/Expand-Light-On.svg"); + width: 18px; + height: 18px; +} + +.dark-left-icon { + background-image: url("../images/arrow-left-dark.svg"); + width: 18px; + height: 18px; +} + +.light-right-icon { + background-image: url("../images/arrow-right-light.svg"); + width: 18px; + height: 18px; +} + +.folder-icon { + background-image: url("../images/Folder-Icon.svg"); + width: 24px; + height: 24px; +} + +.star-icon { + background-image: url("../images/Star-Icon.svg"); + width: 24px; + height: 24px; +} + +.arrow-down-white-icon { + background-image: url("../images/down-arrow-white.svg"); + width: 17px; + height: 13px; +} + +.arrow-up-white-icon { + background-image: url("../images/up-arrow-white.svg"); + width: 17px; + height: 13px; +} + +.profile-pic-icon { + background-image: url("../images/Profile-Pic.svg"); + width: 60px; + height: 60px; +} + +.graph-up-icon { + background-image: url("../images/Icon-Graph-Green.svg"); + width: 24px; + height: 24px; +} + +.graph-down-icon { + background-image: url("../images/Icon-Graph-Red.svg"); + width: 24px; + height: 24px; +} + +.no-result-icon { + background-image: url("../images/limited-icon.svg"); + width: 52px; + height: 47px; +} + +.active .dashboard-icon { + background-image: url("../images/Icon-Dashboard-Active.svg"); +} + +.active .sales-icon { + background-image: url("../images/Icon-Sales-Active.svg"); +} + +.active .catalog-icon { + background-image: url("../images/Icon-Catalog-Active.svg"); +} + +.active .customer-icon { + background-image: url("../images/Icon-Customers-Active.svg"); +} + +.active .settings-icon { + background-image: url("../images/Icon-Settings-Active.svg"); +} + +.active .configuration-icon { + background-image: url("../images/Icon-Configure-Active.svg"); +} + +.active > .arrow-down-icon { + background-image: url("../images/Arrow-Down.svg"); + width: 14px; + height: 8px; +} + +.active > .expand-icon { + background-image: url("../images/Expand-Light-On.svg"); +} + +.active.dashboard-icon { + background-image: url("../images/Icon-Dashboard-Active.svg"); +} + +.active.customer-icon { + background-image: url("../images/Icon-Customers-Active.svg"); +} + +.active.sales-icon { + background-image: url("../images/Icon-Sales-Active.svg"); +} + +.active.settings-icon { + background-image: url("../images/Icon-Settings-Active.svg"); +} + +.active.configuration-icon { + background-image: url("../images/Icon-Configure-Active.svg"); +} + +.active.arrow-down-icon { + background-image: url("../images/Arrow-Down.svg"); + width: 14px; + height: 8px; +} + +.active.expand-icon { + background-image: url("../images/Expand-Light-On.svg"); +} + +.icon-404 { + background-image: url("../images/404-image.svg"); + width: 255px; + height: 255px; +} + +/* Data grid css starts here */ +.grid-container { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.grid-container .filter-wrapper { + display: block; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +.grid-container .filter-wrapper .filter-row-one, +.grid-container .filter-wrapper .filter-row-two { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; +} + +.grid-container .filter-wrapper .filter-row-one { + height: 40px; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; +} + +.grid-container .filter-wrapper .filter-row-one .search-filter .control { + font-family: "montserrat", sans-serif; + padding-left: 10px; + width: 380px; + height: 36px; + border: 2px solid #C7C7C7; + border-radius: 3px; + border-right: 0px; + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; + font-size: 14px; +} + +.grid-container .filter-wrapper .filter-row-one .search-filter .ic-wrapper { + display: block; + height: 36px; + width: 36px; + border: 2px solid #C7C7C7; + border-left: none; + border-radius: 2px; +} + +.grid-container .filter-wrapper .filter-row-one .search-filter .ic-wrapper .search-icon { + margin-left: 4px; + margin-top: 4px; + height: 24px; + width: 24px; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters { + display: -webkit-inline-box; + display: -ms-inline-flexbox; + display: inline-flex; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters { + margin-right: 5px; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-toggle { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + font-family: "montserrat", sans-serif; + padding-left: 5px; + height: 36px; + width: 150px; + border: 2px solid #C7C7C7; + border-radius: 2px; + background-color: #ffffff; + color: #8e8e8e; + font-size: 14px; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-toggle .dropdown-header { + width: 100%; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-toggle .dropdown-header .arrow-down-icon { + margin-right: 5px; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul li.filter-column-dropdown .filter-column-select { + width: 100%; + background: #ffffff; + border: 2px solid #C7C7C7; + border-radius: 3px; + height: 36px; + display: inline-block; + vertical-align: middle; + -webkit-transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + padding: 0px 5px; + font-family: "montserrat", sans-serif; + margin-top: 10px; + margin-bottom: 5px; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul li select { + background: #ffffff; + border: 2px solid #C7C7C7; + border-radius: 3px; + height: 36px; + max-width: 100%; + display: inline-block; + vertical-align: middle; + -webkit-transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + padding: 0px 5px; + font-family: "montserrat", sans-serif; + margin-top: 10px; + margin-bottom: 5px; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul li input { + background: #fff; + border: 2px solid #c7c7c7; + border-radius: 3px; + height: 36px; + max-width: 100%; + display: inline-block; + vertical-align: middle; + -webkit-transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + padding: 0px 5px; + font-family: "montserrat", sans-serif; + margin-top: 10px; + margin-bottom: 5px; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-condition-dropdown-string { + display: none; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-condition-dropdown-number { + display: none; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-condition-dropdown-datetime { + display: none; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-response-string { + display: none; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-response-boolean { + display: none; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-response-datetime { + display: none; +} + +.grid-container .filter-wrapper .filter-row-one .dropdown-filters .more-filters .dropdown-list .dropdown-container ul .filter-response-number { + display: none; +} + +.grid-container .filter-wrapper .filter-row-two { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-top: 6px; + margin-bottom: 6px; +} + +.grid-container .filter-wrapper .filter-row-two .filter-one { + margin-right: 10px; +} + +.grid-container .filter-wrapper .filter-row-two .filter-one .filter-name { + margin-right: 5px; +} + +.grid-container .filter-wrapper .filter-row-two .filter-one .filter-value { + display: -webkit-inline-box; + display: -ms-inline-flexbox; + display: inline-flex; + background: #e7e7e7; + padding-left: 5px; + color: #000311; + vertical-align: middle; +} + +.grid-container .filter-wrapper .filter-row-two .filter-one .filter-value .f-value { + margin: auto; +} + +.grid-container .filter-wrapper .filter-row-two .filter-one .filter-value .cross-icon { + margin: 5px; + height: 18px !important; + width: 18px !important; + cursor: pointer; +} + +.grid-container .table thead .mass-action-wrapper { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.grid-container .table thead .mass-action-wrapper .massaction-remove { + margin-top: 10px; + margin-right: 10px; +} + +.grid-container .table thead .mass-action-wrapper form { + margin-top: 8px; +} + +.grid-container .table thead .mass-action-wrapper .selected-items { + margin-right: 15px; +} + +.grid-container .table thead tr th.grid_head .sort-down-icon, .grid-container .table thead tr th.grid_head .sort-up-icon { + margin-left: 5px; + margin-top: -3px; + vertical-align: middle; +} + +.grid-container .table thead tr th.grid_head.sortable { + cursor: pointer; +} + +.grid-container .table thead tr th { + text-transform: capitalize; +} + +.grid-container .table tbody td.action a:first-child { + margin-right: 10px; +} + +.grid-container .table .pagination { + margin-top: 20px; +} + +/* DataGrid css ends in here */ +@-webkit-keyframes jelly { + 0% { + -webkit-transform: translateY(0px) scale(0.7); + transform: translateY(0px) scale(0.7); + opacity: 0; + } + 70% { + -webkit-transform: translateY(5px) scale(1.05); + transform: translateY(5px) scale(1.05); + opacity: 1; + } + 100% { + -webkit-transform: translateY(0px) scale(1); + transform: translateY(0px) scale(1); + opacity: 1; + } +} +@keyframes jelly { + 0% { + -webkit-transform: translateY(0px) scale(0.7); + transform: translateY(0px) scale(0.7); + opacity: 0; + } + 70% { + -webkit-transform: translateY(5px) scale(1.05); + transform: translateY(5px) scale(1.05); + opacity: 1; + } + 100% { + -webkit-transform: translateY(0px) scale(1); + transform: translateY(0px) scale(1); + opacity: 1; + } +} + +@-webkit-keyframes jelly-out { + 0% { + -webkit-transform: translateY(0px) scale(1); + transform: translateY(0px) scale(1); + opacity: 1; + } + 30% { + -webkit-transform: translateY(-5px) scale(1.05); + transform: translateY(-5px) scale(1.05); + opacity: 1; + } + 100% { + -webkit-transform: translateY(0px) scale(0.7); + transform: translateY(0px) scale(0.7); + opacity: 0; + } +} + +@keyframes jelly-out { + 0% { + -webkit-transform: translateY(0px) scale(1); + transform: translateY(0px) scale(1); + opacity: 1; + } + 30% { + -webkit-transform: translateY(-5px) scale(1.05); + transform: translateY(-5px) scale(1.05); + opacity: 1; + } + 100% { + -webkit-transform: translateY(0px) scale(0.7); + transform: translateY(0px) scale(0.7); + opacity: 0; + } +} + +* { + -webkit-box-sizing: border-box; + box-sizing: border-box; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +*:focus { + outline: none; +} + +a:link, +a:hover, +a:visited, +a:focus, +a:active { + text-decoration: none; + color: #0041FF; +} + +ul { + margin: 0; + padding: 0; + list-style: none; +} + +h1 { + font-size: 28px; + color: #3a3a3a; + margin-top: 0; +} + +h2 { + font-size: 18px; + color: #3a3a3a; +} + +.tooltip { + position: relative; + border-bottom: 1px solid black; +} + +.tooltip .tooltiptext { + visibility: hidden; + width: 120px; + background-color: black; + color: #fff; + text-align: center; + border-radius: 6px; + padding: 5px 0; + /* Position the tooltip */ + position: absolute; + z-index: 1; +} + +.tooltip:hover .tooltiptext { + visibility: visible; +} + +.hide { + display: none !important; +} + +.btn { + -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.2), 0 0 8px 0 rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.2), 0 0 8px 0 rgba(0, 0, 0, 0.1); + border-radius: 3px; + border: none; + color: #fff; + cursor: pointer; + -webkit-transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + font: inherit; + display: inline-block; +} + +.btn:hover, .btn:active, .btn:focus { + opacity: 0.75; + border: none; +} + +.btn.btn-sm { + padding: 6px 12px; +} + +.btn.btn-md { + padding: 8px 16px; +} + +.btn.btn-lg { + padding: 10px 20px; +} + +.btn.btn-xl { + padding: 12px 24px; + font-size: 16px; +} + +.btn.btn-primary { + background: #0041FF; + color: #ffffff; +} + +.btn.disabled, .btn:disabled, .btn[disabled="disabled"], .btn[disabled="disabled"]:hover, .btn[disabled="disabled"]:active { + cursor: not-allowed; + background: #b1b1ae; + -webkit-box-shadow: none; + box-shadow: none; + opacity: 1; +} + +.dropdown-open { + position: relative; +} + +.dropdown-list { + width: 200px; + margin-bottom: 20px; + -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.16), 0 0 9px 0 rgba(0, 0, 0, 0.16); + box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.16), 0 0 9px 0 rgba(0, 0, 0, 0.16); + border-radius: 3px; + background-color: #ffffff; + position: absolute; + display: none; + z-index: 10; + text-align: left; +} + +.dropdown-list.bottom-left { + top: 42px; + left: 0px; +} + +.dropdown-list.bottom-right { + top: 42px; + right: 0px; +} + +.dropdown-list.top-left { + bottom: 42px; + left: 0px; +} + +.dropdown-list.top-right { + bottom: 42px; + right: 0px; +} + +.dropdown-list .search-box { + padding: 20px; + border-bottom: 1px solid rgba(162, 162, 162, 0.2); +} + +.dropdown-list .search-box .control { + background: #fff; + border: 2px solid #C7C7C7; + border-radius: 3px; + width: 100%; + height: 36px; + display: inline-block; + vertical-align: middle; + -webkit-transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + padding: 0px 10px; + font-size: 15px; +} + +.dropdown-list .search-box .control:focus { + border-color: #0041FF; +} + +.dropdown-list .dropdown-container { + padding: 20px; + overflow-y: auto; + max-height: 280px; +} + +.dropdown-list .dropdown-container label { + font-size: 15px; + display: inline-block; + text-transform: uppercase; + color: #9e9e9e; + font-weight: 700; + padding-bottom: 5px; +} + +.dropdown-list .dropdown-container ul { + margin: 0px; + list-style-type: none; + padding: 0px; +} + +.dropdown-list .dropdown-container ul li { + padding: 5px 0px; +} + +.dropdown-list .dropdown-container ul li a:link, +.dropdown-list .dropdown-container ul li a:active, +.dropdown-list .dropdown-container ul li a:visited, +.dropdown-list .dropdown-container ul li a:focus { + color: #333333; + display: block; +} + +.dropdown-list .dropdown-container ul li a:hover { + color: #0041FF; +} + +.dropdown-list .dropdown-container ul li .checkbox { + margin: 0; +} + +.dropdown-list .dropdown-container ul li .control-group label { + color: #3a3a3a; + font-size: 15px; + font-weight: 500; + text-transform: capitalize; + width: 100%; +} + +.dropdown-list .dropdown-container .btn { + width: 100%; + margin-top: 10px; +} + +.table { + width: 100%; + overflow-x: auto; +} + +.table table { + width: 100%; + border-collapse: collapse; + text-align: left; +} + +.table table thead th { + font-weight: 700; + padding: 12px 10px; + background: #f8f9fa; + color: #3a3a3a; +} + +.table table tbody td { + padding: 10px; + border-bottom: solid 1px #d3d3d3; + color: #3a3a3a; + vertical-align: middle; +} + +.table table tbody td.actions { + text-align: right; +} + +.table table tbody td.actions .icon { + cursor: pointer; + vertical-align: middle; +} + +.table table tbody td.empty { + text-align: center; +} + +.table table tbody tr:last-child td { + border-bottom: none; +} + +.table .control-group { + width: 100%; + margin-bottom: 0; +} + +.table .control-group .control { + width: 100%; + margin: 0; +} + +.dropdown-btn { + min-width: 150px; + text-align: left; + background: #ffffff; + border: 2px solid #C7C7C7; + border-radius: 3px; + font-size: 14px; + padding: 8px 35px 8px 10px; + cursor: pointer; + position: relative; +} + +.dropdown-btn:hover, .dropdown-btn:active, .dropdown-btn:focus { + opacity: 0.75; + border: 2px solid #C7C7C7; +} + +.dropdown-btn .icon { + position: absolute; + right: 10px; + top: 50%; + margin-top: -4px; +} + +.pagination .page-item { + background: #ffffff; + border: 2px solid #C7C7C7; + border-radius: 3px; + padding: 7px 14px; + margin-right: 5px; + font-size: 16px; + display: inline-block; + color: #8e8e8e; + vertical-align: middle; + text-decoration: none; +} + +.pagination .page-item.previous, .pagination .page-item.next { + padding: 6px 9px; +} + +.pagination .page-item.active { + background: #0041ff; + color: #fff; + border-color: #0041ff; +} + +.pagination .page-item .icon { + vertical-align: middle; + margin-bottom: 3px; +} + +.checkbox { + position: relative; + display: block; + vertical-align: middle; + margin: 10px 5px 5px 0px; +} + +.checkbox input { + left: 0; + opacity: 0; + position: absolute; + top: 0; + z-index: 100; +} + +.checkbox .checkbox-view { + background-image: url("../images/Checkbox.svg"); + height: 24px; + width: 24px; + margin: 0; + display: inline-block !important; + vertical-align: middle; + margin-right: 5px; +} + +.checkbox input:checked + .checkbox-view { + background-image: url("../images/Checkbox-Checked.svg"); +} + +.checkbox input:disabled + .checkbox-view { + opacity: 0.5; + cursor: not-allowed; +} + +.radio { + position: relative; + display: block; + margin: 10px 5px 5px 0px; +} + +.radio input { + left: 0; + opacity: 0; + position: absolute; + top: 0; + z-index: 100; +} + +.radio .radio-view { + background-image: url("../images/controls.svg"); + background-position: -21px 0px; + height: 20px; + width: 20px; + margin: 0; + display: inline-block !important; + vertical-align: middle; + margin-right: 5px; +} + +.radio input:checked + .radio-view { + background-position: -21px -21px; +} + +.radio input:disabled + .radio-view { + opacity: 0.5; + cursor: not-allowed; +} + +.control-group { + display: block; + margin-bottom: 25px; + font-size: 15px; + color: #333333; + width: 750px; + max-width: 100%; + position: relative; +} + +.control-group label { + display: block; + color: #3a3a3a; +} + +.control-group label.required::after { + content: "*"; + color: #FC6868; + font-weight: 700; + display: inline-block; +} + +.control-group textarea.control { + height: 100px; + padding: 10px; +} + +.control-group .control { + background: #fff; + border: 2px solid #C7C7C7; + border-radius: 3px; + width: 70%; + height: 36px; + display: inline-block; + vertical-align: middle; + -webkit-transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1); + padding: 0px 10px; + font-size: 15px; + margin-top: 10px; + margin-bottom: 5px; +} + +.control-group .control:focus { + border-color: #0041FF; +} + +.control-group .control[disabled="disabled"] { + border-color: #d3d3d3; + background-color: #d3d3d3; + cursor: not-allowed; +} + +.control-group .control[multiple] { + height: 100px; +} + +.control-group.date::after, .control-group.datetime::after { + background-image: url("../images/Icon-Calendar.svg"); + width: 24px; + height: 24px; + content: ''; + display: inline-block; + vertical-align: middle; + margin-left: -34px; + margin-top: 2px; +} + +.control-group .control-info { + display: block; + font-style: italic; + color: #6f6f6f; +} + +.control-group .control-error { + display: none; + color: #ff5656; + margin-top: 5px; +} + +.control-group.has-error .control { + border-color: #FC6868; +} + +.control-group.has-error .control-error { + display: block; +} + +.control-group.price .currency-code { + vertical-align: middle; + display: inline-block; +} + +.button-group { + margin-top: 20px; + margin-bottom: 20px; +} + +.alert-wrapper { + width: 300px; + top: 10px; + right: 10px; + position: fixed; + z-index: 6; + text-align: left; +} + +.alert-wrapper .alert { + width: 300px; + padding: 15px; + border-radius: 3px; + display: inline-block; + -webkit-box-shadow: 0px 4px 15.36px 0.64px rgba(0, 0, 0, 0.1), 0px 2px 6px 0px rgba(0, 0, 0, 0.12); + box-shadow: 0px 4px 15.36px 0.64px rgba(0, 0, 0, 0.1), 0px 2px 6px 0px rgba(0, 0, 0, 0.12); + position: relative; + -webkit-animation: jelly 0.5s ease-in-out; + animation: jelly 0.5s ease-in-out; + -webkit-transform-origin: center top; + transform-origin: center top; + z-index: 500; + margin-bottom: 10px; +} + +.alert-wrapper .alert.alert-error { + background: #FC6868; +} + +.alert-wrapper .alert.alert-info { + background: #204d74; +} + +.alert-wrapper .alert.alert-success { + background: #4CAF50; +} + +.alert-wrapper .alert.alert-warning { + background: #FFC107; +} + +.alert-wrapper .alert .icon { + position: absolute; + right: 10px; + top: 10px; + cursor: pointer; +} + +.alert-wrapper .alert p { + color: #ffffff; + margin: 0px; + padding: 0px; + font-size: 15px; +} + +.tabs ul { + border-bottom: solid 1px rgba(162, 162, 162, 0.2); +} + +.tabs ul li { + display: inline-block; +} + +.tabs ul li a { + padding: 15px 20px; + cursor: pointer; + margin: 0px 2px; + text-align: center; + color: #000311; + display: block; +} + +.tabs ul li.active a { + border-bottom: 3px solid #0041FF; +} + +.accordian, accordian { + display: inline-block; + width: 100%; +} + +.accordian .accordian-header, .accordian div[slot*="header"], accordian .accordian-header, accordian div[slot*="header"] { + width: 100%; + display: inline-block; + font-size: 18px; + color: #3a3a3a; + border-bottom: solid 1px rgba(162, 162, 162, 0.2); + padding: 20px 15px; + cursor: pointer; +} + +.accordian .accordian-header .expand-icon, .accordian div[slot*="header"] .expand-icon, accordian .accordian-header .expand-icon, accordian div[slot*="header"] .expand-icon { + background-image: url("../images/Expand-Light.svg"); + margin-right: 10px; + margin-top: 3px; +} + +.accordian .accordian-header h1, .accordian div[slot*="header"] h1, accordian .accordian-header h1, accordian div[slot*="header"] h1 { + margin: 0; + font-size: 20px; + display: inline-block; +} + +.accordian .accordian-header .icon, .accordian div[slot*="header"] .icon, accordian .accordian-header .icon, accordian div[slot*="header"] .icon { + float: right; +} + +.accordian .accordian-header .icon.left, .accordian div[slot*="header"] .icon.left, accordian .accordian-header .icon.left, accordian div[slot*="header"] .icon.left { + float: left; +} + +.accordian .accordian-content, .accordian div[slot*="body"], accordian .accordian-content, accordian div[slot*="body"] { + width: 100%; + padding: 20px 15px; + display: none; + -webkit-transition: 0.3s ease all; + transition: 0.3s ease all; +} + +.accordian.active > .accordian-content, accordian.active > .accordian-content { + display: inline-block; +} + +.accordian.active > .accordian-header .expand-icon, accordian.active > .accordian-header .expand-icon { + background-image: url("../images/Expand-Light-On.svg"); +} + +.tree-container .tree-item { + padding-left: 30px; + display: inline-block; + margin-top: 10px; + width: 100%; +} + +.tree-container .tree-item > .tree-item { + display: none; +} + +.tree-container .tree-item.active > .tree-item { + display: inline-block; +} + +.tree-container .tree-item .checkbox { + margin: 0; + display: inline-block; +} + +.tree-container .tree-item .radio { + margin: 0; + display: inline-block; +} + +.tree-container .tree-item .expand-icon { + display: inline-block; + margin-right: 10px; + cursor: pointer; + background-image: url("../images/Expand-Light.svg"); + width: 18px; + height: 18px; + vertical-align: middle; +} + +.tree-container .tree-item .folder-icon { + vertical-align: middle; + margin-right: 10px; +} + +.tree-container .tree-item.active > .expand-icon { + background-image: url("../images/Expand-Light-On.svg"); +} + +.tree-container > .tree-item { + padding-left: 0; +} + +.panel { + -webkit-box-shadow: 0 2px 25px 0 rgba(0, 0, 0, 0.15); + box-shadow: 0 2px 25px 0 rgba(0, 0, 0, 0.15); + border-radius: 5px; + background: #fff; +} + +.panel .panel-content { + padding: 20px; +} + +.modal-open { + overflow: hidden; +} + +.modal-overlay { + display: none; + overflow-y: auto; + z-index: 10; + top: 0px; + right: 0px; + bottom: 0px; + left: 0px; + position: fixed; + background: #000; + opacity: 0.75; +} + +.modal-open .modal-overlay { + display: block; +} + +.modal-container { + -webkit-animation: fade-in-white 0.3s ease-in-out; + animation: fade-in-white 0.3s ease-in-out; + z-index: 11; + margin-left: -350px; + width: 600px; + max-width: 80%; + background: #ffffff; + position: fixed; + left: 50%; + top: 100px; + margin-bottom: 100px; + -webkit-box-shadow: 0px 15px 25px 0px rgba(0, 0, 0, 0.03), 0px 20px 45px 5px rgba(0, 0, 0, 0.2); + box-shadow: 0px 15px 25px 0px rgba(0, 0, 0, 0.03), 0px 20px 45px 5px rgba(0, 0, 0, 0.2); + -webkit-animation: jelly 0.5s ease-in-out; + animation: jelly 0.5s ease-in-out; + border-radius: 5px; +} + +.modal-container .modal-header { + padding: 20px; +} + +.modal-container .modal-header h3 { + display: inline-block; + font-size: 20px; + color: #3a3a3a; + margin: 0; +} + +.modal-container .modal-header .icon { + float: right; + cursor: pointer; +} + +.modal-container .modal-body { + padding: 20px; +} + +.modal-container .modal-body .control-group .control { + width: 100%; +} + +.label { + background: #E7E7E7; + border-radius: 2px; + padding: 8px; + color: #000311; + display: inline-block; +} + +.label.label-sm { + padding: 5px; +} + +.label.label-md { + padding: 8px; +} + +.label.label-lg { + padding: 11px; +} + +.label.label-xl { + padding: 14px; +} + +.badge { + border-radius: 50px; + color: white; + padding: 8px; +} + +.badge.badge-sm { + padding: 5px; +} + +.badge.badge-md { + padding: 3px 10px; +} + +.badge.badge-lg { + padding: 11px; +} + +.badge.badge-xl { + padding: 14px; +} + +.badge.badge-success { + background-color: #4CAF50; +} + +.badge.badge-info { + background-color: #0041FF; +} + +.badge.badge-danger { + background-color: #FC6868; +} + +.badge.badge-warning { + background-color: #FFC107; +} + +.image-wrapper { + margin-bottom: 20px; + display: inline-block; + width: 100%; +} + +.image-wrapper .image-item { + width: 200px; + height: 200px; + margin-right: 20px; + background: #F8F9FA; + border-radius: 3px; + display: inline-block; + position: relative; + background-image: url("../images/placeholder-icon.svg"); + background-repeat: no-repeat; + background-position: center; + margin-bottom: 20px; +} + +.image-wrapper .image-item img.preview { + width: 100%; + height: 100%; +} + +.image-wrapper .image-item input { + display: none; +} + +.image-wrapper .image-item .remove-image { + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.08)), to(rgba(0, 0, 0, 0.24))); + background-image: linear-gradient(-180deg, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.24) 100%); + border-radius: 0 0 4px 4px; + position: absolute; + bottom: 0; + width: 100%; + padding: 10px; + text-align: center; + color: #fff; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.24); + margin-right: 20px; + cursor: pointer; +} + +.image-wrapper .image-item:hover .remove-image { + display: block; +} + +.image-wrapper .image-item.has-image { + background-image: none; +} + +.cp-spinner { + width: 48px; + height: 48px; + display: inline-block; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +.cp-round:before { + border-radius: 50%; + content: " "; + width: 48px; + height: 48px; + display: inline-block; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-top: solid 6px #bababa; + border-right: solid 6px #bababa; + border-bottom: solid 6px #bababa; + border-left: solid 6px #bababa; + position: absolute; + top: 0; + left: 0; +} + +.cp-round:after { + border-radius: 50%; + content: " "; + width: 48px; + height: 48px; + display: inline-block; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-top: solid 6px #0041FF; + border-right: solid 6px transparent; + border-bottom: solid 6px transparent; + border-left: solid 6px transparent; + position: absolute; + top: 0; + left: 0; + -webkit-animation: spin 1s ease-in-out infinite; + animation: spin 1s ease-in-out infinite; +} + +@-webkit-keyframes spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@keyframes spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} diff --git a/packages/Webkul/Ui/publishable/assets/js/ui.js b/packages/Webkul/Ui/publishable/assets/js/ui.js index 079b24614..2d1e248c4 100644 --- a/packages/Webkul/Ui/publishable/assets/js/ui.js +++ b/packages/Webkul/Ui/publishable/assets/js/ui.js @@ -1 +1,3027 @@ -!function(e){var t={};function i(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,i),r.l=!0,r.exports}i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="/",i(i.s=0)}({"+wdr":function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={data:function(){return{sample:"",image_file:"",file:null,newImage:""}},mounted:function(){this.sample="";var e=this.$el.getElementsByTagName("input")[0],t=this;e.onchange=function(){var i=new FileReader;i.readAsDataURL(e.files[0]),i.onload=function(e){this.img=document.getElementsByTagName("input")[0],this.img.src=e.target.result,t.newImage=this.img.src,t.changePreview()}}},methods:{removePreviewImage:function(){this.sample=""},changePreview:function(){this.sample=this.newImage}},computed:{getInputImage:function(){console.log(this.imageData)}}}},0:function(e,t,i){i("J66Q"),i("Oy72"),e.exports=i("MT9B")},"13ON":function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"tabs"},[i("ul",e._l(e.tabs,function(t){return i("li",{class:{active:t.isActive},on:{click:function(i){e.selectTab(t)}}},[i("a",[e._v(e._s(t.name))])])}))]),e._v(" "),i("div",{staticClass:"tabs-content"},[e._t("default")],2)])},staticRenderFns:[]}},"2JMG":function(e,t,i){var n=i("VU/8")(i("G3lE"),null,!1,null,null,null);e.exports=n.exports},"31/P":function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.default={name:"tree-view",inheritAttrs:!1,props:{inputType:String,nameField:String,idField:String,captionField:String,childrenField:String,valueField:String,items:{type:[Array,String,Object],required:!1,default:null},value:{type:Array,required:!1,default:null},behavior:{type:String,required:!1,default:"reactive"},savedValues:{type:Array,required:!1,default:null}},created:function(){-1!==this.savedValues.indexOf(this.items[this.valueField])&&this.value.push(this.items)},computed:{caption:function(){return this.items[this.captionField]},allChildren:function(){var e=this,t=[];return function i(r){if(r[e.childrenField]&&e.getLength(r[e.childrenField])>0)if("object"==n(r[e.childrenField]))for(var s in r[e.childrenField])i(r[e.childrenField][s]);else r[e.childrenField].forEach(function(e){return i(e)});else t.push(r)}(this.items),t},hasChildren:function(){return!!this.items[this.childrenField]&&this.getLength(this.items[this.childrenField])>0},hasSelection:function(){return!!this.value&&this.value.length>0},isAllChildrenSelected:function(){var e=this;return this.hasChildren&&this.hasSelection&&this.allChildren.every(function(t){return e.value.some(function(i){return i[e.idField]===t[e.idField]})})},isSomeChildrenSelected:function(){var e=this;return this.hasChildren&&this.hasSelection&&this.allChildren.some(function(t){return e.value.some(function(i){return i[e.idField]===t[e.idField]})})}},methods:{getLength:function(e){if("object"==(void 0===e?"undefined":n(e))){var t=0;for(var i in e)t++;return t}return e.length},generateRoot:function(){var e=this;return"checkbox"==this.inputType?"reactive"==this.behavior?this.$createElement("tree-checkbox",{props:{id:this.items[this.idField],label:this.caption,nameField:this.nameField,modelValue:this.items[this.valueField],inputValue:this.hasChildren?this.isSomeChildrenSelected:this.value,value:this.hasChildren?this.isAllChildrenSelected:this.items},on:{change:function(t){e.hasChildren?(e.isAllChildrenSelected?e.allChildren.forEach(function(t){var i=e.value.indexOf(t);e.value.splice(i,1)}):e.allChildren.forEach(function(t){var i=!1;e.value.forEach(function(e){e.key==t.key&&(i=!0)}),i||e.value.push(t)}),e.$emit("input",e.value)):e.$emit("input",t)}}}):this.$createElement("tree-checkbox",{props:{id:this.items[this.idField],label:this.caption,nameField:this.nameField,modelValue:this.items[this.valueField],inputValue:this.value,value:this.items}}):"radio"==this.inputType?this.$createElement("tree-radio",{props:{id:this.items[this.idField],label:this.caption,nameField:this.nameField,modelValue:this.items[this.valueField],value:this.savedValues}}):void 0},generateChild:function(e){var t=this;return this.$createElement("tree-item",{on:{input:function(e){t.$emit("input",e)}},props:{items:e,value:this.value,savedValues:this.savedValues,nameField:this.nameField,inputType:this.inputType,captionField:this.captionField,childrenField:this.childrenField,valueField:this.valueField,idField:this.idField,behavior:this.behavior}})},generateChildren:function(){var e=this,t=[];if(this.items[this.childrenField])if("object"==n(this.items[this.childrenField]))for(var i in this.items[this.childrenField])t.push(this.generateChild(this.items[this.childrenField][i]));else this.items[this.childrenField].forEach(function(i){t.push(e.generateChild(i))});return t},generateIcon:function(){var e=this;return this.$createElement("i",{class:["expand-icon"],on:{click:function(t){e.$el.classList.toggle("active")}}})},generateFolderIcon:function(){return this.$createElement("i",{class:["icon","folder-icon"]})}},render:function(e){return e("div",{class:["tree-item","active",this.hasChildren?"has-children":""]},[this.generateIcon(),this.generateFolderIcon(),this.generateRoot()].concat(function(e){if(Array.isArray(e)){for(var t=0,i=Array(e.length);te||height0},attrs:{for:e._uid}},[i("input",{attrs:{type:"hidden",name:e.finalInputName}}),e._v(" "),i("input",{ref:"imageInput",attrs:{type:"file",accept:"image/*",name:e.finalInputName,id:e._uid},on:{change:function(t){e.addImageView(t)}}}),e._v(" "),e.imageData.length>0?i("img",{staticClass:"preview",attrs:{src:e.imageData}}):e._e(),e._v(" "),i("label",{staticClass:"remove-image",on:{click:function(t){e.removeImage()}}},[e._v(e._s(e.removeButtonLabel))])])},staticRenderFns:[]}},"Tty+":function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={props:["id","isOpen"],created:function(){this.closeModal()},computed:{isModalOpen:function(){return this.addClassToBody(),this.isOpen}},methods:{closeModal:function(){this.$root.$set(this.$root.modalIds,this.id,!1)},addClassToBody:function(){var e=document.querySelector("body");this.isOpen?e.classList.add("modal-open"):e.classList.remove("modal-open")}}}},UHEH:function(e,t,i){var n=i("VU/8")(i("7z1m"),i("n2S5"),!1,null,null,null);e.exports=n.exports},"VU/8":function(e,t){e.exports=function(e,t,i,n,r,s){var a,o=e=e||{},l=typeof e.default;"object"!==l&&"function"!==l||(a=e,o=e.default);var u,d="function"==typeof o?o.options:o;if(t&&(d.render=t.render,d.staticRenderFns=t.staticRenderFns,d._compiled=!0),i&&(d.functional=!0),r&&(d._scopeId=r),s?(u=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),n&&n.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(s)},d._ssrRegister=u):n&&(u=n),u){var c=d.functional,h=c?d.render:d.beforeCreate;c?(d._injectStyles=u,d.render=function(e,t){return u.call(t),h(e,t)}):d.beforeCreate=h?[].concat(h,u):[u]}return{esModule:a,exports:o,options:d}}},VrhZ:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,i=e._self._c||t;return e.isModalOpen?i("div",{staticClass:"modal-container"},[i("div",{staticClass:"modal-header"},[e._t("header",[e._v("\n Default header\n ")]),e._v(" "),i("i",{staticClass:"icon remove-icon",on:{click:e.closeModal}})],2),e._v(" "),i("div",{staticClass:"modal-body"},[e._t("body",[e._v("\n Default body\n ")])],2)]):e._e()},staticRenderFns:[]}},YjnE:function(e,t,i){var n=i("VU/8")(i("7aQn"),null,!1,null,null,null);e.exports=n.exports},Z7s4:function(e,t,i){var n=i("VU/8")(i("qyM9"),i("44Sb"),!1,null,null,null);e.exports=n.exports},atAl:function(e,t,i){var n=i("VU/8")(i("wtqv"),i("AOOz"),!1,null,null,null);e.exports=n.exports},by3Y:function(e,t){e.exports={render:function(){var e=this.$createElement;return(this._self._c||e)("div",{directives:[{name:"show",rawName:"v-show",value:this.isActive,expression:"isActive"}]},[this._t("default")],2)},staticRenderFns:[]}},fXJ7:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"preview-image"},[e._t("default"),e._v(" "),i("div",{staticClass:"preview-wrapper"},[i("img",{staticClass:"image-preview",attrs:{src:e.sample}})]),e._v(" "),i("div",{staticClass:"remove-preview"},[i("button",{staticClass:"btn btn-md btn-primary",on:{click:function(t){return t.preventDefault(),e.removePreviewImage(t)}}},[e._v("Remove Image")])])],2)},staticRenderFns:[]}},fuLy:function(e,t,i){var n=i("VU/8")(i("6wXy"),i("yfX9"),!1,null,null,null);e.exports=n.exports},"i//U":function(e,t,i){var n=i("VU/8")(i("8skS"),i("Rsk5"),!1,null,null,null);e.exports=n.exports},iT8k:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={props:{name:{required:!0},selected:{default:!1}},data:function(){return{isActive:!1}},mounted:function(){this.isActive=this.selected}}},k4Ds:function(e,t,i){var n=i("VU/8")(i("31/P"),null,!1,null,null,null);e.exports=n.exports},kIKU:function(e,t,i){var n=i("VU/8")(i("rolU"),i("rMY+"),!1,null,null,null);e.exports=n.exports},n2S5:function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("transition-group",{staticClass:"alert-wrapper",attrs:{tag:"div",name:"flash-wrapper"}},e._l(e.flashes,function(t){return i("flash",{key:t.uid,attrs:{flash:t},on:{onRemoveFlash:function(t){e.removeFlash(t)}}})}))},staticRenderFns:[]}},o0bH:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={bind:function(e,t,i){e.addEventListener("input",function(e){setTimeout(function(){e.target.value=e.target.value.toString().replace(/[^\w_ ]+/g,"").trim().replace(/ +/g,"-")},100)})}}},o3eH:function(e,t,i){var n=i("VU/8")(i("sTtw"),i("13ON"),!1,null,null,null);e.exports=n.exports},pM6D:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={bind:function(e,t,i){e.addEventListener("click",function(i){i.preventDefault();var n="Are your sure you want to perform this action ?";t.value&&""!=t.value&&(n=t.value),confirm(n)&&(window.location.href=e.href)})}}},qyM9:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"tree-radio",props:["id","label","nameField","modelValue","value"],computed:{isActive:function(){return!!this.value.length&&this.value[0]==this.modelValue}}}},"rMY+":function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"image-wrapper"},e._l(e.items,function(t,n){return i("image-item",{key:t.id,attrs:{image:t,"input-name":e.inputName,"remove-button-label":e.removeButtonLabel},on:{onRemoveImage:function(t){e.removeImage(t)}}})})),e._v(" "),i("label",{staticClass:"btn btn-lg btn-primary",staticStyle:{display:"inline-block",width:"auto"},on:{click:e.createFileType}},[e._v(e._s(e.buttonLabel))])])},staticRenderFns:[]}},rjj0:function(e,t,i){var n="undefined"!=typeof document;if("undefined"!=typeof DEBUG&&DEBUG&&!n)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var r=i("tTVk"),s={},a=n&&(document.head||document.getElementsByTagName("head")[0]),o=null,l=0,u=!1,d=function(){},c=null,h="data-vue-ssr-id",f="undefined"!=typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase());function p(e){for(var t=0;ti.parts.length&&(n.parts.length=i.parts.length)}else{var a=[];for(r=0;r 0) { + if (_typeof(items[_this.childrenField]) == 'object') { + for (var key in items[_this.childrenField]) { + searchTree(items[_this.childrenField][key]); + } + } else { + items[_this.childrenField].forEach(function (child) { + return searchTree(child); + }); + } + } else { + leafs.push(items); + } + }; + + searchTree(this.items); + + return leafs; + }, + hasChildren: function hasChildren() { + return !!this.items[this.childrenField] && this.getLength(this.items[this.childrenField]) > 0; + }, + hasSelection: function hasSelection() { + return !!this.value && this.value.length > 0; + }, + isAllChildrenSelected: function isAllChildrenSelected() { + var _this2 = this; + + return this.hasChildren && this.hasSelection && this.allChildren.every(function (leaf) { + return _this2.value.some(function (sel) { + return sel[_this2.idField] === leaf[_this2.idField]; + }); + }); + }, + isSomeChildrenSelected: function isSomeChildrenSelected() { + var _this3 = this; + + return this.hasChildren && this.hasSelection && this.allChildren.some(function (leaf) { + return _this3.value.some(function (sel) { + return sel[_this3.idField] === leaf[_this3.idField]; + }); + }); + } + }, + + methods: { + getLength: function getLength(items) { + if ((typeof items === 'undefined' ? 'undefined' : _typeof(items)) == 'object') { + var length = 0; + + for (var item in items) { + length++; + } + + return length; + } + + return items.length; + }, + generateRoot: function generateRoot() { + var _this4 = this; + + if (this.inputType == 'checkbox') { + if (this.behavior == 'reactive') { + return this.$createElement('tree-checkbox', { + props: { + id: this.items[this.idField], + label: this.caption, + nameField: this.nameField, + modelValue: this.items[this.valueField], + inputValue: this.hasChildren ? this.isSomeChildrenSelected : this.value, + value: this.hasChildren ? this.isAllChildrenSelected : this.items + }, + on: { + change: function change(selection) { + if (_this4.hasChildren) { + if (_this4.isAllChildrenSelected) { + _this4.allChildren.forEach(function (leaf) { + var index = _this4.value.indexOf(leaf); + _this4.value.splice(index, 1); + }); + } else { + _this4.allChildren.forEach(function (leaf) { + var exists = false; + _this4.value.forEach(function (item) { + if (item['key'] == leaf['key']) { + exists = true; + } + }); + + if (!exists) { + _this4.value.push(leaf); + } + }); + } + + _this4.$emit('input', _this4.value); + } else { + _this4.$emit('input', selection); + } + } + } + }); + } else { + return this.$createElement('tree-checkbox', { + props: { + id: this.items[this.idField], + label: this.caption, + nameField: this.nameField, + modelValue: this.items[this.valueField], + inputValue: this.value, + value: this.items + } + }); + } + } else if (this.inputType == 'radio') { + return this.$createElement('tree-radio', { + props: { + id: this.items[this.idField], + label: this.caption, + nameField: this.nameField, + modelValue: this.items[this.valueField], + value: this.savedValues + } + }); + } + }, + generateChild: function generateChild(child) { + var _this5 = this; + + return this.$createElement('tree-item', { + on: { + input: function input(selection) { + _this5.$emit('input', selection); + } + }, + props: { + items: child, + value: this.value, + savedValues: this.savedValues, + nameField: this.nameField, + inputType: this.inputType, + captionField: this.captionField, + childrenField: this.childrenField, + valueField: this.valueField, + idField: this.idField, + behavior: this.behavior + } + }); + }, + generateChildren: function generateChildren() { + var _this6 = this; + + var childElements = []; + if (this.items[this.childrenField]) { + if (_typeof(this.items[this.childrenField]) == 'object') { + for (var key in this.items[this.childrenField]) { + childElements.push(this.generateChild(this.items[this.childrenField][key])); + } + } else { + this.items[this.childrenField].forEach(function (child) { + childElements.push(_this6.generateChild(child)); + }); + } + } + + return childElements; + }, + generateIcon: function generateIcon() { + var _this7 = this; + + return this.$createElement('i', { + class: ['expand-icon'], + on: { + click: function click(selection) { + _this7.$el.classList.toggle("active"); + } + } + }); + }, + generateFolderIcon: function generateFolderIcon() { + return this.$createElement('i', { + class: ['icon', 'folder-icon'] + }); + } + }, + + render: function render(createElement) { + return createElement('div', { + class: ['tree-item', 'active', this.hasChildren ? 'has-children' : ''] + }, [this.generateIcon(), this.generateFolderIcon(), this.generateRoot()].concat(_toConsumableArray(this.generateChildren()))); + } +}); + +/***/ }), +/* 22 */ +/***/ (function(module, exports, __webpack_require__) { + +var disposed = false +var normalizeComponent = __webpack_require__(0) +/* script */ +var __vue_script__ = __webpack_require__(23) +/* template */ +var __vue_template__ = __webpack_require__(24) +/* template functional */ +var __vue_template_functional__ = false +/* styles */ +var __vue_styles__ = null +/* scopeId */ +var __vue_scopeId__ = null +/* moduleIdentifier (server only) */ +var __vue_module_identifier__ = null +var Component = normalizeComponent( + __vue_script__, + __vue_template__, + __vue_template_functional__, + __vue_styles__, + __vue_scopeId__, + __vue_module_identifier__ +) +Component.options.__file = "src/Resources/assets/js/components/tree-view/tree-checkbox.vue" + +/* hot reload */ +if (false) {(function () { + var hotAPI = require("vue-hot-reload-api") + hotAPI.install(require("vue"), false) + if (!hotAPI.compatible) return + module.hot.accept() + if (!module.hot.data) { + hotAPI.createRecord("data-v-0c27ec9b", Component.options) + } else { + hotAPI.reload("data-v-0c27ec9b", Component.options) + } + module.hot.dispose(function (data) { + disposed = true + }) +})()} + +module.exports = Component.exports + + +/***/ }), +/* 23 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +// +// +// +// +// +// +// +// + +/* harmony default export */ __webpack_exports__["default"] = ({ + name: 'tree-checkbox', + + props: ['id', 'label', 'nameField', 'modelValue', 'inputValue', 'value'], + + computed: { + isMultiple: function isMultiple() { + return Array.isArray(this.internalValue); + }, + isActive: function isActive() { + var _this = this; + + var value = this.value; + var input = this.internalValue; + + if (this.isMultiple) { + return input.some(function (item) { + return _this.valueComparator(item, value); + }); + } + + return value ? this.valueComparator(value, input) : Boolean(input); + }, + + + internalValue: { + get: function get() { + return this.lazyValue; + }, + set: function set(val) { + this.lazyValue = val; + this.$emit('input', val); + } + } + }, + + data: function data(vm) { + return { + lazyValue: vm.inputValue + }; + }, + + watch: { + inputValue: function inputValue(val) { + this.internalValue = val; + } + }, + + methods: { + inputChanged: function inputChanged() { + var _this2 = this; + + var value = this.value; + var input = this.internalValue; + + if (this.isMultiple) { + var length = input.length; + + input = input.filter(function (item) { + return !_this2.valueComparator(item, value); + }); + + if (input.length === length) { + input.push(value); + } + } else { + input = !input; + } + + this.$emit('change', input); + }, + valueComparator: function valueComparator(a, b) { + var _this3 = this; + + if (a === b) return true; + + if (a !== Object(a) || b !== Object(b)) { + return false; + } + + var props = Object.keys(a); + + if (props.length !== Object.keys(b).length) { + return false; + } + + return props.every(function (p) { + return _this3.valueComparator(a[p], b[p]); + }); + } + } +}); + +/***/ }), +/* 24 */ +/***/ (function(module, exports, __webpack_require__) { + +var render = function() { + var _vm = this + var _h = _vm.$createElement + var _c = _vm._self._c || _h + return _c("span", { staticClass: "checkbox" }, [ + _c("input", { + attrs: { type: "checkbox", id: _vm.id, name: [_vm.nameField + "[]"] }, + domProps: { value: _vm.modelValue, checked: _vm.isActive }, + on: { + change: function($event) { + _vm.inputChanged() + } + } + }), + _vm._v(" "), + _c("label", { staticClass: "checkbox-view", attrs: { for: _vm.id } }), + _vm._v(" "), + _c("span", { attrs: { for: _vm.id } }, [_vm._v(_vm._s(_vm.label))]) + ]) +} +var staticRenderFns = [] +render._withStripped = true +module.exports = { render: render, staticRenderFns: staticRenderFns } +if (false) { + module.hot.accept() + if (module.hot.data) { + require("vue-hot-reload-api") .rerender("data-v-0c27ec9b", module.exports) + } +} + +/***/ }), +/* 25 */ +/***/ (function(module, exports, __webpack_require__) { + +var disposed = false +var normalizeComponent = __webpack_require__(0) +/* script */ +var __vue_script__ = __webpack_require__(26) +/* template */ +var __vue_template__ = __webpack_require__(27) +/* template functional */ +var __vue_template_functional__ = false +/* styles */ +var __vue_styles__ = null +/* scopeId */ +var __vue_scopeId__ = null +/* moduleIdentifier (server only) */ +var __vue_module_identifier__ = null +var Component = normalizeComponent( + __vue_script__, + __vue_template__, + __vue_template_functional__, + __vue_styles__, + __vue_scopeId__, + __vue_module_identifier__ +) +Component.options.__file = "src/Resources/assets/js/components/tree-view/tree-radio.vue" + +/* hot reload */ +if (false) {(function () { + var hotAPI = require("vue-hot-reload-api") + hotAPI.install(require("vue"), false) + if (!hotAPI.compatible) return + module.hot.accept() + if (!module.hot.data) { + hotAPI.createRecord("data-v-7b7bb153", Component.options) + } else { + hotAPI.reload("data-v-7b7bb153", Component.options) + } + module.hot.dispose(function (data) { + disposed = true + }) +})()} + +module.exports = Component.exports + + +/***/ }), +/* 26 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +// +// +// +// +// +// +// +// + +/* harmony default export */ __webpack_exports__["default"] = ({ + name: 'tree-radio', + + props: ['id', 'label', 'nameField', 'modelValue', 'value'], + + computed: { + isActive: function isActive() { + if (this.value.length) { + return this.value[0] == this.modelValue ? true : false; + } + + return false; + } + } +}); + +/***/ }), +/* 27 */ +/***/ (function(module, exports, __webpack_require__) { + +var render = function() { + var _vm = this + var _h = _vm.$createElement + var _c = _vm._self._c || _h + return _c("span", { staticClass: "radio" }, [ + _c("input", { + attrs: { type: "radio", id: _vm.id, name: _vm.nameField }, + domProps: { value: _vm.modelValue, checked: _vm.isActive } + }), + _vm._v(" "), + _c("label", { staticClass: "radio-view", attrs: { for: _vm.id } }), + _vm._v(" "), + _c("span", { attrs: { for: _vm.id } }, [_vm._v(_vm._s(_vm.label))]) + ]) +} +var staticRenderFns = [] +render._withStripped = true +module.exports = { render: render, staticRenderFns: staticRenderFns } +if (false) { + module.hot.accept() + if (module.hot.data) { + require("vue-hot-reload-api") .rerender("data-v-7b7bb153", module.exports) + } +} + +/***/ }), +/* 28 */ +/***/ (function(module, exports, __webpack_require__) { + +var disposed = false +var normalizeComponent = __webpack_require__(0) +/* script */ +var __vue_script__ = __webpack_require__(29) +/* template */ +var __vue_template__ = __webpack_require__(30) +/* template functional */ +var __vue_template_functional__ = false +/* styles */ +var __vue_styles__ = null +/* scopeId */ +var __vue_scopeId__ = null +/* moduleIdentifier (server only) */ +var __vue_module_identifier__ = null +var Component = normalizeComponent( + __vue_script__, + __vue_template__, + __vue_template_functional__, + __vue_styles__, + __vue_scopeId__, + __vue_module_identifier__ +) +Component.options.__file = "src/Resources/assets/js/components/modal.vue" + +/* hot reload */ +if (false) {(function () { + var hotAPI = require("vue-hot-reload-api") + hotAPI.install(require("vue"), false) + if (!hotAPI.compatible) return + module.hot.accept() + if (!module.hot.data) { + hotAPI.createRecord("data-v-463f5591", Component.options) + } else { + hotAPI.reload("data-v-463f5591", Component.options) + } + module.hot.dispose(function (data) { + disposed = true + }) +})()} + +module.exports = Component.exports + + +/***/ }), +/* 29 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// + +/* harmony default export */ __webpack_exports__["default"] = ({ + props: ['id', 'isOpen'], + + created: function created() { + this.closeModal(); + }, + + + computed: { + isModalOpen: function isModalOpen() { + this.addClassToBody(); + + return this.isOpen; + } + }, + + methods: { + closeModal: function closeModal() { + this.$root.$set(this.$root.modalIds, this.id, false); + }, + addClassToBody: function addClassToBody() { + var body = document.querySelector("body"); + if (this.isOpen) { + body.classList.add("modal-open"); + } else { + body.classList.remove("modal-open"); + } + } + } +}); + +/***/ }), +/* 30 */ +/***/ (function(module, exports, __webpack_require__) { + +var render = function() { + var _vm = this + var _h = _vm.$createElement + var _c = _vm._self._c || _h + return _vm.isModalOpen + ? _c("div", { staticClass: "modal-container" }, [ + _c( + "div", + { staticClass: "modal-header" }, + [ + _vm._t("header", [ + _vm._v("\n Default header\n ") + ]), + _vm._v(" "), + _c("i", { + staticClass: "icon remove-icon", + on: { click: _vm.closeModal } + }) + ], + 2 + ), + _vm._v(" "), + _c( + "div", + { staticClass: "modal-body" }, + [_vm._t("body", [_vm._v("\n Default body\n ")])], + 2 + ) + ]) + : _vm._e() +} +var staticRenderFns = [] +render._withStripped = true +module.exports = { render: render, staticRenderFns: staticRenderFns } +if (false) { + module.hot.accept() + if (module.hot.data) { + require("vue-hot-reload-api") .rerender("data-v-463f5591", module.exports) + } +} + +/***/ }), +/* 31 */ +/***/ (function(module, exports, __webpack_require__) { + +var disposed = false +function injectStyle (ssrContext) { + if (disposed) return + __webpack_require__(32) +} +var normalizeComponent = __webpack_require__(0) +/* script */ +var __vue_script__ = __webpack_require__(37) +/* template */ +var __vue_template__ = __webpack_require__(38) +/* template functional */ +var __vue_template_functional__ = false +/* styles */ +var __vue_styles__ = injectStyle +/* scopeId */ +var __vue_scopeId__ = null +/* moduleIdentifier (server only) */ +var __vue_module_identifier__ = null +var Component = normalizeComponent( + __vue_script__, + __vue_template__, + __vue_template_functional__, + __vue_styles__, + __vue_scopeId__, + __vue_module_identifier__ +) +Component.options.__file = "src/Resources/assets/js/components/image/image-upload.vue" + +/* hot reload */ +if (false) {(function () { + var hotAPI = require("vue-hot-reload-api") + hotAPI.install(require("vue"), false) + if (!hotAPI.compatible) return + module.hot.accept() + if (!module.hot.data) { + hotAPI.createRecord("data-v-5431fa9a", Component.options) + } else { + hotAPI.reload("data-v-5431fa9a", Component.options) + } + module.hot.dispose(function (data) { + disposed = true + }) +})()} + +module.exports = Component.exports + + +/***/ }), +/* 32 */ +/***/ (function(module, exports, __webpack_require__) { + +// style-loader: Adds some css to the DOM by adding a