@feedmepos/mf-hrm-portal 2.2.5 → 2.3.0-dev.2

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.
Files changed (230) hide show
  1. package/dist/{ApprovalCodeList-Df5_U7Fj.js → ApprovalCodeList-CJaNPHZC.js} +7 -7
  2. package/dist/{AuditLogList-BT-YM-CP.js → AuditLogList-CHA98ZqW.js} +19 -18
  3. package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-Df3IHAyZ.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-C7rvthEI.js} +2 -2
  4. package/dist/{EmployeeList-BfhG5ktC.js → EmployeeList-CVmMKt71.js} +31 -30
  5. package/dist/{FormItem.vue_vue_type_script_setup_true_lang-DPT2FoIc.js → FormItem.vue_vue_type_script_setup_true_lang-CUnlKsxk.js} +1 -1
  6. package/dist/{GrantUserList-B_WhIR9L.js → GrantUserList-MYjgt5-F.js} +8 -8
  7. package/dist/{Main-Cxwiaabw.js → Main-BgB9lD4K.js} +11 -11
  8. package/dist/{Main-DKOPDO1K.js → Main-C0cnqQ3B.js} +8 -8
  9. package/dist/{Main-CGrtJkUl.js → Main-hlcHtrsc.js} +5 -5
  10. package/dist/{PermissionSetList-CqiLsqaj.js → PermissionSetList-5f1WIaVa.js} +7 -7
  11. package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-CmNTqB0v.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-CFoTAGIX.js} +1340 -1340
  12. package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-Z-DH7ouY.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-fe-Rdwn4.js} +1 -1
  13. package/dist/{RoleList-iudKGaCg.js → RoleList-DNR4miXr.js} +9 -9
  14. package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-B4VUyKW3.js +470 -0
  15. package/dist/ScheduleGeneralPage-Cd5AlY4z.js +666 -0
  16. package/dist/ScheduleModal.vue_vue_type_script_setup_true_lang-Cf0l2MRg.js +2188 -0
  17. package/dist/SchedulePage-C8m0-m3l.js +18257 -0
  18. package/dist/SchedulePositionPage-DyRckyUx.js +264 -0
  19. package/dist/SelectFilter-CG13h83-.js +264 -0
  20. package/dist/{TeamMemberList-D_8d24Vw.js → TeamMemberList-mw5OveZG.js} +38 -37
  21. package/dist/{TimesheetList-VvIiAVLt.js → TimesheetList-BzXarZbM.js} +54 -53
  22. package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-Bmiz85Y3.js → TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-Dq5i4poN.js} +3 -3
  23. package/dist/_plugin-vue_export-helper-CHgC5LLL.js +9 -0
  24. package/dist/{app-CVqQjVFY.js → app-DSsdRLHg.js} +3252 -2475
  25. package/dist/app.js +1 -1
  26. package/dist/{approval-code-BRClD2HN.js → approval-code-C9DmR4Md.js} +1 -1
  27. package/dist/{dayjs.min-Bhe9FtFt.js → dayjs.min-B6xBXQtU.js} +1 -1
  28. package/dist/{employee-thZndJWE.js → employee-hMhzuqk1.js} +29 -28
  29. package/dist/{grant-user-Dhi3ilC_.js → grant-user-Bv-pJ9Wt.js} +1 -1
  30. package/dist/{iteration-Cd5fl3-x.js → iteration-B34AvpNC.js} +1 -1
  31. package/dist/{lodash-DiJ9xZIF.js → lodash-1Vyuy7Mu.js} +1 -1
  32. package/dist/{restaurant-DiYb0pCm.js → restaurant-D7PEQjPY.js} +258 -252
  33. package/dist/{role-DdizOTVB.js → role-DKOrgO6f.js} +2 -2
  34. package/dist/{rule-CYFm43rI.js → rule-CBzQ3GeV.js} +36 -36
  35. package/dist/src/api/restaurant/index.d.ts +2 -0
  36. package/dist/src/api/schedule/index.d.ts +55 -0
  37. package/dist/src/components/layout/PortalShell.vue.d.ts +12 -0
  38. package/dist/src/components/layout/withScheduleShell.d.ts +10 -0
  39. package/dist/src/composables/useMessage.d.ts +8 -2
  40. package/dist/src/router/shared.d.ts +4 -1
  41. package/dist/src/types/employee.d.ts +1 -0
  42. package/dist/src/types/schedule.d.ts +24 -0
  43. package/dist/src/views/scheduling/ScheduleGeneralPage.vue.d.ts +3 -0
  44. package/dist/src/views/scheduling/SchedulePage.vue.d.ts +3 -0
  45. package/dist/src/views/scheduling/SchedulePositionPage.vue.d.ts +3 -0
  46. package/dist/src/views/scheduling/components/ScheduleAddEmployeeIdentitySection.vue.d.ts +6 -0
  47. package/dist/src/views/scheduling/components/ScheduleAddEmployeeModal.vue.d.ts +12 -0
  48. package/dist/src/views/scheduling/components/ScheduleAddEmployeeModeStep.vue.d.ts +6 -0
  49. package/dist/src/views/scheduling/components/ScheduleAddEmployeePosAccessSection.vue.d.ts +6 -0
  50. package/dist/src/views/scheduling/components/ScheduleAddEmployeePositionsSection.vue.d.ts +10 -0
  51. package/dist/src/views/scheduling/components/ScheduleAddEmployeeSchedulingSection.vue.d.ts +6 -0
  52. package/dist/src/views/scheduling/components/ScheduleAddPickPopover.vue.d.ts +6 -0
  53. package/dist/src/views/scheduling/components/ScheduleAddPositionModal.vue.d.ts +6 -0
  54. package/dist/src/views/scheduling/components/ScheduleAllShiftsRow.vue.d.ts +22 -0
  55. package/dist/src/views/scheduling/components/ScheduleAreaRows.vue.d.ts +45 -0
  56. package/dist/src/views/scheduling/components/ScheduleAssignEmployeePopover.vue.d.ts +6 -0
  57. package/dist/src/views/scheduling/components/ScheduleAutoScheduleDetailsModal.vue.d.ts +6 -0
  58. package/dist/src/views/scheduling/components/ScheduleAutoScheduleModal.vue.d.ts +10 -0
  59. package/dist/src/views/scheduling/components/ScheduleBoardAreaRows.vue.d.ts +28 -0
  60. package/dist/src/views/scheduling/components/ScheduleBoardEditOverlays.vue.d.ts +19 -0
  61. package/dist/src/views/scheduling/components/ScheduleBoardEmployeeRows.vue.d.ts +38 -0
  62. package/dist/src/views/scheduling/components/ScheduleBoardGridHeader.vue.d.ts +24 -0
  63. package/dist/src/views/scheduling/components/ScheduleBoardInteractionOverlays.vue.d.ts +38 -0
  64. package/dist/src/views/scheduling/components/ScheduleBoardOnboardingOverlays.vue.d.ts +25 -0
  65. package/dist/src/views/scheduling/components/ScheduleBoardRails.vue.d.ts +17 -0
  66. package/dist/src/views/scheduling/components/ScheduleBoardToolbar.vue.d.ts +39 -0
  67. package/dist/src/views/scheduling/components/ScheduleBoardUtilityOverlays.vue.d.ts +22 -0
  68. package/dist/src/views/scheduling/components/ScheduleButton.vue.d.ts +23 -0
  69. package/dist/src/views/scheduling/components/ScheduleChangeEmployeeModal.vue.d.ts +8 -0
  70. package/dist/src/views/scheduling/components/ScheduleCloneOutletModal.vue.d.ts +6 -0
  71. package/dist/src/views/scheduling/components/ScheduleCoach.vue.d.ts +6 -0
  72. package/dist/src/views/scheduling/components/ScheduleCompletionDialog.vue.d.ts +15 -0
  73. package/dist/src/views/scheduling/components/ScheduleConfirmModal.vue.d.ts +32 -0
  74. package/dist/src/views/scheduling/components/ScheduleContextMenu.vue.d.ts +21 -0
  75. package/dist/src/views/scheduling/components/ScheduleCostRail.vue.d.ts +8 -0
  76. package/dist/src/views/scheduling/components/ScheduleCostRailEmptyArt.vue.d.ts +2 -0
  77. package/dist/src/views/scheduling/components/ScheduleDateRangePopover.vue.d.ts +6 -0
  78. package/dist/src/views/scheduling/components/ScheduleDayNotePopover.vue.d.ts +6 -0
  79. package/dist/src/views/scheduling/components/ScheduleDayTimeline.vue.d.ts +12 -0
  80. package/dist/src/views/scheduling/components/ScheduleDemandRow.vue.d.ts +23 -0
  81. package/dist/src/views/scheduling/components/ScheduleDemandSheet.vue.d.ts +10 -0
  82. package/dist/src/views/scheduling/components/ScheduleDotsIcon.vue.d.ts +2 -0
  83. package/dist/src/views/scheduling/components/ScheduleEmployeeDetailPanel.vue.d.ts +12 -0
  84. package/dist/src/views/scheduling/components/ScheduleEmployeeIdentity.vue.d.ts +17 -0
  85. package/dist/src/views/scheduling/components/ScheduleExportPreview.vue.d.ts +7 -0
  86. package/dist/src/views/scheduling/components/ScheduleFilterBar.vue.d.ts +18 -0
  87. package/dist/src/views/scheduling/components/ScheduleGapPopover.vue.d.ts +6 -0
  88. package/dist/src/views/scheduling/components/ScheduleGridHeader.vue.d.ts +18 -0
  89. package/dist/src/views/scheduling/components/ScheduleGridSkeleton.vue.d.ts +2 -0
  90. package/dist/src/views/scheduling/components/ScheduleLeaveEditModal.vue.d.ts +6 -0
  91. package/dist/src/views/scheduling/components/ScheduleLoadState.vue.d.ts +10 -0
  92. package/dist/src/views/scheduling/components/ScheduleModal.vue.d.ts +26 -0
  93. package/dist/src/views/scheduling/components/ScheduleOnboardingClosedDayConfirm.vue.d.ts +6 -0
  94. package/dist/src/views/scheduling/components/ScheduleOnboardingDemandDays.vue.d.ts +6 -0
  95. package/dist/src/views/scheduling/components/ScheduleOnboardingDemandFooter.vue.d.ts +6 -0
  96. package/dist/src/views/scheduling/components/ScheduleOnboardingDemandHeader.vue.d.ts +6 -0
  97. package/dist/src/views/scheduling/components/ScheduleOnboardingDoneArt.vue.d.ts +2 -0
  98. package/dist/src/views/scheduling/components/ScheduleOnboardingHoursProfileNotice.vue.d.ts +10 -0
  99. package/dist/src/views/scheduling/components/ScheduleOnboardingPositions.vue.d.ts +6 -0
  100. package/dist/src/views/scheduling/components/ScheduleOnboardingReview.vue.d.ts +6 -0
  101. package/dist/src/views/scheduling/components/ScheduleOnboardingWelcome.vue.d.ts +11 -0
  102. package/dist/src/views/scheduling/components/ScheduleOnboardingWizard.vue.d.ts +9 -0
  103. package/dist/src/views/scheduling/components/ScheduleOnboardingWizardFooter.vue.d.ts +6 -0
  104. package/dist/src/views/scheduling/components/ScheduleOnboardingWizardHeader.vue.d.ts +11 -0
  105. package/dist/src/views/scheduling/components/SchedulePublishModal.vue.d.ts +8 -0
  106. package/dist/src/views/scheduling/components/ScheduleReviewBar.vue.d.ts +12 -0
  107. package/dist/src/views/scheduling/components/ScheduleSelect.vue.d.ts +60 -0
  108. package/dist/src/views/scheduling/components/ScheduleSelectExistingEmployeeModal.vue.d.ts +6 -0
  109. package/dist/src/views/scheduling/components/ScheduleSetupBanner.vue.d.ts +12 -0
  110. package/dist/src/views/scheduling/components/ScheduleShiftCell.vue.d.ts +35 -0
  111. package/dist/src/views/scheduling/components/ScheduleShiftHeadcountEditor.vue.d.ts +10 -0
  112. package/dist/src/views/scheduling/components/ScheduleShiftImpact.vue.d.ts +6 -0
  113. package/dist/src/views/scheduling/components/ScheduleShiftMoreOptions.vue.d.ts +8 -0
  114. package/dist/src/views/scheduling/components/ScheduleShiftPopover.vue.d.ts +16 -0
  115. package/dist/src/views/scheduling/components/ScheduleShiftRepeatDaysRow.vue.d.ts +8 -0
  116. package/dist/src/views/scheduling/components/ScheduleShiftSegmentsEditor.vue.d.ts +8 -0
  117. package/dist/src/views/scheduling/components/ScheduleShiftWhoPicker.vue.d.ts +25 -0
  118. package/dist/src/views/scheduling/components/ScheduleStackPopover.vue.d.ts +14 -0
  119. package/dist/src/views/scheduling/components/ScheduleStaffRail.vue.d.ts +16 -0
  120. package/dist/src/views/scheduling/components/ScheduleStaffRows.vue.d.ts +60 -0
  121. package/dist/src/views/scheduling/components/ScheduleStatsRow.vue.d.ts +12 -0
  122. package/dist/src/views/scheduling/components/ScheduleSwapShiftsModal.vue.d.ts +8 -0
  123. package/dist/src/views/scheduling/components/ScheduleTimePickerPopover.vue.d.ts +6 -0
  124. package/dist/src/views/scheduling/components/ScheduleTopbar.vue.d.ts +20 -0
  125. package/dist/src/views/scheduling/composables/auto-schedule-mapping.d.ts +33 -0
  126. package/dist/src/views/scheduling/composables/onboarding-constants.d.ts +5 -0
  127. package/dist/src/views/scheduling/composables/onboarding-hours.d.ts +7 -0
  128. package/dist/src/views/scheduling/composables/onboarding-types.d.ts +50 -0
  129. package/dist/src/views/scheduling/composables/remyPrompt.d.ts +13 -0
  130. package/dist/src/views/scheduling/composables/schedule-add-employee-form.d.ts +78 -0
  131. package/dist/src/views/scheduling/composables/schedule-board-helpers.d.ts +59 -0
  132. package/dist/src/views/scheduling/composables/schedule-breaks.d.ts +9 -0
  133. package/dist/src/views/scheduling/composables/schedule-calendar.d.ts +7 -0
  134. package/dist/src/views/scheduling/composables/schedule-cost.d.ts +19 -0
  135. package/dist/src/views/scheduling/composables/schedule-day-meta.d.ts +23 -0
  136. package/dist/src/views/scheduling/composables/schedule-demand-domain.d.ts +11 -0
  137. package/dist/src/views/scheduling/composables/schedule-employee-profile.d.ts +7 -0
  138. package/dist/src/views/scheduling/composables/schedule-export-matrix.d.ts +14 -0
  139. package/dist/src/views/scheduling/composables/schedule-popover-position.d.ts +16 -0
  140. package/dist/src/views/scheduling/composables/schedule-shift-time.d.ts +26 -0
  141. package/dist/src/views/scheduling/composables/schedule-time.d.ts +8 -0
  142. package/dist/src/views/scheduling/composables/schedule-week-cache.d.ts +7 -0
  143. package/dist/src/views/scheduling/composables/useCollapsedList.d.ts +9 -0
  144. package/dist/src/views/scheduling/composables/useRemyAppStore.d.ts +10 -0
  145. package/dist/src/views/scheduling/composables/useScheduleAddEmployee.d.ts +102 -0
  146. package/dist/src/views/scheduling/composables/useScheduleAddPick.d.ts +81 -0
  147. package/dist/src/views/scheduling/composables/useScheduleAllShiftsRow.d.ts +77 -0
  148. package/dist/src/views/scheduling/composables/useScheduleAreaBoard.d.ts +63 -0
  149. package/dist/src/views/scheduling/composables/useScheduleAreaDragDrop.d.ts +18 -0
  150. package/dist/src/views/scheduling/composables/useScheduleAssign.d.ts +124 -0
  151. package/dist/src/views/scheduling/composables/useScheduleAssignmentMutations.d.ts +13 -0
  152. package/dist/src/views/scheduling/composables/useScheduleAutoSchedule.d.ts +289 -0
  153. package/dist/src/views/scheduling/composables/useScheduleBoard.d.ts +539 -0
  154. package/dist/src/views/scheduling/composables/useScheduleCellState.d.ts +27 -0
  155. package/dist/src/views/scheduling/composables/useScheduleClashDetection.d.ts +28 -0
  156. package/dist/src/views/scheduling/composables/useScheduleCloneOutletModal.d.ts +21 -0
  157. package/dist/src/views/scheduling/composables/useScheduleCoach.d.ts +80 -0
  158. package/dist/src/views/scheduling/composables/useScheduleCopyWeek.d.ts +19 -0
  159. package/dist/src/views/scheduling/composables/useScheduleCostRail.d.ts +48 -0
  160. package/dist/src/views/scheduling/composables/useScheduleDayNote.d.ts +45 -0
  161. package/dist/src/views/scheduling/composables/useScheduleDayTimeline.d.ts +100 -0
  162. package/dist/src/views/scheduling/composables/useScheduleDemand.d.ts +61 -0
  163. package/dist/src/views/scheduling/composables/useScheduleDemandRow.d.ts +47 -0
  164. package/dist/src/views/scheduling/composables/useScheduleDemandSheet.d.ts +156 -0
  165. package/dist/src/views/scheduling/composables/useScheduleDragDrop.d.ts +54 -0
  166. package/dist/src/views/scheduling/composables/useScheduleEmployeeAccess.d.ts +11 -0
  167. package/dist/src/views/scheduling/composables/useScheduleEmployeeAvailability.d.ts +13 -0
  168. package/dist/src/views/scheduling/composables/useScheduleEmployeeCandidates.d.ts +26 -0
  169. package/dist/src/views/scheduling/composables/useScheduleEmployeeCompensation.d.ts +7 -0
  170. package/dist/src/views/scheduling/composables/useScheduleEmployeeForm.d.ts +22 -0
  171. package/dist/src/views/scheduling/composables/useScheduleEmployeeIdentity.d.ts +50 -0
  172. package/dist/src/views/scheduling/composables/useScheduleEmployeeMenu.d.ts +38 -0
  173. package/dist/src/views/scheduling/composables/useScheduleEmployeePersistence.d.ts +25 -0
  174. package/dist/src/views/scheduling/composables/useScheduleEmployeeProfile.d.ts +16 -0
  175. package/dist/src/views/scheduling/composables/useScheduleEmployeeValidation.d.ts +18 -0
  176. package/dist/src/views/scheduling/composables/useScheduleExport.d.ts +51 -0
  177. package/dist/src/views/scheduling/composables/useScheduleFilterBar.d.ts +14 -0
  178. package/dist/src/views/scheduling/composables/useScheduleGapPopover.d.ts +77 -0
  179. package/dist/src/views/scheduling/composables/useScheduleLeave.d.ts +59 -0
  180. package/dist/src/views/scheduling/composables/useScheduleLegend.d.ts +15 -0
  181. package/dist/src/views/scheduling/composables/useScheduleOnboardingAvailability.d.ts +58 -0
  182. package/dist/src/views/scheduling/composables/useScheduleOnboardingDemand.d.ts +45 -0
  183. package/dist/src/views/scheduling/composables/useScheduleOnboardingEmployees.d.ts +187 -0
  184. package/dist/src/views/scheduling/composables/useScheduleOnboardingFlow.d.ts +9 -0
  185. package/dist/src/views/scheduling/composables/useScheduleOnboardingHours.d.ts +15 -0
  186. package/dist/src/views/scheduling/composables/useScheduleOnboardingNavigation.d.ts +11 -0
  187. package/dist/src/views/scheduling/composables/useScheduleOnboardingPersistence.d.ts +13 -0
  188. package/dist/src/views/scheduling/composables/useScheduleOnboardingWizard.d.ts +1145 -0
  189. package/dist/src/views/scheduling/composables/useScheduleOpenShiftCard.d.ts +23 -0
  190. package/dist/src/views/scheduling/composables/useScheduleOutlet.d.ts +22 -0
  191. package/dist/src/views/scheduling/composables/useSchedulePageActions.d.ts +18 -0
  192. package/dist/src/views/scheduling/composables/useSchedulePageBootstrap.d.ts +9 -0
  193. package/dist/src/views/scheduling/composables/useSchedulePageCellActions.d.ts +21 -0
  194. package/dist/src/views/scheduling/composables/useSchedulePageCellDrop.d.ts +18 -0
  195. package/dist/src/views/scheduling/composables/useSchedulePageClearActions.d.ts +20 -0
  196. package/dist/src/views/scheduling/composables/useSchedulePageEmployeeActions.d.ts +22 -0
  197. package/dist/src/views/scheduling/composables/useSchedulePageOverlays.d.ts +25 -0
  198. package/dist/src/views/scheduling/composables/useSchedulePdfExport.d.ts +19 -0
  199. package/dist/src/views/scheduling/composables/useSchedulePositionModal.d.ts +54 -0
  200. package/dist/src/views/scheduling/composables/useSchedulePositions.d.ts +29 -0
  201. package/dist/src/views/scheduling/composables/useSchedulePublish.d.ts +124 -0
  202. package/dist/src/views/scheduling/composables/useSchedulePublishPersistence.d.ts +11 -0
  203. package/dist/src/views/scheduling/composables/useScheduleRangeCalendar.d.ts +27 -0
  204. package/dist/src/views/scheduling/composables/useScheduleRoster.d.ts +247 -0
  205. package/dist/src/views/scheduling/composables/useScheduleSettings.d.ts +35 -0
  206. package/dist/src/views/scheduling/composables/useScheduleSetupBanner.d.ts +17 -0
  207. package/dist/src/views/scheduling/composables/useScheduleShiftActions.d.ts +207 -0
  208. package/dist/src/views/scheduling/composables/useScheduleShiftDraft.d.ts +62 -0
  209. package/dist/src/views/scheduling/composables/useScheduleShiftPersistence.d.ts +17 -0
  210. package/dist/src/views/scheduling/composables/useScheduleShiftPopover.d.ts +214 -0
  211. package/dist/src/views/scheduling/composables/useScheduleStatsRow.d.ts +27 -0
  212. package/dist/src/views/scheduling/composables/useScheduleTimePicker.d.ts +49 -0
  213. package/dist/src/views/scheduling/composables/useScheduleTour.d.ts +95 -0
  214. package/dist/src/views/scheduling/composables/useScheduleViewportFit.d.ts +9 -0
  215. package/dist/src/views/scheduling/country-rules/index.d.ts +24 -0
  216. package/dist/src/views/scheduling/data.d.ts +102 -0
  217. package/dist/src/views/scheduling/locales/index.d.ts +688 -0
  218. package/dist/src/views/scheduling/schedule-constants.d.ts +7 -0
  219. package/dist/src/views/scheduling/schedule-state.d.ts +703 -0
  220. package/dist/src/views/scheduling/schedule-store.d.ts +110 -0
  221. package/dist/src/views/scheduling/types.d.ts +356 -0
  222. package/dist/src/views/team/components/PortalConditionForm.vue.d.ts +2 -2
  223. package/dist/src/views/team/condition-builders/ConditionBuilderForm.vue.d.ts +2 -2
  224. package/dist/style.css +1 -1
  225. package/dist/tsconfig.app.tsbuildinfo +1 -1
  226. package/dist/{useAppStore-BGhlB1_1.js → useAppStore-d_nHyK5u.js} +1 -1
  227. package/dist/{useLoading-CvgqVDbF.js → useLoading-JFoghhRz.js} +1 -1
  228. package/dist/{useReportPermissions-hVMtRNmj.js → useReportPermissions-B2ev0j4w.js} +3 -3
  229. package/package.json +4 -2
  230. package/dist/SelectFilter-ATOm0hdn.js +0 -269
