Merge branch 'master' of https://github.com/brkcvn/akaunting into form-elements

This commit is contained in:
Burak Civan
2022-06-17 09:48:06 +03:00
58 changed files with 12606 additions and 909 deletions

View File

@ -41,8 +41,9 @@
override="class"
data-loading-text="{{ trans('general.loading') }}"
>
<i v-if="form.loading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'opacity-0': form.loading}]">{{ trans('general.send') }}</span>
<x-button.loading>
{{ trans('general.send') }}
</x-button.loading>
</x-button>
</div>
</x-form>

View File

@ -68,12 +68,10 @@
::disabled="form.loading"
class="relative flex items-center justify-center bg-green hover:bg-green-700 text-white px-6 py-1.5 text-base rounded-lg disabled:bg-green-100 sm:col-span-6"
override="class"
data-loading-text="{{ trans('general.loading') }}"
>
<i v-if="form.loading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'opacity-0': form.loading}]">
<x-button.loading>
{{ trans('auth.login') }}
</span>
</x-button.loading>
</x-button>
</div>
</x-form>

View File

@ -58,8 +58,9 @@
override="class"
data-loading-text="{{ trans('general.loading') }}"
>
<i v-if="form.loading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'opacity-0': form.loading}]">{{ trans('auth.reset') }}</span>
<x-button.loading>
{{ trans('auth.reset') }}
</x-button.loading>
</x-button>
</div>
</x-form>

View File

@ -264,8 +264,9 @@
class="flex items-center justify-center bg-transparent hover:bg-gray-200 px-3 py-1.5 text-base rounded-lg disabled:opacity-50"
override="class"
>
<i v-if="form.loading" class="material-icons animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'ml-0': form.loading}]">{{ trans('reconciliations.save_draft') }}</span>
<x-button.loading>
{{ trans('reconciliations.save_draft') }}
</x-button.loading>
</x-button>
<div v-if="reconcile">
@ -278,13 +279,9 @@
@click="onReconcileSubmit"
data-loading-text="{{ trans('general.loading') }}"
>
<i
v-if="form.loading"
class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"
>
</i>
<span :class="[{'opacity-1': reconcile}]">{{ trans('reconciliations.reconcile') }}</span>
<x-button.loading action="! reconcile">
{{ trans('reconciliations.reconcile') }}
</x-button.loading>
</x-button>
</x-tooltip>
</div>
@ -297,12 +294,9 @@
@click="onReconcileSubmit"
data-loading-text="{{ trans('general.loading') }}"
>
<i
v-if="form.loading"
class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"
>
</i>
<span :class="[{'opacity-1': reconcile}]">{{ trans('reconciliations.reconcile') }}</span>
<x-button.loading action="! reconcile">
{{ trans('reconciliations.reconcile') }}
</x-button.loading>
</x-button>
</div>
</div>

View File

@ -203,9 +203,11 @@
class="relative flex items-center justify-center bg-transparent hover:bg-gray-200 px-3 py-1.5 text-base rounded-lg disabled:opacity-50"
override="class"
>
<i v-if="form.loading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'ml-0': form.loading}]">{{ trans('general.save') }}</span>
<x-button.loading>
{{ trans('general.save') }}
</x-button.loading>
</x-button>
<div v-if="reconcile">
<x-tooltip id="tooltip-reconcile" placement="top" message="{{ trans('reconciliations.irreconcilable') }}">
<x-button
@ -216,16 +218,13 @@
@click="onReconcileSubmit"
data-loading-text="{{ trans('general.loading') }}"
>
<i
v-if="form.loading"
class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"
>
</i>
<span :class="[{'opacity-1': reconcile}]">{{ trans('reconciliations.reconcile') }}</span>
<x-button.loading action="! reconcile">
{{ trans('reconciliations.reconcile') }}
</x-button.loading>
</x-button>
</x-tooltip>
</div>
<div v-else>
<x-button
type="button"
@ -235,13 +234,9 @@
@click="onReconcileSubmit"
data-loading-text="{{ trans('general.loading') }}"
>
<i
v-if="form.loading"
class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"
>
</i>
<span :class="[{'opacity-1': reconcile}]">{{ trans('reconciliations.reconcile') }}</span>
<x-button.loading action="! reconcile">
{{ trans('reconciliations.reconcile') }}
</x-button.loading>
</x-button>
</div>
</div>

View File

@ -40,9 +40,10 @@
{{ trans('general.cancel') }}
</button>
<button :disabled="form.loading" type="button" class="relative flex items-center justify-center bg-green hover:bg-green-700 text-white px-6 py-1.5 text-base rounded-lg disabled:bg-green-100" @click="addTemplate">
<i v-if="form.loading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'opacity-0': form.loading}]">{{ trans('general.confirm') }}</span>
<button :disabled="form.loading" type="button" class="relative flex items-center justify-center bg-green hover:bg-green-700 text-white px-6 py-1.5 text-base rounded-lg disabled:bg-green-100" @click="addTemplate">
<x-button.loading>
{{ trans('general.confirm') }}
</x-button.loading>
</button>
</div>
</template>

