@feedmepos/mf-hrm-portal 2.3.0-dev.19 → 2.3.0-dev.20

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 (235) hide show
  1. package/dist/{ApprovalCodeList-INrLNl4W.js → ApprovalCodeList-ChZm8Cqn.js} +7 -7
  2. package/dist/{AuditLogList-BDgSBAPi.js → AuditLogList-DNb_HY2b.js} +5 -5
  3. package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-BQS6Y708.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-C1FZLRtw.js} +2 -2
  4. package/dist/{EmployeeList-DsuNI7P7.js → EmployeeList-D0_eAXnx.js} +254 -264
  5. package/dist/{FormItem.vue_vue_type_script_setup_true_lang-DPT2FoIc.js → FormItem.vue_vue_type_script_setup_true_lang-DZEUOnX-.js} +6 -6
  6. package/dist/{GrantUserList-Bmgie1HE.js → GrantUserList-HHl1a4dz.js} +8 -8
  7. package/dist/{Main-B1e9eyqv.js → Main-B35_MSKW.js} +11 -11
  8. package/dist/{Main-BKt8r7Ut.js → Main-DFk9nc3J.js} +8 -8
  9. package/dist/{Main-SBhiLPdR.js → Main-DMsmgQyL.js} +5 -5
  10. package/dist/{PermissionSetList-CMOKTS_m.js → PermissionSetList-CglEdefD.js} +19 -18
  11. package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-K1Ad4e-f.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-9tG8k0mR.js} +807 -807
  12. package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-XHuHin8t.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-DQcgZ0nF.js} +1 -1
  13. package/dist/ResponsiveContextMenu.vue_vue_type_script_setup_true_lang-mSJFKo7r.js +132 -0
  14. package/dist/{RoleList-DcbQo51I.js → RoleList-_UsStsN7.js} +21 -20
  15. package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-DYhMssqd.js +530 -0
  16. package/dist/ScheduleGeneralPage-CP3Vb4XJ.js +776 -0
  17. package/dist/ScheduleModal.vue_vue_type_script_setup_true_lang-B_OqKDw_.js +2439 -0
  18. package/dist/SchedulePage-5cbZyAow.js +19250 -0
  19. package/dist/SchedulePositionPage-DwgNOVe8.js +262 -0
  20. package/dist/SelectFilter-BWM2fbe4.js +264 -0
  21. package/dist/{TeamMemberList-Bvjq14lE.js → TeamMemberList-CiYROtup.js} +25 -24
  22. package/dist/{TimesheetList-CybTPHdT.js → TimesheetList-ohxQpGBt.js} +10 -10
  23. package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-CGmVMnqS.js → TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-CHgKOFjZ.js} +3 -3
  24. package/dist/{app-CEcv-vMB.js → app-hqb3iLmH.js} +4164 -2970
  25. package/dist/app.js +1 -1
  26. package/dist/{approval-code-jIjkeVEb.js → approval-code-BXUiojPH.js} +1 -1
  27. package/dist/{dayjs.min-yw8fgQPr.js → dayjs.min-jdSYngTL.js} +1 -1
  28. package/dist/{employee-ByRgP_2p.js → employee-DQksdva7.js} +29 -28
  29. package/dist/{grant-user-SNiDV22U.js → grant-user-CBJ3gEgW.js} +1 -1
  30. package/dist/{iteration-B3Z1Ojal.js → iteration-Ws9RBh0x.js} +1 -1
  31. package/dist/{lodash-D2BUlQJ1.js → lodash-Db0CBH2I.js} +1 -1
  32. package/dist/object-Dwyg2LgX.js +16 -0
  33. package/dist/{restaurant-BTpBmfBV.js → restaurant-D2mfKHaH.js} +230 -224
  34. package/dist/{role-_BDO50Cj.js → role-C5BIFEPz.js} +2 -2
  35. package/dist/{rule-FuP71XrW.js → rule-CU0v7pCG.js} +36 -36
  36. package/dist/src/api/restaurant/index.d.ts +2 -0
  37. package/dist/src/api/schedule/index.d.ts +63 -0
  38. package/dist/src/components/layout/PortalShell.vue.d.ts +12 -0
  39. package/dist/src/components/layout/SchedulePromoBanner.vue.d.ts +2 -0
  40. package/dist/src/components/layout/withScheduleShell.d.ts +10 -0
  41. package/dist/src/composables/useDiscardConfirm.d.ts +3 -1
  42. package/dist/src/composables/useMessage.d.ts +8 -2
  43. package/dist/src/router/shared.d.ts +4 -1
  44. package/dist/src/types/employee.d.ts +1 -0
  45. package/dist/src/types/schedule.d.ts +23 -0
  46. package/dist/src/views/audit-log/locales/index.d.ts +252 -0
  47. package/dist/src/views/scheduling/ScheduleGeneralPage.vue.d.ts +3 -0
  48. package/dist/src/views/scheduling/SchedulePage.vue.d.ts +3 -0
  49. package/dist/src/views/scheduling/SchedulePositionPage.vue.d.ts +3 -0
  50. package/dist/src/views/scheduling/components/ScheduleAddEmployeeIdentitySection.vue.d.ts +6 -0
  51. package/dist/src/views/scheduling/components/ScheduleAddEmployeeModal.vue.d.ts +12 -0
  52. package/dist/src/views/scheduling/components/ScheduleAddEmployeeModeStep.vue.d.ts +6 -0
  53. package/dist/src/views/scheduling/components/ScheduleAddEmployeePosAccessSection.vue.d.ts +6 -0
  54. package/dist/src/views/scheduling/components/ScheduleAddEmployeePositionsSection.vue.d.ts +10 -0
  55. package/dist/src/views/scheduling/components/ScheduleAddEmployeeSchedulingSection.vue.d.ts +6 -0
  56. package/dist/src/views/scheduling/components/ScheduleAddPickPopover.vue.d.ts +6 -0
  57. package/dist/src/views/scheduling/components/ScheduleAddPositionModal.vue.d.ts +6 -0
  58. package/dist/src/views/scheduling/components/ScheduleAreaRows.vue.d.ts +41 -0
  59. package/dist/src/views/scheduling/components/ScheduleAutoScheduleDetailsModal.vue.d.ts +6 -0
  60. package/dist/src/views/scheduling/components/ScheduleAutoScheduleModal.vue.d.ts +10 -0
  61. package/dist/src/views/scheduling/components/ScheduleBoardAreaRows.vue.d.ts +25 -0
  62. package/dist/src/views/scheduling/components/ScheduleBoardEditOverlays.vue.d.ts +17 -0
  63. package/dist/src/views/scheduling/components/ScheduleBoardEmployeeRows.vue.d.ts +31 -0
  64. package/dist/src/views/scheduling/components/ScheduleBoardGridHeader.vue.d.ts +29 -0
  65. package/dist/src/views/scheduling/components/ScheduleBoardInteractionOverlays.vue.d.ts +32 -0
  66. package/dist/src/views/scheduling/components/ScheduleBoardOnboardingOverlays.vue.d.ts +26 -0
  67. package/dist/src/views/scheduling/components/ScheduleBoardRails.vue.d.ts +17 -0
  68. package/dist/src/views/scheduling/components/ScheduleBoardToolbar.vue.d.ts +38 -0
  69. package/dist/src/views/scheduling/components/ScheduleBoardUtilityOverlays.vue.d.ts +22 -0
  70. package/dist/src/views/scheduling/components/ScheduleButton.vue.d.ts +23 -0
  71. package/dist/src/views/scheduling/components/ScheduleChangeEmployeeModal.vue.d.ts +8 -0
  72. package/dist/src/views/scheduling/components/ScheduleCloneOutletModal.vue.d.ts +6 -0
  73. package/dist/src/views/scheduling/components/ScheduleCoach.vue.d.ts +6 -0
  74. package/dist/src/views/scheduling/components/ScheduleCompletionDialog.vue.d.ts +15 -0
  75. package/dist/src/views/scheduling/components/ScheduleConfirmModal.vue.d.ts +35 -0
  76. package/dist/src/views/scheduling/components/ScheduleContextMenu.vue.d.ts +17 -0
  77. package/dist/src/views/scheduling/components/ScheduleCostRail.vue.d.ts +8 -0
  78. package/dist/src/views/scheduling/components/ScheduleCostRailEmptyArt.vue.d.ts +2 -0
  79. package/dist/src/views/scheduling/components/ScheduleDateRangePopover.vue.d.ts +6 -0
  80. package/dist/src/views/scheduling/components/ScheduleDayNotePopover.vue.d.ts +6 -0
  81. package/dist/src/views/scheduling/components/ScheduleDayTimeline.vue.d.ts +17 -0
  82. package/dist/src/views/scheduling/components/ScheduleDemandRow.vue.d.ts +23 -0
  83. package/dist/src/views/scheduling/components/ScheduleDemandSheet.vue.d.ts +10 -0
  84. package/dist/src/views/scheduling/components/ScheduleDotsIcon.vue.d.ts +2 -0
  85. package/dist/src/views/scheduling/components/ScheduleEmployeeDetailPanel.vue.d.ts +12 -0
  86. package/dist/src/views/scheduling/components/ScheduleEmployeeIdentity.vue.d.ts +17 -0
  87. package/dist/src/views/scheduling/components/ScheduleExportPreview.vue.d.ts +7 -0
  88. package/dist/src/views/scheduling/components/ScheduleFilterBar.vue.d.ts +18 -0
  89. package/dist/src/views/scheduling/components/ScheduleGapPopover.vue.d.ts +6 -0
  90. package/dist/src/views/scheduling/components/ScheduleGridHeader.vue.d.ts +18 -0
  91. package/dist/src/views/scheduling/components/ScheduleGridSkeleton.vue.d.ts +2 -0
  92. package/dist/src/views/scheduling/components/ScheduleLeaveEditModal.vue.d.ts +6 -0
  93. package/dist/src/views/scheduling/components/ScheduleLoadState.vue.d.ts +9 -0
  94. package/dist/src/views/scheduling/components/ScheduleModal.vue.d.ts +26 -0
  95. package/dist/src/views/scheduling/components/ScheduleOnboardingAssignPositionModal.vue.d.ts +6 -0
  96. package/dist/src/views/scheduling/components/ScheduleOnboardingClosedDayConfirm.vue.d.ts +6 -0
  97. package/dist/src/views/scheduling/components/ScheduleOnboardingDemandDays.vue.d.ts +6 -0
  98. package/dist/src/views/scheduling/components/ScheduleOnboardingDemandFooter.vue.d.ts +6 -0
  99. package/dist/src/views/scheduling/components/ScheduleOnboardingDemandHeader.vue.d.ts +6 -0
  100. package/dist/src/views/scheduling/components/ScheduleOnboardingDoneArt.vue.d.ts +2 -0
  101. package/dist/src/views/scheduling/components/ScheduleOnboardingHoursProfileNotice.vue.d.ts +10 -0
  102. package/dist/src/views/scheduling/components/ScheduleOnboardingPositions.vue.d.ts +6 -0
  103. package/dist/src/views/scheduling/components/ScheduleOnboardingReview.vue.d.ts +6 -0
  104. package/dist/src/views/scheduling/components/ScheduleOnboardingSettings.vue.d.ts +6 -0
  105. package/dist/src/views/scheduling/components/ScheduleOnboardingWelcome.vue.d.ts +11 -0
  106. package/dist/src/views/scheduling/components/ScheduleOnboardingWizard.vue.d.ts +9 -0
  107. package/dist/src/views/scheduling/components/ScheduleOnboardingWizardFooter.vue.d.ts +6 -0
  108. package/dist/src/views/scheduling/components/ScheduleOnboardingWizardHeader.vue.d.ts +11 -0
  109. package/dist/src/views/scheduling/components/SchedulePublishModal.vue.d.ts +8 -0
  110. package/dist/src/views/scheduling/components/SchedulePublishShareArt.vue.d.ts +2 -0
  111. package/dist/src/views/scheduling/components/ScheduleReviewBar.vue.d.ts +12 -0
  112. package/dist/src/views/scheduling/components/ScheduleSelect.vue.d.ts +70 -0
  113. package/dist/src/views/scheduling/components/ScheduleSelectExistingEmployeeModal.vue.d.ts +6 -0
  114. package/dist/src/views/scheduling/components/ScheduleSetupBanner.vue.d.ts +12 -0
  115. package/dist/src/views/scheduling/components/ScheduleShiftCell.vue.d.ts +35 -0
  116. package/dist/src/views/scheduling/components/ScheduleShiftHeadcountEditor.vue.d.ts +10 -0
  117. package/dist/src/views/scheduling/components/ScheduleShiftImpact.vue.d.ts +6 -0
  118. package/dist/src/views/scheduling/components/ScheduleShiftMoreOptions.vue.d.ts +8 -0
  119. package/dist/src/views/scheduling/components/ScheduleShiftPopover.vue.d.ts +16 -0
  120. package/dist/src/views/scheduling/components/ScheduleShiftRepeatDaysRow.vue.d.ts +8 -0
  121. package/dist/src/views/scheduling/components/ScheduleShiftSegmentsEditor.vue.d.ts +8 -0
  122. package/dist/src/views/scheduling/components/ScheduleShiftWhoPicker.vue.d.ts +25 -0
  123. package/dist/src/views/scheduling/components/ScheduleStaffRail.vue.d.ts +16 -0
  124. package/dist/src/views/scheduling/components/ScheduleStaffRows.vue.d.ts +50 -0
  125. package/dist/src/views/scheduling/components/ScheduleStatsRow.vue.d.ts +12 -0
  126. package/dist/src/views/scheduling/components/ScheduleSwapShiftsModal.vue.d.ts +8 -0
  127. package/dist/src/views/scheduling/components/ScheduleTimePickerPopover.vue.d.ts +6 -0
  128. package/dist/src/views/scheduling/components/ScheduleTopbar.vue.d.ts +20 -0
  129. package/dist/src/views/scheduling/composables/auto-schedule-mapping.d.ts +33 -0
  130. package/dist/src/views/scheduling/composables/onboarding-constants.d.ts +5 -0
  131. package/dist/src/views/scheduling/composables/onboarding-hours.d.ts +7 -0
  132. package/dist/src/views/scheduling/composables/onboarding-types.d.ts +51 -0
  133. package/dist/src/views/scheduling/composables/remyPrompt.d.ts +15 -0
  134. package/dist/src/views/scheduling/composables/schedule-add-employee-form.d.ts +82 -0
  135. package/dist/src/views/scheduling/composables/schedule-board-helpers.d.ts +63 -0
  136. package/dist/src/views/scheduling/composables/schedule-breaks.d.ts +9 -0
  137. package/dist/src/views/scheduling/composables/schedule-calendar.d.ts +7 -0
  138. package/dist/src/views/scheduling/composables/schedule-cost.d.ts +19 -0
  139. package/dist/src/views/scheduling/composables/schedule-day-meta.d.ts +21 -0
  140. package/dist/src/views/scheduling/composables/schedule-demand-domain.d.ts +23 -0
  141. package/dist/src/views/scheduling/composables/schedule-employee-profile.d.ts +7 -0
  142. package/dist/src/views/scheduling/composables/schedule-error.d.ts +3 -0
  143. package/dist/src/views/scheduling/composables/schedule-export-matrix.d.ts +14 -0
  144. package/dist/src/views/scheduling/composables/schedule-popover-position.d.ts +16 -0
  145. package/dist/src/views/scheduling/composables/schedule-quick-pick.d.ts +22 -0
  146. package/dist/src/views/scheduling/composables/schedule-shift-time.d.ts +29 -0
  147. package/dist/src/views/scheduling/composables/schedule-time.d.ts +8 -0
  148. package/dist/src/views/scheduling/composables/schedule-week-cache.d.ts +7 -0
  149. package/dist/src/views/scheduling/composables/useCollapsedList.d.ts +9 -0
  150. package/dist/src/views/scheduling/composables/useRemyAppStore.d.ts +16 -0
  151. package/dist/src/views/scheduling/composables/useScheduleAddEmployee.d.ts +120 -0
  152. package/dist/src/views/scheduling/composables/useScheduleAddPick.d.ts +73 -0
  153. package/dist/src/views/scheduling/composables/useScheduleAreaBoard.d.ts +50 -0
  154. package/dist/src/views/scheduling/composables/useScheduleAreaDragDrop.d.ts +11 -0
  155. package/dist/src/views/scheduling/composables/useScheduleAssignmentMutations.d.ts +13 -0
  156. package/dist/src/views/scheduling/composables/useScheduleAutoSchedule.d.ts +297 -0
  157. package/dist/src/views/scheduling/composables/useScheduleBoard.d.ts +612 -0
  158. package/dist/src/views/scheduling/composables/useScheduleCellState.d.ts +27 -0
  159. package/dist/src/views/scheduling/composables/useScheduleClashDetection.d.ts +28 -0
  160. package/dist/src/views/scheduling/composables/useScheduleCloneOutletModal.d.ts +21 -0
  161. package/dist/src/views/scheduling/composables/useScheduleCoach.d.ts +80 -0
  162. package/dist/src/views/scheduling/composables/useScheduleCopyWeek.d.ts +12 -0
  163. package/dist/src/views/scheduling/composables/useScheduleCostRail.d.ts +60 -0
  164. package/dist/src/views/scheduling/composables/useScheduleDayNote.d.ts +44 -0
  165. package/dist/src/views/scheduling/composables/useScheduleDayTimeline.d.ts +111 -0
  166. package/dist/src/views/scheduling/composables/useScheduleDemand.d.ts +59 -0
  167. package/dist/src/views/scheduling/composables/useScheduleDemandRow.d.ts +47 -0
  168. package/dist/src/views/scheduling/composables/useScheduleDemandSheet.d.ts +166 -0
  169. package/dist/src/views/scheduling/composables/useScheduleDragDrop.d.ts +55 -0
  170. package/dist/src/views/scheduling/composables/useScheduleEmployeeAccess.d.ts +24 -0
  171. package/dist/src/views/scheduling/composables/useScheduleEmployeeAvailability.d.ts +13 -0
  172. package/dist/src/views/scheduling/composables/useScheduleEmployeeCandidates.d.ts +30 -0
  173. package/dist/src/views/scheduling/composables/useScheduleEmployeeCompensation.d.ts +7 -0
  174. package/dist/src/views/scheduling/composables/useScheduleEmployeeForm.d.ts +22 -0
  175. package/dist/src/views/scheduling/composables/useScheduleEmployeeIdentity.d.ts +50 -0
  176. package/dist/src/views/scheduling/composables/useScheduleEmployeeMenu.d.ts +38 -0
  177. package/dist/src/views/scheduling/composables/useScheduleEmployeePersistence.d.ts +30 -0
  178. package/dist/src/views/scheduling/composables/useScheduleEmployeeProfile.d.ts +16 -0
  179. package/dist/src/views/scheduling/composables/useScheduleEmployeeValidation.d.ts +18 -0
  180. package/dist/src/views/scheduling/composables/useScheduleExport.d.ts +51 -0
  181. package/dist/src/views/scheduling/composables/useScheduleFilterBar.d.ts +14 -0
  182. package/dist/src/views/scheduling/composables/useScheduleGapPopover.d.ts +79 -0
  183. package/dist/src/views/scheduling/composables/useScheduleLeave.d.ts +59 -0
  184. package/dist/src/views/scheduling/composables/useScheduleLegend.d.ts +15 -0
  185. package/dist/src/views/scheduling/composables/useScheduleOnboardingAvailability.d.ts +58 -0
  186. package/dist/src/views/scheduling/composables/useScheduleOnboardingDemand.d.ts +45 -0
  187. package/dist/src/views/scheduling/composables/useScheduleOnboardingEmployees.d.ts +231 -0
  188. package/dist/src/views/scheduling/composables/useScheduleOnboardingFlow.d.ts +9 -0
  189. package/dist/src/views/scheduling/composables/useScheduleOnboardingHours.d.ts +15 -0
  190. package/dist/src/views/scheduling/composables/useScheduleOnboardingNavigation.d.ts +11 -0
  191. package/dist/src/views/scheduling/composables/useScheduleOnboardingPersistence.d.ts +13 -0
  192. package/dist/src/views/scheduling/composables/useScheduleOnboardingWizard.d.ts +1522 -0
  193. package/dist/src/views/scheduling/composables/useScheduleOutlet.d.ts +25 -0
  194. package/dist/src/views/scheduling/composables/useSchedulePageActions.d.ts +18 -0
  195. package/dist/src/views/scheduling/composables/useSchedulePageBootstrap.d.ts +9 -0
  196. package/dist/src/views/scheduling/composables/useSchedulePageCellActions.d.ts +21 -0
  197. package/dist/src/views/scheduling/composables/useSchedulePageCellDrop.d.ts +20 -0
  198. package/dist/src/views/scheduling/composables/useSchedulePageClearActions.d.ts +21 -0
  199. package/dist/src/views/scheduling/composables/useSchedulePageEmployeeActions.d.ts +22 -0
  200. package/dist/src/views/scheduling/composables/useSchedulePageOverlays.d.ts +21 -0
  201. package/dist/src/views/scheduling/composables/useSchedulePdfExport.d.ts +19 -0
  202. package/dist/src/views/scheduling/composables/useSchedulePositionModal.d.ts +55 -0
  203. package/dist/src/views/scheduling/composables/useSchedulePositions.d.ts +35 -0
  204. package/dist/src/views/scheduling/composables/useSchedulePublish.d.ts +126 -0
  205. package/dist/src/views/scheduling/composables/useSchedulePublishPersistence.d.ts +11 -0
  206. package/dist/src/views/scheduling/composables/useScheduleRangeCalendar.d.ts +27 -0
  207. package/dist/src/views/scheduling/composables/useScheduleRoster.d.ts +313 -0
  208. package/dist/src/views/scheduling/composables/useScheduleSettings.d.ts +40 -0
  209. package/dist/src/views/scheduling/composables/useScheduleSetupBanner.d.ts +17 -0
  210. package/dist/src/views/scheduling/composables/useScheduleShiftActions.d.ts +245 -0
  211. package/dist/src/views/scheduling/composables/useScheduleShiftDraft.d.ts +63 -0
  212. package/dist/src/views/scheduling/composables/useScheduleShiftPersistence.d.ts +17 -0
  213. package/dist/src/views/scheduling/composables/useScheduleShiftPopover.d.ts +255 -0
  214. package/dist/src/views/scheduling/composables/useScheduleStatsRow.d.ts +27 -0
  215. package/dist/src/views/scheduling/composables/useScheduleTimePicker.d.ts +49 -0
  216. package/dist/src/views/scheduling/composables/useScheduleTour.d.ts +95 -0
  217. package/dist/src/views/scheduling/composables/useScheduleViewportFit.d.ts +9 -0
  218. package/dist/src/views/scheduling/country-rules/index.d.ts +29 -0
  219. package/dist/src/views/scheduling/data.d.ts +123 -0
  220. package/dist/src/views/scheduling/locales/index.d.ts +716 -0
  221. package/dist/src/views/scheduling/schedule-constants.d.ts +7 -0
  222. package/dist/src/views/scheduling/schedule-state.d.ts +767 -0
  223. package/dist/src/views/scheduling/schedule-store.d.ts +135 -0
  224. package/dist/src/views/scheduling/types.d.ts +380 -0
  225. package/dist/src/views/team/components/PortalConditionForm.vue.d.ts +2 -2
  226. package/dist/src/views/team/condition-builders/ConditionBuilderForm.vue.d.ts +2 -2
  227. package/dist/style.css +1 -1
  228. package/dist/tsconfig.app.tsbuildinfo +1 -1
  229. package/dist/{useAppStore-DCwd8GWN.js → useAppStore-DZCdxlCd.js} +1 -1
  230. package/dist/useDiscardConfirm-CzZSPyvh.js +28 -0
  231. package/dist/{useLoading-CXzTpIVv.js → useLoading-Nygx2zn8.js} +1 -1
  232. package/dist/{useReportPermissions-5AYWAQ8e.js → useReportPermissions-DeJMpuw7.js} +3 -3
  233. package/package.json +4 -2
  234. package/dist/SelectFilter-ATOm0hdn.js +0 -269
  235. package/dist/useDiscardConfirm-DPhEV6v0.js +0 -157
