diff --git a/resources/js/app.ts b/resources/js/app.ts index a0bfe51..572811c 100644 --- a/resources/js/app.ts +++ b/resources/js/app.ts @@ -1,5 +1,6 @@ import { createInertiaApp } from '@inertiajs/vue3'; import { createApp, h } from 'vue'; +import 'vue-sonner/style.css'; import { Toaster } from '@/components/ui/sonner'; import { useFlashToast } from '@/composables/useFlashToast'; diff --git a/resources/js/components/ConfirmDialog.vue b/resources/js/components/ConfirmDialog.vue new file mode 100644 index 0000000..e4b3db4 --- /dev/null +++ b/resources/js/components/ConfirmDialog.vue @@ -0,0 +1,66 @@ + + + diff --git a/resources/js/components/data-table/DataTable.vue b/resources/js/components/data-table/DataTable.vue index 7b7bc7f..6e46d68 100644 --- a/resources/js/components/data-table/DataTable.vue +++ b/resources/js/components/data-table/DataTable.vue @@ -1,8 +1,10 @@ diff --git a/resources/js/components/hr/employees/data-table-actions.vue b/resources/js/components/hr/employees/data-table-actions.vue new file mode 100644 index 0000000..279d20c --- /dev/null +++ b/resources/js/components/hr/employees/data-table-actions.vue @@ -0,0 +1,98 @@ + + + diff --git a/resources/js/components/hr/employees/data-table-dropdown.vue b/resources/js/components/hr/employees/data-table-dropdown.vue deleted file mode 100644 index 15e5530..0000000 --- a/resources/js/components/hr/employees/data-table-dropdown.vue +++ /dev/null @@ -1,59 +0,0 @@ - - - diff --git a/resources/js/components/ui/switch/Switch.vue b/resources/js/components/ui/switch/Switch.vue new file mode 100644 index 0000000..96bf705 --- /dev/null +++ b/resources/js/components/ui/switch/Switch.vue @@ -0,0 +1,38 @@ + + + diff --git a/resources/js/composables/useFlashToast.ts b/resources/js/composables/useFlashToast.ts index 3eb90ab..df62b4f 100644 --- a/resources/js/composables/useFlashToast.ts +++ b/resources/js/composables/useFlashToast.ts @@ -6,7 +6,11 @@ type Flash = { error?: string | null; }; -function showFlash(flash: Flash): void { +function showFlash(flash: Flash | undefined): void { + if (!flash) { + return; + } + if (flash.success) { toast.success(flash.success); } @@ -17,11 +21,11 @@ function showFlash(flash: Flash): void { } export function useFlashToast(): void { - router.on('success', (event) => { - const flash = event.detail.page.props.flash as Flash | undefined; + router.on('flash', (event) => { + showFlash(event.detail.flash as Flash); + }); - if (flash) { - showFlash(flash); - } + router.on('success', (event) => { + showFlash(event.detail.page.props.flash as Flash | undefined); }); } diff --git a/resources/js/lib/phone-number.ts b/resources/js/lib/phone-number.ts index 904a86c..30b567b 100644 --- a/resources/js/lib/phone-number.ts +++ b/resources/js/lib/phone-number.ts @@ -16,8 +16,8 @@ export function formatPhoneNumber(value: string | number): string { } if (digits.length <= 8) { - return `${digits.slice(0, 4)}-${digits.slice(4)}`; + return `${digits.slice(0, 4)} ${digits.slice(4)}`; } - return `${digits.slice(0, 4)}-${digits.slice(4, 8)}-${digits.slice(8)}`; + return `${digits.slice(0, 4)} ${digits.slice(4, 8)} ${digits.slice(8)}`; } diff --git a/resources/js/types/data-table.ts b/resources/js/types/data-table.ts index 8794f52..772355b 100644 --- a/resources/js/types/data-table.ts +++ b/resources/js/types/data-table.ts @@ -23,6 +23,12 @@ export type DataTablePagination = { total: number; }; +export type DataTablePaginationLink = { + url: string | null; + label: string; + active: boolean; +}; + export type DataTableQuery = { search?: string; sort?: string;