@feedmepos/mf-hrm-portal 2.3.0-dev.9 → 2.3.0
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-BDpxEJpC.js → ApprovalCodeList-DwubNElp.js} +7 -7
- package/dist/{AuditLogList-Dgwj1gz8.js → AuditLogList-CTeMbyHL.js} +18 -19
- package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-BBK2gl7r.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-CmLLNcB4.js} +2 -2
- package/dist/{EmployeeList-C8cbVcmY.js → EmployeeList-DEAJPx9F.js} +255 -266
- package/dist/{FormItem.vue_vue_type_script_setup_true_lang-CUnlKsxk.js → FormItem.vue_vue_type_script_setup_true_lang-OAvd6eHM.js} +6 -6
- package/dist/{GrantUserList-zul0_Dlm.js → GrantUserList-Dx4jF2qJ.js} +8 -8
- package/dist/{Main-Cjo4FMZZ.js → Main-BirWXk7o.js} +5 -5
- package/dist/{Main-DSr9KbjT.js → Main-C2PBSCte.js} +11 -11
- package/dist/{Main-5TsFTFpc.js → Main-CL5JYCPg.js} +8 -8
- package/dist/{PermissionSetList-CDhiiu37.js → PermissionSetList-BtYcqPiO.js} +19 -18
- package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-DoK944l0.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-BXw4aX39.js} +1127 -1127
- package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-BVz6q3HE.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-DaAx79pC.js} +1 -1
- package/dist/ResponsiveContextMenu.vue_vue_type_script_setup_true_lang-mSJFKo7r.js +132 -0
- package/dist/{RoleList-DEbOPQD_.js → RoleList-YS_LBfoJ.js} +21 -20
- package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-BorKuXxL.js +530 -0
- package/dist/{ScheduleGeneralPage-B8PWNsc2.js → ScheduleGeneralPage-C1p2mivt.js} +252 -248
- package/dist/ScheduleModal.vue_vue_type_script_setup_true_lang-CnKzVz3I.js +2457 -0
- package/dist/SchedulePage-BP7x7JAl.js +19485 -0
- package/dist/{SchedulePositionPage-Cuv4ydOK.js → SchedulePositionPage-BogOQZVW.js} +78 -80
- package/dist/{SelectFilter-CG13h83-.js → SelectFilter-Dh3eY1hV.js} +1 -1
- package/dist/{TeamMemberList-DpCGqHCk.js → TeamMemberList-Bv6_2bzs.js} +27 -27
- package/dist/{TimesheetList-B7HAC5zS.js → TimesheetList-B3BmpH0I.js} +52 -53
- package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-BGD6m5M-.js → TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-C4rbnZh1.js} +3 -3
- package/dist/{app-Lh0cqgHy.js → app-CyS8c8dx.js} +2879 -2462
- package/dist/app.js +1 -1
- package/dist/{approval-code-DHsUgc4K.js → approval-code-BIpLingm.js} +1 -1
- package/dist/{dayjs.min-joq4stsa.js → dayjs.min-BRlEc3-d.js} +1 -1
- package/dist/{employee-BPmp9c6i.js → employee-CcdjLOLQ.js} +51 -47
- package/dist/{grant-user-qzKHFTro.js → grant-user-uZmvD_bw.js} +1 -1
- package/dist/{iteration-jvdTHQUx.js → iteration-CL1RDmws.js} +1 -1
- package/dist/{lodash-CIAEpr9s.js → lodash-C00ieagp.js} +1 -1
- package/dist/object-Dwyg2LgX.js +16 -0
- package/dist/{restaurant-BbYRA_IT.js → restaurant-CHpkjUPy.js} +46 -47
- package/dist/{role-Dd1TUMhn.js → role-DtatkKp9.js} +2 -2
- package/dist/{rule-DmxI7qEY.js → rule-DJJMpkoG.js} +3 -3
- package/dist/src/api/employee/index.d.ts +2 -2
- package/dist/src/api/schedule/index.d.ts +11 -1
- package/dist/src/components/layout/SchedulePromoBanner.vue.d.ts +2 -0
- package/dist/src/composables/useDiscardConfirm.d.ts +3 -1
- package/dist/src/stores/employee.d.ts +12 -12
- package/dist/src/types/schedule.d.ts +1 -1
- package/dist/src/views/audit-log/locales/index.d.ts +252 -0
- package/dist/src/views/scheduling/components/ScheduleAreaRows.vue.d.ts +6 -2
- package/dist/src/views/scheduling/components/ScheduleAutoScheduleDoneArt.vue.d.ts +2 -0
- package/dist/src/views/scheduling/components/ScheduleBoardAreaRows.vue.d.ts +2 -0
- package/dist/src/views/scheduling/components/ScheduleBoardGridHeader.vue.d.ts +5 -0
- package/dist/src/views/scheduling/components/ScheduleBoardInteractionOverlays.vue.d.ts +2 -0
- package/dist/src/views/scheduling/components/ScheduleBoardOnboardingOverlays.vue.d.ts +1 -0
- package/dist/src/views/scheduling/components/ScheduleBoardToolbar.vue.d.ts +0 -1
- package/dist/src/views/scheduling/components/ScheduleCompletionDialog.vue.d.ts +1 -1
- package/dist/src/views/scheduling/components/ScheduleConfirmModal.vue.d.ts +4 -1
- package/dist/src/views/scheduling/components/ScheduleDayTimeline.vue.d.ts +5 -0
- package/dist/src/views/scheduling/components/ScheduleLoadState.vue.d.ts +0 -1
- package/dist/src/views/scheduling/components/ScheduleOnboardingSettings.vue.d.ts +6 -0
- package/dist/src/views/scheduling/components/ScheduleShiftPopover.vue.d.ts +1 -1
- package/dist/src/views/scheduling/composables/auto-schedule-mapping.d.ts +3 -3
- package/dist/src/views/scheduling/composables/onboarding-types.d.ts +2 -1
- package/dist/src/views/scheduling/composables/remyPrompt.d.ts +4 -2
- package/dist/src/views/scheduling/composables/schedule-board-helpers.d.ts +4 -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 +13 -1
- package/dist/src/views/scheduling/composables/schedule-error.d.ts +1 -0
- package/dist/src/views/scheduling/composables/schedule-leave-split.d.ts +5 -0
- package/dist/src/views/scheduling/composables/schedule-quick-pick.d.ts +22 -0
- package/dist/src/views/scheduling/composables/schedule-shift-time.d.ts +3 -0
- package/dist/src/views/scheduling/composables/schedule-week-cache.d.ts +3 -1
- package/dist/src/views/scheduling/composables/useRemyAppStore.d.ts +1 -0
- package/dist/src/views/scheduling/composables/useScheduleAddEmployee.d.ts +25 -2
- package/dist/src/views/scheduling/composables/useScheduleAddPick.d.ts +3 -11
- package/dist/src/views/scheduling/composables/useScheduleAreaDragDrop.d.ts +0 -1
- package/dist/src/views/scheduling/composables/useScheduleAutoSchedule.d.ts +22 -13
- package/dist/src/views/scheduling/composables/useScheduleBoard.d.ts +58 -7
- package/dist/src/views/scheduling/composables/useScheduleCopyWeek.d.ts +3 -10
- package/dist/src/views/scheduling/composables/useScheduleCostRail.d.ts +13 -1
- package/dist/src/views/scheduling/composables/useScheduleDayNote.d.ts +0 -1
- package/dist/src/views/scheduling/composables/useScheduleDayTimeline.d.ts +16 -2
- package/dist/src/views/scheduling/composables/useScheduleDemandSheet.d.ts +7 -0
- package/dist/src/views/scheduling/composables/useScheduleDragDrop.d.ts +1 -0
- package/dist/src/views/scheduling/composables/useScheduleEmployeeAccess.d.ts +14 -6
- package/dist/src/views/scheduling/composables/useScheduleEmployeeCandidates.d.ts +26 -4
- package/dist/src/views/scheduling/composables/useScheduleEmployeePersistence.d.ts +3 -0
- package/dist/src/views/scheduling/composables/useScheduleEmployeeValidation.d.ts +0 -2
- package/dist/src/views/scheduling/composables/useScheduleExport.d.ts +1 -0
- package/dist/src/views/scheduling/composables/useScheduleLeave.d.ts +5 -1
- package/dist/src/views/scheduling/composables/useScheduleOnboardingDemand.d.ts +1 -1
- package/dist/src/views/scheduling/composables/useScheduleOnboardingEmployees.d.ts +28 -2
- package/dist/src/views/scheduling/composables/useScheduleOnboardingWizard.d.ts +203 -8
- package/dist/src/views/scheduling/composables/useScheduleOutlet.d.ts +11 -8
- package/dist/src/views/scheduling/composables/useSchedulePageActions.d.ts +1 -1
- package/dist/src/views/scheduling/composables/useSchedulePageCellDrop.d.ts +3 -1
- package/dist/src/views/scheduling/composables/useSchedulePageClearActions.d.ts +1 -0
- package/dist/src/views/scheduling/composables/useSchedulePositions.d.ts +6 -0
- package/dist/src/views/scheduling/composables/useSchedulePublish.d.ts +2 -1
- package/dist/src/views/scheduling/composables/useScheduleRoster.d.ts +46 -0
- package/dist/src/views/scheduling/composables/useScheduleSetupBanner.d.ts +2 -2
- package/dist/src/views/scheduling/composables/useScheduleShiftActions.d.ts +29 -1
- package/dist/src/views/scheduling/composables/useScheduleShiftPopover.d.ts +32 -3
- package/dist/src/views/scheduling/country-rules/index.d.ts +8 -3
- package/dist/src/views/scheduling/data.d.ts +17 -0
- package/dist/src/views/scheduling/locales/index.d.ts +28 -0
- package/dist/src/views/scheduling/schedule-state.d.ts +236 -236
- package/dist/src/views/scheduling/schedule-store.d.ts +26 -7
- package/dist/src/views/scheduling/types.d.ts +8 -0
- package/dist/style.css +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{useAppStore-BoLkvkE2.js → useAppStore-Bp0PwbAN.js} +1 -1
- package/dist/useDiscardConfirm-CzZSPyvh.js +28 -0
- package/dist/{useLoading-Ch1AUYT1.js → useLoading-sgL8DRUz.js} +1 -1
- package/dist/{useReportPermissions-DM3GOFCC.js → useReportPermissions-DI-xg3OX.js} +3 -3
- package/package.json +2 -2
- package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-Cx9jFgBS.js +0 -492
- package/dist/ScheduleModal.vue_vue_type_script_setup_true_lang-V1sZ_xhO.js +0 -2253
- package/dist/SchedulePage-ndLByVBl.js +0 -17785
- package/dist/_plugin-vue_export-helper-CHgC5LLL.js +0 -9
- package/dist/useDiscardConfirm-DPhEV6v0.js +0 -157
|
@@ -377,10 +377,10 @@ export declare const useEmployeeStore: () => {
|
|
|
377
377
|
readEmployees: () => Promise<void>;
|
|
378
378
|
readEmployeesPage: (query: IReadEmployeesPageReq) => Promise<void>;
|
|
379
379
|
readAllEmployeesPage: (query: Omit<IReadEmployeesPageReq, "limit" | "offset">, knownTotal?: number) => Promise<Employee[]>;
|
|
380
|
-
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<
|
|
380
|
+
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<string>;
|
|
381
381
|
updateEmployee: (userId: string, dto: FdtoUpdatePosUserReq) => Promise<void>;
|
|
382
382
|
deleteEmployee: (employee: Employee) => Promise<void>;
|
|
383
|
-
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<
|
|
383
|
+
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<string>;
|
|
384
384
|
updateMasterEmployee: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
385
385
|
deleteMasterEmployee: (employee: Employee) => Promise<void>;
|
|
386
386
|
migrateToMasterUser: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
@@ -695,10 +695,10 @@ export declare const useEmployeeStore: () => {
|
|
|
695
695
|
readEmployees: () => Promise<void>;
|
|
696
696
|
readEmployeesPage: (query: IReadEmployeesPageReq) => Promise<void>;
|
|
697
697
|
readAllEmployeesPage: (query: Omit<IReadEmployeesPageReq, "limit" | "offset">, knownTotal?: number) => Promise<Employee[]>;
|
|
698
|
-
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<
|
|
698
|
+
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<string>;
|
|
699
699
|
updateEmployee: (userId: string, dto: FdtoUpdatePosUserReq) => Promise<void>;
|
|
700
700
|
deleteEmployee: (employee: Employee) => Promise<void>;
|
|
701
|
-
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<
|
|
701
|
+
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<string>;
|
|
702
702
|
updateMasterEmployee: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
703
703
|
deleteMasterEmployee: (employee: Employee) => Promise<void>;
|
|
704
704
|
migrateToMasterUser: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
@@ -858,10 +858,10 @@ export declare const useEmployeeStore: () => {
|
|
|
858
858
|
readEmployees: () => Promise<void>;
|
|
859
859
|
readEmployeesPage: (query: IReadEmployeesPageReq) => Promise<void>;
|
|
860
860
|
readAllEmployeesPage: (query: Omit<IReadEmployeesPageReq, "limit" | "offset">, knownTotal?: number) => Promise<Employee[]>;
|
|
861
|
-
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<
|
|
861
|
+
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<string>;
|
|
862
862
|
updateEmployee: (userId: string, dto: FdtoUpdatePosUserReq) => Promise<void>;
|
|
863
863
|
deleteEmployee: (employee: Employee) => Promise<void>;
|
|
864
|
-
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<
|
|
864
|
+
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<string>;
|
|
865
865
|
updateMasterEmployee: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
866
866
|
deleteMasterEmployee: (employee: Employee) => Promise<void>;
|
|
867
867
|
migrateToMasterUser: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
@@ -1018,10 +1018,10 @@ export declare const useEmployeeStore: () => {
|
|
|
1018
1018
|
readEmployees: () => Promise<void>;
|
|
1019
1019
|
readEmployeesPage: (query: IReadEmployeesPageReq) => Promise<void>;
|
|
1020
1020
|
readAllEmployeesPage: (query: Omit<IReadEmployeesPageReq, "limit" | "offset">, knownTotal?: number) => Promise<Employee[]>;
|
|
1021
|
-
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<
|
|
1021
|
+
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<string>;
|
|
1022
1022
|
updateEmployee: (userId: string, dto: FdtoUpdatePosUserReq) => Promise<void>;
|
|
1023
1023
|
deleteEmployee: (employee: Employee) => Promise<void>;
|
|
1024
|
-
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<
|
|
1024
|
+
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<string>;
|
|
1025
1025
|
updateMasterEmployee: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
1026
1026
|
deleteMasterEmployee: (employee: Employee) => Promise<void>;
|
|
1027
1027
|
migrateToMasterUser: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
@@ -1178,10 +1178,10 @@ export declare const useEmployeeStore: () => {
|
|
|
1178
1178
|
readEmployees: () => Promise<void>;
|
|
1179
1179
|
readEmployeesPage: (query: IReadEmployeesPageReq) => Promise<void>;
|
|
1180
1180
|
readAllEmployeesPage: (query: Omit<IReadEmployeesPageReq, "limit" | "offset">, knownTotal?: number) => Promise<Employee[]>;
|
|
1181
|
-
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<
|
|
1181
|
+
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<string>;
|
|
1182
1182
|
updateEmployee: (userId: string, dto: FdtoUpdatePosUserReq) => Promise<void>;
|
|
1183
1183
|
deleteEmployee: (employee: Employee) => Promise<void>;
|
|
1184
|
-
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<
|
|
1184
|
+
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<string>;
|
|
1185
1185
|
updateMasterEmployee: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
1186
1186
|
deleteMasterEmployee: (employee: Employee) => Promise<void>;
|
|
1187
1187
|
migrateToMasterUser: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
@@ -1193,10 +1193,10 @@ export declare const useEmployeeStore: () => {
|
|
|
1193
1193
|
readEmployees: () => Promise<void>;
|
|
1194
1194
|
readEmployeesPage: (query: IReadEmployeesPageReq) => Promise<void>;
|
|
1195
1195
|
readAllEmployeesPage: (query: Omit<IReadEmployeesPageReq, "limit" | "offset">, knownTotal?: number) => Promise<Employee[]>;
|
|
1196
|
-
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<
|
|
1196
|
+
createEmployee: (dto: FdtoUpdatePosUserReq) => Promise<string>;
|
|
1197
1197
|
updateEmployee: (userId: string, dto: FdtoUpdatePosUserReq) => Promise<void>;
|
|
1198
1198
|
deleteEmployee: (employee: Employee) => Promise<void>;
|
|
1199
|
-
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<
|
|
1199
|
+
createMasterEmployee: (dto: FdtoUpdatePosMasterUserReq) => Promise<string>;
|
|
1200
1200
|
updateMasterEmployee: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
1201
1201
|
deleteMasterEmployee: (employee: Employee) => Promise<void>;
|
|
1202
1202
|
migrateToMasterUser: (userId: string, dto: FdtoUpdatePosMasterUserReq) => Promise<void>;
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* only view-model commands that intentionally do not cross HTTP (for example
|
|
6
6
|
* replacing a period made up of several persisted demand rows).
|
|
7
7
|
*/
|
|
8
|
-
export type { FdtoScheduleAssignment, FdtoScheduleAutoScheduleApplyReq, FdtoScheduleAutoScheduleApplyResult, FdtoScheduleAutoScheduleCapabilities, FdtoScheduleAutoScheduleGenerateReq, FdtoScheduleAutoScheduleObjective, FdtoScheduleAutoSchedulePlanner, FdtoScheduleAutoScheduleProposal, FdtoScheduleAutoScheduleRejection, FdtoScheduleAutoScheduleResult, FdtoScheduleAutoScheduleTiming, FdtoScheduleAutoScheduleUnfilledNeed, FdtoScheduleBoard, FdtoScheduleBulkUpdateAssignmentStatusReq, FdtoScheduleBulkSaveAssignmentsReq, FdtoScheduleBulkSaveAssignmentsResult, FdtoScheduleBulkReplaceDemandReq, FdtoScheduleBreak, FdtoScheduleCreateEmployeeProfileReq, FdtoScheduleEmployeeConfig, FdtoScheduleDayOperatingHours, FdtoScheduleDemand, FdtoScheduleEmployee, FdtoScheduleOptionalDateRange, FdtoSchedulePayRate, FdtoSchedulePosition, FdtoSchedulePositionRef, FdtoSchedulePositionSelectorReq, FdtoScheduleRestaurantProfile, FdtoScheduleSaveAssignmentReq, FdtoScheduleSaveDemandReq, FdtoScheduleReplaceDemandReq, FdtoScheduleSaveEmployeeConfigsReq, FdtoScheduleSavePositionReq, FdtoScheduleSaveScheduleDayReq, FdtoScheduleSaveSettingsReq, FdtoScheduleScheduleDay, FdtoScheduleSettings, FdtoScheduleUpdateEmployeeProfileReq, FdtoScheduleValidatePosAccessReq, FdtoScheduleCreateTimeOffReq, FdtoScheduleTimeOff, FdtoScheduleTimeOffDayPart, FdtoScheduleTimeOffQuery, FdtoScheduleTimeOffStatus, FdtoScheduleTimeOffType, FdtoScheduleUpdateTimeOffStatusReq, } from '@feedmepos/hrm-schedule-contract';
|
|
8
|
+
export type { FdtoScheduleAssignment, FdtoScheduleAutoScheduleApplyReq, FdtoScheduleAutoScheduleApplyResult, FdtoScheduleAutoScheduleCapabilities, FdtoScheduleAutoScheduleGenerateReq, FdtoScheduleAutoScheduleObjective, FdtoScheduleAutoSchedulePlanner, FdtoScheduleAutoScheduleProposal, FdtoScheduleAutoScheduleRejection, FdtoScheduleAutoScheduleResult, FdtoScheduleAutoScheduleTiming, FdtoScheduleAutoScheduleUnfilledNeed, FdtoScheduleBoard, FdtoScheduleBulkUpdateAssignmentStatusReq, FdtoScheduleBulkSaveAssignmentsReq, FdtoScheduleBulkSaveAssignmentsResult, FdtoScheduleBulkReplaceDemandReq, FdtoScheduleClearScheduleReq, FdtoScheduleCopyScheduleReq, FdtoScheduleCompleteOnboardingReq, FdtoScheduleBreak, FdtoScheduleCreateEmployeeProfileReq, FdtoScheduleEmployeeConfig, FdtoScheduleDayOperatingHours, FdtoScheduleDemand, FdtoScheduleEmployee, FdtoScheduleOptionalDateRange, FdtoSchedulePayRate, FdtoSchedulePosition, FdtoSchedulePositionRef, FdtoSchedulePositionSelectorReq, FdtoScheduleRestaurantProfile, FdtoScheduleSaveAssignmentReq, FdtoScheduleSaveDemandReq, FdtoScheduleReplaceDemandReq, FdtoScheduleSaveEmployeeConfigsReq, FdtoScheduleSavePositionReq, FdtoScheduleSaveScheduleDayReq, FdtoScheduleSaveSettingsReq, FdtoScheduleScheduleDay, FdtoScheduleSettings, FdtoScheduleUpdateEmployeeProfileReq, FdtoScheduleValidatePosAccessReq, FdtoScheduleCreateTimeOffReq, FdtoScheduleTimeOff, FdtoScheduleTimeOffDayPart, FdtoScheduleTimeOffQuery, FdtoScheduleTimeOffStatus, FdtoScheduleTimeOffType, FdtoScheduleUpdateTimeOffStatusReq, } from '@feedmepos/hrm-schedule-contract';
|
|
9
9
|
/** UI-level date replacement command. The store expands these periods into flat
|
|
10
10
|
* ShiftDemand rows before calling the shared HTTP contract. */
|
|
11
11
|
export interface ScheduleReplaceDemandReq {
|
|
@@ -222,6 +222,69 @@ export declare const i18nMessages: {
|
|
|
222
222
|
view: string;
|
|
223
223
|
update: string;
|
|
224
224
|
};
|
|
225
|
+
"schedule-shift": {
|
|
226
|
+
create: string;
|
|
227
|
+
update: string;
|
|
228
|
+
"bulk-save": string;
|
|
229
|
+
publish: string;
|
|
230
|
+
unpublish: string;
|
|
231
|
+
confirm: string;
|
|
232
|
+
delete: string;
|
|
233
|
+
"auto-apply": string;
|
|
234
|
+
};
|
|
235
|
+
"schedule-demand": {
|
|
236
|
+
create: string;
|
|
237
|
+
update: string;
|
|
238
|
+
replace: string;
|
|
239
|
+
delete: string;
|
|
240
|
+
};
|
|
241
|
+
"schedule-time-off": {
|
|
242
|
+
create: string;
|
|
243
|
+
"update-status": string;
|
|
244
|
+
delete: string;
|
|
245
|
+
};
|
|
246
|
+
"schedule-day": {
|
|
247
|
+
save: string;
|
|
248
|
+
delete: string;
|
|
249
|
+
};
|
|
250
|
+
"schedule-settings": {
|
|
251
|
+
update: string;
|
|
252
|
+
};
|
|
253
|
+
"schedule-employee-config": {
|
|
254
|
+
update: string;
|
|
255
|
+
};
|
|
256
|
+
"schedule-operating-hours": {
|
|
257
|
+
update: string;
|
|
258
|
+
};
|
|
259
|
+
"schedule-position": {
|
|
260
|
+
create: string;
|
|
261
|
+
update: string;
|
|
262
|
+
delete: string;
|
|
263
|
+
};
|
|
264
|
+
"schedule-employee": {
|
|
265
|
+
create: string;
|
|
266
|
+
delete: string;
|
|
267
|
+
};
|
|
268
|
+
"schedule-shift-item": {
|
|
269
|
+
create: string;
|
|
270
|
+
update: string;
|
|
271
|
+
delete: string;
|
|
272
|
+
publish: string;
|
|
273
|
+
unpublish: string;
|
|
274
|
+
confirm: string;
|
|
275
|
+
};
|
|
276
|
+
"schedule-demand-item": {
|
|
277
|
+
create: string;
|
|
278
|
+
update: string;
|
|
279
|
+
delete: string;
|
|
280
|
+
};
|
|
281
|
+
"schedule-time-off-item": {
|
|
282
|
+
create: string;
|
|
283
|
+
approve: string;
|
|
284
|
+
reject: string;
|
|
285
|
+
cancel: string;
|
|
286
|
+
delete: string;
|
|
287
|
+
};
|
|
225
288
|
};
|
|
226
289
|
};
|
|
227
290
|
};
|
|
@@ -448,6 +511,69 @@ export declare const i18nMessages: {
|
|
|
448
511
|
view: string;
|
|
449
512
|
update: string;
|
|
450
513
|
};
|
|
514
|
+
"schedule-shift": {
|
|
515
|
+
create: string;
|
|
516
|
+
update: string;
|
|
517
|
+
"bulk-save": string;
|
|
518
|
+
publish: string;
|
|
519
|
+
unpublish: string;
|
|
520
|
+
confirm: string;
|
|
521
|
+
delete: string;
|
|
522
|
+
"auto-apply": string;
|
|
523
|
+
};
|
|
524
|
+
"schedule-demand": {
|
|
525
|
+
create: string;
|
|
526
|
+
update: string;
|
|
527
|
+
replace: string;
|
|
528
|
+
delete: string;
|
|
529
|
+
};
|
|
530
|
+
"schedule-time-off": {
|
|
531
|
+
create: string;
|
|
532
|
+
"update-status": string;
|
|
533
|
+
delete: string;
|
|
534
|
+
};
|
|
535
|
+
"schedule-day": {
|
|
536
|
+
save: string;
|
|
537
|
+
delete: string;
|
|
538
|
+
};
|
|
539
|
+
"schedule-settings": {
|
|
540
|
+
update: string;
|
|
541
|
+
};
|
|
542
|
+
"schedule-employee-config": {
|
|
543
|
+
update: string;
|
|
544
|
+
};
|
|
545
|
+
"schedule-operating-hours": {
|
|
546
|
+
update: string;
|
|
547
|
+
};
|
|
548
|
+
"schedule-position": {
|
|
549
|
+
create: string;
|
|
550
|
+
update: string;
|
|
551
|
+
delete: string;
|
|
552
|
+
};
|
|
553
|
+
"schedule-employee": {
|
|
554
|
+
create: string;
|
|
555
|
+
delete: string;
|
|
556
|
+
};
|
|
557
|
+
"schedule-shift-item": {
|
|
558
|
+
create: string;
|
|
559
|
+
update: string;
|
|
560
|
+
delete: string;
|
|
561
|
+
publish: string;
|
|
562
|
+
unpublish: string;
|
|
563
|
+
confirm: string;
|
|
564
|
+
};
|
|
565
|
+
"schedule-demand-item": {
|
|
566
|
+
create: string;
|
|
567
|
+
update: string;
|
|
568
|
+
delete: string;
|
|
569
|
+
};
|
|
570
|
+
"schedule-time-off-item": {
|
|
571
|
+
create: string;
|
|
572
|
+
approve: string;
|
|
573
|
+
reject: string;
|
|
574
|
+
cancel: string;
|
|
575
|
+
delete: string;
|
|
576
|
+
};
|
|
451
577
|
};
|
|
452
578
|
};
|
|
453
579
|
};
|
|
@@ -674,6 +800,69 @@ export declare const i18nMessages: {
|
|
|
674
800
|
view: string;
|
|
675
801
|
update: string;
|
|
676
802
|
};
|
|
803
|
+
"schedule-shift": {
|
|
804
|
+
create: string;
|
|
805
|
+
update: string;
|
|
806
|
+
"bulk-save": string;
|
|
807
|
+
publish: string;
|
|
808
|
+
unpublish: string;
|
|
809
|
+
confirm: string;
|
|
810
|
+
delete: string;
|
|
811
|
+
"auto-apply": string;
|
|
812
|
+
};
|
|
813
|
+
"schedule-demand": {
|
|
814
|
+
create: string;
|
|
815
|
+
update: string;
|
|
816
|
+
replace: string;
|
|
817
|
+
delete: string;
|
|
818
|
+
};
|
|
819
|
+
"schedule-time-off": {
|
|
820
|
+
create: string;
|
|
821
|
+
"update-status": string;
|
|
822
|
+
delete: string;
|
|
823
|
+
};
|
|
824
|
+
"schedule-day": {
|
|
825
|
+
save: string;
|
|
826
|
+
delete: string;
|
|
827
|
+
};
|
|
828
|
+
"schedule-settings": {
|
|
829
|
+
update: string;
|
|
830
|
+
};
|
|
831
|
+
"schedule-employee-config": {
|
|
832
|
+
update: string;
|
|
833
|
+
};
|
|
834
|
+
"schedule-operating-hours": {
|
|
835
|
+
update: string;
|
|
836
|
+
};
|
|
837
|
+
"schedule-position": {
|
|
838
|
+
create: string;
|
|
839
|
+
update: string;
|
|
840
|
+
delete: string;
|
|
841
|
+
};
|
|
842
|
+
"schedule-employee": {
|
|
843
|
+
create: string;
|
|
844
|
+
delete: string;
|
|
845
|
+
};
|
|
846
|
+
"schedule-shift-item": {
|
|
847
|
+
create: string;
|
|
848
|
+
update: string;
|
|
849
|
+
delete: string;
|
|
850
|
+
publish: string;
|
|
851
|
+
unpublish: string;
|
|
852
|
+
confirm: string;
|
|
853
|
+
};
|
|
854
|
+
"schedule-demand-item": {
|
|
855
|
+
create: string;
|
|
856
|
+
update: string;
|
|
857
|
+
delete: string;
|
|
858
|
+
};
|
|
859
|
+
"schedule-time-off-item": {
|
|
860
|
+
create: string;
|
|
861
|
+
approve: string;
|
|
862
|
+
reject: string;
|
|
863
|
+
cancel: string;
|
|
864
|
+
delete: string;
|
|
865
|
+
};
|
|
677
866
|
};
|
|
678
867
|
};
|
|
679
868
|
};
|
|
@@ -900,6 +1089,69 @@ export declare const i18nMessages: {
|
|
|
900
1089
|
view: string;
|
|
901
1090
|
update: string;
|
|
902
1091
|
};
|
|
1092
|
+
"schedule-shift": {
|
|
1093
|
+
create: string;
|
|
1094
|
+
update: string;
|
|
1095
|
+
"bulk-save": string;
|
|
1096
|
+
publish: string;
|
|
1097
|
+
unpublish: string;
|
|
1098
|
+
confirm: string;
|
|
1099
|
+
delete: string;
|
|
1100
|
+
"auto-apply": string;
|
|
1101
|
+
};
|
|
1102
|
+
"schedule-demand": {
|
|
1103
|
+
create: string;
|
|
1104
|
+
update: string;
|
|
1105
|
+
replace: string;
|
|
1106
|
+
delete: string;
|
|
1107
|
+
};
|
|
1108
|
+
"schedule-time-off": {
|
|
1109
|
+
create: string;
|
|
1110
|
+
"update-status": string;
|
|
1111
|
+
delete: string;
|
|
1112
|
+
};
|
|
1113
|
+
"schedule-day": {
|
|
1114
|
+
save: string;
|
|
1115
|
+
delete: string;
|
|
1116
|
+
};
|
|
1117
|
+
"schedule-settings": {
|
|
1118
|
+
update: string;
|
|
1119
|
+
};
|
|
1120
|
+
"schedule-employee-config": {
|
|
1121
|
+
update: string;
|
|
1122
|
+
};
|
|
1123
|
+
"schedule-operating-hours": {
|
|
1124
|
+
update: string;
|
|
1125
|
+
};
|
|
1126
|
+
"schedule-position": {
|
|
1127
|
+
create: string;
|
|
1128
|
+
update: string;
|
|
1129
|
+
delete: string;
|
|
1130
|
+
};
|
|
1131
|
+
"schedule-employee": {
|
|
1132
|
+
create: string;
|
|
1133
|
+
delete: string;
|
|
1134
|
+
};
|
|
1135
|
+
"schedule-shift-item": {
|
|
1136
|
+
create: string;
|
|
1137
|
+
update: string;
|
|
1138
|
+
delete: string;
|
|
1139
|
+
publish: string;
|
|
1140
|
+
unpublish: string;
|
|
1141
|
+
confirm: string;
|
|
1142
|
+
};
|
|
1143
|
+
"schedule-demand-item": {
|
|
1144
|
+
create: string;
|
|
1145
|
+
update: string;
|
|
1146
|
+
delete: string;
|
|
1147
|
+
};
|
|
1148
|
+
"schedule-time-off-item": {
|
|
1149
|
+
create: string;
|
|
1150
|
+
approve: string;
|
|
1151
|
+
reject: string;
|
|
1152
|
+
cancel: string;
|
|
1153
|
+
delete: string;
|
|
1154
|
+
};
|
|
903
1155
|
};
|
|
904
1156
|
};
|
|
905
1157
|
};
|
|
@@ -20,9 +20,11 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
|
|
|
20
20
|
segClick: (dayIdx: number, from: number, to: number, anchor: HTMLElement) => any;
|
|
21
21
|
segFocus: (dayIdx: number, from: number, to: number, anchor: HTMLElement) => any;
|
|
22
22
|
openDemandSheet: (dayIdx: number) => any;
|
|
23
|
+
openNewShift: (dayIdx: number, position: string) => any;
|
|
24
|
+
openPositionDrop: (dayIdx: number, position: string) => any;
|
|
23
25
|
addPosition: () => any;
|
|
24
26
|
scheduleByPerson: () => any;
|
|
25
|
-
openSwap: (fromEmpId: number, fromDayIdx: number, toEmpId: number, toDayIdx: number, slotIndex: number) => any;
|
|
27
|
+
openSwap: (fromEmpId: number, fromDayIdx: number, toEmpId: number, toDayIdx: number, slotIndex: number, targetSlotIndex: number) => any;
|
|
26
28
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
27
29
|
onEditShift?: ((empId: number, dayIdx: number) => any) | undefined;
|
|
28
30
|
onSegEnter?: ((dayIdx: number, from: number, to: number, anchor: HTMLElement) => any) | undefined;
|
|
@@ -30,8 +32,10 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
|
|
|
30
32
|
onSegClick?: ((dayIdx: number, from: number, to: number, anchor: HTMLElement) => any) | undefined;
|
|
31
33
|
onSegFocus?: ((dayIdx: number, from: number, to: number, anchor: HTMLElement) => any) | undefined;
|
|
32
34
|
onOpenDemandSheet?: ((dayIdx: number) => any) | undefined;
|
|
35
|
+
onOpenNewShift?: ((dayIdx: number, position: string) => any) | undefined;
|
|
36
|
+
onOpenPositionDrop?: ((dayIdx: number, position: string) => any) | undefined;
|
|
33
37
|
onAddPosition?: (() => any) | undefined;
|
|
34
38
|
onScheduleByPerson?: (() => any) | undefined;
|
|
35
|
-
onOpenSwap?: ((fromEmpId: number, fromDayIdx: number, toEmpId: number, toDayIdx: number, slotIndex: number) => any) | undefined;
|
|
39
|
+
onOpenSwap?: ((fromEmpId: number, fromDayIdx: number, toEmpId: number, toDayIdx: number, slotIndex: number, targetSlotIndex: number) => any) | undefined;
|
|
36
40
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
37
41
|
export default _default;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
export default _default;
|
|
@@ -10,6 +10,8 @@ type __VLS_Props = {
|
|
|
10
10
|
shiftDragDrop: ScheduleDragDropApi;
|
|
11
11
|
demandRow: ScheduleDemandRowApi;
|
|
12
12
|
onEditShift: (...args: any[]) => void;
|
|
13
|
+
onOpenNewShift: (...args: any[]) => void;
|
|
14
|
+
onOpenPositionDrop: (...args: any[]) => void;
|
|
13
15
|
onOpenDemandSheet: (...args: any[]) => void;
|
|
14
16
|
onSegEnter: (...args: any[]) => void;
|
|
15
17
|
onSegLeave: (...args: any[]) => void;
|
|
@@ -5,6 +5,7 @@ import type { useScheduleStatsRow } from '../composables/useScheduleStatsRow';
|
|
|
5
5
|
import type { ScheduleDayTimelineApi } from '../composables/useScheduleDayTimeline';
|
|
6
6
|
import type { ScheduleRosterApi } from '../composables/useScheduleRoster';
|
|
7
7
|
import type { ScheduleAreaDragDropApi } from '../composables/useScheduleAreaDragDrop';
|
|
8
|
+
import type { ScheduleDragDropApi } from '../composables/useScheduleDragDrop';
|
|
8
9
|
type ScheduleLegendApi = ReturnType<typeof useScheduleLegend>;
|
|
9
10
|
type ScheduleStatsRowApi = ReturnType<typeof useScheduleStatsRow>;
|
|
10
11
|
type __VLS_Props = {
|
|
@@ -15,6 +16,10 @@ type __VLS_Props = {
|
|
|
15
16
|
dayTimeline: ScheduleDayTimelineApi;
|
|
16
17
|
roster: ScheduleRosterApi;
|
|
17
18
|
areaDragDrop: ScheduleAreaDragDropApi;
|
|
19
|
+
shiftDragDrop: ScheduleDragDropApi;
|
|
20
|
+
onDropEmployee: (employeeId: number, event: DragEvent, slotIndex?: number) => void;
|
|
21
|
+
onDropPosition: (employeeId: number, event: DragEvent, slotIndex?: number) => void;
|
|
22
|
+
onDropPositionCell: (position: string, event: DragEvent) => void;
|
|
18
23
|
mode: 'employee' | 'area';
|
|
19
24
|
onScroll: (delta: number) => void;
|
|
20
25
|
onComingSoon: () => void;
|
|
@@ -6,6 +6,7 @@ import type { SchedulePositionModalApi } from '../composables/useSchedulePositio
|
|
|
6
6
|
import type { ScheduleShiftActionsApi } from '../composables/useScheduleShiftActions';
|
|
7
7
|
import type { ScheduleShiftPopoverApi } from '../composables/useScheduleShiftPopover';
|
|
8
8
|
import type { ScheduleAutoScheduleApi } from '../composables/useScheduleAutoSchedule';
|
|
9
|
+
import type { ScheduleTourApi } from '../composables/useScheduleTour';
|
|
9
10
|
import type { ScheduleDemandSheetApi } from '../composables/useScheduleDemandSheet';
|
|
10
11
|
type ScheduleEmployeeProfileApi = ReturnType<typeof useScheduleEmployeeProfile>;
|
|
11
12
|
type __VLS_Props = {
|
|
@@ -17,6 +18,7 @@ type __VLS_Props = {
|
|
|
17
18
|
shiftActions: ScheduleShiftActionsApi;
|
|
18
19
|
popover: ScheduleShiftPopoverApi;
|
|
19
20
|
autoSchedule: ScheduleAutoScheduleApi;
|
|
21
|
+
tour: ScheduleTourApi;
|
|
20
22
|
demandSheet: ScheduleDemandSheetApi;
|
|
21
23
|
removeEmployeeOpen: boolean;
|
|
22
24
|
removeEmployeeName: string;
|
|
@@ -4,7 +4,7 @@ import type { ScheduleAutoScheduleApi } from '../composables/useScheduleAutoSche
|
|
|
4
4
|
import type { ScheduleExportApi } from '../composables/useScheduleExport';
|
|
5
5
|
import type { SchedulePublishApi } from '../composables/useSchedulePublish';
|
|
6
6
|
type __VLS_Props = {
|
|
7
|
-
kind: 'onboarding' | 'tour' | 'export' | 'publish-share';
|
|
7
|
+
kind: 'onboarding' | 'tour' | 'auto-schedule' | 'export' | 'publish-share';
|
|
8
8
|
wizard?: ScheduleOnboardingWizardApi;
|
|
9
9
|
tour?: ScheduleTourApi;
|
|
10
10
|
autoSchedule?: ScheduleAutoScheduleApi;
|
|
@@ -2,6 +2,7 @@ type __VLS_Props = {
|
|
|
2
2
|
open: boolean;
|
|
3
3
|
title: string;
|
|
4
4
|
message: string;
|
|
5
|
+
affectedDates?: string[];
|
|
5
6
|
/** `clash-q` gives the message an orange warning-callout background instead of plain text —
|
|
6
7
|
* used by the "might conflict" dialog, kept as an opt-in rather than the default look. */
|
|
7
8
|
messageClass?: string;
|
|
@@ -10,6 +11,7 @@ type __VLS_Props = {
|
|
|
10
11
|
* consequence of pressing the button. Omitted entirely when there's nothing to point to. */
|
|
11
12
|
note?: string;
|
|
12
13
|
confirmLabel?: string;
|
|
14
|
+
loading?: boolean;
|
|
13
15
|
cancelLabel?: string;
|
|
14
16
|
tone?: 'primary' | 'danger';
|
|
15
17
|
/** The "!" mark is for dialogs guarding something irreversible — a reversible action
|
|
@@ -24,9 +26,10 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
|
|
|
24
26
|
onConfirm?: (() => any) | undefined;
|
|
25
27
|
}>, {
|
|
26
28
|
icon: boolean;
|
|
29
|
+
loading: boolean;
|
|
27
30
|
confirmLabel: string;
|
|
28
|
-
tone: "primary" | "danger";
|
|
29
31
|
messageClass: string;
|
|
30
32
|
cancelLabel: string;
|
|
33
|
+
tone: "primary" | "danger";
|
|
31
34
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
32
35
|
export default _default;
|
|
@@ -2,11 +2,16 @@ import type { ScheduleDayTimelineApi } from '../composables/useScheduleDayTimeli
|
|
|
2
2
|
import type { ScheduleRosterApi } from '../composables/useScheduleRoster';
|
|
3
3
|
import type { ScheduleViewMode } from '../composables/useScheduleFilterBar';
|
|
4
4
|
import type { ScheduleAreaDragDropApi } from '../composables/useScheduleAreaDragDrop';
|
|
5
|
+
import type { ScheduleDragDropApi } from '../composables/useScheduleDragDrop';
|
|
5
6
|
type __VLS_Props = {
|
|
6
7
|
timeline: ScheduleDayTimelineApi;
|
|
7
8
|
roster: ScheduleRosterApi;
|
|
8
9
|
mode: ScheduleViewMode;
|
|
9
10
|
dragDrop?: ScheduleAreaDragDropApi;
|
|
11
|
+
shiftDragDrop?: ScheduleDragDropApi;
|
|
12
|
+
onDropEmployee?: (employeeId: number, event: DragEvent, slotIndex?: number) => void;
|
|
13
|
+
onDropPosition?: (employeeId: number, event: DragEvent, slotIndex?: number) => void;
|
|
14
|
+
onDropPositionCell?: (position: string, event: DragEvent) => void;
|
|
10
15
|
};
|
|
11
16
|
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>;
|
|
12
17
|
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;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ScheduleBoardApi } from '../composables/useScheduleBoard';
|
|
2
2
|
import type { ScheduleShiftPopoverApi } from '../composables/useScheduleShiftPopover';
|
|
3
|
-
import type
|
|
3
|
+
import { type ScheduleTimePickerApi } from '../composables/useScheduleTimePicker';
|
|
4
4
|
type __VLS_Props = {
|
|
5
5
|
board: ScheduleBoardApi;
|
|
6
6
|
popover: ScheduleShiftPopoverApi;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { FdtoScheduleAutoScheduleApplyReq, FdtoScheduleAutoScheduleObjective,
|
|
1
|
+
import type { FdtoScheduleAutoScheduleApplyReq, FdtoScheduleAutoScheduleObjective, FdtoScheduleAutoScheduleProposal, FdtoScheduleAutoScheduleResult } from '@/types/schedule';
|
|
2
2
|
import { ApiError } from '@/api';
|
|
3
3
|
import type { Proposal } from '../types';
|
|
4
4
|
/** ISO date of `dayIdx` in the week starting `weekKey` (YYYY-MM-DD, local arithmetic). */
|
|
@@ -8,7 +8,7 @@ export declare function dateOfProposal(weekKey: string, dayIdx: number): string;
|
|
|
8
8
|
* dropped. Ids come from `nextId` so they stay unique across weeks. */
|
|
9
9
|
export declare function proposalsFromResult(proposals: FdtoScheduleAutoScheduleProposal[], weekKey: string, dateKeyOf: (dayIdx: number) => string | null, nextId: () => number, holds: (empId: number) => boolean): Proposal[];
|
|
10
10
|
/** The apply body for the accepted proposals, each re-dated from its own week and day. */
|
|
11
|
-
export declare function applyRequestOf(proposals: Proposal[], allowOvertime: boolean): FdtoScheduleAutoScheduleApplyReq;
|
|
11
|
+
export declare function applyRequestOf(proposals: Proposal[], allowOvertime: boolean, status?: FdtoScheduleAutoScheduleApplyReq['status']): FdtoScheduleAutoScheduleApplyReq;
|
|
12
12
|
export interface ClassifiedExplanation {
|
|
13
13
|
kind: 'reject' | 'ai' | 'plain';
|
|
14
14
|
text: string;
|
|
@@ -30,4 +30,4 @@ export declare function fillGapsOffResult(week: {
|
|
|
30
30
|
/** The snackbar shown once a run finishes, whether it went to the server or (fill gaps off) was
|
|
31
31
|
* answered locally. `wallMs` is measured client-side around the request — it is what the manager
|
|
32
32
|
* actually waited, not just the server's own `timing.totalMs`. */
|
|
33
|
-
export declare function generateDoneMessage(result: FdtoScheduleAutoScheduleResult,
|
|
33
|
+
export declare function generateDoneMessage(result: FdtoScheduleAutoScheduleResult, wallMs: number): string;
|
|
@@ -23,7 +23,8 @@ export interface TeamRow {
|
|
|
23
23
|
picked: boolean;
|
|
24
24
|
/** '' means "Any position" — a person with none. */
|
|
25
25
|
position: string;
|
|
26
|
-
|
|
26
|
+
/** Additional positions this employee also covers. */
|
|
27
|
+
second: string[];
|
|
27
28
|
employment: TeamEmployment;
|
|
28
29
|
maxHours: string;
|
|
29
30
|
rate: string;
|
|
@@ -8,6 +8,8 @@ export type RemyDemandScope = {
|
|
|
8
8
|
} | {
|
|
9
9
|
mode: 'weekdays';
|
|
10
10
|
};
|
|
11
|
-
/** The
|
|
12
|
-
*
|
|
11
|
+
/** The text prefilled into the host Remy panel: one line naming the outlet and day, which the
|
|
12
|
+
* user continues with their demand. The "attach a roster image or describe it in words" guidance
|
|
13
|
+
* lives on the sheet's Ask Remy tooltip, not here. Names the outlet the way a manager knows it;
|
|
14
|
+
* Remy resolves it to an id itself (hrm_find_outlet), so no outlet id appears in the text. */
|
|
13
15
|
export declare function remyDemandPrompt(outletName: string, scope: RemyDemandScope): string;
|
|
@@ -6,6 +6,10 @@ export { isoDateKey } from './schedule-calendar';
|
|
|
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. */
|
|
@@ -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;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { DemandPeriod } from '../types';
|
|
1
|
+
import type { DemandPeriod, Employee } from '../types';
|
|
2
2
|
import { format12h as t12, formatShortMinutes as minToShort, fromMinutes as minToHHMM, spanMinutes as spanOf, toMinutes as toMin } from './schedule-time';
|
|
3
3
|
export { minToHHMM, minToShort, spanOf, t12, toMin };
|
|
4
4
|
export declare function rangeText(from: number, to: number): string;
|
|
@@ -9,3 +9,15 @@ export interface ScheduleCoverageAxis {
|
|
|
9
9
|
from: number;
|
|
10
10
|
to: number;
|
|
11
11
|
}
|
|
12
|
+
/** Fills named position rows from the people on, as a maximum matching (Kuhn's augmenting
|
|
13
|
+
* paths) so a flexible person is moved off one row when another row has nobody else. Rows are
|
|
14
|
+
* tried in the order given (scarcest first); within a row, main-position holders are offered
|
|
15
|
+
* first, then secondary holders, then people with no positions. Returns heads filled per row
|
|
16
|
+
* (same order as `rows`) and the ids spent. */
|
|
17
|
+
export declare function matchSlots(rows: Array<{
|
|
18
|
+
position: string;
|
|
19
|
+
required: number;
|
|
20
|
+
}>, on: Employee[], qualified: (e: Employee, position: string) => boolean): {
|
|
21
|
+
got: number[];
|
|
22
|
+
spent: Set<number>;
|
|
23
|
+
};
|