- {{ $t('pageTitles.employeeDirectory') }}
+
+ {{ $t('employee_list.page_header') }}
diff --git a/src/modules/employee-list/types/employee-profile-interface.ts b/src/modules/employee-list/types/employee-profile-interface.ts
index 8c861d8..9f8cae0 100644
--- a/src/modules/employee-list/types/employee-profile-interface.ts
+++ b/src/modules/employee-list/types/employee-profile-interface.ts
@@ -9,4 +9,19 @@ export interface EmployeeProfile {
first_work_day: string;
last_work_day: string;
residence: string;
+ birth_date: string;
+}
+
+export const default_employee_profile: EmployeeProfile = {
+ first_name: '',
+ last_name: '',
+ supervisor_full_name: '',
+ company_name: -1,
+ job_title: '',
+ email: '',
+ phone_number: '',
+ first_work_day: '',
+ last_work_day: '',
+ residence: '',
+ birth_date: '',
}
\ No newline at end of file
diff --git a/src/modules/profile/components/employee/profile-panel-info-employee.vue b/src/modules/profile/components/employee/profile-panel-info-employee.vue
new file mode 100644
index 0000000..c5badb0
--- /dev/null
+++ b/src/modules/profile/components/employee/profile-panel-info-employee.vue
@@ -0,0 +1,109 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/employee/profile-panel-info-personal.vue b/src/modules/profile/components/employee/profile-panel-info-personal.vue
new file mode 100644
index 0000000..3167479
--- /dev/null
+++ b/src/modules/profile/components/employee/profile-panel-info-personal.vue
@@ -0,0 +1,111 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-header.vue b/src/modules/profile/components/shared/profile-header.vue
new file mode 100644
index 0000000..b63319e
--- /dev/null
+++ b/src/modules/profile/components/shared/profile-header.vue
@@ -0,0 +1,18 @@
+
+
+
+
+ {{ userFirstName }} {{ userLastName }}
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-panel-input-field.vue b/src/modules/profile/components/shared/profile-panel-input-field.vue
new file mode 100644
index 0000000..b69e4d6
--- /dev/null
+++ b/src/modules/profile/components/shared/profile-panel-input-field.vue
@@ -0,0 +1,36 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-panel-preferences.vue b/src/modules/profile/components/shared/profile-panel-preferences.vue
new file mode 100644
index 0000000..769879f
--- /dev/null
+++ b/src/modules/profile/components/shared/profile-panel-preferences.vue
@@ -0,0 +1,84 @@
+
+
+
+
+ {{ $t('profile.preferences.display_options') }}
+
+
+
+
+
+ {{$t('profile.preferences.light_mode')}}
+
+
+
toggle_dark_mode(value)"
+ size="xl"
+ class="col-auto"
+ checked-icon="dark_mode"
+ unchecked-icon="light_mode"
+ />
+
+
+
+ {{$t('profile.preferences.dark_mode')}}
+
+
+
+
+ {{ $t('profile.preferences.language_options') }}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-panel-select-field.vue b/src/modules/profile/components/shared/profile-panel-select-field.vue
new file mode 100644
index 0000000..d4f98e7
--- /dev/null
+++ b/src/modules/profile/components/shared/profile-panel-select-field.vue
@@ -0,0 +1,31 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/components/shared/profile-tab-menu-template.vue b/src/modules/profile/components/shared/profile-tab-menu-template.vue
new file mode 100644
index 0000000..af02408
--- /dev/null
+++ b/src/modules/profile/components/shared/profile-tab-menu-template.vue
@@ -0,0 +1,63 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/pages/employee/profile-employee.vue b/src/modules/profile/pages/employee/profile-employee.vue
new file mode 100644
index 0000000..775e750
--- /dev/null
+++ b/src/modules/profile/pages/employee/profile-employee.vue
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/profile/pages/profile-container.vue b/src/modules/profile/pages/profile-container.vue
new file mode 100644
index 0000000..19702a3
--- /dev/null
+++ b/src/modules/profile/pages/profile-container.vue
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/shared/components/language-switch.vue b/src/modules/shared/components/language-switch.vue
index d2b2051..5284226 100644
--- a/src/modules/shared/components/language-switch.vue
+++ b/src/modules/shared/components/language-switch.vue
@@ -9,26 +9,28 @@
-
+
+
+
+
+
+
+
+
+ {{ option.label }}
+
+
+
+
+
+ -->
\ No newline at end of file
diff --git a/src/modules/shared/components/navigation/footer-bar.vue b/src/modules/shared/components/navigation/footer-bar.vue
index dbcbf9c..8df6af4 100644
--- a/src/modules/shared/components/navigation/footer-bar.vue
+++ b/src/modules/shared/components/navigation/footer-bar.vue
@@ -1,12 +1,7 @@
-
-
© 2025 Targo Communications inc.
-
\ No newline at end of file
diff --git a/src/modules/shared/components/navigation/right-drawer.vue b/src/modules/shared/components/navigation/right-drawer.vue
index 875f3d4..12e9e2c 100644
--- a/src/modules/shared/components/navigation/right-drawer.vue
+++ b/src/modules/shared/components/navigation/right-drawer.vue
@@ -36,7 +36,7 @@
- {{ $t('navBar.userMenuHome') }}
+ {{ $t('nav_bar.home') }}
@@ -47,7 +47,7 @@
- {{ $t('navBar.userMenuShiftValidation') }}
+ {{ $t('nav_bar.timesheet_approvals') }}
@@ -58,7 +58,7 @@
- {{ $t('navBar.userMenuEmployeeList') }}
+ {{ $t('nav_bar.employee_list') }}
@@ -69,7 +69,7 @@
- {{ $t('navBar.userMenuTimesheetTemp') }}
+ {{ $t('nav_bar.timesheet') }}
@@ -79,7 +79,7 @@
- {{ $t('navBar.userMenuProfile') }}
+ {{ $t('nav_bar.profile') }}
@@ -89,7 +89,7 @@
- {{ $t('navBar.userMenuHelp') }}
+ {{ $t('nav_bar.help') }}
@@ -100,7 +100,7 @@
- {{ $t('navBar.userMenuLogout') }}
+ {{ $t('nav_bar.logout') }}
diff --git a/src/modules/shared/components/utils/table-filters.vue b/src/modules/shared/components/utils/table-filters.vue
index 3c4dc23..acdc527 100644
--- a/src/modules/shared/components/utils/table-filters.vue
+++ b/src/modules/shared/components/utils/table-filters.vue
@@ -25,7 +25,7 @@ const emit = defineEmits<{
dense
rounded
debounce="300"
- :label="$t('shared.searchBar')"
+ :label="$t('shared.label.search')"
label-color="primary"
bg-color="white"
color="primary"
diff --git a/src/modules/timesheet-approval/components/graphs/timesheet-approval-employee-details-hours-worked-chart.vue b/src/modules/timesheet-approval/components/graphs/timesheet-approval-employee-details-hours-worked-chart.vue
index 728e623..1fe6976 100644
--- a/src/modules/timesheet-approval/components/graphs/timesheet-approval-employee-details-hours-worked-chart.vue
+++ b/src/modules/timesheet-approval/components/graphs/timesheet-approval-employee-details-hours-worked-chart.vue
@@ -3,15 +3,17 @@
import { colors } from 'quasar';
import { Bar } from 'vue-chartjs';
import { useI18n } from 'vue-i18n';
+ import { useQuasar } from 'quasar';
import { Chart as ChartJS, Title, Tooltip, Legend, BarElement, CategoryScale, LinearScale, type ChartData, type ChartOptions, type Plugin, type ChartDataset } from 'chart.js';
import type { PayPeriodEmployeeDetails } from 'src/modules/timesheet-approval/types/timesheet-approval-pay-period-employee-details-interface';
const { t } = useI18n();
-
+ const $q = useQuasar();
ChartJS.register(Title, Tooltip, Legend, BarElement, CategoryScale, LinearScale);
ChartJS.defaults.font.family = '"Roboto", sans-serif';
ChartJS.defaults.maintainAspectRatio = false;
+ ChartJS.defaults.color = $q.dark.isActive ? '#F5F5F5' : '#616161';
const props = defineProps<{
rawData: PayPeriodEmployeeDetails | undefined;
@@ -29,22 +31,22 @@
const datasetConfig = [
{
key: 'regular_hours',
- label: t('timeSheetValidations.hoursWorkedRegular'),
+ label: t('shared.shift_type.regular'),
color: colors.getPaletteColor('green-5'),
},
{
key: 'evening_hours',
- label: t('timeSheetValidations.hoursWorkedEvening'),
+ label: t('shared.shift_type.evening'),
color: colors.getPaletteColor('green-9'),
},
{
key: 'emergency_hours',
- label: t('timeSheetValidations.hoursWorkedEmergency'),
+ label: t('shared.shift_type.emergency'),
color: getComputedStyle(document.body).getPropertyValue('--q-warning').trim(),
},
{
key: 'overtime_hours',
- label: t('timeSheetValidations.hoursWorkedOvertime'),
+ label: t('shared.shift_type.overtime'),
color: getComputedStyle(document.body).getPropertyValue('--q-negative').trim(),
},
] as const;
@@ -67,33 +69,34 @@
-
+ })"
+ />
+