@feedmepos/mf-hrm-portal 2.3.0-dev → 2.3.0-dev.10
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-cG0zmQVJ.js → ApprovalCodeList-BLA2rhLB.js} +5 -5
- package/dist/{AuditLogList-BTifJhO1.js → AuditLogList-DBYdZhZl.js} +4 -4
- package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-qr5TwLTK.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-CtCEzPbE.js} +2 -2
- package/dist/{EmployeeList-DzcMtxJ3.js → EmployeeList-CA7DWLmy.js} +6 -6
- package/dist/{GrantUserList-D5b7tJ8Y.js → GrantUserList-BYnegeEr.js} +6 -6
- package/dist/{Main-DFwdAWqn.js → Main-BeXx0hAc.js} +8 -8
- package/dist/{Main-B2r59IOW.js → Main-Dh-gZSaa.js} +5 -5
- package/dist/{Main-DkLBemi7.js → Main-NDK7LUmm.js} +11 -11
- package/dist/{PermissionSetList-B80hrfMW.js → PermissionSetList-DDIacDpQ.js} +7 -7
- package/dist/PortalPermissionEditor.vue_vue_type_script_setup_true_lang-ONMn3v_f.js +4167 -0
- package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-fe-Rdwn4.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-BVz6q3HE.js} +1 -1
- package/dist/{RoleList-DHO4JRKF.js → RoleList-B30FHIzu.js} +9 -9
- package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-CRRguWTG.js +492 -0
- package/dist/ScheduleGeneralPage-8gEeZbFR.js +776 -0
- package/dist/ScheduleModal.vue_vue_type_script_setup_true_lang-TfxTAjO8.js +2252 -0
- package/dist/SchedulePage-DQ0VXWWi.js +17832 -0
- package/dist/{SchedulePositionPage-C0hrO11d.js → SchedulePositionPage-oGIDGneA.js} +66 -65
- package/dist/{TeamMemberList-CgFWLRBM.js → TeamMemberList-Drj6R4Y3.js} +10 -10
- package/dist/{TimesheetList-Dp40G-0I.js → TimesheetList-CDQfN5LE.js} +7 -7
- package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-BFjrMhUG.js → TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-Bx-6hjs7.js} +3 -3
- package/dist/{app-CmBSTvaI.js → app-DWe_4-ct.js} +678 -594
- package/dist/app.js +1 -1
- package/dist/{approval-code-C9DmR4Md.js → approval-code-DHsUgc4K.js} +1 -1
- package/dist/{dayjs.min-CfL2DQ3d.js → dayjs.min-QSwC9dtX.js} +1 -1
- package/dist/{employee-DQcHjoij.js → employee-Bb2b3dP6.js} +29 -28
- package/dist/{grant-user-Bv-pJ9Wt.js → grant-user-qzKHFTro.js} +1 -1
- package/dist/{iteration-BlavheWG.js → iteration-TDU7bFxZ.js} +1 -1
- package/dist/{lodash-QerqayrJ.js → lodash-D3Ns5VMN.js} +1 -1
- package/dist/{restaurant-D7PEQjPY.js → restaurant-BbYRA_IT.js} +4 -3
- package/dist/{role-RM2YLO7n.js → role-D57Le_-U.js} +2 -2
- package/dist/{rule-DjlvYIuP.js → rule-DzesUEX7.js} +3 -3
- package/dist/src/api/schedule/index.d.ts +8 -1
- package/dist/src/components/layout/withScheduleShell.d.ts +10 -0
- package/dist/src/types/employee.d.ts +1 -0
- package/dist/src/types/schedule.d.ts +3 -4
- package/dist/src/views/scheduling/components/ScheduleAreaRows.vue.d.ts +0 -8
- package/dist/src/views/scheduling/components/ScheduleBoardAreaRows.vue.d.ts +23 -0
- package/dist/src/views/scheduling/components/ScheduleBoardEditOverlays.vue.d.ts +17 -0
- package/dist/src/views/scheduling/components/ScheduleBoardEmployeeRows.vue.d.ts +31 -0
- package/dist/src/views/scheduling/components/ScheduleBoardGridHeader.vue.d.ts +24 -0
- package/dist/src/views/scheduling/components/ScheduleBoardInteractionOverlays.vue.d.ts +32 -0
- package/dist/src/views/scheduling/components/ScheduleBoardOnboardingOverlays.vue.d.ts +25 -0
- package/dist/src/views/scheduling/components/ScheduleBoardRails.vue.d.ts +17 -0
- package/dist/src/views/scheduling/components/ScheduleBoardToolbar.vue.d.ts +38 -0
- package/dist/src/views/scheduling/components/ScheduleBoardUtilityOverlays.vue.d.ts +22 -0
- package/dist/src/views/scheduling/components/{ScheduleOnboardingComplete.vue.d.ts → ScheduleCompletionDialog.vue.d.ts} +8 -3
- package/dist/src/views/scheduling/components/{ScheduleShiftCardMenu.vue.d.ts → ScheduleContextMenu.vue.d.ts} +7 -2
- package/dist/src/views/scheduling/components/{SchedulePdfPreview.vue.d.ts → ScheduleExportPreview.vue.d.ts} +1 -0
- package/dist/src/views/scheduling/components/ScheduleLoadState.vue.d.ts +9 -0
- package/dist/src/views/scheduling/components/ScheduleModal.vue.d.ts +26 -0
- package/dist/src/views/scheduling/components/{ScheduleExportDoneDialog.vue.d.ts → ScheduleOnboardingAssignPositionModal.vue.d.ts} +2 -2
- package/dist/src/views/scheduling/components/{ScheduleAssignEmployeePopover.vue.d.ts → ScheduleOnboardingClosedDayConfirm.vue.d.ts} +2 -2
- package/dist/src/views/scheduling/components/{ScheduleEmployeeMenu.vue.d.ts → ScheduleOnboardingDemandDays.vue.d.ts} +2 -2
- package/dist/src/views/scheduling/components/ScheduleOnboardingDemandFooter.vue.d.ts +6 -0
- package/dist/src/views/scheduling/components/ScheduleOnboardingDemandHeader.vue.d.ts +6 -0
- package/dist/src/views/scheduling/components/ScheduleOnboardingHoursProfileNotice.vue.d.ts +10 -0
- package/dist/src/views/scheduling/components/ScheduleOnboardingPositions.vue.d.ts +6 -0
- package/dist/src/views/scheduling/components/ScheduleOnboardingReview.vue.d.ts +6 -0
- package/dist/src/views/scheduling/components/ScheduleOnboardingWizardFooter.vue.d.ts +6 -0
- package/dist/src/views/scheduling/components/ScheduleOnboardingWizardHeader.vue.d.ts +11 -0
- package/dist/src/views/scheduling/components/ScheduleSelect.vue.d.ts +17 -1
- package/dist/src/views/scheduling/components/ScheduleSetupBanner.vue.d.ts +12 -0
- package/dist/src/views/scheduling/components/ScheduleShiftPopover.vue.d.ts +2 -2
- package/dist/src/views/scheduling/components/ScheduleStaffRail.vue.d.ts +4 -4
- package/dist/src/views/scheduling/components/ScheduleStaffRows.vue.d.ts +2 -12
- package/dist/src/views/scheduling/components/ScheduleTopbar.vue.d.ts +3 -3
- package/dist/src/views/scheduling/composables/onboarding-types.d.ts +1 -1
- package/dist/src/views/scheduling/composables/remyPrompt.d.ts +13 -0
- package/dist/src/views/scheduling/composables/schedule-add-employee-form.d.ts +12 -8
- package/dist/src/views/scheduling/composables/schedule-board-helpers.d.ts +5 -1
- package/dist/src/views/scheduling/composables/schedule-breaks.d.ts +7 -1
- package/dist/src/views/scheduling/composables/schedule-calendar.d.ts +7 -0
- package/dist/src/views/scheduling/composables/schedule-cost.d.ts +19 -0
- package/dist/src/views/scheduling/composables/schedule-day-meta.d.ts +1 -3
- package/dist/src/views/scheduling/composables/schedule-demand-domain.d.ts +11 -0
- package/dist/src/views/scheduling/composables/schedule-export-matrix.d.ts +14 -0
- package/dist/src/views/scheduling/composables/schedule-time.d.ts +8 -0
- package/dist/src/views/scheduling/composables/schedule-week-cache.d.ts +1 -4
- package/dist/src/views/scheduling/composables/useRemyAppStore.d.ts +15 -0
- package/dist/src/views/scheduling/composables/useScheduleAddEmployee.d.ts +34 -21
- package/dist/src/views/scheduling/composables/useScheduleAreaBoard.d.ts +0 -13
- package/dist/src/views/scheduling/composables/useScheduleAreaDragDrop.d.ts +2 -8
- package/dist/src/views/scheduling/composables/useScheduleAssignmentMutations.d.ts +13 -0
- package/dist/src/views/scheduling/composables/useScheduleAutoSchedule.d.ts +3 -0
- package/dist/src/views/scheduling/composables/useScheduleBoard.d.ts +50 -11
- package/dist/src/views/scheduling/composables/useScheduleCloneOutletModal.d.ts +3 -1
- package/dist/src/views/scheduling/composables/useScheduleCostRail.d.ts +6 -1
- package/dist/src/views/scheduling/composables/useScheduleDayNote.d.ts +1 -2
- package/dist/src/views/scheduling/composables/useScheduleDayTimeline.d.ts +0 -3
- package/dist/src/views/scheduling/composables/useScheduleDemand.d.ts +7 -24
- package/dist/src/views/scheduling/composables/useScheduleDemandSheet.d.ts +19 -5
- package/dist/src/views/scheduling/composables/useScheduleEmployeeAccess.d.ts +16 -0
- package/dist/src/views/scheduling/composables/useScheduleEmployeeAvailability.d.ts +13 -0
- package/dist/src/views/scheduling/composables/useScheduleEmployeeCandidates.d.ts +27 -0
- package/dist/src/views/scheduling/composables/useScheduleEmployeeCompensation.d.ts +7 -0
- package/dist/src/views/scheduling/composables/useScheduleEmployeeForm.d.ts +22 -0
- package/dist/src/views/scheduling/composables/useScheduleEmployeeIdentity.d.ts +9 -0
- package/dist/src/views/scheduling/composables/useScheduleEmployeeMenu.d.ts +6 -3
- package/dist/src/views/scheduling/composables/useScheduleEmployeePersistence.d.ts +29 -0
- package/dist/src/views/scheduling/composables/useScheduleEmployeeValidation.d.ts +20 -0
- package/dist/src/views/scheduling/composables/useScheduleExport.d.ts +19 -11
- package/dist/src/views/scheduling/composables/useScheduleGapPopover.d.ts +5 -6
- package/dist/src/views/scheduling/composables/useScheduleOnboardingAvailability.d.ts +58 -0
- package/dist/src/views/scheduling/composables/useScheduleOnboardingDemand.d.ts +45 -0
- package/dist/src/views/scheduling/composables/useScheduleOnboardingEmployees.d.ts +205 -0
- package/dist/src/views/scheduling/composables/useScheduleOnboardingHours.d.ts +15 -0
- package/dist/src/views/scheduling/composables/useScheduleOnboardingNavigation.d.ts +11 -0
- package/dist/src/views/scheduling/composables/useScheduleOnboardingWizard.d.ts +306 -529
- package/dist/src/views/scheduling/composables/useSchedulePageActions.d.ts +18 -0
- package/dist/src/views/scheduling/composables/useSchedulePageCellActions.d.ts +21 -0
- package/dist/src/views/scheduling/composables/useSchedulePageCellDrop.d.ts +18 -0
- package/dist/src/views/scheduling/composables/useSchedulePageEmployeeActions.d.ts +22 -0
- package/dist/src/views/scheduling/composables/useSchedulePageOverlays.d.ts +10 -7
- package/dist/src/views/scheduling/composables/useSchedulePdfExport.d.ts +19 -0
- package/dist/src/views/scheduling/composables/useSchedulePositionModal.d.ts +4 -1
- package/dist/src/views/scheduling/composables/useSchedulePositions.d.ts +4 -2
- package/dist/src/views/scheduling/composables/useSchedulePublish.d.ts +9 -1
- package/dist/src/views/scheduling/composables/useSchedulePublishPersistence.d.ts +11 -0
- package/dist/src/views/scheduling/composables/useScheduleRoster.d.ts +30 -4
- package/dist/src/views/scheduling/composables/useScheduleSettings.d.ts +8 -25
- package/dist/src/views/scheduling/composables/useScheduleShiftActions.d.ts +18 -3
- package/dist/src/views/scheduling/composables/useScheduleShiftDraft.d.ts +63 -0
- package/dist/src/views/scheduling/composables/useScheduleShiftPersistence.d.ts +17 -0
- package/dist/src/views/scheduling/composables/useScheduleShiftPopover.d.ts +25 -8
- package/dist/src/views/scheduling/composables/useScheduleStatsRow.d.ts +4 -1
- package/dist/src/views/scheduling/composables/useScheduleTour.d.ts +6 -4
- package/dist/src/views/scheduling/country-rules/index.d.ts +24 -0
- package/dist/src/views/scheduling/data.d.ts +16 -7
- package/dist/src/views/scheduling/locales/index.d.ts +80 -0
- package/dist/src/views/scheduling/schedule-constants.d.ts +7 -0
- package/dist/src/views/scheduling/schedule-state.d.ts +104 -16
- package/dist/src/views/scheduling/schedule-store.d.ts +17 -6
- package/dist/src/views/scheduling/types.d.ts +27 -5
- package/dist/style.css +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{useAppStore-d_nHyK5u.js → useAppStore-BoLkvkE2.js} +1 -1
- package/dist/{useLoading-JFoghhRz.js → useLoading-Ch1AUYT1.js} +1 -1
- package/dist/{useReportPermissions-Bl6Br79r.js → useReportPermissions-Cmuead1K.js} +3 -3
- package/package.json +2 -1
- package/dist/PortalPermissionEditor.vue_vue_type_script_setup_true_lang-DjNcJQM9.js +0 -4167
- package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-B-XtB64L.js +0 -452
- package/dist/ScheduleGeneralPage-WlBM8bxV.js +0 -629
- package/dist/SchedulePage-Nm0krGVU.js +0 -17056
- package/dist/ScheduleSelect.vue_vue_type_script_setup_true_lang-DTDXir_7.js +0 -1150
- package/dist/src/components/layout/withShell.d.ts +0 -14
- package/dist/src/views/scheduling/components/ScheduleAllShiftsRow.vue.d.ts +0 -22
- package/dist/src/views/scheduling/components/ScheduleOpenShiftCardMenu.vue.d.ts +0 -14
- package/dist/src/views/scheduling/components/ScheduleStackPopover.vue.d.ts +0 -14
- package/dist/src/views/scheduling/components/ScheduleTourAllSet.vue.d.ts +0 -6
- package/dist/src/views/scheduling/composables/useScheduleAllShiftsRow.d.ts +0 -77
- package/dist/src/views/scheduling/composables/useScheduleAssign.d.ts +0 -122
- package/dist/src/views/scheduling/composables/useScheduleOpenShiftCard.d.ts +0 -23
- package/dist/src/views/scheduling/composables/useScheduleStaffRail.d.ts +0 -17
- package/dist/src/views/scheduling/composables/useScheduleTopbar.d.ts +0 -10
- /package/dist/src/{components/layout/AppSidebar.vue.d.ts → views/scheduling/components/SchedulePublishShareArt.vue.d.ts} +0 -0
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import type { ScheduleBoardApi } from '../composables/useScheduleBoard';
|
|
2
2
|
import type { ScheduleShiftActionsApi } from '../composables/useScheduleShiftActions';
|
|
3
|
+
import type { ScheduleShiftPopoverApi } from '../composables/useScheduleShiftPopover';
|
|
4
|
+
import type { ScheduleEmployeeMenuApi } from '../composables/useScheduleEmployeeMenu';
|
|
3
5
|
type __VLS_Props = {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
+
kind: 'shift' | 'employee';
|
|
7
|
+
board?: ScheduleBoardApi;
|
|
8
|
+
actions?: ScheduleShiftActionsApi;
|
|
9
|
+
popover?: ScheduleShiftPopoverApi;
|
|
10
|
+
employeeMenu?: ScheduleEmployeeMenuApi;
|
|
6
11
|
};
|
|
7
12
|
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
8
13
|
editShift: (empId: number, dayIdx: number, slotIndex: number) => any;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { ScheduleExportApi } from '../composables/useScheduleExport';
|
|
2
2
|
type __VLS_Props = {
|
|
3
3
|
exportApi: ScheduleExportApi;
|
|
4
|
+
format: 'pdf' | 'jpg';
|
|
4
5
|
};
|
|
5
6
|
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
7
|
export default _default;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
error: string | null;
|
|
3
|
+
};
|
|
4
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
5
|
+
retry: () => any;
|
|
6
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
7
|
+
onRetry?: (() => any) | undefined;
|
|
8
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
9
|
+
export default _default;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
open: boolean;
|
|
3
|
+
id?: string;
|
|
4
|
+
panelClass?: string;
|
|
5
|
+
panelStyle?: string;
|
|
6
|
+
labelledBy?: string;
|
|
7
|
+
label?: string;
|
|
8
|
+
};
|
|
9
|
+
declare var __VLS_1: {};
|
|
10
|
+
type __VLS_Slots = {} & {
|
|
11
|
+
default?: (props: typeof __VLS_1) => any;
|
|
12
|
+
};
|
|
13
|
+
declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
14
|
+
close: () => any;
|
|
15
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
16
|
+
onClose?: (() => any) | undefined;
|
|
17
|
+
}>, {
|
|
18
|
+
panelClass: string;
|
|
19
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
20
|
+
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
21
|
+
export default _default;
|
|
22
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
23
|
+
new (): {
|
|
24
|
+
$slots: S;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ScheduleOnboardingWizardApi } from '../composables/useScheduleOnboardingWizard';
|
|
2
2
|
type __VLS_Props = {
|
|
3
|
-
|
|
3
|
+
wizard: ScheduleOnboardingWizardApi;
|
|
4
4
|
};
|
|
5
5
|
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
6
|
export default _default;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ScheduleOnboardingWizardApi } from '../composables/useScheduleOnboardingWizard';
|
|
2
2
|
type __VLS_Props = {
|
|
3
|
-
|
|
3
|
+
wizard: ScheduleOnboardingWizardApi;
|
|
4
4
|
};
|
|
5
5
|
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
6
|
export default _default;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ScheduleOnboardingWizardApi } from '../composables/useScheduleOnboardingWizard';
|
|
2
2
|
type __VLS_Props = {
|
|
3
|
-
|
|
3
|
+
wizard: ScheduleOnboardingWizardApi;
|
|
4
4
|
};
|
|
5
5
|
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
6
|
export default _default;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ScheduleOnboardingWizardApi } from '../composables/useScheduleOnboardingWizard';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
wizard: ScheduleOnboardingWizardApi;
|
|
4
|
+
};
|
|
5
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
export default _default;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ScheduleOnboardingWizardApi } from '../composables/useScheduleOnboardingWizard';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
wizard: ScheduleOnboardingWizardApi;
|
|
4
|
+
};
|
|
5
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
export default _default;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
outletName: string;
|
|
3
|
+
hoursMatchProfile: boolean;
|
|
4
|
+
};
|
|
5
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
6
|
+
reset: () => any;
|
|
7
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
8
|
+
onReset?: (() => any) | undefined;
|
|
9
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
10
|
+
export default _default;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ScheduleOnboardingWizardApi } from '../composables/useScheduleOnboardingWizard';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
wizard: ScheduleOnboardingWizardApi;
|
|
4
|
+
};
|
|
5
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
export default _default;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ScheduleOnboardingWizardApi } from '../composables/useScheduleOnboardingWizard';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
wizard: ScheduleOnboardingWizardApi;
|
|
4
|
+
};
|
|
5
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
export default _default;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ScheduleOnboardingWizardApi } from '../composables/useScheduleOnboardingWizard';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
wizard: ScheduleOnboardingWizardApi;
|
|
4
|
+
};
|
|
5
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
export default _default;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ScheduleOnboardingWizardApi } from '../composables/useScheduleOnboardingWizard';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
wizard: ScheduleOnboardingWizardApi;
|
|
4
|
+
outletName: string;
|
|
5
|
+
};
|
|
6
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
7
|
+
close: () => any;
|
|
8
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
9
|
+
onClose?: (() => any) | undefined;
|
|
10
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
|
+
export default _default;
|
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
export interface ScheduleSelectOption {
|
|
6
6
|
value: string;
|
|
7
7
|
label: string;
|
|
8
|
+
/** Stable identity used when two options can share the same display value. */
|
|
9
|
+
id?: string;
|
|
8
10
|
disabled?: boolean;
|
|
9
11
|
group?: string;
|
|
10
12
|
/** Second line under the label. Any option carrying one switches the menu to the rich
|
|
@@ -22,13 +24,19 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
22
24
|
* close the menu and emit `update:modelValue`. */
|
|
23
25
|
multiple?: boolean;
|
|
24
26
|
selected?: string[];
|
|
27
|
+
/** Stable selected identity for single-select menus whose labels may be duplicated. */
|
|
28
|
+
selectedId?: string;
|
|
25
29
|
/** Closed-control text while a multi-select has nothing picked. */
|
|
26
30
|
placeholder?: string;
|
|
31
|
+
/** Optional closed-control text for a selected value that is not available in the menu. */
|
|
32
|
+
selectedLabel?: string;
|
|
27
33
|
disabled?: boolean;
|
|
28
34
|
/** Heading over the menu. Also switches to the rich layout. */
|
|
29
35
|
menuTitle?: string;
|
|
30
36
|
/** A filter box at the top of the menu, for lists long enough to hunt through (outlets). */
|
|
31
37
|
searchable?: boolean;
|
|
38
|
+
/** Disable body teleporting for SSR or tests that want to keep the menu in the component tree. */
|
|
39
|
+
teleport?: boolean;
|
|
32
40
|
}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
33
41
|
toggle: (value: string) => any;
|
|
34
42
|
"update:modelValue": (value: string) => any;
|
|
@@ -40,15 +48,23 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
40
48
|
* close the menu and emit `update:modelValue`. */
|
|
41
49
|
multiple?: boolean;
|
|
42
50
|
selected?: string[];
|
|
51
|
+
/** Stable selected identity for single-select menus whose labels may be duplicated. */
|
|
52
|
+
selectedId?: string;
|
|
43
53
|
/** Closed-control text while a multi-select has nothing picked. */
|
|
44
54
|
placeholder?: string;
|
|
55
|
+
/** Optional closed-control text for a selected value that is not available in the menu. */
|
|
56
|
+
selectedLabel?: string;
|
|
45
57
|
disabled?: boolean;
|
|
46
58
|
/** Heading over the menu. Also switches to the rich layout. */
|
|
47
59
|
menuTitle?: string;
|
|
48
60
|
/** A filter box at the top of the menu, for lists long enough to hunt through (outlets). */
|
|
49
61
|
searchable?: boolean;
|
|
62
|
+
/** Disable body teleporting for SSR or tests that want to keep the menu in the component tree. */
|
|
63
|
+
teleport?: boolean;
|
|
50
64
|
}> & Readonly<{
|
|
51
65
|
onToggle?: ((value: string) => any) | undefined;
|
|
52
66
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
53
|
-
}>, {
|
|
67
|
+
}>, {
|
|
68
|
+
teleport: boolean;
|
|
69
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
54
70
|
export default _default;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
open: boolean;
|
|
3
|
+
outletName: string;
|
|
4
|
+
};
|
|
5
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
6
|
+
setup: () => any;
|
|
7
|
+
dismiss: () => any;
|
|
8
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
9
|
+
onSetup?: (() => any) | undefined;
|
|
10
|
+
onDismiss?: (() => any) | undefined;
|
|
11
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
12
|
+
export default _default;
|
|
@@ -7,10 +7,10 @@ type __VLS_Props = {
|
|
|
7
7
|
timePicker: ScheduleTimePickerApi;
|
|
8
8
|
};
|
|
9
9
|
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
10
|
-
newPosition: (assign: (name: string) => void) => any;
|
|
11
10
|
swap: (empId: number, dayIdx: number) => any;
|
|
11
|
+
newPosition: (assign: (name: string) => void) => any;
|
|
12
12
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
13
|
-
onNewPosition?: ((assign: (name: string) => void) => any) | undefined;
|
|
14
13
|
onSwap?: ((empId: number, dayIdx: number) => any) | undefined;
|
|
14
|
+
onNewPosition?: ((assign: (name: string) => void) => any) | undefined;
|
|
15
15
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
16
16
|
export default _default;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ScheduleCostRailApi } from '../composables/useScheduleCostRail';
|
|
2
2
|
import type { ScheduleAreaDragDropApi } from '../composables/useScheduleAreaDragDrop';
|
|
3
3
|
type __VLS_Props = {
|
|
4
|
-
rail:
|
|
4
|
+
rail: ScheduleCostRailApi;
|
|
5
5
|
dragDrop: ScheduleAreaDragDropApi;
|
|
6
6
|
};
|
|
7
7
|
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
8
|
+
addEmployee: () => any;
|
|
8
9
|
openEmployee: (empId: number) => any;
|
|
9
10
|
openEmployeeMenu: (empId: number, anchor: HTMLElement) => any;
|
|
10
|
-
addEmployee: () => any;
|
|
11
11
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
12
|
+
onAddEmployee?: (() => any) | undefined;
|
|
12
13
|
onOpenEmployee?: ((empId: number) => any) | undefined;
|
|
13
14
|
onOpenEmployeeMenu?: ((empId: number, anchor: HTMLElement) => any) | undefined;
|
|
14
|
-
onAddEmployee?: (() => any) | undefined;
|
|
15
15
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
16
16
|
export default _default;
|
|
@@ -2,19 +2,16 @@ import type { Proposal } from '../types';
|
|
|
2
2
|
import type { ScheduleBoardApi } from '../composables/useScheduleBoard';
|
|
3
3
|
import type { ScheduleDragDropApi } from '../composables/useScheduleDragDrop';
|
|
4
4
|
import type { ScheduleRosterApi } from '../composables/useScheduleRoster';
|
|
5
|
-
import type { ScheduleOpenShiftCardApi } from '../composables/useScheduleOpenShiftCard';
|
|
6
|
-
import type { ScheduleAllShiftsRowApi } from '../composables/useScheduleAllShiftsRow';
|
|
7
5
|
import type { ScheduleDemandRowApi } from '../composables/useScheduleDemandRow';
|
|
8
6
|
type __VLS_Props = {
|
|
9
7
|
board: ScheduleBoardApi;
|
|
10
8
|
dragDrop: ScheduleDragDropApi;
|
|
11
9
|
roster: ScheduleRosterApi;
|
|
12
|
-
openShiftCard: ScheduleOpenShiftCardApi;
|
|
13
|
-
allShiftsRow: ScheduleAllShiftsRowApi;
|
|
14
10
|
demandRow: ScheduleDemandRowApi;
|
|
15
11
|
proposalAt?: (empId: number, dayIdx: number) => Proposal | undefined;
|
|
16
12
|
};
|
|
17
13
|
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
14
|
+
addEmployee: () => any;
|
|
18
15
|
addShift: (empId: number, dayIdx: number, anchor: HTMLElement) => any;
|
|
19
16
|
editShift: (empId: number, dayIdx: number, slotIndex?: number | undefined) => any;
|
|
20
17
|
editLeave: (empId: number, dayIdx: number) => any;
|
|
@@ -22,9 +19,6 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
|
|
|
22
19
|
toggleProposal: (id: number) => any;
|
|
23
20
|
proposalDragStart: (id: number, ev: DragEvent) => any;
|
|
24
21
|
proposalDragEnd: () => any;
|
|
25
|
-
openAssign: (openId: number) => any;
|
|
26
|
-
openOpenShiftMenu: (openId: number, anchor: HTMLElement) => any;
|
|
27
|
-
addOpenShift: (dayIdx: number) => any;
|
|
28
22
|
segEnter: (dayIdx: number, from: number, to: number, anchor: HTMLElement) => any;
|
|
29
23
|
segLeave: () => any;
|
|
30
24
|
segClick: (dayIdx: number, from: number, to: number, anchor: HTMLElement) => any;
|
|
@@ -33,9 +27,9 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
|
|
|
33
27
|
openEmployeeMenu: (empId: number, anchor: HTMLElement) => any;
|
|
34
28
|
dragShiftStart: (empId: number, dayIdx: number, ev: DragEvent, slotIndex: number) => any;
|
|
35
29
|
dropOnCell: (empId: number, dayIdx: number, ev: DragEvent) => any;
|
|
36
|
-
addEmployee: () => any;
|
|
37
30
|
openDemandSheet: (dayIdx: number) => any;
|
|
38
31
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
32
|
+
onAddEmployee?: (() => any) | undefined;
|
|
39
33
|
onAddShift?: ((empId: number, dayIdx: number, anchor: HTMLElement) => any) | undefined;
|
|
40
34
|
onEditShift?: ((empId: number, dayIdx: number, slotIndex?: number | undefined) => any) | undefined;
|
|
41
35
|
onEditLeave?: ((empId: number, dayIdx: number) => any) | undefined;
|
|
@@ -43,9 +37,6 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
|
|
|
43
37
|
onToggleProposal?: ((id: number) => any) | undefined;
|
|
44
38
|
onProposalDragStart?: ((id: number, ev: DragEvent) => any) | undefined;
|
|
45
39
|
onProposalDragEnd?: (() => any) | undefined;
|
|
46
|
-
onOpenAssign?: ((openId: number) => any) | undefined;
|
|
47
|
-
onOpenOpenShiftMenu?: ((openId: number, anchor: HTMLElement) => any) | undefined;
|
|
48
|
-
onAddOpenShift?: ((dayIdx: number) => any) | undefined;
|
|
49
40
|
onSegEnter?: ((dayIdx: number, from: number, to: number, anchor: HTMLElement) => any) | undefined;
|
|
50
41
|
onSegLeave?: (() => any) | undefined;
|
|
51
42
|
onSegClick?: ((dayIdx: number, from: number, to: number, anchor: HTMLElement) => any) | undefined;
|
|
@@ -54,7 +45,6 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
|
|
|
54
45
|
onOpenEmployeeMenu?: ((empId: number, anchor: HTMLElement) => any) | undefined;
|
|
55
46
|
onDragShiftStart?: ((empId: number, dayIdx: number, ev: DragEvent, slotIndex: number) => any) | undefined;
|
|
56
47
|
onDropOnCell?: ((empId: number, dayIdx: number, ev: DragEvent) => any) | undefined;
|
|
57
|
-
onAddEmployee?: (() => any) | undefined;
|
|
58
48
|
onOpenDemandSheet?: ((dayIdx: number) => any) | undefined;
|
|
59
49
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
60
50
|
export default _default;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ScheduleBoardApi } from '../composables/useScheduleBoard';
|
|
2
|
-
import type { ScheduleTopbarApi } from '../composables/
|
|
2
|
+
import type { ScheduleTopbarApi } from '../composables/useSchedulePageOverlays';
|
|
3
3
|
import type { ScheduleAutoScheduleApi } from '../composables/useScheduleAutoSchedule';
|
|
4
4
|
import type { ScheduleCopyWeekApi } from '../composables/useScheduleCopyWeek';
|
|
5
5
|
import type { ScheduleExportApi } from '../composables/useScheduleExport';
|
|
@@ -11,10 +11,10 @@ type __VLS_Props = {
|
|
|
11
11
|
exportApi: ScheduleExportApi;
|
|
12
12
|
};
|
|
13
13
|
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
14
|
-
clear: (kind: "shifts" | "
|
|
14
|
+
clear: (kind: "shifts" | "demand" | "both") => any;
|
|
15
15
|
"sch-status-click": () => any;
|
|
16
16
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
17
|
-
onClear?: ((kind: "shifts" | "
|
|
17
|
+
onClear?: ((kind: "shifts" | "demand" | "both") => any) | undefined;
|
|
18
18
|
"onSch-status-click"?: (() => any) | undefined;
|
|
19
19
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
20
20
|
export default _default;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type ScheduleOnboardingStep = 'hours' | 'staffing' | 'positions' | '
|
|
1
|
+
export type ScheduleOnboardingStep = 'hours' | 'staffing' | 'positions' | 'employees' | 'availability' | 'review';
|
|
2
2
|
export interface ScheduleOnboardingSession {
|
|
3
3
|
from: string;
|
|
4
4
|
to: string;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type RemyDemandScope = {
|
|
2
|
+
mode: 'day';
|
|
3
|
+
isoDate: string;
|
|
4
|
+
label: string;
|
|
5
|
+
} | {
|
|
6
|
+
mode: 'weekday';
|
|
7
|
+
weekday: string;
|
|
8
|
+
} | {
|
|
9
|
+
mode: 'weekdays';
|
|
10
|
+
};
|
|
11
|
+
/** The sentence prefilled into the host Remy panel. Names the outlet the way a manager knows it;
|
|
12
|
+
* Remy resolves it to an id itself (hrm_find_outlet), so no identifier appears in the text. */
|
|
13
|
+
export declare function remyDemandPrompt(outletName: string, scope: RemyDemandScope): string;
|
|
@@ -11,12 +11,12 @@ export interface ScheduleAddEmployeeForm {
|
|
|
11
11
|
payBasis: 'hourly' | 'monthly';
|
|
12
12
|
payAmount: string;
|
|
13
13
|
maxHours: string;
|
|
14
|
+
maxHoursPerDay: string;
|
|
14
15
|
minHours: string;
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
maxOtHours: string;
|
|
16
|
+
workingHoursEnabled: boolean;
|
|
17
|
+
overtimeEnabled: boolean;
|
|
18
|
+
/** Blank means no employee override; the outlet overtime setting is inherited. */
|
|
19
|
+
maxHoursPerMonth: string;
|
|
20
20
|
/** For a part-timer: days they CAN work. For a full-timer: days they're OFF — the
|
|
21
21
|
* mockup inverts the same array's meaning by employment type. */
|
|
22
22
|
availDays: boolean[];
|
|
@@ -31,9 +31,13 @@ export interface ScheduleAddEmployeeForm {
|
|
|
31
31
|
masterCode: string;
|
|
32
32
|
/** Gates the fields below it — someone can be fully scheduled with this off. */
|
|
33
33
|
posAccessEnabled: boolean;
|
|
34
|
-
/** WHAT the passcode opens the till as,
|
|
35
|
-
*
|
|
36
|
-
|
|
34
|
+
/** WHAT the passcode opens the till as, and WHERE — a row per outlet. Not restricted to the
|
|
35
|
+
* outlets picked in Work locations above: a floating manager can be rostered at one outlet
|
|
36
|
+
* and hold POS admin at several others. */
|
|
37
|
+
posRoles: {
|
|
38
|
+
outlet: string;
|
|
39
|
+
roleId: string;
|
|
40
|
+
}[];
|
|
37
41
|
}
|
|
38
42
|
/** A salaried month, for converting a monthly figure into the hourly one the cost rail
|
|
39
43
|
* actually reads. Ported verbatim from the mockup's MONTH_HOURS. */
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import type { DaySlot, Employee, LeaveSlot, WorkSlot } from '../types';
|
|
2
2
|
import type { FdtoScheduleSaveAssignmentReq } from '@/types/schedule';
|
|
3
|
+
export { isoDateKey } from './schedule-calendar';
|
|
3
4
|
/** dayjs-free local-date key — matches on the browser's local Y/M/D, not UTC, so this stays
|
|
4
5
|
* correct regardless of timezone. */
|
|
5
|
-
export declare function isoDateKey(d: Date): string;
|
|
6
6
|
export declare function isWorkSlot(slot: DaySlot): slot is WorkSlot;
|
|
7
7
|
export declare function isLeaveSlot(slot: DaySlot): slot is LeaveSlot;
|
|
8
8
|
export declare function workSlotsOf(day: DaySlot): WorkSlot[];
|
|
9
|
+
/** Whether two periods occupy any of the same working time. Endpoints that touch are
|
|
10
|
+
* back-to-back, not a conflict. Overnight ranges use the shared clock rules. */
|
|
11
|
+
export declare function shiftsOverlap(a: Pick<WorkSlot, 'start' | 'end'>, b: Pick<WorkSlot, 'start' | 'end'>): boolean;
|
|
12
|
+
export declare function overlapsAnotherSlot(slots: WorkSlot[], target: WorkSlot): boolean;
|
|
9
13
|
/** The inverse of `workSlotsOf` — bare slot for one, the array for two or more, so a day
|
|
10
14
|
* that's back down to its last period reads as a normal single shift again rather than a
|
|
11
15
|
* one-element array everything else has to unwrap. */
|
|
@@ -1,3 +1,9 @@
|
|
|
1
1
|
import type { FdtoScheduleBreak } from '@/types/schedule';
|
|
2
|
-
|
|
2
|
+
import type { WorkSlot } from '../types';
|
|
3
|
+
type BreakSource = FdtoScheduleBreak[] | Pick<WorkSlot, 'breaks' | 'breakMins'> | undefined;
|
|
4
|
+
export declare function breakMinutesOf(source: BreakSource): number;
|
|
5
|
+
/** Net paid minutes. Legacy board slots only have `breakMins`; persisted slots use the richer
|
|
6
|
+
* break array, so both representations pass through this function. */
|
|
7
|
+
export declare function paidMinutesOf(slot: Pick<WorkSlot, 'start' | 'end' | 'breaks' | 'breakMins'>, gross?: number): number;
|
|
3
8
|
export declare function durationBreaksOf(minutes: number | undefined): FdtoScheduleBreak[];
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const RANGE_LEN = 7;
|
|
2
|
+
export declare function isoDateKey(date: Date): string;
|
|
3
|
+
export declare function addDays(date: Date, days: number): Date;
|
|
4
|
+
export declare function mostRecentMonday(from: Date): Date;
|
|
5
|
+
export declare function weekDates(offset: number, from?: Date): Date[];
|
|
6
|
+
export declare function weeksBetween(a: Date, b: Date): number;
|
|
7
|
+
export declare function todayWeekdayIdx(): number;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Employee, WorkSlot } from '../types';
|
|
2
|
+
export interface ScheduleCostBreakdown {
|
|
3
|
+
hours: number;
|
|
4
|
+
overtimeHours: number;
|
|
5
|
+
baseCost: number;
|
|
6
|
+
overtimeCost: number;
|
|
7
|
+
totalCost: number;
|
|
8
|
+
}
|
|
9
|
+
export declare function costOfSlot(slot: WorkSlot, rate: number, multiplier: number): {
|
|
10
|
+
hours: number;
|
|
11
|
+
cost: number;
|
|
12
|
+
};
|
|
13
|
+
/** Splits a sequence of paid shift minutes at the employee's contract line. This is the single
|
|
14
|
+
* overtime/cost calculation used by rails and exports; callers provide the applicable pay rate
|
|
15
|
+
* multiplier for each slot. */
|
|
16
|
+
export declare function costOfSlots(employee: Employee, slots: Array<{
|
|
17
|
+
slot: WorkSlot;
|
|
18
|
+
multiplier: number;
|
|
19
|
+
}>): ScheduleCostBreakdown;
|
|
@@ -8,14 +8,12 @@ export declare function useScheduleDayMeta(dateKey: (dayIdx: number) => string |
|
|
|
8
8
|
onPersistError?: (message: string) => void;
|
|
9
9
|
}): {
|
|
10
10
|
dayNote: (dayIdx: number) => ScheduleDayNote | null;
|
|
11
|
-
setDayNote: (dayIdx: number, title: string, desc: string) => void;
|
|
11
|
+
setDayNote: (dayIdx: number, title: string, desc: string, isPublicHoliday?: boolean) => void;
|
|
12
12
|
clearDayNote: (dayIdx: number) => void;
|
|
13
13
|
isStandingClosedWeekday: (dayIdx: number) => boolean;
|
|
14
14
|
holidayName: (dayIdx: number) => string | null;
|
|
15
|
-
holidayIsAuto: (dayIdx: number) => boolean;
|
|
16
15
|
isPublicHoliday: (dayIdx: number) => boolean;
|
|
17
16
|
holidayRateApplies: (dayIdx: number) => boolean;
|
|
18
|
-
setHolidayNormal: (dayIdx: number, toNormal: boolean) => void;
|
|
19
17
|
setPublicHoliday: (dayIdx: number, on: boolean) => void;
|
|
20
18
|
otRateOn: (dayIdx: number) => number;
|
|
21
19
|
regularRateOn: (dayIdx: number) => number;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DemandPeriod } from '../types';
|
|
2
|
+
import { format12h as t12, formatShortMinutes as minToShort, fromMinutes as minToHHMM, spanMinutes as spanOf, toMinutes as toMin } from './schedule-time';
|
|
3
|
+
export { minToHHMM, minToShort, spanOf, t12, toMin };
|
|
4
|
+
export declare function rangeText(from: number, to: number): string;
|
|
5
|
+
export declare function roleTotalOf(period: DemandPeriod): number;
|
|
6
|
+
/** The unnamed part of a period's headcount. Derived so it cannot disagree with the total. */
|
|
7
|
+
export declare function anyLeftOf(period: DemandPeriod): number;
|
|
8
|
+
export interface ScheduleCoverageAxis {
|
|
9
|
+
from: number;
|
|
10
|
+
to: number;
|
|
11
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface ExportShiftCell {
|
|
2
|
+
note: string;
|
|
3
|
+
shifts: {
|
|
4
|
+
when: string;
|
|
5
|
+
pos: string;
|
|
6
|
+
}[];
|
|
7
|
+
}
|
|
8
|
+
export declare function esc(value: string | number): string;
|
|
9
|
+
export declare function cellText(value: string | ExportShiftCell): string;
|
|
10
|
+
export declare function dayCellLines(value: ExportShiftCell): {
|
|
11
|
+
text: string;
|
|
12
|
+
kind: 'note' | 'when' | 'pos';
|
|
13
|
+
}[];
|
|
14
|
+
export declare function dayHeaderLabel(date: Date): string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Shared clock arithmetic for the scheduling board. All spans are minutes from midnight;
|
|
2
|
+
* an end at or before the start is treated as an overnight end on the following day. */
|
|
3
|
+
export declare function toMinutes(value: string): number;
|
|
4
|
+
export declare function fromMinutes(value: number): string;
|
|
5
|
+
export declare function spanMinutes(start: string, end: string): [number, number];
|
|
6
|
+
export declare function durationMinutes(start: string, end: string): number;
|
|
7
|
+
export declare function format12h(value: string): string;
|
|
8
|
+
export declare function formatShortMinutes(value: number): string;
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import type { Employee, OpenShift } from '../types';
|
|
2
|
-
export
|
|
3
|
-
export declare function mostRecentMonday(from: Date): Date;
|
|
4
|
-
export declare function weekDates(offset: number): Date[];
|
|
5
|
-
export declare function weeksBetween(a: Date, b: Date): number;
|
|
2
|
+
export { RANGE_LEN, mostRecentMonday, weekDates, weeksBetween } from './schedule-calendar';
|
|
6
3
|
export interface WeekBucket {
|
|
7
4
|
employees: Employee[];
|
|
8
5
|
openShifts: OpenShift[];
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { useAppStore } from '@feedmepos/mf-remy-panel';
|
|
2
|
+
export interface RemyActivateOptions {
|
|
3
|
+
prompt?: string;
|
|
4
|
+
forceNewConversation?: boolean;
|
|
5
|
+
}
|
|
6
|
+
/** HRM never bundles or mounts a Remy panel of its own — `@feedmepos/mf-remy-panel` is externalised
|
|
7
|
+
* by the shared vite preset, so inside the host portal this import resolves to the ONE panel
|
|
8
|
+
* instance the host already created. The host portal owns initialisation (with env-specific
|
|
9
|
+
* backend/license URLs) before any HRM view mounts. HRM must never call `initializeRemyChat`:
|
|
10
|
+
* it re-initialises the shared panel instance and, without arguments, points it at production. */
|
|
11
|
+
export interface RemyAppStoreApi {
|
|
12
|
+
store: ReturnType<typeof useAppStore>;
|
|
13
|
+
activate: (options: RemyActivateOptions) => Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
export declare function useRemyAppStore(): RemyAppStoreApi;
|