@feedmepos/mf-hrm-portal 2.3.1-dev.1 → 2.3.2-dev
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-CDU3yUHy.js → ApprovalCodeList-xOyDG5ug.js} +7 -7
- package/dist/AuditLogList-Dd6HyFhk.js +1777 -0
- package/dist/ConditionBuilderForm.vue_vue_type_script_setup_true_lang-Cixg_icC.js +459 -0
- package/dist/EmployeeList-BG2KPvOB.js +908 -0
- package/dist/{FormItem.vue_vue_type_script_setup_true_lang-Clh43Y-8.js → FormItem.vue_vue_type_script_setup_true_lang-DPT2FoIc.js} +6 -6
- package/dist/{GrantUserList-Cw8RkFqf.js → GrantUserList-CUkuf3VV.js} +8 -8
- package/dist/Main-BSHf8gTE.js +100 -0
- package/dist/{Main-Dlar77Zq.js → Main-BcixH7R5.js} +11 -11
- package/dist/{Main-BxcRbcce.js → Main-Cg9SOzcz.js} +5 -5
- package/dist/MyPosProfile-CN8Bj3aV.js +301 -0
- package/dist/PasscodePinField.vue_vue_type_script_setup_true_lang-TXPEqa46.js +126 -0
- package/dist/{PermissionSetList-_8aBzGy7.js → PermissionSetList-I3u2_qHR.js} +33 -35
- package/dist/PortalPermissionEditor.vue_vue_type_script_setup_true_lang-BBoRXQPn.js +4243 -0
- package/dist/PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-B5QDOF0L.js +1840 -0
- package/dist/{RoleList-C3n_zOB3.js → RoleList-ALmAwN0U.js} +20 -21
- package/dist/SelectFilter-ATOm0hdn.js +269 -0
- package/dist/TeamMemberList-DZfEnOs1.js +2097 -0
- package/dist/{TimesheetList-BqRIZBt1.js → TimesheetList-CECFKt7H.js} +11 -11
- package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-oIBUAjtv.js → TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-RIyoAmeb.js} +3 -3
- package/dist/{app-DFL6Nv_p.js → app-CdrnR_Pw.js} +6647 -11430
- package/dist/app.js +3 -3
- package/dist/{approval-code-BXUiojPH.js → approval-code-Bwvwehz9.js} +1 -1
- package/dist/{dayjs.min-CH-gVmsz.js → dayjs.min-BO8bcI17.js} +13 -13
- package/dist/{employee-3xpIjR6i.js → employee-Dg-J9goA.js} +62 -66
- package/dist/{grant-user-CBJ3gEgW.js → grant-user-whFOaPZI.js} +1 -1
- package/dist/{iteration-D6wutq5U.js → iteration-ZpERYj3o.js} +1 -1
- package/dist/{lodash-D5kU1nPN.js → lodash-7SZBZ8VQ.js} +1 -1
- package/dist/member-grant-C46lvrh2.js +55 -0
- package/dist/restaurant-CKhT6kgj.js +45 -0
- package/dist/{role-B7nu6hH1.js → role-C6hFKOfU.js} +5 -4
- package/dist/{rule-CMd6SL3n.js → rule-BlMymDXm.js} +99 -94
- package/dist/src/api/audit-log/index.d.ts +0 -4
- package/dist/src/api/employee/index.d.ts +2 -2
- package/dist/src/api/my-pos-profile/index.d.ts +5 -0
- package/dist/src/api/restaurant/index.d.ts +0 -2
- package/dist/src/api/staff-invite/index.d.ts +17 -0
- package/dist/src/components/AppForm.vue.d.ts +2 -2
- package/dist/src/components/CheckboxInput.vue.d.ts +2 -2
- package/dist/src/components/CollapsibleWrapper.vue.d.ts +11 -3
- package/dist/src/components/form/SegmentedTabs.vue.d.ts +23 -0
- package/dist/src/composables/useDiscardConfirm.d.ts +1 -3
- package/dist/src/composables/useMenuAccess.d.ts +56 -0
- package/dist/src/composables/useMessage.d.ts +2 -8
- package/dist/src/composables/useStaffInviteProviders.d.ts +19 -0
- package/dist/src/helpers/member-grant.d.ts +36 -0
- package/dist/src/helpers/my-pos-profile.d.ts +37 -0
- package/dist/src/helpers/pos-assignment-rows.d.ts +26 -0
- package/dist/src/helpers/staff-invite.d.ts +51 -0
- package/dist/src/helpers/string.d.ts +10 -1
- package/dist/src/router/menu-access-guard.d.ts +17 -0
- package/dist/src/router/shared.d.ts +2 -3
- package/dist/src/stores/employee.d.ts +12 -12
- package/dist/src/stores/restaurant.d.ts +7 -7
- package/dist/src/stores/team.d.ts +30 -0
- package/dist/src/types/employee.d.ts +0 -1
- package/dist/src/types/my-pos-profile.d.ts +25 -0
- package/dist/src/types/staff-invite.d.ts +100 -0
- package/dist/src/types/team.d.ts +17 -1
- package/dist/src/views/audit-log/constants.d.ts +30 -9
- package/dist/src/views/audit-log/locales/index.d.ts +0 -488
- package/dist/src/views/my-pos-profile/components/PasscodeChangedDialog.vue.d.ts +4 -0
- package/dist/src/views/my-pos-profile/locales/index.d.ts +200 -0
- package/dist/src/views/team/components/BasePermission.vue.d.ts +11 -0
- package/dist/src/views/team/components/ConditionPermission.vue.d.ts +11 -0
- package/dist/src/views/team/components/MemberGrantFields.vue.d.ts +55 -0
- package/dist/src/views/team/{member/MemberInfo.vue.d.ts → components/MemberStatusBadge.vue.d.ts} +2 -2
- package/dist/src/views/team/components/PortalConditionForm.vue.d.ts +2 -2
- package/dist/src/views/team/components/PortalPermissionEditor.vue.d.ts +21 -0
- package/dist/src/views/team/components/PosAssignmentRows.vue.d.ts +46 -0
- package/dist/src/views/team/components/PosRolePermission.vue.d.ts +11 -0
- package/dist/src/views/team/condition-builders/ConditionBuilderForm.vue.d.ts +2 -2
- package/dist/src/views/team/locales/index.d.ts +716 -0
- package/dist/src/views/team/member/AddMemberForm.vue.d.ts +50 -3
- package/dist/src/views/{scheduling/components/ScheduleOnboardingHoursProfileNotice.vue.d.ts → team/member/ExistingMemberNotice.vue.d.ts} +6 -5
- package/dist/src/views/team/member/MemberDetailsCard.vue.d.ts +35 -0
- package/dist/src/views/team/member/MemberHeaderCard.vue.d.ts +19 -0
- package/dist/src/views/team/member/TeamMemberList.vue.d.ts +1 -0
- package/dist/src/views/team/member/TeamMemberMasterUser.vue.d.ts +2 -0
- package/dist/string-DZQ1uNjn.js +22 -0
- package/dist/style.css +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{useAppStore-DZCdxlCd.js → useAppStore-CL6EEDuw.js} +1 -1
- package/dist/useDiscardConfirm-DPhEV6v0.js +157 -0
- package/dist/{useLoading-Nygx2zn8.js → useLoading-BBjBUzGJ.js} +1 -1
- package/dist/{useReportPermissions-BcxIKxlF.js → useReportPermissions-Bg0fma6m.js} +3 -3
- package/package.json +3 -5
- package/dist/AuditLogList-BU11Q5sF.js +0 -1950
- package/dist/ConditionBuilderForm.vue_vue_type_script_setup_true_lang-BjHwyaXu.js +0 -438
- package/dist/EmployeeList-BqzXg3uA.js +0 -776
- package/dist/Main-CL-ysWRu.js +0 -96
- package/dist/PasscodePinField.vue_vue_type_script_setup_true_lang-CqG0v0Sz.js +0 -243
- package/dist/PortalPermissionEditor.vue_vue_type_script_setup_true_lang-CNgtAtYH.js +0 -4167
- package/dist/PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-DQcgZ0nF.js +0 -35
- package/dist/ResponsiveContextMenu.vue_vue_type_script_setup_true_lang-mSJFKo7r.js +0 -132
- package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-CnrbCggg.js +0 -544
- package/dist/ScheduleGeneralPage-DGHKW_ww.js +0 -811
- package/dist/ScheduleModal.vue_vue_type_script_setup_true_lang-AfTAGsh1.js +0 -2556
- package/dist/SchedulePage-UzDPRldO.js +0 -19458
- package/dist/SchedulePositionPage-RHETW36P.js +0 -282
- package/dist/SelectFilter-CeBV_Kug.js +0 -264
- package/dist/TeamMemberList-B-qR7VS3.js +0 -1154
- package/dist/object-Dwyg2LgX.js +0 -16
- package/dist/restaurant-D2mfKHaH.js +0 -1880
- package/dist/src/api/schedule/index.d.ts +0 -68
- package/dist/src/components/layout/PortalShell.vue.d.ts +0 -12
- package/dist/src/components/layout/withScheduleShell.d.ts +0 -10
- package/dist/src/types/schedule.d.ts +0 -23
- package/dist/src/views/audit-log/pos-row.d.ts +0 -27
- package/dist/src/views/scheduling/ScheduleGeneralPage.vue.d.ts +0 -3
- package/dist/src/views/scheduling/SchedulePage.vue.d.ts +0 -3
- package/dist/src/views/scheduling/SchedulePositionPage.vue.d.ts +0 -3
- package/dist/src/views/scheduling/components/ScheduleAddEmployeeIdentitySection.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleAddEmployeeModal.vue.d.ts +0 -12
- package/dist/src/views/scheduling/components/ScheduleAddEmployeeModeStep.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleAddEmployeePosAccessSection.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleAddEmployeePositionsSection.vue.d.ts +0 -10
- package/dist/src/views/scheduling/components/ScheduleAddEmployeeSchedulingSection.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleAddPickPopover.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleAddPositionModal.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleAreaRows.vue.d.ts +0 -41
- package/dist/src/views/scheduling/components/ScheduleAutoScheduleDetailsModal.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleAutoScheduleDoneArt.vue.d.ts +0 -2
- package/dist/src/views/scheduling/components/ScheduleAutoScheduleModal.vue.d.ts +0 -10
- package/dist/src/views/scheduling/components/ScheduleBoardAreaRows.vue.d.ts +0 -25
- package/dist/src/views/scheduling/components/ScheduleBoardEditOverlays.vue.d.ts +0 -17
- package/dist/src/views/scheduling/components/ScheduleBoardEmployeeRows.vue.d.ts +0 -31
- package/dist/src/views/scheduling/components/ScheduleBoardGridHeader.vue.d.ts +0 -29
- package/dist/src/views/scheduling/components/ScheduleBoardInteractionOverlays.vue.d.ts +0 -34
- package/dist/src/views/scheduling/components/ScheduleBoardOnboardingOverlays.vue.d.ts +0 -26
- package/dist/src/views/scheduling/components/ScheduleBoardRails.vue.d.ts +0 -17
- package/dist/src/views/scheduling/components/ScheduleBoardToolbar.vue.d.ts +0 -38
- package/dist/src/views/scheduling/components/ScheduleBoardUtilityOverlays.vue.d.ts +0 -22
- package/dist/src/views/scheduling/components/ScheduleButton.vue.d.ts +0 -23
- package/dist/src/views/scheduling/components/ScheduleChangeEmployeeModal.vue.d.ts +0 -8
- package/dist/src/views/scheduling/components/ScheduleCloneOutletModal.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleCoach.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleCompletionDialog.vue.d.ts +0 -15
- package/dist/src/views/scheduling/components/ScheduleConfirmModal.vue.d.ts +0 -33
- package/dist/src/views/scheduling/components/ScheduleContextMenu.vue.d.ts +0 -17
- package/dist/src/views/scheduling/components/ScheduleCostRail.vue.d.ts +0 -8
- package/dist/src/views/scheduling/components/ScheduleCostRailEmptyArt.vue.d.ts +0 -2
- package/dist/src/views/scheduling/components/ScheduleDateRangePopover.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleDayNotePopover.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleDayTimeline.vue.d.ts +0 -17
- package/dist/src/views/scheduling/components/ScheduleDemandRow.vue.d.ts +0 -23
- package/dist/src/views/scheduling/components/ScheduleDemandSheet.vue.d.ts +0 -10
- package/dist/src/views/scheduling/components/ScheduleDotsIcon.vue.d.ts +0 -2
- package/dist/src/views/scheduling/components/ScheduleEmployeeDetailPanel.vue.d.ts +0 -12
- package/dist/src/views/scheduling/components/ScheduleEmployeeIdentity.vue.d.ts +0 -17
- package/dist/src/views/scheduling/components/ScheduleExportPreview.vue.d.ts +0 -7
- package/dist/src/views/scheduling/components/ScheduleFilterBar.vue.d.ts +0 -18
- package/dist/src/views/scheduling/components/ScheduleGapPopover.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleGridHeader.vue.d.ts +0 -18
- package/dist/src/views/scheduling/components/ScheduleGridSkeleton.vue.d.ts +0 -2
- package/dist/src/views/scheduling/components/ScheduleLeaveEditModal.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleLoadState.vue.d.ts +0 -9
- package/dist/src/views/scheduling/components/ScheduleModal.vue.d.ts +0 -26
- package/dist/src/views/scheduling/components/ScheduleOnboardingAssignPositionModal.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleOnboardingClosedDayConfirm.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleOnboardingDemandDays.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleOnboardingDemandFooter.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleOnboardingDemandHeader.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleOnboardingDoneArt.vue.d.ts +0 -2
- package/dist/src/views/scheduling/components/ScheduleOnboardingPositions.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleOnboardingReview.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleOnboardingSettings.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleOnboardingWelcome.vue.d.ts +0 -11
- package/dist/src/views/scheduling/components/ScheduleOnboardingWizard.vue.d.ts +0 -9
- package/dist/src/views/scheduling/components/ScheduleOnboardingWizardFooter.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleOnboardingWizardHeader.vue.d.ts +0 -11
- package/dist/src/views/scheduling/components/SchedulePublishModal.vue.d.ts +0 -8
- package/dist/src/views/scheduling/components/SchedulePublishShareArt.vue.d.ts +0 -2
- package/dist/src/views/scheduling/components/ScheduleReviewBar.vue.d.ts +0 -12
- package/dist/src/views/scheduling/components/ScheduleSelect.vue.d.ts +0 -70
- package/dist/src/views/scheduling/components/ScheduleSelectExistingEmployeeModal.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleSetupBanner.vue.d.ts +0 -12
- package/dist/src/views/scheduling/components/ScheduleShiftCell.vue.d.ts +0 -35
- package/dist/src/views/scheduling/components/ScheduleShiftHeadcountEditor.vue.d.ts +0 -10
- package/dist/src/views/scheduling/components/ScheduleShiftImpact.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleShiftMoreOptions.vue.d.ts +0 -8
- package/dist/src/views/scheduling/components/ScheduleShiftPopover.vue.d.ts +0 -16
- package/dist/src/views/scheduling/components/ScheduleShiftRepeatDaysRow.vue.d.ts +0 -8
- package/dist/src/views/scheduling/components/ScheduleShiftSegmentsEditor.vue.d.ts +0 -8
- package/dist/src/views/scheduling/components/ScheduleShiftWhoPicker.vue.d.ts +0 -25
- package/dist/src/views/scheduling/components/ScheduleStaffRail.vue.d.ts +0 -16
- package/dist/src/views/scheduling/components/ScheduleStaffRows.vue.d.ts +0 -50
- package/dist/src/views/scheduling/components/ScheduleStatsRow.vue.d.ts +0 -12
- package/dist/src/views/scheduling/components/ScheduleSwapShiftsModal.vue.d.ts +0 -8
- package/dist/src/views/scheduling/components/ScheduleTimePickerPopover.vue.d.ts +0 -6
- package/dist/src/views/scheduling/components/ScheduleTopbar.vue.d.ts +0 -20
- package/dist/src/views/scheduling/composables/auto-schedule-mapping.d.ts +0 -35
- package/dist/src/views/scheduling/composables/onboarding-constants.d.ts +0 -7
- package/dist/src/views/scheduling/composables/onboarding-hours.d.ts +0 -7
- package/dist/src/views/scheduling/composables/onboarding-types.d.ts +0 -51
- package/dist/src/views/scheduling/composables/remyPrompt.d.ts +0 -15
- package/dist/src/views/scheduling/composables/schedule-add-employee-form.d.ts +0 -82
- package/dist/src/views/scheduling/composables/schedule-board-helpers.d.ts +0 -63
- package/dist/src/views/scheduling/composables/schedule-breaks.d.ts +0 -9
- package/dist/src/views/scheduling/composables/schedule-calendar.d.ts +0 -17
- package/dist/src/views/scheduling/composables/schedule-cost.d.ts +0 -24
- package/dist/src/views/scheduling/composables/schedule-currency.d.ts +0 -22
- package/dist/src/views/scheduling/composables/schedule-day-meta.d.ts +0 -21
- package/dist/src/views/scheduling/composables/schedule-demand-domain.d.ts +0 -23
- package/dist/src/views/scheduling/composables/schedule-employee-profile.d.ts +0 -7
- package/dist/src/views/scheduling/composables/schedule-error.d.ts +0 -1
- package/dist/src/views/scheduling/composables/schedule-export-matrix.d.ts +0 -14
- package/dist/src/views/scheduling/composables/schedule-leave-split.d.ts +0 -9
- package/dist/src/views/scheduling/composables/schedule-popover-position.d.ts +0 -16
- package/dist/src/views/scheduling/composables/schedule-quick-pick.d.ts +0 -23
- package/dist/src/views/scheduling/composables/schedule-shift-time.d.ts +0 -29
- package/dist/src/views/scheduling/composables/schedule-time.d.ts +0 -8
- package/dist/src/views/scheduling/composables/schedule-week-cache.d.ts +0 -9
- package/dist/src/views/scheduling/composables/useCollapsedList.d.ts +0 -9
- package/dist/src/views/scheduling/composables/useRemyAppStore.d.ts +0 -16
- package/dist/src/views/scheduling/composables/useScheduleAddEmployee.d.ts +0 -137
- package/dist/src/views/scheduling/composables/useScheduleAddPick.d.ts +0 -75
- package/dist/src/views/scheduling/composables/useScheduleAreaBoard.d.ts +0 -50
- package/dist/src/views/scheduling/composables/useScheduleAreaDragDrop.d.ts +0 -11
- package/dist/src/views/scheduling/composables/useScheduleAssignmentMutations.d.ts +0 -13
- package/dist/src/views/scheduling/composables/useScheduleAutoSchedule.d.ts +0 -301
- package/dist/src/views/scheduling/composables/useScheduleBoard.d.ts +0 -615
- package/dist/src/views/scheduling/composables/useScheduleCellState.d.ts +0 -27
- package/dist/src/views/scheduling/composables/useScheduleClashDetection.d.ts +0 -28
- package/dist/src/views/scheduling/composables/useScheduleCloneOutletModal.d.ts +0 -21
- package/dist/src/views/scheduling/composables/useScheduleCoach.d.ts +0 -80
- package/dist/src/views/scheduling/composables/useScheduleCopyWeek.d.ts +0 -12
- package/dist/src/views/scheduling/composables/useScheduleCostRail.d.ts +0 -60
- package/dist/src/views/scheduling/composables/useScheduleDayNote.d.ts +0 -44
- package/dist/src/views/scheduling/composables/useScheduleDayTimeline.d.ts +0 -111
- package/dist/src/views/scheduling/composables/useScheduleDemand.d.ts +0 -59
- package/dist/src/views/scheduling/composables/useScheduleDemandRow.d.ts +0 -47
- package/dist/src/views/scheduling/composables/useScheduleDemandSheet.d.ts +0 -166
- package/dist/src/views/scheduling/composables/useScheduleDragDrop.d.ts +0 -55
- package/dist/src/views/scheduling/composables/useScheduleEmployeeAccess.d.ts +0 -24
- package/dist/src/views/scheduling/composables/useScheduleEmployeeAvailability.d.ts +0 -13
- package/dist/src/views/scheduling/composables/useScheduleEmployeeCandidates.d.ts +0 -49
- package/dist/src/views/scheduling/composables/useScheduleEmployeeCompensation.d.ts +0 -7
- package/dist/src/views/scheduling/composables/useScheduleEmployeeForm.d.ts +0 -22
- package/dist/src/views/scheduling/composables/useScheduleEmployeeIdentity.d.ts +0 -50
- package/dist/src/views/scheduling/composables/useScheduleEmployeeMenu.d.ts +0 -38
- package/dist/src/views/scheduling/composables/useScheduleEmployeePersistence.d.ts +0 -32
- package/dist/src/views/scheduling/composables/useScheduleEmployeeProfile.d.ts +0 -16
- package/dist/src/views/scheduling/composables/useScheduleEmployeeValidation.d.ts +0 -18
- package/dist/src/views/scheduling/composables/useScheduleExport.d.ts +0 -52
- package/dist/src/views/scheduling/composables/useScheduleFilterBar.d.ts +0 -14
- package/dist/src/views/scheduling/composables/useScheduleGapPopover.d.ts +0 -79
- package/dist/src/views/scheduling/composables/useScheduleLeave.d.ts +0 -60
- package/dist/src/views/scheduling/composables/useScheduleLegend.d.ts +0 -15
- package/dist/src/views/scheduling/composables/useScheduleOnboardingAvailability.d.ts +0 -58
- package/dist/src/views/scheduling/composables/useScheduleOnboardingDemand.d.ts +0 -45
- package/dist/src/views/scheduling/composables/useScheduleOnboardingEmployees.d.ts +0 -231
- package/dist/src/views/scheduling/composables/useScheduleOnboardingFlow.d.ts +0 -9
- package/dist/src/views/scheduling/composables/useScheduleOnboardingHours.d.ts +0 -15
- package/dist/src/views/scheduling/composables/useScheduleOnboardingNavigation.d.ts +0 -11
- package/dist/src/views/scheduling/composables/useScheduleOnboardingPersistence.d.ts +0 -13
- package/dist/src/views/scheduling/composables/useScheduleOnboardingWizard.d.ts +0 -1543
- package/dist/src/views/scheduling/composables/useScheduleOutlet.d.ts +0 -25
- package/dist/src/views/scheduling/composables/useSchedulePageActions.d.ts +0 -18
- package/dist/src/views/scheduling/composables/useSchedulePageBootstrap.d.ts +0 -9
- package/dist/src/views/scheduling/composables/useSchedulePageCellActions.d.ts +0 -21
- package/dist/src/views/scheduling/composables/useSchedulePageCellDrop.d.ts +0 -20
- package/dist/src/views/scheduling/composables/useSchedulePageClearActions.d.ts +0 -33
- package/dist/src/views/scheduling/composables/useSchedulePageEmployeeActions.d.ts +0 -22
- package/dist/src/views/scheduling/composables/useSchedulePageOverlays.d.ts +0 -21
- package/dist/src/views/scheduling/composables/useSchedulePdfExport.d.ts +0 -19
- package/dist/src/views/scheduling/composables/useSchedulePositionModal.d.ts +0 -55
- package/dist/src/views/scheduling/composables/useSchedulePositions.d.ts +0 -35
- package/dist/src/views/scheduling/composables/useSchedulePublish.d.ts +0 -127
- package/dist/src/views/scheduling/composables/useSchedulePublishPersistence.d.ts +0 -11
- package/dist/src/views/scheduling/composables/useScheduleRangeCalendar.d.ts +0 -27
- package/dist/src/views/scheduling/composables/useScheduleRoster.d.ts +0 -313
- package/dist/src/views/scheduling/composables/useScheduleSettings.d.ts +0 -40
- package/dist/src/views/scheduling/composables/useScheduleSetupBanner.d.ts +0 -17
- package/dist/src/views/scheduling/composables/useScheduleShiftActions.d.ts +0 -245
- package/dist/src/views/scheduling/composables/useScheduleShiftDraft.d.ts +0 -63
- package/dist/src/views/scheduling/composables/useScheduleShiftPersistence.d.ts +0 -17
- package/dist/src/views/scheduling/composables/useScheduleShiftPopover.d.ts +0 -255
- package/dist/src/views/scheduling/composables/useScheduleStatsRow.d.ts +0 -27
- package/dist/src/views/scheduling/composables/useScheduleTimePicker.d.ts +0 -49
- package/dist/src/views/scheduling/composables/useScheduleTour.d.ts +0 -95
- package/dist/src/views/scheduling/composables/useScheduleViewportFit.d.ts +0 -9
- package/dist/src/views/scheduling/country-rules/index.d.ts +0 -33
- package/dist/src/views/scheduling/data.d.ts +0 -123
- package/dist/src/views/scheduling/locales/index.d.ts +0 -6988
- package/dist/src/views/scheduling/schedule-constants.d.ts +0 -7
- package/dist/src/views/scheduling/schedule-state.d.ts +0 -767
- package/dist/src/views/scheduling/schedule-store.d.ts +0 -140
- package/dist/src/views/scheduling/types.d.ts +0 -381
- package/dist/string-VNuQNweN.js +0 -15
- package/dist/useDiscardConfirm-CzZSPyvh.js +0 -28
- /package/dist/src/{components/layout/SchedulePromoBanner.vue.d.ts → views/my-pos-profile/MyPosProfile.vue.d.ts} +0 -0
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { type ComputedRef } from 'vue';
|
|
2
|
-
import type { IFdtoPosUserSummary } from '@/types/employee';
|
|
3
|
-
import type { ScheduleAddEmployeeForm, ScheduleAddEmployeeStep } from './schedule-add-employee-form';
|
|
4
|
-
import type { ExistingStaffCandidate } from '../types';
|
|
5
|
-
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
6
|
-
interface UseScheduleEmployeeCandidatesOptions {
|
|
7
|
-
board: ScheduleBoardApi;
|
|
8
|
-
form: ScheduleAddEmployeeForm;
|
|
9
|
-
currentLocationLabel: ComputedRef<string>;
|
|
10
|
-
step: {
|
|
11
|
-
value: ScheduleAddEmployeeStep;
|
|
12
|
-
};
|
|
13
|
-
open: {
|
|
14
|
-
value: boolean;
|
|
15
|
-
};
|
|
16
|
-
onPicked: (employeeId: string, employee?: IFdtoPosUserSummary) => void;
|
|
17
|
-
onPrefillPasscode: (employeeId: string, employee?: IFdtoPosUserSummary) => void | Promise<void>;
|
|
18
|
-
onPrefillPosRoles: (employeeId: string, employee?: IFdtoPosUserSummary) => void | Promise<void>;
|
|
19
|
-
onPrefillPosRoleAccess: (roleIds: string[] | null | undefined) => void;
|
|
20
|
-
onPrefillPosRestaurantAccess: (restaurantIds: string[] | null | undefined) => void;
|
|
21
|
-
}
|
|
22
|
-
/** Directory lookup and profile prefill for the existing-employee path of the add wizard. */
|
|
23
|
-
export declare function useScheduleEmployeeCandidates(options: UseScheduleEmployeeCandidatesOptions): {
|
|
24
|
-
selectExistingOpen: import("vue").Ref<boolean, boolean>;
|
|
25
|
-
candidates: import("vue").Ref<{
|
|
26
|
-
employeeId: string;
|
|
27
|
-
name: string;
|
|
28
|
-
otherOutlets: string[];
|
|
29
|
-
locations: string[];
|
|
30
|
-
}[], ExistingStaffCandidate[] | {
|
|
31
|
-
employeeId: string;
|
|
32
|
-
name: string;
|
|
33
|
-
otherOutlets: string[];
|
|
34
|
-
locations: string[];
|
|
35
|
-
}[]>;
|
|
36
|
-
candidatesTotal: import("vue").Ref<number, number>;
|
|
37
|
-
candidatesPage: import("vue").Ref<number, number>;
|
|
38
|
-
candidatesPageItemCount: import("vue").Ref<number, number>;
|
|
39
|
-
candidatesPageSize: number;
|
|
40
|
-
candidatesLoading: import("vue").Ref<boolean, boolean>;
|
|
41
|
-
candidatesError: import("vue").Ref<string | null, string | null>;
|
|
42
|
-
selectingExisting: import("vue").Ref<boolean, boolean>;
|
|
43
|
-
openSelectExisting: (search?: string) => void;
|
|
44
|
-
searchExisting: (search: string) => void;
|
|
45
|
-
goToExistingPage: (page: number, search: string) => void;
|
|
46
|
-
closeSelectExisting: () => void;
|
|
47
|
-
pickExisting: (employeeId: string) => Promise<void>;
|
|
48
|
-
};
|
|
49
|
-
export {};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ScheduleAddEmployeeForm } from './schedule-add-employee-form';
|
|
2
|
-
export declare function useScheduleEmployeeCompensation(form: ScheduleAddEmployeeForm): {
|
|
3
|
-
setPayBasis: (basis: "hourly" | "monthly") => void;
|
|
4
|
-
payUnit: import("vue").ComputedRef<string>;
|
|
5
|
-
payAmountNumber: import("vue").ComputedRef<number>;
|
|
6
|
-
effectiveRate: import("vue").ComputedRef<number>;
|
|
7
|
-
};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { type Ref } from 'vue';
|
|
2
|
-
import type { ScheduleAddEmployeeForm } from './schedule-add-employee-form';
|
|
3
|
-
interface UseScheduleEmployeeFormOptions {
|
|
4
|
-
form: ScheduleAddEmployeeForm;
|
|
5
|
-
currentLocationLabel: {
|
|
6
|
-
value: string;
|
|
7
|
-
};
|
|
8
|
-
positions: readonly string[];
|
|
9
|
-
locOpen: Ref<boolean>;
|
|
10
|
-
secOpen: Ref<boolean>;
|
|
11
|
-
}
|
|
12
|
-
/** Field editing for locations and positions in the employee wizard. */
|
|
13
|
-
export declare function useScheduleEmployeeForm(options: UseScheduleEmployeeFormOptions): {
|
|
14
|
-
secondaryOptions: import("vue").ComputedRef<string[]>;
|
|
15
|
-
toggleMulti: (which: "loc" | "sec") => void;
|
|
16
|
-
toggleLocation: (location: string) => void;
|
|
17
|
-
removeLocation: (location: string) => void;
|
|
18
|
-
toggleSecondary: (position: string) => void;
|
|
19
|
-
removeSecondary: (position: string) => void;
|
|
20
|
-
setPrimaryPosition: (position: string) => void;
|
|
21
|
-
};
|
|
22
|
-
export {};
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import type { Employee, Proposal } from '../types';
|
|
2
|
-
/** The one form every SMALL avatar wears — `.sc-av`, `.ch-av`, `.ap-av`, `.tl-av`, and the
|
|
3
|
-
* shift editor's `.sp2-who-av`. A tint of the person's colour behind their own colour, never a
|
|
4
|
-
* solid fill with white text: at 17–30px the initials are the only identifier, and knocking
|
|
5
|
-
* them out to white on a saturated disc costs the contrast that makes them legible.
|
|
6
|
-
*
|
|
7
|
-
* None of those classes declare a background of their own, so they REQUIRE this — a bare
|
|
8
|
-
* `<span class="sc-av">` renders as an invisible disc.
|
|
9
|
-
*
|
|
10
|
-
* The big identity avatars are the opposite case and take no inline style at all: `.emp-avatar`,
|
|
11
|
-
* `.dp-emp-av` and `.pub-change-av` are neutral in CSS, because a name sits right beside them
|
|
12
|
-
* and a filled disc would out-shout it. */
|
|
13
|
-
export declare function avatarTint(color?: string | null): Record<string, string>;
|
|
14
|
-
export interface ScheduleEmployeeLoad {
|
|
15
|
-
emp: Employee;
|
|
16
|
-
hours: number;
|
|
17
|
-
cost: number;
|
|
18
|
-
contract: number;
|
|
19
|
-
partTime: boolean;
|
|
20
|
-
/** Hours as a fraction of contract, capped at 1 — the load bar's width. */
|
|
21
|
-
pct: number;
|
|
22
|
-
barColor: string;
|
|
23
|
-
otHours: number;
|
|
24
|
-
/** Of `hours`, how many are auto-schedule suggestions not yet on the board. */
|
|
25
|
-
proposedHours: number;
|
|
26
|
-
/** The board's own hours as a fraction of contract: where the fill ends and the suggested part starts. */
|
|
27
|
-
boardPct: number;
|
|
28
|
-
/** The suggested part's width on the bar, as a fraction of contract. With no contract to measure
|
|
29
|
-
* against it fills the track, so suggested hours still show. */
|
|
30
|
-
proposedPct: number;
|
|
31
|
-
/** Of `boardPct`, how much is still DRAFT (unpublished) rather than confirmed — drawn as a
|
|
32
|
-
* hatch over the tail of the bar rather than a different colour, same as the grid's own
|
|
33
|
-
* closed-day treatment: the colour still says over/under contract, the hatch just adds
|
|
34
|
-
* "and part of this hasn't gone out to the employee yet" on top of it. */
|
|
35
|
-
draftPct: number;
|
|
36
|
-
/** Of `hours`, how many are on the board but still DRAFT (unpublished) — kept as its own
|
|
37
|
-
* number rather than folded into `hours` so the label can say "published + draft" instead
|
|
38
|
-
* of one merged total that can't tell the employee has actually seen only part of it. */
|
|
39
|
-
draftHours: number;
|
|
40
|
-
}
|
|
41
|
-
/** This person's live (not rejected) suggestions in the week on screen. */
|
|
42
|
-
export declare function proposedSlotsOf(emp: Employee, proposalAt?: (empId: number, dayIdx: number) => Proposal | undefined): Pick<Proposal, 'start' | 'end'>[];
|
|
43
|
-
/** One person's load against their contract, derived from the shifts actually on the board
|
|
44
|
-
* rather than from the stored `weekHours` field, so the bar can never disagree with the row
|
|
45
|
-
* of cards beside it.
|
|
46
|
-
*
|
|
47
|
-
* The staff rail (area view) and the grid's name column (employee view) are the same list of
|
|
48
|
-
* the same people; they used to be two pieces of markup reading two different numbers. This
|
|
49
|
-
* is the single one — the mockup's own note on empIdentityHTML(). */
|
|
50
|
-
export declare function employeeLoadOf(emp: Employee, proposed?: Pick<Proposal, 'start' | 'end'>[]): ScheduleEmployeeLoad;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
2
|
-
import type { ScheduleAnchorRect } from './schedule-popover-position';
|
|
3
|
-
export type ScheduleEmployeeMenuAction = 'profile' | 'edit' | 'freeall' | 'remove';
|
|
4
|
-
export interface ScheduleEmployeeMenuState {
|
|
5
|
-
open: boolean;
|
|
6
|
-
empId: number | null;
|
|
7
|
-
anchor: ScheduleAnchorRect | null;
|
|
8
|
-
left: number;
|
|
9
|
-
top: number;
|
|
10
|
-
}
|
|
11
|
-
/** The ⋯ menu on a team member's row — V6.2's #empMenu: profile, update, clear shifts, remove.
|
|
12
|
-
* The actions that need a page-level surface (profile panel, edit wizard, confirm dialog) come in
|
|
13
|
-
* as handlers. */
|
|
14
|
-
export declare function useScheduleEmployeeMenu(board: ScheduleBoardApi, handlers: {
|
|
15
|
-
onProfile: (empId: number) => void;
|
|
16
|
-
onEdit: (empId: number) => void;
|
|
17
|
-
onClearAllShifts: (empId: number) => void;
|
|
18
|
-
onRemove: (empId: number) => void;
|
|
19
|
-
}): {
|
|
20
|
-
state: {
|
|
21
|
-
open: boolean;
|
|
22
|
-
empId: number | null;
|
|
23
|
-
anchor: {
|
|
24
|
-
left: number;
|
|
25
|
-
right: number;
|
|
26
|
-
top: number;
|
|
27
|
-
bottom: number;
|
|
28
|
-
} | null;
|
|
29
|
-
left: number;
|
|
30
|
-
top: number;
|
|
31
|
-
};
|
|
32
|
-
employee: import("vue").ComputedRef<import("../types").Employee | undefined>;
|
|
33
|
-
hasShifts: import("vue").ComputedRef<boolean>;
|
|
34
|
-
openFor: (empId: number, anchor: HTMLElement) => void;
|
|
35
|
-
close: () => void;
|
|
36
|
-
go: (action: ScheduleEmployeeMenuAction) => void;
|
|
37
|
-
};
|
|
38
|
-
export type ScheduleEmployeeMenuApi = ReturnType<typeof useScheduleEmployeeMenu>;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import type { ComputedRef, Ref } from 'vue';
|
|
2
|
-
import type { IFdtoPosUserSummary } from '@/types/employee';
|
|
3
|
-
import { type ScheduleAddEmployeeForm } from './schedule-add-employee-form';
|
|
4
|
-
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
5
|
-
interface UseScheduleEmployeePersistenceOptions {
|
|
6
|
-
form: ScheduleAddEmployeeForm;
|
|
7
|
-
pickedEmployeeId: Ref<string | null>;
|
|
8
|
-
selectedBusinessEmployee: Ref<IFdtoPosUserSummary | null>;
|
|
9
|
-
payAmountNumber: ComputedRef<number>;
|
|
10
|
-
saving: Ref<boolean>;
|
|
11
|
-
saveError: Ref<string | null>;
|
|
12
|
-
close: () => void;
|
|
13
|
-
restaurantIdOfLabel: (label: string) => string | undefined;
|
|
14
|
-
board: ScheduleBoardApi;
|
|
15
|
-
editingEmployeeId: Ref<number | null>;
|
|
16
|
-
originalLocations: Ref<string[]>;
|
|
17
|
-
originalPosRoles: Ref<{
|
|
18
|
-
outlet: string;
|
|
19
|
-
roleId: string;
|
|
20
|
-
}[]>;
|
|
21
|
-
effectiveRate: ComputedRef<number>;
|
|
22
|
-
passcodeValue: ComputedRef<string>;
|
|
23
|
-
deferScheduleWrites: Ref<boolean>;
|
|
24
|
-
notify?: (message: string, type?: 'success' | 'error' | 'info') => void;
|
|
25
|
-
}
|
|
26
|
-
/** Persistence for an existing business employee being added to this schedule. */
|
|
27
|
-
export declare function useScheduleEmployeePersistence(options: UseScheduleEmployeePersistenceOptions): {
|
|
28
|
-
createExisting: (name: string) => Promise<boolean>;
|
|
29
|
-
createNew: (name: string) => Promise<boolean>;
|
|
30
|
-
updateExisting: (name: string) => Promise<boolean>;
|
|
31
|
-
};
|
|
32
|
-
export {};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
2
|
-
export interface ScheduleEmployeeProfileState {
|
|
3
|
-
open: boolean;
|
|
4
|
-
empId: number | null;
|
|
5
|
-
}
|
|
6
|
-
/** Employee profile side sheet — opened from the staff-rail row menu or by clicking
|
|
7
|
-
* an employee's identity block. */
|
|
8
|
-
export declare function useScheduleEmployeeProfile(board: ScheduleBoardApi): {
|
|
9
|
-
state: {
|
|
10
|
-
open: boolean;
|
|
11
|
-
empId: number | null;
|
|
12
|
-
};
|
|
13
|
-
employee: import("vue").ComputedRef<import("../types").Employee | null>;
|
|
14
|
-
openFor: (empId: number) => void;
|
|
15
|
-
close: () => void;
|
|
16
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { type ComputedRef, type Ref } from 'vue';
|
|
2
|
-
import { type ScheduleAddEmployeeForm } from './schedule-add-employee-form';
|
|
3
|
-
interface UseScheduleEmployeeValidationOptions {
|
|
4
|
-
form: ScheduleAddEmployeeForm;
|
|
5
|
-
submitAttempted: Ref<boolean>;
|
|
6
|
-
passcodeOk: ComputedRef<boolean>;
|
|
7
|
-
}
|
|
8
|
-
/** Validation guards for the add/edit employee form. Keeping them together makes create and
|
|
9
|
-
* the field-level error indicators consume the same rules. */
|
|
10
|
-
export declare function useScheduleEmployeeValidation(options: UseScheduleEmployeeValidationOptions): {
|
|
11
|
-
nameError: ComputedRef<boolean>;
|
|
12
|
-
passError: ComputedRef<boolean>;
|
|
13
|
-
posRolesOk: ComputedRef<boolean>;
|
|
14
|
-
posRolesError: ComputedRef<boolean>;
|
|
15
|
-
availabilityOk: ComputedRef<boolean>;
|
|
16
|
-
availabilityError: ComputedRef<boolean>;
|
|
17
|
-
};
|
|
18
|
-
export {};
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
2
|
-
import type { ExportShiftCell } from './schedule-export-matrix';
|
|
3
|
-
export interface ExportMatrix {
|
|
4
|
-
head: string[];
|
|
5
|
-
body: (string | ExportShiftCell)[][];
|
|
6
|
-
foot: string[];
|
|
7
|
-
/** Worked shifts across the whole matrix, split-shift pairs counted once — whether there is
|
|
8
|
-
* anything to print. Not read off the footer's own last column: that column is OT hours now,
|
|
9
|
-
* and a fully-staffed week with nobody over contract totals 0.0 there. */
|
|
10
|
-
shiftTotal: number;
|
|
11
|
-
}
|
|
12
|
-
export { cellText, dayCellLines, dayHeaderLabel, esc } from './schedule-export-matrix';
|
|
13
|
-
export type { ExportShiftCell } from './schedule-export-matrix';
|
|
14
|
-
/** The mockup's Share/export feature (buildExportMatrix/exportPDF/exportJPG) — no external
|
|
15
|
-
* PDF/canvas library here; both PDF and JPG are the same hand-drawn Canvas 2D table
|
|
16
|
-
* (`buildJpgCanvas`). PDF used to be a separate HTML/`<table>` rendering handed to
|
|
17
|
-
* window.print(), but printing the live page and CSS-hiding everything around the sheet proved
|
|
18
|
-
* unreliable (see printNow's own comment) — "Save as PDF" now wraps that same canvas image into a
|
|
19
|
-
* standalone print window instead, so PDF and JPG are guaranteed to look identical. */
|
|
20
|
-
export declare function useScheduleExport(board: ScheduleBoardApi): {
|
|
21
|
-
buildExportMatrix: () => ExportMatrix;
|
|
22
|
-
pdfPreviewOpen: import("vue").Ref<boolean, boolean>;
|
|
23
|
-
pdfBarMeta: import("vue").ComputedRef<string>;
|
|
24
|
-
openPdfPreview: () => void;
|
|
25
|
-
closePdfPreview: () => void;
|
|
26
|
-
printNow: () => void;
|
|
27
|
-
jpgPreviewOpen: import("vue").Ref<boolean, boolean>;
|
|
28
|
-
jpgPreviewUrl: import("vue").Ref<string | null, string | null>;
|
|
29
|
-
jpgPreviewError: import("vue").Ref<string | null, string | null>;
|
|
30
|
-
jpgPreviewWidth: import("vue").Ref<number, number>;
|
|
31
|
-
jpgPreviewHeight: import("vue").Ref<number, number>;
|
|
32
|
-
jpgFilename: import("vue").Ref<string, string>;
|
|
33
|
-
jpgBarMeta: import("vue").ComputedRef<string>;
|
|
34
|
-
openJpgPreview: () => void;
|
|
35
|
-
closeJpgPreview: () => void;
|
|
36
|
-
saveJpgPreview: () => void;
|
|
37
|
-
exportDoneOpen: import("vue").Ref<boolean, boolean>;
|
|
38
|
-
exportDoneTitle: import("vue").Ref<string, string>;
|
|
39
|
-
exportDoneDescription: import("vue").Ref<string, string>;
|
|
40
|
-
exportDoneRecap: import("vue").Ref<{
|
|
41
|
-
label: string;
|
|
42
|
-
value: string;
|
|
43
|
-
}[], {
|
|
44
|
-
label: string;
|
|
45
|
-
value: string;
|
|
46
|
-
}[] | {
|
|
47
|
-
label: string;
|
|
48
|
-
value: string;
|
|
49
|
-
}[]>;
|
|
50
|
-
closeExportDone: () => void;
|
|
51
|
-
};
|
|
52
|
-
export type ScheduleExportApi = ReturnType<typeof useScheduleExport>;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
2
|
-
export type ScheduleViewMode = 'area' | 'employee';
|
|
3
|
-
export type ScheduleGranularity = 'day' | 'week';
|
|
4
|
-
/** State for the filter-bar's mode/granularity selects. Granularity delegates straight to
|
|
5
|
-
* the board, which owns the day/week grid state — both area and employee grouping combine
|
|
6
|
-
* with either granularity. Outlet switching isn't modeled at all yet, so that control has
|
|
7
|
-
* no state here; it's a static label in the component. */
|
|
8
|
-
export declare function useScheduleFilterBar(board: ScheduleBoardApi): {
|
|
9
|
-
mode: import("vue").Ref<ScheduleViewMode, ScheduleViewMode>;
|
|
10
|
-
granularity: import("vue").Ref<import("./useScheduleBoard").ScheduleGranularity, import("./useScheduleBoard").ScheduleGranularity>;
|
|
11
|
-
setMode: (value: ScheduleViewMode) => boolean;
|
|
12
|
-
setGranularity: (value: ScheduleGranularity) => boolean;
|
|
13
|
-
};
|
|
14
|
-
export type ScheduleFilterBarApi = ReturnType<typeof useScheduleFilterBar>;
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import type { CoverageSegment } from '../types';
|
|
2
|
-
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
3
|
-
import type { ScheduleDemandApi } from './useScheduleDemand';
|
|
4
|
-
/** The gap popover: what a striped stretch of the coverage bar means. Read-only — it states the
|
|
5
|
-
* shortfall and which positions are missing; nothing here writes. */
|
|
6
|
-
export declare function useScheduleGapPopover(board: ScheduleBoardApi, demand: ScheduleDemandApi): {
|
|
7
|
-
state: {
|
|
8
|
-
open: boolean;
|
|
9
|
-
pinned: boolean;
|
|
10
|
-
peek: boolean;
|
|
11
|
-
wide: boolean;
|
|
12
|
-
left: number;
|
|
13
|
-
top: number;
|
|
14
|
-
};
|
|
15
|
-
ctx: import("vue").Ref<{
|
|
16
|
-
from: number;
|
|
17
|
-
to: number;
|
|
18
|
-
required: number;
|
|
19
|
-
scheduled: number;
|
|
20
|
-
short: number;
|
|
21
|
-
over: number;
|
|
22
|
-
roles: {
|
|
23
|
-
position: string;
|
|
24
|
-
positionId?: string | undefined;
|
|
25
|
-
n: number;
|
|
26
|
-
required: number;
|
|
27
|
-
got: number;
|
|
28
|
-
short: number;
|
|
29
|
-
}[];
|
|
30
|
-
anyReq: number;
|
|
31
|
-
anyGot: number;
|
|
32
|
-
none: boolean;
|
|
33
|
-
dayIdx: number;
|
|
34
|
-
} | null, (CoverageSegment & {
|
|
35
|
-
dayIdx: number;
|
|
36
|
-
}) | {
|
|
37
|
-
from: number;
|
|
38
|
-
to: number;
|
|
39
|
-
required: number;
|
|
40
|
-
scheduled: number;
|
|
41
|
-
short: number;
|
|
42
|
-
over: number;
|
|
43
|
-
roles: {
|
|
44
|
-
position: string;
|
|
45
|
-
positionId?: string | undefined;
|
|
46
|
-
n: number;
|
|
47
|
-
required: number;
|
|
48
|
-
got: number;
|
|
49
|
-
short: number;
|
|
50
|
-
}[];
|
|
51
|
-
anyReq: number;
|
|
52
|
-
anyGot: number;
|
|
53
|
-
none: boolean;
|
|
54
|
-
dayIdx: number;
|
|
55
|
-
} | null>;
|
|
56
|
-
view: import("vue").ComputedRef<{
|
|
57
|
-
crew: number;
|
|
58
|
-
peak: number;
|
|
59
|
-
when: string;
|
|
60
|
-
day: string;
|
|
61
|
-
none: boolean;
|
|
62
|
-
required: number;
|
|
63
|
-
scheduled: number;
|
|
64
|
-
short: number;
|
|
65
|
-
over: number;
|
|
66
|
-
missing: {
|
|
67
|
-
short: number;
|
|
68
|
-
position: string;
|
|
69
|
-
}[];
|
|
70
|
-
missingNote: string;
|
|
71
|
-
} | null>;
|
|
72
|
-
segEnter: (dayIdx: number, from: number, to: number, anchor: HTMLElement) => void;
|
|
73
|
-
segLeave: () => void;
|
|
74
|
-
hold: () => void;
|
|
75
|
-
segClick: (dayIdx: number, from: number, to: number, anchor: HTMLElement) => void;
|
|
76
|
-
segFocus: (dayIdx: number, from: number, to: number, anchor: HTMLElement) => void;
|
|
77
|
-
close: () => void;
|
|
78
|
-
};
|
|
79
|
-
export type ScheduleGapPopoverApi = ReturnType<typeof useScheduleGapPopover>;
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import type { LeaveSlot } from '../types';
|
|
2
|
-
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
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. */
|
|
6
|
-
export declare const TIME_OFF_OPTIONS: Array<{
|
|
7
|
-
value: TimeOffSelection;
|
|
8
|
-
label: string;
|
|
9
|
-
labelKey: string;
|
|
10
|
-
}>;
|
|
11
|
-
export { timeOffLabelKey } from './schedule-leave-split';
|
|
12
|
-
export type ScheduleLeaveMode = 'all' | 'am' | 'pm';
|
|
13
|
-
export interface ScheduleLeaveState {
|
|
14
|
-
open: boolean;
|
|
15
|
-
empId: number | null;
|
|
16
|
-
dayIdx: number | null;
|
|
17
|
-
/** Booking a new record, rather than editing one that is already on the day. */
|
|
18
|
-
isNew: boolean;
|
|
19
|
-
selection: TimeOffSelection;
|
|
20
|
-
mode: ScheduleLeaveMode;
|
|
21
|
-
}
|
|
22
|
-
interface ScheduleLeaveOptions {
|
|
23
|
-
notify?: (message: string, type?: 'success' | 'error' | 'info') => void;
|
|
24
|
-
}
|
|
25
|
-
/** The leave editor — V6.2's "Book leave" dialog: a reason, how much of the day it covers, and
|
|
26
|
-
* what that does to the person's availability. Opened from the add popup's Off day / Leave rows
|
|
27
|
-
* (booking) and from an existing leave card (editing, or approving a pending request). */
|
|
28
|
-
export declare function useScheduleLeave(board: ScheduleBoardApi, leaveOptions?: ScheduleLeaveOptions): {
|
|
29
|
-
state: {
|
|
30
|
-
open: boolean;
|
|
31
|
-
empId: number | null;
|
|
32
|
-
dayIdx: number | null;
|
|
33
|
-
isNew: boolean;
|
|
34
|
-
selection: TimeOffSelection;
|
|
35
|
-
mode: ScheduleLeaveMode;
|
|
36
|
-
};
|
|
37
|
-
employee: import("vue").ComputedRef<import("../types").Employee | undefined>;
|
|
38
|
-
activeSlot: import("vue").ComputedRef<LeaveSlot | null>;
|
|
39
|
-
options: import("vue").ComputedRef<{
|
|
40
|
-
mode: "all" | "am" | "pm";
|
|
41
|
-
name: string;
|
|
42
|
-
}[]>;
|
|
43
|
-
span: import("vue").ComputedRef<{
|
|
44
|
-
from: string;
|
|
45
|
-
to: string;
|
|
46
|
-
hours: number;
|
|
47
|
-
}>;
|
|
48
|
-
valid: import("vue").ComputedRef<boolean>;
|
|
49
|
-
selectionLabel: import("vue").ComputedRef<string>;
|
|
50
|
-
dayLabel: import("vue").ComputedRef<string>;
|
|
51
|
-
hoursText: import("vue").ComputedRef<string>;
|
|
52
|
-
coverText: import("vue").ComputedRef<string>;
|
|
53
|
-
openFor: (empId: number, dayIdx: number, reason?: string | null) => void;
|
|
54
|
-
close: () => void;
|
|
55
|
-
save: () => Promise<void>;
|
|
56
|
-
approve: () => Promise<void>;
|
|
57
|
-
reject: () => void;
|
|
58
|
-
remove: () => Promise<void>;
|
|
59
|
-
};
|
|
60
|
-
export type ScheduleLeaveApi = ReturnType<typeof useScheduleLeave>;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
2
|
-
export interface ScheduleCoverageBadge {
|
|
3
|
-
position: string;
|
|
4
|
-
required: number;
|
|
5
|
-
scheduled: number;
|
|
6
|
-
short: boolean;
|
|
7
|
-
}
|
|
8
|
-
/** Coverage badges for a day's header card — required vs. scheduled headcount per
|
|
9
|
-
* position, from the single active shift template's coverage matrix. */
|
|
10
|
-
export declare function useScheduleLegend(board: ScheduleBoardApi): {
|
|
11
|
-
coveragePositions: import("vue").ComputedRef<string[]>;
|
|
12
|
-
coverageForDay: (dayIdx: number) => ScheduleCoverageBadge[];
|
|
13
|
-
dayIsShort: (dayIdx: number) => boolean;
|
|
14
|
-
dayCardTitle: (dayIdx: number) => string;
|
|
15
|
-
};
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { type ComputedRef } from 'vue';
|
|
2
|
-
import type { Employee } from '../types';
|
|
3
|
-
import type { AvailRow, ScheduleOnboardingDayHours, TeamRow } from './onboarding-types';
|
|
4
|
-
import type { ScheduleBoardApi } from './useScheduleBoard';
|
|
5
|
-
type EmployeeRow = {
|
|
6
|
-
emp: Employee;
|
|
7
|
-
row: TeamRow;
|
|
8
|
-
};
|
|
9
|
-
type BulkMark = '' | 'y' | 'n';
|
|
10
|
-
export interface ScheduleOnboardingAvailabilityOptions {
|
|
11
|
-
board: ScheduleBoardApi;
|
|
12
|
-
hours: ScheduleOnboardingDayHours[];
|
|
13
|
-
openDays: ComputedRef<number[]>;
|
|
14
|
-
employeeRows: ComputedRef<EmployeeRow[]>;
|
|
15
|
-
isShut: (dayIdx: number) => boolean;
|
|
16
|
-
pendingAvail: Map<number, Array<{
|
|
17
|
-
dayOfWeek: number;
|
|
18
|
-
start: string;
|
|
19
|
-
end: string;
|
|
20
|
-
}>>;
|
|
21
|
-
}
|
|
22
|
-
export declare function useScheduleOnboardingAvailability(options: ScheduleOnboardingAvailabilityOptions): {
|
|
23
|
-
avail: Record<number, AvailRow>;
|
|
24
|
-
avTab: import("vue").Ref<"full" | "part", "full" | "part">;
|
|
25
|
-
avPicked: Record<number, boolean>;
|
|
26
|
-
avVary: Record<number, boolean>;
|
|
27
|
-
avBulkOpen: import("vue").Ref<boolean, boolean>;
|
|
28
|
-
avBulk: {
|
|
29
|
-
off: BulkMark[];
|
|
30
|
-
on: BulkMark[];
|
|
31
|
-
from: string;
|
|
32
|
-
to: string;
|
|
33
|
-
};
|
|
34
|
-
seedAvailability: (missingOnly?: boolean) => void;
|
|
35
|
-
avFulls: ComputedRef<EmployeeRow[]>;
|
|
36
|
-
avParts: ComputedRef<EmployeeRow[]>;
|
|
37
|
-
avGroup: ComputedRef<EmployeeRow[]>;
|
|
38
|
-
avSelected: ComputedRef<EmployeeRow[]>;
|
|
39
|
-
restDays: (empId: number) => number[];
|
|
40
|
-
avFullDone: ComputedRef<number>;
|
|
41
|
-
avPartDone: ComputedRef<number>;
|
|
42
|
-
avOffCount: (dayIdx: number) => number | null;
|
|
43
|
-
avFullSub: (empId: number) => string;
|
|
44
|
-
avPartSummary: (empId: number) => string;
|
|
45
|
-
avShowsByDay: (empId: number) => boolean;
|
|
46
|
-
canDays: (empId: number) => number[];
|
|
47
|
-
avPickAll: (checked: boolean) => void;
|
|
48
|
-
toggleOff: (empId: number, dayIdx: number) => void;
|
|
49
|
-
toggleCan: (empId: number, dayIdx: number) => void;
|
|
50
|
-
setAvailTime: (empId: number, dayIdx: number | null, field: "from" | "to", value: string) => void;
|
|
51
|
-
toggleVary: (empId: number) => void;
|
|
52
|
-
bulkDay: (which: "off" | "on", dayIdx: number) => void;
|
|
53
|
-
avBulkReady: ComputedRef<boolean>;
|
|
54
|
-
applyAvBulk: () => void;
|
|
55
|
-
saveAvailability: () => void;
|
|
56
|
-
};
|
|
57
|
-
export type ScheduleOnboardingAvailabilityApi = ReturnType<typeof useScheduleOnboardingAvailability>;
|
|
58
|
-
export {};
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { type Ref } from 'vue';
|
|
2
|
-
import type { ScheduleOnboardingDayHours, ScheduleOnboardingRange } from './onboarding-types';
|
|
3
|
-
import type { SchedulePositionsApi } from './useSchedulePositions';
|
|
4
|
-
export declare function useScheduleOnboardingDemand(hours: ScheduleOnboardingDayHours[], positions: SchedulePositionsApi, note: Ref<string>, isPastDay?: (dayIdx: number) => boolean): {
|
|
5
|
-
demand: import("vue").Reactive<ScheduleOnboardingRange[][]>;
|
|
6
|
-
dmDay: Ref<number, number>;
|
|
7
|
-
staffingSaving: Ref<boolean, boolean>;
|
|
8
|
-
note: Ref<string, string>;
|
|
9
|
-
isShut: (dayIdx: number) => boolean;
|
|
10
|
-
dayClosedConfirm: {
|
|
11
|
-
state: {
|
|
12
|
-
open: boolean;
|
|
13
|
-
message: string;
|
|
14
|
-
title: string | null;
|
|
15
|
-
confirmLabel: string | null;
|
|
16
|
-
onConfirm: (() => void) | null;
|
|
17
|
-
};
|
|
18
|
-
ask: (message: string, onConfirm: () => void, opts?: {
|
|
19
|
-
title?: string;
|
|
20
|
-
confirmLabel?: string;
|
|
21
|
-
}) => void;
|
|
22
|
-
confirm: () => void;
|
|
23
|
-
close: () => void;
|
|
24
|
-
};
|
|
25
|
-
shutAcknowledged: Record<number, boolean>;
|
|
26
|
-
dmPeak: (dayIdx: number) => number;
|
|
27
|
-
namedPositions: import("vue").ComputedRef<string[]>;
|
|
28
|
-
remainingCommon: import("vue").ComputedRef<string[]>;
|
|
29
|
-
suggestedPositions: import("vue").ComputedRef<string[]>;
|
|
30
|
-
openDays: import("vue").ComputedRef<number[]>;
|
|
31
|
-
daysSet: import("vue").ComputedRef<number>;
|
|
32
|
-
daySpan: (dayIdx: number) => string;
|
|
33
|
-
seedDemand: () => void;
|
|
34
|
-
selectDay: (dayIdx: number) => void;
|
|
35
|
-
setRangeTime: (index: number, field: "from" | "to", value: string) => void;
|
|
36
|
-
setRangeCount: (index: number, value: string) => void;
|
|
37
|
-
addRange: () => void;
|
|
38
|
-
removeRange: (index: number) => void;
|
|
39
|
-
addRole: (index: number) => void;
|
|
40
|
-
setRole: (index: number, roleIndex: number, field: "position" | "n", value: string) => void;
|
|
41
|
-
removeRole: (index: number, roleIndex: number) => void;
|
|
42
|
-
namedTotal: (range: ScheduleOnboardingRange) => number;
|
|
43
|
-
copyDay: (mode: "all" | "wk" | "we") => void;
|
|
44
|
-
};
|
|
45
|
-
export type ScheduleOnboardingDemandApi = ReturnType<typeof useScheduleOnboardingDemand>;
|