@@ -0,0 +1,1145 @@
1
+ import type { ScheduleBoardApi } from './useScheduleBoard';
2
+ import type { ScheduleAddEmployeeApi } from './useScheduleAddEmployee';
3
+ import type { IntroRecapRow, ReviewRow, ScheduleOnboardingStep } from './onboarding-types';
4
+ export declare const STEP_LABELS: Record<ScheduleOnboardingStep, string>;
5
+ export { MAX_OPERATIONAL_SESSIONS } from './useScheduleOnboardingHours';
6
+ /** Steps that can be passed over without answering — the footer shows "Skip for now" on these. */
7
+ /** "Set up scheduling", step by step — V6.2's six-step flow. Positions, staffing demand and the
8
+ * team are real screens over real pieces. Operational hours start from and are written back to
9
+ * the restaurant profile when setup is completed. Availability edits are converted into employee
10
+ * profile windows, while Review summarizes every step and links back to its editor. Finishing
11
+ * persists `scheduleSetupCompleted` in ScheduleSettings. */
12
+ export declare function useScheduleOnboardingWizard(board: ScheduleBoardApi, addEmployee: ScheduleAddEmployeeApi, onDemandChanged?: () => void | Promise<void>): {
13
+ board: {
14
+ dayNote: (dayIdx: number) => import("../types").ScheduleDayNote | null;
15
+ setDayNote: (dayIdx: number, title: string, desc: string) => void;
16
+ clearDayNote: (dayIdx: number) => void;
17
+ isStandingClosedWeekday: (dayIdx: number) => boolean;
18
+ holidayName: (dayIdx: number) => string | null;
19
+ holidayIsAuto: (dayIdx: number) => boolean;
20
+ isPublicHoliday: (dayIdx: number) => boolean;
21
+ holidayRateApplies: (dayIdx: number) => boolean;
22
+ setHolidayNormal: (dayIdx: number, toNormal: boolean) => void;
23
+ setPublicHoliday: (dayIdx: number, on: boolean) => void;
24
+ otRateOn: (dayIdx: number) => number;
25
+ regularRateOn: (dayIdx: number) => number;
26
+ isHoliday: (dayIdx: number) => boolean;
27
+ employees: import("vue").Ref<{
28
+ id: number;
29
+ sourceId: string;
30
+ name: string;
31
+ employmentType: "FULLTIME" | "PARTTIME";
32
+ role: string;
33
+ initials: string;
34
+ color: string;
35
+ weekHours: number;
36
+ pct: number;
37
+ contractHours?: number | undefined;
38
+ rate: number;
39
+ positions: string[];
40
+ shifts: ({
41
+ start: string;
42
+ end: string;
43
+ role: string;
44
+ status: import("../types").ShiftStatus;
45
+ clock?: {
46
+ in: string | null;
47
+ out: string | null;
48
+ status: "on-time" | "late" | "early-out" | "absent";
49
+ } | undefined;
50
+ conflict?: boolean | undefined;
51
+ conflictReason?: string | undefined;
52
+ openId?: number | undefined;
53
+ breakMins?: number | undefined;
54
+ breaks?: ({
55
+ type: "DURATION";
56
+ minutes: number;
57
+ breakPayType: "PAID" | "UNPAID";
58
+ } | {
59
+ type: "TIME_RANGE";
60
+ startTime: string;
61
+ endTime: string;
62
+ breakPayType: "PAID" | "UNPAID";
63
+ })[] | undefined;
64
+ assignmentId?: string | undefined;
65
+ updatedAt?: string | undefined;
66
+ splitGroupId?: string | undefined;
67
+ } | {
68
+ timeOff: "approved" | "pending";
69
+ requestId?: string | undefined;
70
+ type?: "OFF_DAY" | "LEAVE" | undefined;
71
+ leaveType?: "ANNUAL" | "MEDICAL" | "EMERGENCY" | "UNPAID" | undefined;
72
+ reason: string;
73
+ half?: boolean | undefined;
74
+ halfPart?: "AM" | "PM" | undefined;
75
+ from?: string | undefined;
76
+ to?: string | undefined;
77
+ appliedOn?: string | undefined;
78
+ note?: string | undefined;
79
+ cert?: {
80
+ name: string;
81
+ size: string;
82
+ } | null | undefined;
83
+ bal?: {
84
+ type: string;
85
+ entitled: number;
86
+ used: number;
87
+ } | undefined;
88
+ } | {
89
+ start: string;
90
+ end: string;
91
+ role: string;
92
+ status: import("../types").ShiftStatus;
93
+ clock?: {
94
+ in: string | null;
95
+ out: string | null;
96
+ status: "on-time" | "late" | "early-out" | "absent";
97
+ } | undefined;
98
+ conflict?: boolean | undefined;
99
+ conflictReason?: string | undefined;
100
+ openId?: number | undefined;
101
+ breakMins?: number | undefined;
102
+ breaks?: ({
103
+ type: "DURATION";
104
+ minutes: number;
105
+ breakPayType: "PAID" | "UNPAID";
106
+ } | {
107
+ type: "TIME_RANGE";
108
+ startTime: string;
109
+ endTime: string;
110
+ breakPayType: "PAID" | "UNPAID";
111
+ })[] | undefined;
112
+ assignmentId?: string | undefined;
113
+ updatedAt?: string | undefined;
114
+ splitGroupId?: string | undefined;
115
+ }[] | null)[];
116
+ remarks: {
117
+ author: string;
118
+ date: string;
119
+ type: "note" | "warning" | "praise";
120
+ text: string;
121
+ }[];
122
+ section: string;
123
+ compGroup?: string | undefined;
124
+ mobile?: string | undefined;
125
+ dial?: string | undefined;
126
+ locations?: string[] | undefined;
127
+ payBasis?: "hourly" | "monthly" | undefined;
128
+ payAmount?: number | undefined;
129
+ maxHours?: number | undefined;
130
+ maxOtHours?: number | undefined;
131
+ minHours?: number | undefined;
132
+ otAfterDaily?: number | undefined;
133
+ preferences?: string[] | undefined;
134
+ seniority?: "senior" | "junior" | "" | undefined;
135
+ availDays?: boolean[] | undefined;
136
+ availHours?: {
137
+ from: string;
138
+ to: string;
139
+ }[] | undefined;
140
+ passcode?: string | undefined;
141
+ masterUser?: boolean | undefined;
142
+ }[], import("../types").Employee[] | {
143
+ id: number;
144
+ sourceId: string;
145
+ name: string;
146
+ employmentType: "FULLTIME" | "PARTTIME";
147
+ role: string;
148
+ initials: string;
149
+ color: string;
150
+ weekHours: number;
151
+ pct: number;
152
+ contractHours?: number | undefined;
153
+ rate: number;
154
+ positions: string[];
155
+ shifts: ({
156
+ start: string;
157
+ end: string;
158
+ role: string;
159
+ status: import("../types").ShiftStatus;
160
+ clock?: {
161
+ in: string | null;
162
+ out: string | null;
163
+ status: "on-time" | "late" | "early-out" | "absent";
164
+ } | undefined;
165
+ conflict?: boolean | undefined;
166
+ conflictReason?: string | undefined;
167
+ openId?: number | undefined;
168
+ breakMins?: number | undefined;
169
+ breaks?: ({
170
+ type: "DURATION";
171
+ minutes: number;
172
+ breakPayType: "PAID" | "UNPAID";
173
+ } | {
174
+ type: "TIME_RANGE";
175
+ startTime: string;
176
+ endTime: string;
177
+ breakPayType: "PAID" | "UNPAID";
178
+ })[] | undefined;
179
+ assignmentId?: string | undefined;
180
+ updatedAt?: string | undefined;
181
+ splitGroupId?: string | undefined;
182
+ } | {
183
+ timeOff: "approved" | "pending";
184
+ requestId?: string | undefined;
185
+ type?: "OFF_DAY" | "LEAVE" | undefined;
186
+ leaveType?: "ANNUAL" | "MEDICAL" | "EMERGENCY" | "UNPAID" | undefined;
187
+ reason: string;
188
+ half?: boolean | undefined;
189
+ halfPart?: "AM" | "PM" | undefined;
190
+ from?: string | undefined;
191
+ to?: string | undefined;
192
+ appliedOn?: string | undefined;
193
+ note?: string | undefined;
194
+ cert?: {
195
+ name: string;
196
+ size: string;
197
+ } | null | undefined;
198
+ bal?: {
199
+ type: string;
200
+ entitled: number;
201
+ used: number;
202
+ } | undefined;
203
+ } | {
204
+ start: string;
205
+ end: string;
206
+ role: string;
207
+ status: import("../types").ShiftStatus;
208
+ clock?: {
209
+ in: string | null;
210
+ out: string | null;
211
+ status: "on-time" | "late" | "early-out" | "absent";
212
+ } | undefined;
213
+ conflict?: boolean | undefined;
214
+ conflictReason?: string | undefined;
215
+ openId?: number | undefined;
216
+ breakMins?: number | undefined;
217
+ breaks?: ({
218
+ type: "DURATION";
219
+ minutes: number;
220
+ breakPayType: "PAID" | "UNPAID";
221
+ } | {
222
+ type: "TIME_RANGE";
223
+ startTime: string;
224
+ endTime: string;
225
+ breakPayType: "PAID" | "UNPAID";
226
+ })[] | undefined;
227
+ assignmentId?: string | undefined;
228
+ updatedAt?: string | undefined;
229
+ splitGroupId?: string | undefined;
230
+ }[] | null)[];
231
+ remarks: {
232
+ author: string;
233
+ date: string;
234
+ type: "note" | "warning" | "praise";
235
+ text: string;
236
+ }[];
237
+ section: string;
238
+ compGroup?: string | undefined;
239
+ mobile?: string | undefined;
240
+ dial?: string | undefined;
241
+ locations?: string[] | undefined;
242
+ payBasis?: "hourly" | "monthly" | undefined;
243
+ payAmount?: number | undefined;
244
+ maxHours?: number | undefined;
245
+ maxOtHours?: number | undefined;
246
+ minHours?: number | undefined;
247
+ otAfterDaily?: number | undefined;
248
+ preferences?: string[] | undefined;
249
+ seniority?: "senior" | "junior" | "" | undefined;
250
+ availDays?: boolean[] | undefined;
251
+ availHours?: {
252
+ from: string;
253
+ to: string;
254
+ }[] | undefined;
255
+ passcode?: string | undefined;
256
+ masterUser?: boolean | undefined;
257
+ }[]>;
258
+ sections: import("vue").Ref<{
259
+ id: string;
260
+ label: string;
261
+ roles: string[];
262
+ system?: boolean | undefined;
263
+ }[], import("../types").Section[] | {
264
+ id: string;
265
+ label: string;
266
+ roles: string[];
267
+ system?: boolean | undefined;
268
+ }[]>;
269
+ openShifts: import("vue").Ref<{
270
+ id: number;
271
+ dayIdx: number;
272
+ position: string;
273
+ required: number;
274
+ filledBy: number | null;
275
+ sen?: "junior" | "senior" | undefined;
276
+ empType?: "full" | "part" | undefined;
277
+ name?: string | undefined;
278
+ start: string;
279
+ end: string;
280
+ breakMins?: number | undefined;
281
+ }[], import("../types").OpenShift[] | {
282
+ id: number;
283
+ dayIdx: number;
284
+ position: string;
285
+ required: number;
286
+ filledBy: number | null;
287
+ sen?: "junior" | "senior" | undefined;
288
+ empType?: "full" | "part" | undefined;
289
+ name?: string | undefined;
290
+ start: string;
291
+ end: string;
292
+ breakMins?: number | undefined;
293
+ }[]>;
294
+ rangeStart: import("vue").Ref<Date, Date>;
295
+ weekOffset: import("vue").ComputedRef<number>;
296
+ peekWeek: (offset: number) => import("./schedule-week-cache").WeekBucket;
297
+ isRecentlySaved: (empId: number, dayIdx: number) => boolean;
298
+ isWeekLocked: (offset?: number) => boolean;
299
+ dayLocked: (dayIdx: number) => boolean;
300
+ pendingChanges: import("vue").Ref<{
301
+ empId: number;
302
+ employeeKey: string;
303
+ dayIdx: number;
304
+ kind: "add" | "change" | "remove";
305
+ label: string;
306
+ }[], import("../types").PendingChange[] | {
307
+ empId: number;
308
+ employeeKey: string;
309
+ dayIdx: number;
310
+ kind: "add" | "change" | "remove";
311
+ label: string;
312
+ }[]>;
313
+ unpublishedChanges: import("vue").ComputedRef<import("../types").PendingChange[]>;
314
+ persistPublish: (items: Array<{
315
+ empId: number;
316
+ dayIdx: number;
317
+ slot: import("../types").WorkSlot;
318
+ }>) => Promise<boolean>;
319
+ flushAssignmentWrites: () => Promise<void>;
320
+ recordChange: (empId: number, dayIdx: number, kind: import("../types").PendingChange["kind"], label: string) => void;
321
+ scheduleVersions: import("vue").Ref<{
322
+ v: number;
323
+ at: Date;
324
+ by: string;
325
+ note: string;
326
+ changeCount: number;
327
+ staffAffected: number;
328
+ snapshot: {
329
+ id: number;
330
+ name: string;
331
+ weekHours: number;
332
+ shifts: ({
333
+ start: string;
334
+ end: string;
335
+ role: string;
336
+ status: import("../types").ShiftStatus;
337
+ clock?: {
338
+ in: string | null;
339
+ out: string | null;
340
+ status: "on-time" | "late" | "early-out" | "absent";
341
+ } | undefined;
342
+ conflict?: boolean | undefined;
343
+ conflictReason?: string | undefined;
344
+ openId?: number | undefined;
345
+ breakMins?: number | undefined;
346
+ breaks?: ({
347
+ type: "DURATION";
348
+ minutes: number;
349
+ breakPayType: "PAID" | "UNPAID";
350
+ } | {
351
+ type: "TIME_RANGE";
352
+ startTime: string;
353
+ endTime: string;
354
+ breakPayType: "PAID" | "UNPAID";
355
+ })[] | undefined;
356
+ assignmentId?: string | undefined;
357
+ updatedAt?: string | undefined;
358
+ splitGroupId?: string | undefined;
359
+ } | {
360
+ timeOff: "approved" | "pending";
361
+ requestId?: string | undefined;
362
+ type?: "OFF_DAY" | "LEAVE" | undefined;
363
+ leaveType?: "ANNUAL" | "MEDICAL" | "EMERGENCY" | "UNPAID" | undefined;
364
+ reason: string;
365
+ half?: boolean | undefined;
366
+ halfPart?: "AM" | "PM" | undefined;
367
+ from?: string | undefined;
368
+ to?: string | undefined;
369
+ appliedOn?: string | undefined;
370
+ note?: string | undefined;
371
+ cert?: {
372
+ name: string;
373
+ size: string;
374
+ } | null | undefined;
375
+ bal?: {
376
+ type: string;
377
+ entitled: number;
378
+ used: number;
379
+ } | undefined;
380
+ } | {
381
+ start: string;
382
+ end: string;
383
+ role: string;
384
+ status: import("../types").ShiftStatus;
385
+ clock?: {
386
+ in: string | null;
387
+ out: string | null;
388
+ status: "on-time" | "late" | "early-out" | "absent";
389
+ } | undefined;
390
+ conflict?: boolean | undefined;
391
+ conflictReason?: string | undefined;
392
+ openId?: number | undefined;
393
+ breakMins?: number | undefined;
394
+ breaks?: ({
395
+ type: "DURATION";
396
+ minutes: number;
397
+ breakPayType: "PAID" | "UNPAID";
398
+ } | {
399
+ type: "TIME_RANGE";
400
+ startTime: string;
401
+ endTime: string;
402
+ breakPayType: "PAID" | "UNPAID";
403
+ })[] | undefined;
404
+ assignmentId?: string | undefined;
405
+ updatedAt?: string | undefined;
406
+ splitGroupId?: string | undefined;
407
+ }[] | null)[];
408
+ }[];
409
+ }[], import("../types").ScheduleVersion[] | {
410
+ v: number;
411
+ at: Date;
412
+ by: string;
413
+ note: string;
414
+ changeCount: number;
415
+ staffAffected: number;
416
+ snapshot: {
417
+ id: number;
418
+ name: string;
419
+ weekHours: number;
420
+ shifts: ({
421
+ start: string;
422
+ end: string;
423
+ role: string;
424
+ status: import("../types").ShiftStatus;
425
+ clock?: {
426
+ in: string | null;
427
+ out: string | null;
428
+ status: "on-time" | "late" | "early-out" | "absent";
429
+ } | undefined;
430
+ conflict?: boolean | undefined;
431
+ conflictReason?: string | undefined;
432
+ openId?: number | undefined;
433
+ breakMins?: number | undefined;
434
+ breaks?: ({
435
+ type: "DURATION";
436
+ minutes: number;
437
+ breakPayType: "PAID" | "UNPAID";
438
+ } | {
439
+ type: "TIME_RANGE";
440
+ startTime: string;
441
+ endTime: string;
442
+ breakPayType: "PAID" | "UNPAID";
443
+ })[] | undefined;
444
+ assignmentId?: string | undefined;
445
+ updatedAt?: string | undefined;
446
+ splitGroupId?: string | undefined;
447
+ } | {
448
+ timeOff: "approved" | "pending";
449
+ requestId?: string | undefined;
450
+ type?: "OFF_DAY" | "LEAVE" | undefined;
451
+ leaveType?: "ANNUAL" | "MEDICAL" | "EMERGENCY" | "UNPAID" | undefined;
452
+ reason: string;
453
+ half?: boolean | undefined;
454
+ halfPart?: "AM" | "PM" | undefined;
455
+ from?: string | undefined;
456
+ to?: string | undefined;
457
+ appliedOn?: string | undefined;
458
+ note?: string | undefined;
459
+ cert?: {
460
+ name: string;
461
+ size: string;
462
+ } | null | undefined;
463
+ bal?: {
464
+ type: string;
465
+ entitled: number;
466
+ used: number;
467
+ } | undefined;
468
+ } | {
469
+ start: string;
470
+ end: string;
471
+ role: string;
472
+ status: import("../types").ShiftStatus;
473
+ clock?: {
474
+ in: string | null;
475
+ out: string | null;
476
+ status: "on-time" | "late" | "early-out" | "absent";
477
+ } | undefined;
478
+ conflict?: boolean | undefined;
479
+ conflictReason?: string | undefined;
480
+ openId?: number | undefined;
481
+ breakMins?: number | undefined;
482
+ breaks?: ({
483
+ type: "DURATION";
484
+ minutes: number;
485
+ breakPayType: "PAID" | "UNPAID";
486
+ } | {
487
+ type: "TIME_RANGE";
488
+ startTime: string;
489
+ endTime: string;
490
+ breakPayType: "PAID" | "UNPAID";
491
+ })[] | undefined;
492
+ assignmentId?: string | undefined;
493
+ updatedAt?: string | undefined;
494
+ splitGroupId?: string | undefined;
495
+ }[] | null)[];
496
+ }[];
497
+ }[]>;
498
+ lastUpdatedAt: import("vue").Ref<Date | null, Date | null>;
499
+ lastPublishedAt: import("vue").Ref<Date | null, Date | null>;
500
+ pushVersion: (note: string, opts?: Partial<import("../types").ScheduleVersion>) => import("../types").ScheduleVersion;
501
+ snapshotSchedule: () => import("../types").ScheduleVersionSnapshot[];
502
+ scheduleStatus: import("vue").ComputedRef<import("../types").ScheduleStatusInfo>;
503
+ conflictCount: () => number;
504
+ granularity: import("vue").Ref<import("./useScheduleBoard").ScheduleGranularity, import("./useScheduleBoard").ScheduleGranularity>;
505
+ focusDayIdx: import("vue").Ref<number, number>;
506
+ setGranularity: (value: import("./useScheduleBoard").ScheduleGranularity) => void;
507
+ dayDates: import("vue").ComputedRef<Date[]>;
508
+ dayLabels: import("vue").ComputedRef<string[]>;
509
+ visibleDayIndices: import("vue").ComputedRef<number[]>;
510
+ visibleDays: import("vue").ComputedRef<{
511
+ dayIdx: number;
512
+ date: Date;
513
+ }[]>;
514
+ rangeLabel: import("vue").ComputedRef<string>;
515
+ isToday: (dayIdx: number) => boolean;
516
+ dateKey: (dayIdx: number) => string | null;
517
+ navigate: (delta: number) => void;
518
+ goToday: () => void;
519
+ membersOf: (sectionId: string) => import("../types").Employee[];
520
+ sectionCost: (sectionId: string, members?: import("../types").Employee[]) => number;
521
+ totalWeeklyCost: import("vue").ComputedRef<number>;
522
+ employeeById: (id: number) => import("../types").Employee | undefined;
523
+ commitShift: (empId: number, dayIdx: number, slot: import("../types").WorkSlot | import("../types").WorkSlot[], replaceIndex?: number, replaceCount?: number) => void;
524
+ commitShiftAt: (offset: number, empId: number, dayIdx: number, slot: import("../types").WorkSlot | import("../types").WorkSlot[], replaceIndex?: number, replaceCount?: number) => void;
525
+ removeShift: (empId: number, dayIdx: number, slotIndex?: number, count?: number) => void;
526
+ removeShiftAt: (offset: number, empId: number, dayIdx: number, slotIndex?: number, count?: number) => void;
527
+ employeeShiftsToClear: (empId: number) => number[];
528
+ clearEmployeeShifts: (empId: number) => {
529
+ shifts: number;
530
+ };
531
+ moveShift: (fromEmpId: number, fromDayIdx: number, toEmpId: number, toDayIdx: number, fromSlotIndex?: number, fromSlotCount?: number) => boolean;
532
+ swapShifts: (empIdA: number, empIdB: number, dayA: number, dayB?: number, slotIndexA?: number, slotIndexB?: number, slotCountA?: number) => boolean;
533
+ clearShiftsInRange: () => {
534
+ shifts: number;
535
+ open: number;
536
+ leave: number;
537
+ };
538
+ requiredFor: (dayIdx: number, position: string) => number;
539
+ scheduledFor: (dayIdx: number, position: string) => number;
540
+ compGroupRate: (name: string | undefined) => number | undefined;
541
+ UNASSIGNED: string;
542
+ };
543
+ open: import("vue").Ref<boolean, boolean>;
544
+ introOpen: import("vue").Ref<boolean, boolean>;
545
+ introTitle: import("vue").ComputedRef<string>;
546
+ introRecap: import("vue").ComputedRef<IntroRecapRow[]>;
547
+ closeIntro: () => void;
548
+ step: import("vue").Ref<ScheduleOnboardingStep, ScheduleOnboardingStep>;
549
+ stepIndex: import("vue").ComputedRef<number>;
550
+ isFirstStep: import("vue").ComputedRef<boolean>;
551
+ isLastStep: import("vue").ComputedRef<boolean>;
552
+ totalSteps: number;
553
+ positions: {
554
+ positions: import("vue").Ref<{
555
+ id: string;
556
+ name: string;
557
+ }[], import("./useSchedulePositions").SchedulePositionRow[] | {
558
+ id: string;
559
+ name: string;
560
+ }[]>;
561
+ count: import("vue").ComputedRef<number>;
562
+ isAdding: import("vue").Ref<boolean, boolean>;
563
+ newName: import("vue").Ref<string, string>;
564
+ pendingDeleteId: import("vue").Ref<string | null, string | null>;
565
+ saving: import("vue").Ref<boolean, boolean>;
566
+ error: import("vue").Ref<string | null, string | null>;
567
+ usageCountFor: (name: string) => number;
568
+ startAdd: () => void;
569
+ cancelAdd: () => void;
570
+ confirmAdd: () => Promise<void>;
571
+ askDelete: (id: string) => void;
572
+ cancelDelete: () => void;
573
+ confirmDelete: (id: string) => Promise<void>;
574
+ };
575
+ steps: ScheduleOnboardingStep[];
576
+ isSkippable: import("vue").ComputedRef<boolean>;
577
+ hours: import("vue").Reactive<import("./onboarding-types").ScheduleOnboardingDayHours[]>;
578
+ hoursMatchProfile: import("vue").ComputedRef<boolean>;
579
+ openDayCount: import("vue").ComputedRef<number>;
580
+ resetHours: () => void;
581
+ toggleDay: (dayIdx: number) => void;
582
+ addSession: (dayIdx: number) => void;
583
+ removeSession: (dayIdx: number, sessionIdx: number) => void;
584
+ setSessionTime: (dayIdx: number, sessionIdx: number, field: "from" | "to", value: string) => void;
585
+ demand: import("vue").Reactive<import("./onboarding-types").ScheduleOnboardingRange[][]>;
586
+ dmDay: import("vue").Ref<number, number>;
587
+ dayClosedConfirm: {
588
+ state: {
589
+ open: boolean;
590
+ message: string;
591
+ title: string | null;
592
+ confirmLabel: string | null;
593
+ onConfirm: (() => void) | null;
594
+ };
595
+ ask: (message: string, onConfirm: () => void, opts?: {
596
+ title?: string;
597
+ confirmLabel?: string;
598
+ }) => void;
599
+ confirm: () => void;
600
+ close: () => void;
601
+ };
602
+ note: import("vue").Ref<string, string>;
603
+ staffingSaving: import("vue").Ref<boolean, boolean>;
604
+ namedPositions: import("vue").ComputedRef<string[]>;
605
+ suggestedPositions: import("vue").ComputedRef<string[]>;
606
+ daysSet: import("vue").ComputedRef<number>;
607
+ openDays: import("vue").ComputedRef<number[]>;
608
+ isShut: (dayIdx: number) => boolean;
609
+ dmPeak: (dayIdx: number) => number;
610
+ daySpan: (dayIdx: number) => string;
611
+ selectDay: (dayIdx: number) => void;
612
+ setRangeTime: (index: number, field: "from" | "to", value: string) => void;
613
+ setRangeCount: (index: number, value: string) => void;
614
+ addRange: () => void;
615
+ removeRange: (index: number) => void;
616
+ addRole: (index: number) => void;
617
+ setRole: (index: number, roleIndex: number, field: "position" | "n", value: string) => void;
618
+ removeRole: (index: number, roleIndex: number) => void;
619
+ namedTotal: (range: import("./onboarding-types").ScheduleOnboardingRange) => number;
620
+ copyDay: (mode: "all" | "wk" | "we") => void;
621
+ addPositionNamed: (name?: string) => void;
622
+ removePosition: (id: string) => void;
623
+ reviewRows: import("vue").ComputedRef<ReviewRow[]>;
624
+ goTo: (target: ScheduleOnboardingStep) => void;
625
+ avail: Record<number, import("./onboarding-types").AvailRow>;
626
+ avTab: import("vue").Ref<"full" | "part", "full" | "part">;
627
+ avPicked: Record<number, boolean>;
628
+ avBulkOpen: import("vue").Ref<boolean, boolean>;
629
+ avBulk: {
630
+ off: ("" | "y" | "n")[];
631
+ on: ("" | "y" | "n")[];
632
+ from: string;
633
+ to: string;
634
+ };
635
+ avBulkReady: import("vue").ComputedRef<boolean>;
636
+ avFulls: import("vue").ComputedRef<{
637
+ emp: import("../types").Employee;
638
+ row: import("./onboarding-types").TeamRow;
639
+ }[]>;
640
+ avParts: import("vue").ComputedRef<{
641
+ emp: import("../types").Employee;
642
+ row: import("./onboarding-types").TeamRow;
643
+ }[]>;
644
+ avGroup: import("vue").ComputedRef<{
645
+ emp: import("../types").Employee;
646
+ row: import("./onboarding-types").TeamRow;
647
+ }[]>;
648
+ avSelected: import("vue").ComputedRef<{
649
+ emp: import("../types").Employee;
650
+ row: import("./onboarding-types").TeamRow;
651
+ }[]>;
652
+ avFullDone: import("vue").ComputedRef<number>;
653
+ avPartDone: import("vue").ComputedRef<number>;
654
+ avOffCount: (dayIdx: number) => number | null;
655
+ avFullSub: (empId: number) => string;
656
+ avPartSummary: (empId: number) => string;
657
+ avShowsByDay: (empId: number) => boolean;
658
+ canDays: (empId: number) => number[];
659
+ avPickAll: (checked: boolean) => void;
660
+ toggleOff: (empId: number, dayIdx: number) => void;
661
+ toggleCan: (empId: number, dayIdx: number) => void;
662
+ setAvailTime: (empId: number, dayIdx: number | null, field: "from" | "to", value: string) => void;
663
+ toggleVary: (empId: number) => void;
664
+ bulkDay: (which: "off" | "on", dayIdx: number) => void;
665
+ applyAvBulk: () => void;
666
+ skip: () => void;
667
+ teamRows: import("vue").ComputedRef<{
668
+ emp: {
669
+ id: number;
670
+ sourceId: string;
671
+ name: string;
672
+ employmentType: "FULLTIME" | "PARTTIME";
673
+ role: string;
674
+ initials: string;
675
+ color: string;
676
+ weekHours: number;
677
+ pct: number;
678
+ contractHours?: number | undefined;
679
+ rate: number;
680
+ positions: string[];
681
+ shifts: ({
682
+ start: string;
683
+ end: string;
684
+ role: string;
685
+ status: import("../types").ShiftStatus;
686
+ clock?: {
687
+ in: string | null;
688
+ out: string | null;
689
+ status: "on-time" | "late" | "early-out" | "absent";
690
+ } | undefined;
691
+ conflict?: boolean | undefined;
692
+ conflictReason?: string | undefined;
693
+ openId?: number | undefined;
694
+ breakMins?: number | undefined;
695
+ breaks?: ({
696
+ type: "DURATION";
697
+ minutes: number;
698
+ breakPayType: "PAID" | "UNPAID";
699
+ } | {
700
+ type: "TIME_RANGE";
701
+ startTime: string;
702
+ endTime: string;
703
+ breakPayType: "PAID" | "UNPAID";
704
+ })[] | undefined;
705
+ assignmentId?: string | undefined;
706
+ updatedAt?: string | undefined;
707
+ splitGroupId?: string | undefined;
708
+ } | {
709
+ timeOff: "approved" | "pending";
710
+ requestId?: string | undefined;
711
+ type?: "OFF_DAY" | "LEAVE" | undefined;
712
+ leaveType?: "ANNUAL" | "MEDICAL" | "EMERGENCY" | "UNPAID" | undefined;
713
+ reason: string;
714
+ half?: boolean | undefined;
715
+ halfPart?: "AM" | "PM" | undefined;
716
+ from?: string | undefined;
717
+ to?: string | undefined;
718
+ appliedOn?: string | undefined;
719
+ note?: string | undefined;
720
+ cert?: {
721
+ name: string;
722
+ size: string;
723
+ } | null | undefined;
724
+ bal?: {
725
+ type: string;
726
+ entitled: number;
727
+ used: number;
728
+ } | undefined;
729
+ } | {
730
+ start: string;
731
+ end: string;
732
+ role: string;
733
+ status: import("../types").ShiftStatus;
734
+ clock?: {
735
+ in: string | null;
736
+ out: string | null;
737
+ status: "on-time" | "late" | "early-out" | "absent";
738
+ } | undefined;
739
+ conflict?: boolean | undefined;
740
+ conflictReason?: string | undefined;
741
+ openId?: number | undefined;
742
+ breakMins?: number | undefined;
743
+ breaks?: ({
744
+ type: "DURATION";
745
+ minutes: number;
746
+ breakPayType: "PAID" | "UNPAID";
747
+ } | {
748
+ type: "TIME_RANGE";
749
+ startTime: string;
750
+ endTime: string;
751
+ breakPayType: "PAID" | "UNPAID";
752
+ })[] | undefined;
753
+ assignmentId?: string | undefined;
754
+ updatedAt?: string | undefined;
755
+ splitGroupId?: string | undefined;
756
+ }[] | null)[];
757
+ remarks: {
758
+ author: string;
759
+ date: string;
760
+ type: "note" | "warning" | "praise";
761
+ text: string;
762
+ }[];
763
+ section: string;
764
+ compGroup?: string | undefined;
765
+ mobile?: string | undefined;
766
+ dial?: string | undefined;
767
+ locations?: string[] | undefined;
768
+ payBasis?: "hourly" | "monthly" | undefined;
769
+ payAmount?: number | undefined;
770
+ maxHours?: number | undefined;
771
+ maxOtHours?: number | undefined;
772
+ minHours?: number | undefined;
773
+ otAfterDaily?: number | undefined;
774
+ preferences?: string[] | undefined;
775
+ seniority?: "senior" | "junior" | "" | undefined;
776
+ availDays?: boolean[] | undefined;
777
+ availHours?: {
778
+ from: string;
779
+ to: string;
780
+ }[] | undefined;
781
+ passcode?: string | undefined;
782
+ masterUser?: boolean | undefined;
783
+ };
784
+ row: import("./onboarding-types").TeamRow;
785
+ }[]>;
786
+ teamPicked: import("vue").ComputedRef<number>;
787
+ teamAllPicked: import("vue").ComputedRef<boolean>;
788
+ teamSomePicked: import("vue").ComputedRef<boolean>;
789
+ pickAll: (checked: boolean) => void;
790
+ setPosition: (empId: number, value: string) => void;
791
+ setEmployment: (empId: number, kind: import("./onboarding-types").TeamEmployment) => void;
792
+ setHours: (empId: number, value: string) => void;
793
+ setRate: (empId: number, value: string) => void;
794
+ bulkOpen: import("vue").Ref<boolean, boolean>;
795
+ bulk: {
796
+ scope: "all" | "full" | "part" | "nopos" | "nopay";
797
+ position: string;
798
+ second: string;
799
+ employment: "" | import("./onboarding-types").TeamEmployment;
800
+ maxHours: string;
801
+ rate: string;
802
+ basis: "" | import("./onboarding-types").TeamBasis;
803
+ };
804
+ bulkCount: import("vue").ComputedRef<number>;
805
+ applyBulk: () => void;
806
+ BULK_NONE: string;
807
+ remainingCommon: import("vue").ComputedRef<string[]>;
808
+ ANY_POSITION_KEY: string;
809
+ holdersOf: (key: string) => {
810
+ id: number;
811
+ sourceId: string;
812
+ name: string;
813
+ employmentType: "FULLTIME" | "PARTTIME";
814
+ role: string;
815
+ initials: string;
816
+ color: string;
817
+ weekHours: number;
818
+ pct: number;
819
+ contractHours?: number | undefined;
820
+ rate: number;
821
+ positions: string[];
822
+ shifts: ({
823
+ start: string;
824
+ end: string;
825
+ role: string;
826
+ status: import("../types").ShiftStatus;
827
+ clock?: {
828
+ in: string | null;
829
+ out: string | null;
830
+ status: "on-time" | "late" | "early-out" | "absent";
831
+ } | undefined;
832
+ conflict?: boolean | undefined;
833
+ conflictReason?: string | undefined;
834
+ openId?: number | undefined;
835
+ breakMins?: number | undefined;
836
+ breaks?: ({
837
+ type: "DURATION";
838
+ minutes: number;
839
+ breakPayType: "PAID" | "UNPAID";
840
+ } | {
841
+ type: "TIME_RANGE";
842
+ startTime: string;
843
+ endTime: string;
844
+ breakPayType: "PAID" | "UNPAID";
845
+ })[] | undefined;
846
+ assignmentId?: string | undefined;
847
+ updatedAt?: string | undefined;
848
+ splitGroupId?: string | undefined;
849
+ } | {
850
+ timeOff: "approved" | "pending";
851
+ requestId?: string | undefined;
852
+ type?: "OFF_DAY" | "LEAVE" | undefined;
853
+ leaveType?: "ANNUAL" | "MEDICAL" | "EMERGENCY" | "UNPAID" | undefined;
854
+ reason: string;
855
+ half?: boolean | undefined;
856
+ halfPart?: "AM" | "PM" | undefined;
857
+ from?: string | undefined;
858
+ to?: string | undefined;
859
+ appliedOn?: string | undefined;
860
+ note?: string | undefined;
861
+ cert?: {
862
+ name: string;
863
+ size: string;
864
+ } | null | undefined;
865
+ bal?: {
866
+ type: string;
867
+ entitled: number;
868
+ used: number;
869
+ } | undefined;
870
+ } | {
871
+ start: string;
872
+ end: string;
873
+ role: string;
874
+ status: import("../types").ShiftStatus;
875
+ clock?: {
876
+ in: string | null;
877
+ out: string | null;
878
+ status: "on-time" | "late" | "early-out" | "absent";
879
+ } | undefined;
880
+ conflict?: boolean | undefined;
881
+ conflictReason?: string | undefined;
882
+ openId?: number | undefined;
883
+ breakMins?: number | undefined;
884
+ breaks?: ({
885
+ type: "DURATION";
886
+ minutes: number;
887
+ breakPayType: "PAID" | "UNPAID";
888
+ } | {
889
+ type: "TIME_RANGE";
890
+ startTime: string;
891
+ endTime: string;
892
+ breakPayType: "PAID" | "UNPAID";
893
+ })[] | undefined;
894
+ assignmentId?: string | undefined;
895
+ updatedAt?: string | undefined;
896
+ splitGroupId?: string | undefined;
897
+ }[] | null)[];
898
+ remarks: {
899
+ author: string;
900
+ date: string;
901
+ type: "note" | "warning" | "praise";
902
+ text: string;
903
+ }[];
904
+ section: string;
905
+ compGroup?: string | undefined;
906
+ mobile?: string | undefined;
907
+ dial?: string | undefined;
908
+ locations?: string[] | undefined;
909
+ payBasis?: "hourly" | "monthly" | undefined;
910
+ payAmount?: number | undefined;
911
+ maxHours?: number | undefined;
912
+ maxOtHours?: number | undefined;
913
+ minHours?: number | undefined;
914
+ otAfterDaily?: number | undefined;
915
+ preferences?: string[] | undefined;
916
+ seniority?: "senior" | "junior" | "" | undefined;
917
+ availDays?: boolean[] | undefined;
918
+ availHours?: {
919
+ from: string;
920
+ to: string;
921
+ }[] | undefined;
922
+ passcode?: string | undefined;
923
+ masterUser?: boolean | undefined;
924
+ }[];
925
+ candidatesFor: (key: string) => {
926
+ id: number;
927
+ sourceId: string;
928
+ name: string;
929
+ employmentType: "FULLTIME" | "PARTTIME";
930
+ role: string;
931
+ initials: string;
932
+ color: string;
933
+ weekHours: number;
934
+ pct: number;
935
+ contractHours?: number | undefined;
936
+ rate: number;
937
+ positions: string[];
938
+ shifts: ({
939
+ start: string;
940
+ end: string;
941
+ role: string;
942
+ status: import("../types").ShiftStatus;
943
+ clock?: {
944
+ in: string | null;
945
+ out: string | null;
946
+ status: "on-time" | "late" | "early-out" | "absent";
947
+ } | undefined;
948
+ conflict?: boolean | undefined;
949
+ conflictReason?: string | undefined;
950
+ openId?: number | undefined;
951
+ breakMins?: number | undefined;
952
+ breaks?: ({
953
+ type: "DURATION";
954
+ minutes: number;
955
+ breakPayType: "PAID" | "UNPAID";
956
+ } | {
957
+ type: "TIME_RANGE";
958
+ startTime: string;
959
+ endTime: string;
960
+ breakPayType: "PAID" | "UNPAID";
961
+ })[] | undefined;
962
+ assignmentId?: string | undefined;
963
+ updatedAt?: string | undefined;
964
+ splitGroupId?: string | undefined;
965
+ } | {
966
+ timeOff: "approved" | "pending";
967
+ requestId?: string | undefined;
968
+ type?: "OFF_DAY" | "LEAVE" | undefined;
969
+ leaveType?: "ANNUAL" | "MEDICAL" | "EMERGENCY" | "UNPAID" | undefined;
970
+ reason: string;
971
+ half?: boolean | undefined;
972
+ halfPart?: "AM" | "PM" | undefined;
973
+ from?: string | undefined;
974
+ to?: string | undefined;
975
+ appliedOn?: string | undefined;
976
+ note?: string | undefined;
977
+ cert?: {
978
+ name: string;
979
+ size: string;
980
+ } | null | undefined;
981
+ bal?: {
982
+ type: string;
983
+ entitled: number;
984
+ used: number;
985
+ } | undefined;
986
+ } | {
987
+ start: string;
988
+ end: string;
989
+ role: string;
990
+ status: import("../types").ShiftStatus;
991
+ clock?: {
992
+ in: string | null;
993
+ out: string | null;
994
+ status: "on-time" | "late" | "early-out" | "absent";
995
+ } | undefined;
996
+ conflict?: boolean | undefined;
997
+ conflictReason?: string | undefined;
998
+ openId?: number | undefined;
999
+ breakMins?: number | undefined;
1000
+ breaks?: ({
1001
+ type: "DURATION";
1002
+ minutes: number;
1003
+ breakPayType: "PAID" | "UNPAID";
1004
+ } | {
1005
+ type: "TIME_RANGE";
1006
+ startTime: string;
1007
+ endTime: string;
1008
+ breakPayType: "PAID" | "UNPAID";
1009
+ })[] | undefined;
1010
+ assignmentId?: string | undefined;
1011
+ updatedAt?: string | undefined;
1012
+ splitGroupId?: string | undefined;
1013
+ }[] | null)[];
1014
+ remarks: {
1015
+ author: string;
1016
+ date: string;
1017
+ type: "note" | "warning" | "praise";
1018
+ text: string;
1019
+ }[];
1020
+ section: string;
1021
+ compGroup?: string | undefined;
1022
+ mobile?: string | undefined;
1023
+ dial?: string | undefined;
1024
+ locations?: string[] | undefined;
1025
+ payBasis?: "hourly" | "monthly" | undefined;
1026
+ payAmount?: number | undefined;
1027
+ maxHours?: number | undefined;
1028
+ maxOtHours?: number | undefined;
1029
+ minHours?: number | undefined;
1030
+ otAfterDaily?: number | undefined;
1031
+ preferences?: string[] | undefined;
1032
+ seniority?: "senior" | "junior" | "" | undefined;
1033
+ availDays?: boolean[] | undefined;
1034
+ availHours?: {
1035
+ from: string;
1036
+ to: string;
1037
+ }[] | undefined;
1038
+ passcode?: string | undefined;
1039
+ masterUser?: boolean | undefined;
1040
+ }[];
1041
+ posPicker: import("vue").Ref<string | null, string | null>;
1042
+ togglePicker: (key: string) => void;
1043
+ assignTo: (empId: number, key: string) => Promise<void>;
1044
+ unassign: (empId: number, key: string) => Promise<void>;
1045
+ employeeCount: import("vue").ComputedRef<number>;
1046
+ addEmployee: {
1047
+ open: import("vue").Ref<boolean, boolean>;
1048
+ selectExistingOpen: import("vue").Ref<boolean, boolean>;
1049
+ step: import("vue").Ref<import("./schedule-add-employee-form").ScheduleAddEmployeeStep, import("./schedule-add-employee-form").ScheduleAddEmployeeStep>;
1050
+ mode: import("vue").Ref<import("./schedule-add-employee-form").ScheduleAddEmployeeMode, import("./schedule-add-employee-form").ScheduleAddEmployeeMode>;
1051
+ form: {
1052
+ name: string;
1053
+ mobile: string;
1054
+ dial: string;
1055
+ employment: "full" | "part";
1056
+ locations: string[];
1057
+ payBasis: "hourly" | "monthly";
1058
+ payAmount: string;
1059
+ maxHours: string;
1060
+ minHours: string;
1061
+ otEnabled: boolean;
1062
+ otAfterDaily: string;
1063
+ maxOtHours: string;
1064
+ availDays: boolean[];
1065
+ availHours: {
1066
+ from: string;
1067
+ to: string;
1068
+ }[];
1069
+ preferences: string;
1070
+ primaryPosition: string;
1071
+ secondaryPositions: string[];
1072
+ seniority: "" | "senior" | "junior";
1073
+ passcode: string[];
1074
+ masterUser: boolean;
1075
+ masterCode: string;
1076
+ posAccessEnabled: boolean;
1077
+ posRoleId: string;
1078
+ };
1079
+ sectionId: import("vue").Ref<string, string>;
1080
+ isEditing: import("vue").ComputedRef<boolean>;
1081
+ editingEmployeeId: import("vue").Ref<number | null, number | null>;
1082
+ locOpen: import("vue").Ref<boolean, boolean>;
1083
+ secOpen: import("vue").Ref<boolean, boolean>;
1084
+ secondaryOptions: import("vue").ComputedRef<string[]>;
1085
+ isPart: import("vue").ComputedRef<boolean>;
1086
+ dayLit: (index: number) => boolean;
1087
+ avLabel: import("vue").ComputedRef<"Weekly availability" | "Time off days">;
1088
+ avAllLabel: import("vue").ComputedRef<"Clear all" | "Select all" | "No days off" | "Every day off">;
1089
+ maxHoursPlaceholder: import("vue").ComputedRef<"Hours per week" | "No cap">;
1090
+ otAfterDailyPlaceholder: import("vue").ComputedRef<string>;
1091
+ toggleOt: () => void;
1092
+ payUnit: import("vue").ComputedRef<"/month" | "/hour">;
1093
+ effectiveRate: import("vue").ComputedRef<number>;
1094
+ passcodeValue: import("vue").ComputedRef<string>;
1095
+ passcodeOk: import("vue").ComputedRef<boolean>;
1096
+ currentLocationLabel: import("vue").ComputedRef<string>;
1097
+ locationOptions: import("vue").Reactive<string[]>;
1098
+ masterCodeError: import("vue").ComputedRef<boolean>;
1099
+ isNewUser: import("vue").ComputedRef<boolean>;
1100
+ footerHint: import("vue").ComputedRef<"Pick who — this outlet's own pay, position and hours are still set here." | "One short form. Rest days are set on their profile afterwards.">;
1101
+ primaryRoleLabel: import("vue").ComputedRef<string>;
1102
+ locationsSummary: import("vue").ComputedRef<string>;
1103
+ payLine: import("vue").ComputedRef<string>;
1104
+ nameError: import("vue").ComputedRef<boolean>;
1105
+ passError: import("vue").ComputedRef<boolean>;
1106
+ availabilityError: import("vue").ComputedRef<boolean>;
1107
+ saving: import("vue").Ref<boolean, boolean>;
1108
+ saveError: import("vue").Ref<string | null, string | null>;
1109
+ candidatesLoading: import("vue").Ref<boolean, boolean>;
1110
+ candidatesError: import("vue").Ref<string | null, string | null>;
1111
+ openWizard: (section: string) => void;
1112
+ openEditFor: (emp: import("../types").Employee) => void;
1113
+ close: () => void;
1114
+ setMode: (m: import("./schedule-add-employee-form").ScheduleAddEmployeeMode) => void;
1115
+ openSelectExisting: () => void;
1116
+ closeSelectExisting: () => void;
1117
+ pickExisting: (employeeId: string) => Promise<void>;
1118
+ next: () => void;
1119
+ back: () => void;
1120
+ toggleMulti: (which: "loc" | "sec") => void;
1121
+ toggleLocation: (location: string) => void;
1122
+ removeLocation: (location: string) => void;
1123
+ toggleSecondary: (position: string) => void;
1124
+ removeSecondary: (position: string) => void;
1125
+ setPrimaryPosition: (position: string) => void;
1126
+ setPayBasis: (basis: "hourly" | "monthly") => void;
1127
+ toggleAvailDay: (index: number) => void;
1128
+ availAll: () => void;
1129
+ setAvailHour: (index: number, field: "from" | "to", value: string) => void;
1130
+ copyAvailHourDown: (index: number) => void;
1131
+ setPasscodeDigit: (index: number, value: string) => void;
1132
+ generatePasscode: () => void;
1133
+ togglePosAccess: () => void;
1134
+ setPosRole: (roleId: string) => void;
1135
+ posRoleOptions: import("vue").ComputedRef<import("../../../types/role").Role[]>;
1136
+ create: () => Promise<boolean>;
1137
+ };
1138
+ openWizard: () => void;
1139
+ close: () => void;
1140
+ next: () => Promise<void>;
1141
+ back: () => void;
1142
+ jump: (idx: number) => void;
1143
+ addTeamMember: () => void;
1144
+ };
1145
+ export type ScheduleOnboardingWizardApi = ReturnType<typeof useScheduleOnboardingWizard>;