@feedmepos/mf-hrm-portal 2.3.0 → 2.3.1-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ApprovalCodeList-DwubNElp.js → ApprovalCodeList-CDU3yUHy.js} +7 -7
- package/dist/AuditLogList-BU11Q5sF.js +1950 -0
- package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-CmLLNcB4.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-BjHwyaXu.js} +2 -2
- package/dist/{EmployeeList-DEAJPx9F.js → EmployeeList-BqzXg3uA.js} +8 -8
- package/dist/{FormItem.vue_vue_type_script_setup_true_lang-OAvd6eHM.js → FormItem.vue_vue_type_script_setup_true_lang-Clh43Y-8.js} +1 -1
- package/dist/{GrantUserList-Dx4jF2qJ.js → GrantUserList-Cw8RkFqf.js} +8 -8
- package/dist/{Main-BirWXk7o.js → Main-BxcRbcce.js} +5 -5
- package/dist/{Main-CL5JYCPg.js → Main-CL-ysWRu.js} +8 -8
- package/dist/{Main-C2PBSCte.js → Main-Dlar77Zq.js} +11 -11
- package/dist/{PermissionSetList-BtYcqPiO.js → PermissionSetList-_8aBzGy7.js} +7 -7
- package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-BXw4aX39.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-CNgtAtYH.js} +1292 -1292
- package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-DaAx79pC.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-DQcgZ0nF.js} +1 -1
- package/dist/{RoleList-YS_LBfoJ.js → RoleList-C3n_zOB3.js} +9 -9
- package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-CnrbCggg.js +544 -0
- package/dist/ScheduleGeneralPage-DGHKW_ww.js +811 -0
- package/dist/{ScheduleModal.vue_vue_type_script_setup_true_lang-CnKzVz3I.js → ScheduleModal.vue_vue_type_script_setup_true_lang-AfTAGsh1.js} +933 -834
- package/dist/SchedulePage-UzDPRldO.js +19458 -0
- package/dist/SchedulePositionPage-RHETW36P.js +282 -0
- package/dist/{SelectFilter-Dh3eY1hV.js → SelectFilter-CeBV_Kug.js} +1 -1
- package/dist/{TeamMemberList-Bv6_2bzs.js → TeamMemberList-B-qR7VS3.js} +11 -11
- package/dist/{TimesheetList-B3BmpH0I.js → TimesheetList-BqRIZBt1.js} +8 -8
- package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-C4rbnZh1.js → TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-oIBUAjtv.js} +3 -3
- package/dist/{app-CyS8c8dx.js → app-DFL6Nv_p.js} +10360 -3848
- package/dist/app.js +1 -1
- package/dist/{approval-code-BIpLingm.js → approval-code-BXUiojPH.js} +1 -1
- package/dist/{dayjs.min-BRlEc3-d.js → dayjs.min-CH-gVmsz.js} +1 -1
- package/dist/{employee-CcdjLOLQ.js → employee-3xpIjR6i.js} +4 -4
- package/dist/{grant-user-uZmvD_bw.js → grant-user-CBJ3gEgW.js} +1 -1
- package/dist/{iteration-CL1RDmws.js → iteration-D6wutq5U.js} +1 -1
- package/dist/{lodash-C00ieagp.js → lodash-D5kU1nPN.js} +1 -1
- package/dist/{restaurant-CHpkjUPy.js → restaurant-D2mfKHaH.js} +2 -2
- package/dist/{role-DtatkKp9.js → role-B7nu6hH1.js} +2 -2
- package/dist/{rule-DJJMpkoG.js → rule-CMd6SL3n.js} +3 -3
- package/dist/src/api/audit-log/index.d.ts +4 -0
- package/dist/src/views/audit-log/constants.d.ts +9 -30
- package/dist/src/views/audit-log/locales/index.d.ts +236 -0
- package/dist/src/views/audit-log/pos-row.d.ts +27 -0
- package/dist/src/views/scheduling/components/ScheduleConfirmModal.vue.d.ts +0 -2
- package/dist/src/views/scheduling/composables/auto-schedule-mapping.d.ts +5 -3
- package/dist/src/views/scheduling/composables/onboarding-constants.d.ts +2 -0
- package/dist/src/views/scheduling/composables/schedule-add-employee-form.d.ts +1 -1
- package/dist/src/views/scheduling/composables/schedule-calendar.d.ts +10 -0
- package/dist/src/views/scheduling/composables/schedule-cost.d.ts +5 -0
- package/dist/src/views/scheduling/composables/schedule-currency.d.ts +22 -0
- package/dist/src/views/scheduling/composables/schedule-export-matrix.d.ts +1 -1
- package/dist/src/views/scheduling/composables/schedule-leave-split.d.ts +4 -0
- package/dist/src/views/scheduling/composables/schedule-quick-pick.d.ts +2 -1
- package/dist/src/views/scheduling/composables/useScheduleAddEmployee.d.ts +5 -5
- package/dist/src/views/scheduling/composables/useScheduleAddPick.d.ts +2 -0
- package/dist/src/views/scheduling/composables/useScheduleDemandSheet.d.ts +5 -5
- package/dist/src/views/scheduling/composables/useScheduleEmployeeAccess.d.ts +1 -1
- package/dist/src/views/scheduling/composables/useScheduleEmployeeAvailability.d.ts +2 -2
- package/dist/src/views/scheduling/composables/useScheduleEmployeeCompensation.d.ts +1 -1
- package/dist/src/views/scheduling/composables/useScheduleLeave.d.ts +9 -12
- package/dist/src/views/scheduling/composables/useScheduleOnboardingWizard.d.ts +7 -6
- package/dist/src/views/scheduling/composables/useSchedulePageClearActions.d.ts +12 -0
- package/dist/src/views/scheduling/composables/useScheduleSettings.d.ts +1 -1
- package/dist/src/views/scheduling/composables/useScheduleShiftPopover.d.ts +1 -1
- package/dist/src/views/scheduling/country-rules/index.d.ts +5 -1
- package/dist/src/views/scheduling/locales/index.d.ts +6272 -0
- package/dist/src/views/scheduling/schedule-store.d.ts +3 -0
- package/dist/style.css +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{useAppStore-Bp0PwbAN.js → useAppStore-DZCdxlCd.js} +1 -1
- package/dist/{useLoading-sgL8DRUz.js → useLoading-Nygx2zn8.js} +1 -1
- package/dist/{useReportPermissions-DI-xg3OX.js → useReportPermissions-BcxIKxlF.js} +3 -3
- package/package.json +1 -1
- package/dist/AuditLogList-CTeMbyHL.js +0 -1778
- package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-BorKuXxL.js +0 -530
- package/dist/ScheduleGeneralPage-C1p2mivt.js +0 -780
- package/dist/SchedulePage-BP7x7JAl.js +0 -19485
- package/dist/SchedulePositionPage-BogOQZVW.js +0 -262
|
@@ -52,21 +52,21 @@ export declare function useScheduleAddEmployee(board: ScheduleBoardApi, options?
|
|
|
52
52
|
secondaryOptions: import("vue").ComputedRef<string[]>;
|
|
53
53
|
isPart: import("vue").ComputedRef<boolean>;
|
|
54
54
|
dayLit: (index: number) => boolean;
|
|
55
|
-
avLabel: import("vue").ComputedRef<
|
|
56
|
-
avAllLabel: import("vue").ComputedRef<
|
|
55
|
+
avLabel: import("vue").ComputedRef<string>;
|
|
56
|
+
avAllLabel: import("vue").ComputedRef<string>;
|
|
57
57
|
maxHoursPlaceholder: import("vue").ComputedRef<string>;
|
|
58
58
|
minHoursPlaceholder: import("vue").ComputedRef<string>;
|
|
59
59
|
maxHoursPerDayPlaceholder: import("vue").ComputedRef<string>;
|
|
60
60
|
maxHoursPerMonthPlaceholder: import("vue").ComputedRef<string>;
|
|
61
61
|
toggleOvertime: () => void;
|
|
62
|
-
payUnit: import("vue").ComputedRef<
|
|
62
|
+
payUnit: import("vue").ComputedRef<string>;
|
|
63
63
|
effectiveRate: import("vue").ComputedRef<number>;
|
|
64
64
|
passcodeValue: import("vue").ComputedRef<string>;
|
|
65
65
|
passcodeOk: import("vue").ComputedRef<boolean>;
|
|
66
66
|
currentLocationLabel: import("vue").ComputedRef<string>;
|
|
67
67
|
locationOptions: import("vue").Reactive<string[]>;
|
|
68
68
|
isNewUser: import("vue").ComputedRef<boolean>;
|
|
69
|
-
footerHint: import("vue").ComputedRef<
|
|
69
|
+
footerHint: import("vue").ComputedRef<string>;
|
|
70
70
|
primaryRoleLabel: import("vue").ComputedRef<string>;
|
|
71
71
|
locationsSummary: import("vue").ComputedRef<string>;
|
|
72
72
|
payLine: import("vue").ComputedRef<string>;
|
|
@@ -131,7 +131,7 @@ export declare function useScheduleAddEmployee(board: ScheduleBoardApi, options?
|
|
|
131
131
|
isPosRoleUsable: (role: import("../../../types/role").Role) => boolean;
|
|
132
132
|
setMasterUserRoleAccess: (roleIds: string[] | null | undefined) => void;
|
|
133
133
|
isPosOutletUsable: (outlet: string) => boolean;
|
|
134
|
-
posRolesHint: import("vue").ComputedRef<
|
|
134
|
+
posRolesHint: import("vue").ComputedRef<string>;
|
|
135
135
|
create: () => Promise<boolean>;
|
|
136
136
|
};
|
|
137
137
|
export type ScheduleAddEmployeeApi = ReturnType<typeof useScheduleAddEmployee>;
|
|
@@ -14,6 +14,8 @@ export interface ScheduleAddPickState {
|
|
|
14
14
|
}
|
|
15
15
|
export interface ScheduleAddPickLeaveOption {
|
|
16
16
|
reason: string;
|
|
17
|
+
/** i18n key for the row's label — `reason` itself is an id and stays English. */
|
|
18
|
+
labelKey: string;
|
|
17
19
|
swatch: string;
|
|
18
20
|
}
|
|
19
21
|
/** The "+ Add" quick-pick popover on an employee's empty cell — ported from the mockup's
|
|
@@ -67,9 +67,9 @@ export declare function useScheduleDemandSheet(board: ScheduleBoardApi, demand:
|
|
|
67
67
|
toggleCustomDay: (i: number) => void;
|
|
68
68
|
applyNote: import("vue").ComputedRef<string>;
|
|
69
69
|
replaceConfirmOpen: import("vue").ComputedRef<boolean>;
|
|
70
|
-
replaceConfirmTitle: import("vue").ComputedRef<
|
|
71
|
-
replaceConfirmActionLabel: import("vue").ComputedRef<
|
|
72
|
-
replaceConfirmMessage: import("vue").ComputedRef<
|
|
70
|
+
replaceConfirmTitle: import("vue").ComputedRef<string>;
|
|
71
|
+
replaceConfirmActionLabel: import("vue").ComputedRef<string>;
|
|
72
|
+
replaceConfirmMessage: import("vue").ComputedRef<string>;
|
|
73
73
|
replaceConfirmDates: import("vue").ComputedRef<string[]>;
|
|
74
74
|
confirmReplace: () => Promise<void>;
|
|
75
75
|
cancelReplace: () => void;
|
|
@@ -103,14 +103,14 @@ export declare function useScheduleDemandSheet(board: ScheduleBoardApi, demand:
|
|
|
103
103
|
scheduled: number;
|
|
104
104
|
varies: boolean;
|
|
105
105
|
pct: number;
|
|
106
|
-
tone: "short" | "part" | "
|
|
106
|
+
tone: "short" | "part" | "over" | "met";
|
|
107
107
|
note: string;
|
|
108
108
|
}[]>;
|
|
109
109
|
coverageTotal: import("vue").ComputedRef<{
|
|
110
110
|
required: number;
|
|
111
111
|
scheduled: number;
|
|
112
112
|
pct: number;
|
|
113
|
-
tone: "short" | "part" | "
|
|
113
|
+
tone: "short" | "part" | "over" | "met";
|
|
114
114
|
note: string;
|
|
115
115
|
}>;
|
|
116
116
|
saving: import("vue").Ref<boolean, boolean>;
|
|
@@ -20,5 +20,5 @@ export declare function useScheduleEmployeeAccess(form: ScheduleAddEmployeeForm,
|
|
|
20
20
|
setMasterUserRoleAccess: (roleIds: string[] | null | undefined) => void;
|
|
21
21
|
isPosOutletUsable: (outlet: string) => boolean;
|
|
22
22
|
setMasterUserRestaurantAccess: (restaurantIds: string[] | null | undefined) => void;
|
|
23
|
-
posRolesHint: ComputedRef<
|
|
23
|
+
posRolesHint: ComputedRef<string>;
|
|
24
24
|
};
|
|
@@ -2,8 +2,8 @@ import { type ComputedRef } from 'vue';
|
|
|
2
2
|
import type { ScheduleAddEmployeeForm } from './schedule-add-employee-form';
|
|
3
3
|
export declare function useScheduleEmployeeAvailability(form: ScheduleAddEmployeeForm, isPart: ComputedRef<boolean>): {
|
|
4
4
|
dayLit: (index: number) => boolean;
|
|
5
|
-
avLabel: ComputedRef<
|
|
6
|
-
avAllLabel: ComputedRef<
|
|
5
|
+
avLabel: ComputedRef<string>;
|
|
6
|
+
avAllLabel: ComputedRef<string>;
|
|
7
7
|
maxHoursPlaceholder: ComputedRef<string>;
|
|
8
8
|
ensureAvailHours: (index: number) => void;
|
|
9
9
|
toggleAvailDay: (index: number) => void;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ScheduleAddEmployeeForm } from './schedule-add-employee-form';
|
|
2
2
|
export declare function useScheduleEmployeeCompensation(form: ScheduleAddEmployeeForm): {
|
|
3
3
|
setPayBasis: (basis: "hourly" | "monthly") => void;
|
|
4
|
-
payUnit: import("vue").ComputedRef<
|
|
4
|
+
payUnit: import("vue").ComputedRef<string>;
|
|
5
5
|
payAmountNumber: import("vue").ComputedRef<number>;
|
|
6
6
|
effectiveRate: import("vue").ComputedRef<number>;
|
|
7
7
|
};
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import type { LeaveSlot } from '../types';
|
|
2
2
|
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
3
3
|
export type TimeOffSelection = 'OFF_DAY' | 'ANNUAL' | 'MEDICAL' | 'EMERGENCY' | 'UNPAID';
|
|
4
|
+
/** `label` is the English record label (kept on `LeaveSlot.reason`, which other code matches on);
|
|
5
|
+
* `labelKey` is what the UI shows. */
|
|
4
6
|
export declare const TIME_OFF_OPTIONS: Array<{
|
|
5
7
|
value: TimeOffSelection;
|
|
6
8
|
label: string;
|
|
9
|
+
labelKey: string;
|
|
7
10
|
}>;
|
|
11
|
+
export { timeOffLabelKey } from './schedule-leave-split';
|
|
8
12
|
export type ScheduleLeaveMode = 'all' | 'am' | 'pm';
|
|
9
13
|
export interface ScheduleLeaveState {
|
|
10
14
|
open: boolean;
|
|
@@ -32,16 +36,10 @@ export declare function useScheduleLeave(board: ScheduleBoardApi, leaveOptions?:
|
|
|
32
36
|
};
|
|
33
37
|
employee: import("vue").ComputedRef<import("../types").Employee | undefined>;
|
|
34
38
|
activeSlot: import("vue").ComputedRef<LeaveSlot | null>;
|
|
35
|
-
options: import("vue").ComputedRef<
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
readonly mode: "am";
|
|
40
|
-
readonly name: "Half day AM";
|
|
41
|
-
} | {
|
|
42
|
-
readonly mode: "pm";
|
|
43
|
-
readonly name: "Half day PM";
|
|
44
|
-
})[]>;
|
|
39
|
+
options: import("vue").ComputedRef<{
|
|
40
|
+
mode: "all" | "am" | "pm";
|
|
41
|
+
name: string;
|
|
42
|
+
}[]>;
|
|
45
43
|
span: import("vue").ComputedRef<{
|
|
46
44
|
from: string;
|
|
47
45
|
to: string;
|
|
@@ -51,7 +49,7 @@ export declare function useScheduleLeave(board: ScheduleBoardApi, leaveOptions?:
|
|
|
51
49
|
selectionLabel: import("vue").ComputedRef<string>;
|
|
52
50
|
dayLabel: import("vue").ComputedRef<string>;
|
|
53
51
|
hoursText: import("vue").ComputedRef<string>;
|
|
54
|
-
coverText: import("vue").ComputedRef<
|
|
52
|
+
coverText: import("vue").ComputedRef<string>;
|
|
55
53
|
openFor: (empId: number, dayIdx: number, reason?: string | null) => void;
|
|
56
54
|
close: () => void;
|
|
57
55
|
save: () => Promise<void>;
|
|
@@ -60,4 +58,3 @@ export declare function useScheduleLeave(board: ScheduleBoardApi, leaveOptions?:
|
|
|
60
58
|
remove: () => Promise<void>;
|
|
61
59
|
};
|
|
62
60
|
export type ScheduleLeaveApi = ReturnType<typeof useScheduleLeave>;
|
|
63
|
-
export {};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
2
2
|
import type { ScheduleAddEmployeeApi } from './useScheduleAddEmployee';
|
|
3
3
|
import type { IntroRecapRow, ReviewRow, ScheduleOnboardingStep } from './onboarding-types';
|
|
4
|
-
|
|
4
|
+
/** i18n keys for each step's label — translate at render with `t(STEP_LABEL_KEYS[step])`. */
|
|
5
|
+
export declare const STEP_LABEL_KEYS: Record<ScheduleOnboardingStep, string>;
|
|
5
6
|
export { MAX_OPERATIONAL_SESSIONS } from './useScheduleOnboardingHours';
|
|
6
7
|
/** Steps that can be passed over without answering — the footer shows "Skip for now" on these. */
|
|
7
8
|
/** "Set up scheduling", step by step — V6.2's six-step flow. Positions, staffing demand and the
|
|
@@ -1450,21 +1451,21 @@ export declare function useScheduleOnboardingWizard(board: ScheduleBoardApi, add
|
|
|
1450
1451
|
secondaryOptions: import("vue").ComputedRef<string[]>;
|
|
1451
1452
|
isPart: import("vue").ComputedRef<boolean>;
|
|
1452
1453
|
dayLit: (index: number) => boolean;
|
|
1453
|
-
avLabel: import("vue").ComputedRef<
|
|
1454
|
-
avAllLabel: import("vue").ComputedRef<
|
|
1454
|
+
avLabel: import("vue").ComputedRef<string>;
|
|
1455
|
+
avAllLabel: import("vue").ComputedRef<string>;
|
|
1455
1456
|
maxHoursPlaceholder: import("vue").ComputedRef<string>;
|
|
1456
1457
|
minHoursPlaceholder: import("vue").ComputedRef<string>;
|
|
1457
1458
|
maxHoursPerDayPlaceholder: import("vue").ComputedRef<string>;
|
|
1458
1459
|
maxHoursPerMonthPlaceholder: import("vue").ComputedRef<string>;
|
|
1459
1460
|
toggleOvertime: () => void;
|
|
1460
|
-
payUnit: import("vue").ComputedRef<
|
|
1461
|
+
payUnit: import("vue").ComputedRef<string>;
|
|
1461
1462
|
effectiveRate: import("vue").ComputedRef<number>;
|
|
1462
1463
|
passcodeValue: import("vue").ComputedRef<string>;
|
|
1463
1464
|
passcodeOk: import("vue").ComputedRef<boolean>;
|
|
1464
1465
|
currentLocationLabel: import("vue").ComputedRef<string>;
|
|
1465
1466
|
locationOptions: import("vue").Reactive<string[]>;
|
|
1466
1467
|
isNewUser: import("vue").ComputedRef<boolean>;
|
|
1467
|
-
footerHint: import("vue").ComputedRef<
|
|
1468
|
+
footerHint: import("vue").ComputedRef<string>;
|
|
1468
1469
|
primaryRoleLabel: import("vue").ComputedRef<string>;
|
|
1469
1470
|
locationsSummary: import("vue").ComputedRef<string>;
|
|
1470
1471
|
payLine: import("vue").ComputedRef<string>;
|
|
@@ -1529,7 +1530,7 @@ export declare function useScheduleOnboardingWizard(board: ScheduleBoardApi, add
|
|
|
1529
1530
|
isPosRoleUsable: (role: import("../../../types/role").Role) => boolean;
|
|
1530
1531
|
setMasterUserRoleAccess: (roleIds: string[] | null | undefined) => void;
|
|
1531
1532
|
isPosOutletUsable: (outlet: string) => boolean;
|
|
1532
|
-
posRolesHint: import("vue").ComputedRef<
|
|
1533
|
+
posRolesHint: import("vue").ComputedRef<string>;
|
|
1533
1534
|
create: () => Promise<boolean>;
|
|
1534
1535
|
};
|
|
1535
1536
|
openWizard: () => void;
|
|
@@ -6,6 +6,13 @@ export declare const CLEAR_COPY: Record<ClearKind, {
|
|
|
6
6
|
message: string;
|
|
7
7
|
confirm: string;
|
|
8
8
|
}>;
|
|
9
|
+
/** i18n keys behind each confirm dialog — `CLEAR_COPY` above is the English fallback kept for
|
|
10
|
+
* existing callers; prefer the translated `clearCopy` the composable returns. */
|
|
11
|
+
export declare const CLEAR_COPY_KEYS: Record<ClearKind, {
|
|
12
|
+
title: string;
|
|
13
|
+
message: string;
|
|
14
|
+
confirm: string;
|
|
15
|
+
}>;
|
|
9
16
|
type Snackbar = {
|
|
10
17
|
open: (options: {
|
|
11
18
|
message: string;
|
|
@@ -14,6 +21,11 @@ type Snackbar = {
|
|
|
14
21
|
};
|
|
15
22
|
export declare function useSchedulePageClearActions(board: ScheduleBoardApi, demand: ScheduleDemandApi, snackbar: Snackbar): {
|
|
16
23
|
clearKind: import("vue").Ref<ClearKind | null, ClearKind | null>;
|
|
24
|
+
clearCopy: import("vue").ComputedRef<{
|
|
25
|
+
title: string;
|
|
26
|
+
message: string;
|
|
27
|
+
confirm: string;
|
|
28
|
+
} | null>;
|
|
17
29
|
clearing: import("vue").Ref<boolean, boolean>;
|
|
18
30
|
onConfirmClear: () => Promise<void>;
|
|
19
31
|
};
|
|
@@ -2,7 +2,7 @@ export type ScheduleSettingsSection = 'budget' | 'payrates' | 'overtime' | 'work
|
|
|
2
2
|
/** Keep unsupported sections out of the navigation until their API fields exist. */
|
|
3
3
|
export declare const SETTINGS_SECTIONS: {
|
|
4
4
|
key: ScheduleSettingsSection;
|
|
5
|
-
|
|
5
|
+
labelKey: string;
|
|
6
6
|
}[];
|
|
7
7
|
/** Settings currently supported by the schedule API: pay rates and monthly OT hours. */
|
|
8
8
|
export declare function useScheduleSettings(): {
|
|
@@ -70,7 +70,7 @@ export declare function useScheduleShiftPopover(board: ScheduleBoardApi, demand:
|
|
|
70
70
|
saveDisabled: import("vue").ComputedRef<boolean>;
|
|
71
71
|
dailyLimitExceeded: import("vue").ComputedRef<boolean>;
|
|
72
72
|
saveTitle: import("vue").ComputedRef<string>;
|
|
73
|
-
saveLabel: import("vue").ComputedRef<
|
|
73
|
+
saveLabel: import("vue").ComputedRef<string>;
|
|
74
74
|
breakChoice: import("vue").Ref<import("./schedule-shift-time").ScheduleBreakChoice, import("./schedule-shift-time").ScheduleBreakChoice>;
|
|
75
75
|
breakCustomMins: import("vue").Ref<number, number>;
|
|
76
76
|
breakCustomUnit: import("vue").Ref<"mins" | "hrs", "mins" | "hrs">;
|
|
@@ -22,8 +22,12 @@ export interface CountryScheduleRules {
|
|
|
22
22
|
name: string;
|
|
23
23
|
}>;
|
|
24
24
|
publicHolidays: Record<string, Record<string, string>>;
|
|
25
|
+
/** Local holiday names keyed by language (e.g. "th") then by the English name above. */
|
|
26
|
+
holidayNames?: Record<string, Record<string, string>>;
|
|
25
27
|
}
|
|
26
28
|
export declare function normalizeCountryCode(country: unknown): string;
|
|
27
29
|
export declare function getCountryScheduleRules(country?: unknown): CountryScheduleRules;
|
|
28
|
-
|
|
30
|
+
/** The holiday on `date`, in the UI language when the country has a name for it (`locale` like
|
|
31
|
+
* "th-TH"), otherwise the English name. */
|
|
32
|
+
export declare function holidayNameForDate(rules: CountryScheduleRules, date: string, locale?: string): string | null;
|
|
29
33
|
export declare const SUPPORTED_SCHEDULE_COUNTRIES: string[];
|