View File

@ -100,7 +100,9 @@
<div class="dashboard-action">
<x-dropdown id="dropdown-dashboard-company">
<x-slot name="trigger" class="flex" override="class">
<span id="dashboard-more-actions" class="material-icons-outlined text-4xl text-purple cursor-pointer hover:bg-gray-100 hover:rounded-lg hover:shadow-md">more_vert</span>
<span id="dashboard-more-actions" class="w-8 h-8 flex items-center justify-center px-2 py-2 ltr:ml-2 rtl:mr-2 hover:bg-gray-100 rounded-xl text-purple text-sm font-medium leading-6">
<span class="material-icons">more_vert</span>
</span>
</x-slot>
@can('create-common-widgets')

View File

@ -47,10 +47,9 @@
::disabled="form.loading"
override="class"
>
<i v-if="form.loading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'opacity-0': form.loading}]">
<x-button.loading>
{{ trans('import.import') }}
</span>
</x-button.loading>
</x-button>
</div>
</div>

View File

@ -52,13 +52,15 @@
</a>
</div>
<div class="flex items-start">
<div class="flex items-start ltr:space-x-2 rtl:space-x-reverse">
<livewire:report.pin :categories="$categories" :report-id="$report->id" />
@canany(['create-common-reports', 'update-common-reports', 'delete-common-reports'])
<x-dropdown id="widget-{{ $category_id }}-{{ $report->id }}">
<x-slot name="trigger" class="flex" override="class">
<span class="material-icons-outlined text-lg px-1 py-0.5 cursor-pointer hover:bg-gray-100 hover:rounded-lg hover:shadow-md">more_vert</span>
<span class="w-8 h-8 flex items-center justify-center px-2 py-2 rtl:mr-4 hover:bg-gray-100 rounded-xl text-purple text-sm font-medium leading-6">
<span class="material-icons">more_vert</span>
</span>
</x-slot>
@can('update-common-reports')

View File

@ -0,0 +1,21 @@
@props(['action'])
@php
if (empty($action)) {
$action = 'form.loading';
}
@endphp
<i
@class([
'animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto',
'before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s]',
'after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]'
])
{{ $attributes }}
v-if="{{ $action }}"
>
</i>
<span :class="[{'opacity-0': {{ $action }}}]">
{!! $slot !!}
</span>

View File

@ -295,6 +295,27 @@
:dynamic-options="dynamic_taxes"
:disabled-options="form.items[index].tax_ids"
:value="row_tax.id"
:add-new="{{ json_encode([
'status' => true,
'text' => trans('general.title.new', ['type' => trans_choice('general.taxes', 1)]),
'path' => route('modals.taxes.create'),
'type' => 'modal',
'field' => [
'key' => 'id',
'value' => 'title'
],
'new_text' => trans('modules.new'),
'buttons' => [
'cancel' => [
'text' => trans('general.cancel'),
'class' => 'btn-outline-secondary'
],
'confirm' => [
'text' => trans('general.save'),
'class' => 'disabled:bg-green-100'
]
]
])}}"
@interface="row_tax.id = $event"
@change="onCalculateTotal()"
@new="dynamic_taxes.push($event)"

View File

@ -182,6 +182,13 @@
selected="{{ $currency->code }}"
change="onChangeCurrency"
model="form.currency_code"
add-new
add-new-text="{!! trans('general.title.new', ['type' => trans_choice('general.currencies', 1)]) !!}"
:path="route('modals.currencies.create')"
:field="[
'key' => 'code',
'value' => 'name'
]"
form-group-class="h-8 -mt-2"
/>

View File

@ -17,10 +17,9 @@
::disabled="form.loading"
override="class"
>
<i v-if="form.loading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:-left-3.5 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:-right-3.5 after:rounded-full after:animate-submit after:delay-[0.42s]"></i>
<span :class="[{'opacity-0': form.loading}]">
<x-button.loading>
{{ trans('general.save') }}
</span>
</x-button.loading>
</x-button>
</div>
@stack('save_buttons_end')

View File