@@ -1,8 +1,8 @@
1
1
  import { defineStore as x, storeToRefs as b } from "pinia";
2
2
  import { ref as w } from "vue";
3
3
  import { useCoreStore as B } from "@feedmepos/mf-common";
4
- import { s as v } from "./iteration-B3Z1Ojal.js";
5
- import { g as f, b as p, u as I } from "./restaurant-BTpBmfBV.js";
4
+ import { s as v } from "./iteration-Ws9RBh0x.js";
5
+ import { g as f, b as p, u as I } from "./restaurant-D2mfKHaH.js";
6
6
  const R = {
7
7
  async readRoles() {
8
8
  return f(await p().get("/pos-roles"));
@@ -1,22 +1,22 @@
1
- import { s as W, c as q, e as y } from "./iteration-B3Z1Ojal.js";
2
- import { h as O, d as V, e as _, b as F, n as h, O as ee, D as M } from "./app-CEcv-vMB.js";
1
+ import { s as W, c as q, e as y } from "./iteration-Ws9RBh0x.js";
2
+ import { h as O, c as V, d as _, v as F, n as h, O as ee, D as M } from "./app-hqb3iLmH.js";
3
3
  import { s as se } from "./utils-BZkjJbju.js";
4
- import { g, b, q as x, u as te } from "./restaurant-BTpBmfBV.js";
4
+ import { g, b as v, q as x, u as te } from "./restaurant-D2mfKHaH.js";
5
5
  import { defineStore as z, storeToRefs as K } from "pinia";
6
6
  import { ref as S, computed as T } from "vue";
7
7
  import { useCoreStore as X } from "@feedmepos/mf-common";
8
8
  const E = "/permission-sets", N = {
9
9
  async read() {
10
- return g(await b().get(E));
10
+ return g(await v().get(E));
11
11
  },
12
12
  async create(e) {
13
- return g(await b().post(E, e));
13
+ return g(await v().post(E, e));
14
14
  },
15
15
  async update(e, s) {
16
- return g(await b().put(`${E}/${e}`, s));
16
+ return g(await v().put(`${E}/${e}`, s));
17
17
  },
18
18
  async delete(e) {
19
- return g(await b().delete(`${E}/${e}`));
19
+ return g(await v().delete(`${E}/${e}`));
20
20
  }
21
21
  }, ne = z("permissionSet", () => {
22
22
  const { currentBusiness: e } = X(), s = S([]), r = S(!1), n = S(null);
@@ -140,7 +140,7 @@ function G(e, s) {
140
140
  }));
141
141
  }
142
142
  for (const f of c.permissionSets ?? []) {
143
- const m = O(f), p = B(m, ["manage"]), v = {
143
+ const m = O(f), p = B(m, ["manage"]), b = {
144
144
  subject: m,
145
145
  actions: ["manage"],
146
146
  source: {
@@ -150,7 +150,7 @@ function G(e, s) {
150
150
  trace: d
151
151
  }
152
152
  };
153
- n.has(p) || (n.add(p), r.push(v)), a.push(v);
153
+ n.has(p) || (n.add(p), r.push(b)), a.push(b);
154
154
  }
155
155
  }
156
156
  return [...r.filter((o) => !o.inverted), ...r.filter((o) => o.inverted)];
@@ -227,10 +227,10 @@ function _e(e, s) {
227
227
  continue;
228
228
  }
229
229
  const f = Object.keys(l)[0], m = l[f].$in.filter(
230
- (v) => !d[f].$in.includes(v)
230
+ (b) => !d[f].$in.includes(b)
231
231
  );
232
232
  m.length > 0 && t.push(r(u, m)), d[f].$in.filter(
233
- (v) => !l[f].$in.includes(v)
233
+ (b) => !l[f].$in.includes(b)
234
234
  ).length > 0 && t.push(c);
235
235
  } else if (!u.conditions && c.conditions)
236
236
  t.push(c);
@@ -239,7 +239,7 @@ function _e(e, s) {
239
239
  else if (!u.conditions && !c.conditions) {
240
240
  const l = new Set(u.actions), d = new Set(c.actions), f = c.actions.some((p) => !l.has(p)), m = u.actions.filter((p) => !d.has(p));
241
241
  if (f) {
242
- const p = c.actions.filter((v) => !l.has(v));
242
+ const p = c.actions.filter((b) => !l.has(b));
243
243
  t.push({
244
244
  ...c,
245
245
  actions: p
@@ -385,26 +385,26 @@ function de(e, s) {
385
385
  }
386
386
  const P = "/permission-assignments", I = {
387
387
  async readAll() {
388
- return g(await b().get(P));
388
+ return g(await v().get(P));
389
389
  },
390
390
  async readByUserId(e) {
391
- return g(await b().get(`${P}/user/${e}`));
391
+ return g(await v().get(`${P}/user/${e}`));
392
392
  },
393
393
  async readById(e) {
394
- return g(await b().get(`${P}/${e}`));
394
+ return g(await v().get(`${P}/${e}`));
395
395
  },
396
396
  async create(e) {
397
- return g(await b().post(P, e));
397
+ return g(await v().post(P, e));
398
398
  },
399
399
  async update(e, s) {
400
- return g(await b().put(`${P}/${e}`, s));
400
+ return g(await v().put(`${P}/${e}`, s));
401
401
  },
402
402
  async delete(e) {
403
- return g(await b().delete(`${P}/${e}`));
403
+ return g(await v().delete(`${P}/${e}`));
404
404
  },
405
405
  async addReportManagePermission(e, s) {
406
406
  return g(
407
- await b().post("/my-permissions/report-manage", { permissionKey: e, label: s })
407
+ await v().post("/my-permissions/report-manage", { permissionKey: e, label: s })
408
408
  );
409
409
  }
410
410
  }, fe = z("permissionAssignment", () => {
@@ -515,7 +515,7 @@ function A(e) {
515
515
  (t == null ? void 0 : t.permissionSetIds) ?? [],
516
516
  s.permissionSets.value
517
517
  ), o = Q(a).map(
518
- ({ setNames: p, ...v }) => v
518
+ ({ setNames: p, ...b }) => b
519
519
  ), u = t == null ? void 0 : t.customPermissions, c = u ?? e.permissions.map((p) => ({
520
520
  ...p,
521
521
  subject: O(p.subject)
@@ -531,8 +531,8 @@ function A(e) {
531
531
  email: e.email,
532
532
  restaurants: W(
533
533
  m.map((p) => {
534
- var v;
535
- return ((v = n.value.find((Z) => Z._id === p)) == null ? void 0 : v.profile.name) ?? "";
534
+ var b;
535
+ return ((b = n.value.find((Z) => Z._id === p)) == null ? void 0 : b.profile.name) ?? "";
536
536
  })
537
537
  ),
538
538
  managableRestaurantIds: f,
@@ -540,18 +540,18 @@ function A(e) {
540
540
  permissions: l
541
541
  };
542
542
  }
543
- const be = Object.freeze(
543
+ const ve = Object.freeze(
544
544
  Object.values(ee)
545
545
  ), Ce = {
546
546
  async readTeamMembers() {
547
547
  return g(
548
- await b().get("/portal-users")
548
+ await v().get("/portal-users")
549
549
  ).map(A);
550
550
  },
551
551
  async readTeamMembersPage(e) {
552
552
  var r, n, i;
553
553
  const s = g(
554
- await b().get("/portal-users/paged", {
554
+ await v().get("/portal-users/paged", {
555
555
  params: {
556
556
  limit: e.limit,
557
557
  offset: e.offset,
@@ -569,28 +569,28 @@ const be = Object.freeze(
569
569
  },
570
570
  async readTeamMember(e) {
571
571
  return A(
572
- g(await b().get(`/portal-users/${e}`))
572
+ g(await v().get(`/portal-users/${e}`))
573
573
  );
574
574
  },
575
575
  async createTeamMember(e) {
576
576
  return A(
577
- g(await b().post("/portal-users", e))
577
+ g(await v().post("/portal-users", e))
578
578
  );
579
579
  },
580
580
  async updateTeamMember(e, s) {
581
581
  return A(
582
- g(await b().put(`/portal-users/${e}`, s))
582
+ g(await v().put(`/portal-users/${e}`, s))
583
583
  );
584
584
  },
585
585
  async deleteTeamMember(e) {
586
- return g(await b().delete(`/portal-users/${e}`));
586
+ return g(await v().delete(`/portal-users/${e}`));
587
587
  },
588
588
  async readTeamMemberPosUserIds() {
589
- return g(await b().get("/portal-users")).map((s) => s.posUserId);
589
+ return g(await v().get("/portal-users")).map((s) => s.posUserId);
590
590
  },
591
591
  async generateMasterUserPasscode(e) {
592
592
  return `${g(
593
- await b().post("/portal-users/generate-passcode", {
593
+ await v().post("/portal-users/generate-passcode", {
594
594
  restaurantIds: e.restaurantIds,
595
595
  excludePosUserId: e.excludePosUserId
596
596
  })
@@ -674,12 +674,12 @@ function Y(e) {
674
674
  return s ? s.conditions ? JSON.parse(s.conditions).restaurantId.$in : null : [];
675
675
  }
676
676
  function Be(e, s) {
677
- return s.isOwner ? { restaurantIds: null, roleIds: null } : { restaurantIds: Y(e), roleIds: ve(e) };
677
+ return s.isOwner ? { restaurantIds: null, roleIds: null } : { restaurantIds: Y(e), roleIds: be(e) };
678
678
  }
679
679
  function Me(e) {
680
680
  return (e == null ? void 0 : e.some((s) => s.subject === "all")) ?? !1;
681
681
  }
682
- function ve(e) {
682
+ function be(e) {
683
683
  const s = e.find((r) => r.subject === _.Subject.Business.role);
684
684
  return s ? s.conditions ? JSON.parse(s.conditions).roleId.$in : null : [];
685
685
  }
@@ -740,7 +740,7 @@ function xe(e, s) {
740
740
  function he(e, s = []) {
741
741
  return W(
742
742
  e.reduce((r, n) => {
743
- const i = be.find(
743
+ const i = ve.find(
744
744
  (t) => t.subject === n.subject && n.actions.includes("manage")
745
745
  ) || s.find((t) => t.subject === n.subject);
746
746
  if (i) {
@@ -770,7 +770,7 @@ export {
770
770
  Ae as m,
771
771
  Ne as n,
772
772
  Ue as o,
773
- be as p,
773
+ ve as p,
774
774
  me as q,
775
775
  w as r,
776
776
  xe as s,
@@ -779,5 +779,5 @@ export {
779
779
  he as v,
780
780
  Oe as w,
781
781
  Y as x,
782
- ve as y
782
+ be as y
783
783
  };
@@ -1,5 +1,7 @@
1
1
  import type { HrmRestaurant } from '@/types/restaurant';
2
+ import type { FdtoScheduleDayOperatingHours } from '@feedmepos/hrm-schedule-contract';
2
3
  declare const RestaurantAPI: {
3
4
  readRestaurants(): Promise<HrmRestaurant[]>;
5
+ saveOperationalHours(restaurantId: string, operatingHours: FdtoScheduleDayOperatingHours[]): Promise<void>;
4
6
  };
5
7
  export default RestaurantAPI;
@@ -0,0 +1,63 @@
1
+ import type { FdtoScheduleAssignment, FdtoScheduleAutoScheduleApplyReq, FdtoScheduleAutoScheduleApplyResult, FdtoScheduleAutoScheduleCapabilities, FdtoScheduleAutoScheduleGenerateReq, FdtoScheduleAutoScheduleResult, FdtoScheduleBoard, FdtoScheduleBulkUpdateAssignmentStatusReq, FdtoScheduleBulkSaveAssignmentsReq, FdtoScheduleBulkSaveAssignmentsResult, FdtoScheduleBulkReplaceDemandReq, FdtoScheduleClearScheduleReq, FdtoScheduleCopyScheduleReq, FdtoScheduleCreateEmployeeProfileReq, FdtoScheduleEmployeeConfig, FdtoScheduleDemand, FdtoScheduleEmployee, FdtoSchedulePosition, FdtoScheduleSaveAssignmentReq, FdtoScheduleSaveDemandReq, FdtoScheduleSaveEmployeeConfigsReq, FdtoScheduleSavePositionReq, FdtoScheduleSaveScheduleDayReq, FdtoScheduleSaveSettingsReq, FdtoScheduleReplaceDemandReq, FdtoScheduleSettings, FdtoScheduleScheduleDay, FdtoScheduleUpdateEmployeeProfileReq, FdtoScheduleCompleteOnboardingReq, FdtoScheduleValidatePosAccessReq, FdtoScheduleCreateTimeOffReq, FdtoScheduleTimeOff, FdtoScheduleUpdateTimeOffStatusReq } from '@/types/schedule';
2
+ declare const ScheduleAPI: {
3
+ completeOnboarding(restaurantId: string, req: FdtoScheduleCompleteOnboardingReq): Promise<any>;
4
+ listEmployeeProfiles(employeeIds?: string[]): Promise<FdtoScheduleEmployee[]>;
5
+ listEmployeeConfigs(restaurantId: string): Promise<FdtoScheduleEmployeeConfig[]>;
6
+ saveEmployeeConfigs(restaurantId: string, req: FdtoScheduleSaveEmployeeConfigsReq): Promise<FdtoScheduleEmployeeConfig[]>;
7
+ getSettings(restaurantId: string): Promise<FdtoScheduleSettings>;
8
+ saveSettings(restaurantId: string, req: FdtoScheduleSaveSettingsReq): Promise<FdtoScheduleSettings>;
9
+ generateAutoSchedule(restaurantId: string, req: FdtoScheduleAutoScheduleGenerateReq): Promise<FdtoScheduleAutoScheduleResult>;
10
+ getAutoScheduleCapabilities(restaurantId: string): Promise<FdtoScheduleAutoScheduleCapabilities>;
11
+ applyAutoSchedule(restaurantId: string, req: FdtoScheduleAutoScheduleApplyReq): Promise<FdtoScheduleAutoScheduleApplyResult>;
12
+ /** One outlet's whole board over `[from, to]` (inclusive, 'YYYY-MM-DD'). */
13
+ readBoard(restaurantId: string, from: string, to: string): Promise<FdtoScheduleBoard>;
14
+ createTimeOff(restaurantId: string, req: FdtoScheduleCreateTimeOffReq): Promise<FdtoScheduleTimeOff>;
15
+ updateTimeOffStatus(restaurantId: string, id: string, req: FdtoScheduleUpdateTimeOffStatusReq): Promise<FdtoScheduleTimeOff | null>;
16
+ deleteTimeOff(restaurantId: string, id: string): Promise<void>;
17
+ /** Creates or updates the employee's shared business-level scheduling profile. */
18
+ createEmployeeProfile(_restaurantId: string, req: FdtoScheduleCreateEmployeeProfileReq): Promise<FdtoScheduleEmployee>;
19
+ /** Edits the employee's shared business-level scheduling profile. */
20
+ updateEmployeeProfile(_restaurantId: string, employeeId: string, req: FdtoScheduleUpdateEmployeeProfileReq): Promise<FdtoScheduleEmployee>;
21
+ validatePosAccess(req: FdtoScheduleValidatePosAccessReq): Promise<void>;
22
+ /** Positions are shared across the business. */
23
+ createPosition(req: FdtoScheduleSavePositionReq): Promise<FdtoSchedulePosition>;
24
+ updatePosition(id: string, req: FdtoScheduleSavePositionReq): Promise<FdtoSchedulePosition>;
25
+ /** Deleting one position is `deletePositions` with a single-id array — the backend's
26
+ * `DELETE positions/:id` route is gone; this is now `DELETE positions?ids=`. */
27
+ deletePosition(id: string): Promise<void>;
28
+ /** Creates one flat demand interval. */
29
+ createDemand(restaurantId: string, req: FdtoScheduleSaveDemandReq): Promise<FdtoScheduleDemand>;
30
+ /** Deletes a batch of demands in one request — e.g. `saveDemand` replacing a whole
31
+ * day/weekday's demand rows wholesale. Deleting one demand is just this with a single-id
32
+ * array. */
33
+ deleteDemands(restaurantId: string, ids: string[]): Promise<{
34
+ ok: true;
35
+ deletedCount: number;
36
+ }>;
37
+ /** Atomically replaces one date/weekday's flattened demand rows. */
38
+ replaceDemands(restaurantId: string, req: FdtoScheduleReplaceDemandReq): Promise<FdtoScheduleDemand[]>;
39
+ /** Atomically replaces several date/weekday demand generations. */
40
+ bulkReplaceDemands(restaurantId: string, req: FdtoScheduleBulkReplaceDemandReq): Promise<FdtoScheduleDemand[]>;
41
+ /** Replaces one date's note/holiday-mark. All three fields back to empty/false clears it. */
42
+ saveScheduleDay(restaurantId: string, date: string, req: FdtoScheduleSaveScheduleDayReq): Promise<FdtoScheduleScheduleDay | null>;
43
+ /** A one-off shift assignment. */
44
+ createAssignment(restaurantId: string, req: FdtoScheduleSaveAssignmentReq): Promise<FdtoScheduleAssignment>;
45
+ updateAssignment(restaurantId: string, id: string, req: FdtoScheduleSaveAssignmentReq): Promise<FdtoScheduleAssignment | null>;
46
+ /** Atomically applies assignment updates, creates, and deletes used by moves and swaps. */
47
+ bulkSaveAssignments(restaurantId: string, req: FdtoScheduleBulkSaveAssignmentsReq): Promise<FdtoScheduleBulkSaveAssignmentsResult>;
48
+ /** Replaces demand and/or assignments in one backend transaction. */
49
+ copySchedule(restaurantId: string, req: FdtoScheduleCopyScheduleReq): Promise<any>;
50
+ /** Clears demand and/or assignments in one backend transaction. */
51
+ clearSchedule(restaurantId: string, req: FdtoScheduleClearScheduleReq): Promise<any>;
52
+ /** Deletes a batch of assignments in one request — e.g. a shift split into several segments
53
+ * getting replaced wholesale. Deleting one assignment is just this with a single-id
54
+ * array. */
55
+ deleteAssignments(restaurantId: string, ids: string[]): Promise<{
56
+ ok: true;
57
+ deletedCount: number;
58
+ }>;
59
+ /** Flips a batch of assignments to one status in a single request — e.g. Publish sending
60
+ * every DRAFT shift on the board to PUBLISHED at once. */
61
+ bulkUpdateAssignmentStatus(restaurantId: string, req: FdtoScheduleBulkUpdateAssignmentStatusReq): Promise<FdtoScheduleAssignment[]>;
62
+ };
63
+ export default ScheduleAPI;
@@ -0,0 +1,12 @@
1
+ declare var __VLS_1: {};
2
+ type __VLS_Slots = {} & {
3
+ default?: (props: typeof __VLS_1) => any;
4
+ };
5
+ declare const __VLS_component: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
7
+ export default _default;
8
+ type __VLS_WithSlots<T, S> = T & {
9
+ new (): {
10
+ $slots: S;
11
+ };
12
+ };
@@ -0,0 +1,2 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2
+ export default _default;
@@ -0,0 +1,10 @@
1
+ import { type Component } from 'vue';
2
+ /** Wrap a scheduling route in the layout needed by the scheduling board's full-bleed CSS. */
3
+ export declare function withScheduleShell(Comp: Component): {
4
+ inheritAttrs: boolean;
5
+ setup(_: unknown, { attrs }: {
6
+ attrs: Record<string, unknown>;
7
+ }): () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
8
+ [key: string]: any;
9
+ }>;
10
+ };
@@ -1 +1,3 @@
1
- export declare function useDiscardConfirm(isModified: () => boolean, onConfirm: () => void): () => void;
1
+ export declare function useDiscardConfirm(isModified: () => boolean, onConfirm: () => void, options?: {
2
+ zIndex?: number;
3
+ }): () => void;
@@ -1,4 +1,10 @@
1
+ import { SnackbarPosition } from '@feedmepos/ui-library';
2
+ export interface MessageOptions {
3
+ /** Where the snackbar is anchored. Defaults to the library's own default (top-right). */
4
+ position?: SnackbarPosition;
5
+ }
1
6
  export declare function useMessage(): {
2
- success: (message: string) => void;
3
- error: (message: string) => void;
7
+ success: (message: string, options?: MessageOptions) => void;
8
+ error: (message: string, options?: MessageOptions) => void;
4
9
  };
10
+ export { SnackbarPosition };
@@ -10,7 +10,10 @@ export declare enum RouteName {
10
10
  TEAM_ROLE = "team-role",
11
11
  POS_ACCESS = "pos-access",
12
12
  POS_GRANT = "pos-grant",
13
- APPROVAL_CODE = "approval-code"
13
+ APPROVAL_CODE = "approval-code",
14
+ SCHEDULE = "schedule",
15
+ SCHEDULE_POSITION = "schedule-position",
16
+ SCHEDULE_GENERAL = "schedule-general"
14
17
  }
15
18
  declare const routes: RouteRecordRaw[];
16
19
  export { routes };
@@ -26,6 +26,7 @@ export interface IReadEmployeesPageReq {
26
26
  search?: string;
27
27
  restaurantIds?: string[];
28
28
  roleIds?: string[];
29
+ includeEmptyPasscode?: boolean;
29
30
  }
30
31
  export interface IFdtoEmployeePage {
31
32
  items: IFdtoPosUserSummary[];
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Public portal-facing Schedule types.
3
+ *
4
+ * Wire contracts are inferred once from the shared package. This file keeps
5
+ * only view-model commands that intentionally do not cross HTTP (for example
6
+ * replacing a period made up of several persisted demand rows).
7
+ */
8
+ export type { FdtoScheduleAssignment, FdtoScheduleAutoScheduleApplyReq, FdtoScheduleAutoScheduleApplyResult, FdtoScheduleAutoScheduleCapabilities, FdtoScheduleAutoScheduleGenerateReq, FdtoScheduleAutoScheduleObjective, FdtoScheduleAutoSchedulePlanner, FdtoScheduleAutoScheduleProposal, FdtoScheduleAutoScheduleRejection, FdtoScheduleAutoScheduleResult, FdtoScheduleAutoScheduleTiming, FdtoScheduleAutoScheduleUnfilledNeed, FdtoScheduleBoard, FdtoScheduleBulkUpdateAssignmentStatusReq, FdtoScheduleBulkSaveAssignmentsReq, FdtoScheduleBulkSaveAssignmentsResult, FdtoScheduleBulkReplaceDemandReq, FdtoScheduleClearScheduleReq, FdtoScheduleCopyScheduleReq, FdtoScheduleCompleteOnboardingReq, FdtoScheduleBreak, FdtoScheduleCreateEmployeeProfileReq, FdtoScheduleEmployeeConfig, FdtoScheduleDayOperatingHours, FdtoScheduleDemand, FdtoScheduleEmployee, FdtoScheduleOptionalDateRange, FdtoSchedulePayRate, FdtoSchedulePosition, FdtoSchedulePositionRef, FdtoSchedulePositionSelectorReq, FdtoScheduleRestaurantProfile, FdtoScheduleSaveAssignmentReq, FdtoScheduleSaveDemandReq, FdtoScheduleReplaceDemandReq, FdtoScheduleSaveEmployeeConfigsReq, FdtoScheduleSavePositionReq, FdtoScheduleSaveScheduleDayReq, FdtoScheduleSaveSettingsReq, FdtoScheduleScheduleDay, FdtoScheduleSettings, FdtoScheduleUpdateEmployeeProfileReq, FdtoScheduleValidatePosAccessReq, FdtoScheduleCreateTimeOffReq, FdtoScheduleTimeOff, FdtoScheduleTimeOffDayPart, FdtoScheduleTimeOffQuery, FdtoScheduleTimeOffStatus, FdtoScheduleTimeOffType, FdtoScheduleUpdateTimeOffStatusReq, } from '@feedmepos/hrm-schedule-contract';
9
+ /** UI-level date replacement command. The store expands these periods into flat
10
+ * ShiftDemand rows before calling the shared HTTP contract. */
11
+ export interface ScheduleReplaceDemandReq {
12
+ date: string;
13
+ periods: Array<{
14
+ startTime: string;
15
+ endTime: string;
16
+ headcount: number;
17
+ roles?: Array<{
18
+ positionId?: string;
19
+ positionName: string;
20
+ headcount: number;
21
+ }>;
22
+ }>;
23
+ }