@ -70,7 +70,7 @@
@if (! empty($addNew))
:add-new="{{ json_encode([
'status' => true,
'text' => trans('general.title.new', ['type' => $label ?? '']),
'text' => isset($attributes['add-new-text']) ? $attributes['add-new-text'] : trans('general.title.new', ['type' => $label ?? '']),
'path' => isset($attributes['path']) ? $attributes['path']: false,
'type' => isset($attributes['type']) ? $attributes['type'] : 'modal',
'field' => [

View File

@ -19,12 +19,11 @@
id="releases-load-more"
:disabled="loadMoreLoading"
@click="onModuleLoadMore('releases')"
class="w-48 bg-green m-auto block whitespace-nowrap px-4 py-2 border border-transparent rounded-md shadow-sm text-base font-medium text-white text-center js-learn-more js-button-modal-submit hover:bg-green-700 disabled:bg-green-300"
class="relative w-48 bg-green m-auto block whitespace-nowrap px-4 py-2 border border-transparent rounded-md shadow-sm text-base font-medium text-white text-center js-learn-more js-button-modal-submit hover:bg-green-700 disabled:bg-green-300"
>
<i v-if="loadMoreLoading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'opacity-0': loadMoreLoading}]">
<x-button.loading action="loadMoreLoading">
{{ trans('modules.see_more') }}
</span>
</x-button.loading>
</button>
</div>

View File

@ -19,12 +19,11 @@
id="review-load-more"
:disabled="loadMoreLoading"
@click="onModuleLoadMore('reviews')"
class="w-48 bg-green m-auto block whitespace-nowrap px-4 py-2 border border-transparent rounded-md shadow-sm text-base font-medium text-white text-center js-learn-more js-button-modal-submit hover:bg-green-700 disabled:bg-green-300"
class="relative w-48 bg-green m-auto block whitespace-nowrap px-4 py-2 border border-transparent rounded-md shadow-sm text-base font-medium text-white text-center js-learn-more js-button-modal-submit hover:bg-green-700 disabled:bg-green-300"
>
<i v-if="loadMoreLoading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'opacity-0': loadMoreLoading}]">
<x-button.loading action="loadMoreLoading">
{{ trans('modules.see_more') }}
</span>
</x-button.loading>
</button>
</div>

View File

@ -30,14 +30,16 @@
@if ($seeMore)
<div class="flex items-center mt-10">
<button type="button" id="button-pre-load" @click="onloadMore"
<button
type="button"
id="button-pre-load"
@click="onloadMore"
:disabled="loadMoreLoading"
class="w-48 m-auto relative flex items-center justify-center bg-green hover:bg-green-700 text-white px-6 py-1.5 text-base rounded-lg disabled:bg-green-100 js-learn-more js-button-modal-submit"
class="relative w-48 m-auto flex items-center justify-center bg-green hover:bg-green-700 text-white px-6 py-1.5 text-base rounded-lg disabled:bg-green-100 js-learn-more js-button-modal-submit"
>
<i v-if="loadMoreLoading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'opacity-0': loadMoreLoading}]">
<x-button.loading action="loadMoreLoading">
{{ trans('modules.see_more') }}
</span>
</x-button.loading>
</button>
<x-form.input.hidden name="see_more_path" value="{{ route('apps.load-more', ['type' => $type]) }}" />

View File

@ -12,7 +12,9 @@
<x-dropdown id="dropdown-widget-{{ $class->model->id }}">
<x-slot name="trigger" class="flex" override="class">
<span id="dashboard-widget-more-actions" class="material-icons cursor-pointer text-purple hover:bg-gray-100 hover:rounded-lg hover:shadow-md">more_vert</span>
<span id="dashboard-widget-more-actions" class="w-8 h-8 flex items-center justify-center px-2 py-2 hover:bg-gray-100 rounded-xl text-purple text-sm font-medium leading-6">
<span class="material-icons">more_vert</span>
</span>
</x-slot>
@can('update-common-widgets')

View File

@ -3,7 +3,7 @@
id="{{ $favorited ? 'remove-from-favorite' : 'add-to-favorite' }}"
@class([
'flex items-center text-purple text-2xl ltr:ml-2 rtl:mr-2 lg:mt-2 cursor-pointer',
'material-icons-outlined' => ($favorited) ? false : true,
'material-icons-outlined transform transition-all hover:scale-125' => ($favorited) ? false : true,
'material-icons' => (! $favorited) ? false : true,
])
wire:click="changeStatus()"

View File

@ -7,7 +7,7 @@
<span
id="{{ $favorite['id'] }}"
@class([
'material-icons-outlined' => ! $favorite['active'],
'material-icons-outlined transform transition-all hover:scale-125' => ! $favorite['active'],
'material-icons' => $favorite['active'],
'text-purple cursor-pointer',
])

View File

@ -1,9 +1,9 @@
<button class="ltr:mr-4 rtl:m-4" data-tooltip-target="{{ $reportId }}-pin" data-tooltip-placement="bottom">
<button class="w-8 h-8 flex items-center justify-center px-2 py-2 rounded-xl text-purple text-sm font-medium leading-6" data-tooltip-target="{{ $reportId }}-pin" data-tooltip-placement="bottom">
<span
id="{{ $pinned ? 'reports-unpin-' . $reportId : 'reports-pin-' . $reportId }}"
@class([
'text-black-400 text-lg transform rotate-45 cursor-pointer mx-2',
'material-icons-outlined' => ($pinned) ? false : true,
'text-lg transform rotate-45 transition-all',
'material-icons-outlined hover:scale-125' => ($pinned) ? false : true,
'material-icons' => (! $pinned) ? false : true,
])
wire:click="changeStatus('{{ $reportId }}')"

View File

@ -32,7 +32,7 @@
</x-slot>
<x-slot name="body">
<x-form.group.textarea name="address" label="{{ trans('settings.company.address') }}" :value="setting('company.address')" />
<x-form.group.textarea name="address" label="{{ trans('settings.company.address') }}" :value="setting('company.address')" not-required />
<x-form.group.text name="city" label="{{ trans_choice('general.cities', 1) }}" value="{{ setting('company.city') }}" not-required />