@feedmepos/mf-hrm-portal 2.3.0-dev → 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 (134) hide show
  1. package/dist/{ApprovalCodeList-cG0zmQVJ.js → ApprovalCodeList-CJaNPHZC.js} +2 -2
  2. package/dist/{AuditLogList-BTifJhO1.js → AuditLogList-CHA98ZqW.js} +3 -3
  3. package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-qr5TwLTK.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-C7rvthEI.js} +2 -2
  4. package/dist/{EmployeeList-DzcMtxJ3.js → EmployeeList-CVmMKt71.js} +4 -4
  5. package/dist/{GrantUserList-D5b7tJ8Y.js → GrantUserList-MYjgt5-F.js} +3 -3
  6. package/dist/{Main-DkLBemi7.js → Main-BgB9lD4K.js} +9 -9
  7. package/dist/{Main-DFwdAWqn.js → Main-C0cnqQ3B.js} +5 -5
  8. package/dist/{Main-B2r59IOW.js → Main-hlcHtrsc.js} +2 -2
  9. package/dist/{PermissionSetList-B80hrfMW.js → PermissionSetList-5f1WIaVa.js} +5 -5
  10. package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-DjNcJQM9.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-CFoTAGIX.js} +823 -823
  11. package/dist/{RoleList-DHO4JRKF.js → RoleList-DNR4miXr.js} +7 -7
  12. package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-B4VUyKW3.js +470 -0
  13. package/dist/{ScheduleGeneralPage-WlBM8bxV.js → ScheduleGeneralPage-Cd5AlY4z.js} +273 -236
  14. package/dist/ScheduleModal.vue_vue_type_script_setup_true_lang-Cf0l2MRg.js +2188 -0
  15. package/dist/SchedulePage-C8m0-m3l.js +18257 -0
  16. package/dist/{SchedulePositionPage-C0hrO11d.js → SchedulePositionPage-DyRckyUx.js} +67 -66
  17. package/dist/{TeamMemberList-CgFWLRBM.js → TeamMemberList-mw5OveZG.js} +6 -6
  18. package/dist/{TimesheetList-Dp40G-0I.js → TimesheetList-BzXarZbM.js} +5 -5
  19. package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-BFjrMhUG.js → TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-Dq5i4poN.js} +2 -2
  20. package/dist/{app-CmBSTvaI.js → app-DSsdRLHg.js} +657 -577
  21. package/dist/app.js +1 -1
  22. package/dist/{dayjs.min-CfL2DQ3d.js → dayjs.min-B6xBXQtU.js} +1 -1
  23. package/dist/{employee-DQcHjoij.js → employee-hMhzuqk1.js} +28 -27
  24. package/dist/{iteration-BlavheWG.js → iteration-B34AvpNC.js} +1 -1
  25. package/dist/{lodash-QerqayrJ.js → lodash-1Vyuy7Mu.js} +1 -1
  26. package/dist/{role-RM2YLO7n.js → role-DKOrgO6f.js} +1 -1
  27. package/dist/{rule-DjlvYIuP.js → rule-CBzQ3GeV.js} +2 -2
  28. package/dist/src/api/schedule/index.d.ts +5 -1
  29. package/dist/src/components/layout/withScheduleShell.d.ts +10 -0
  30. package/dist/src/types/employee.d.ts +1 -0
  31. package/dist/src/types/schedule.d.ts +1 -1
  32. package/dist/src/views/scheduling/components/ScheduleBoardAreaRows.vue.d.ts +28 -0
  33. package/dist/src/views/scheduling/components/ScheduleBoardEditOverlays.vue.d.ts +19 -0
  34. package/dist/src/views/scheduling/components/ScheduleBoardEmployeeRows.vue.d.ts +38 -0
  35. package/dist/src/views/scheduling/components/ScheduleBoardGridHeader.vue.d.ts +24 -0
  36. package/dist/src/views/scheduling/components/ScheduleBoardInteractionOverlays.vue.d.ts +38 -0
  37. package/dist/src/views/scheduling/components/ScheduleBoardOnboardingOverlays.vue.d.ts +25 -0
  38. package/dist/src/views/scheduling/components/ScheduleBoardRails.vue.d.ts +17 -0
  39. package/dist/src/views/scheduling/components/ScheduleBoardToolbar.vue.d.ts +39 -0
  40. package/dist/src/views/scheduling/components/ScheduleBoardUtilityOverlays.vue.d.ts +22 -0
  41. package/dist/src/views/scheduling/components/{ScheduleOnboardingComplete.vue.d.ts → ScheduleCompletionDialog.vue.d.ts} +8 -3
  42. package/dist/src/views/scheduling/components/{ScheduleOpenShiftCardMenu.vue.d.ts → ScheduleContextMenu.vue.d.ts} +10 -3
  43. package/dist/src/views/scheduling/components/{SchedulePdfPreview.vue.d.ts → ScheduleExportPreview.vue.d.ts} +1 -0
  44. package/dist/src/views/scheduling/components/ScheduleLoadState.vue.d.ts +10 -0
  45. package/dist/src/views/scheduling/components/ScheduleModal.vue.d.ts +26 -0
  46. package/dist/src/views/scheduling/components/{ScheduleTourAllSet.vue.d.ts → ScheduleOnboardingClosedDayConfirm.vue.d.ts} +2 -2
  47. package/dist/src/views/scheduling/components/{ScheduleEmployeeMenu.vue.d.ts → ScheduleOnboardingDemandDays.vue.d.ts} +2 -2
  48. package/dist/src/views/scheduling/components/{ScheduleExportDoneDialog.vue.d.ts → ScheduleOnboardingDemandFooter.vue.d.ts} +2 -2
  49. package/dist/src/views/scheduling/components/ScheduleOnboardingDemandHeader.vue.d.ts +6 -0
  50. package/dist/src/views/scheduling/components/ScheduleOnboardingHoursProfileNotice.vue.d.ts +10 -0
  51. package/dist/src/views/scheduling/components/ScheduleOnboardingPositions.vue.d.ts +6 -0
  52. package/dist/src/views/scheduling/components/ScheduleOnboardingReview.vue.d.ts +6 -0
  53. package/dist/src/views/scheduling/components/ScheduleOnboardingWizardFooter.vue.d.ts +6 -0
  54. package/dist/src/views/scheduling/components/ScheduleOnboardingWizardHeader.vue.d.ts +11 -0
  55. package/dist/src/views/scheduling/components/ScheduleSelect.vue.d.ts +7 -1
  56. package/dist/src/views/scheduling/components/ScheduleSetupBanner.vue.d.ts +12 -0
  57. package/dist/src/views/scheduling/components/ScheduleShiftPopover.vue.d.ts +2 -2
  58. package/dist/src/views/scheduling/components/ScheduleStaffRail.vue.d.ts +4 -4
  59. package/dist/src/views/scheduling/components/ScheduleStaffRows.vue.d.ts +2 -2
  60. package/dist/src/views/scheduling/components/ScheduleTopbar.vue.d.ts +3 -3
  61. package/dist/src/views/scheduling/composables/onboarding-types.d.ts +1 -1
  62. package/dist/src/views/scheduling/composables/remyPrompt.d.ts +13 -0
  63. package/dist/src/views/scheduling/composables/schedule-board-helpers.d.ts +1 -1
  64. package/dist/src/views/scheduling/composables/schedule-breaks.d.ts +7 -1
  65. package/dist/src/views/scheduling/composables/schedule-calendar.d.ts +7 -0
  66. package/dist/src/views/scheduling/composables/schedule-cost.d.ts +19 -0
  67. package/dist/src/views/scheduling/composables/schedule-demand-domain.d.ts +11 -0
  68. package/dist/src/views/scheduling/composables/schedule-export-matrix.d.ts +14 -0
  69. package/dist/src/views/scheduling/composables/schedule-time.d.ts +8 -0
  70. package/dist/src/views/scheduling/composables/schedule-week-cache.d.ts +1 -4
  71. package/dist/src/views/scheduling/composables/useRemyAppStore.d.ts +10 -0
  72. package/dist/src/views/scheduling/composables/useScheduleAddEmployee.d.ts +14 -13
  73. package/dist/src/views/scheduling/composables/useScheduleAssign.d.ts +3 -1
  74. package/dist/src/views/scheduling/composables/useScheduleAssignmentMutations.d.ts +13 -0
  75. package/dist/src/views/scheduling/composables/useScheduleBoard.d.ts +18 -2
  76. package/dist/src/views/scheduling/composables/useScheduleCloneOutletModal.d.ts +3 -1
  77. package/dist/src/views/scheduling/composables/useScheduleCostRail.d.ts +6 -1
  78. package/dist/src/views/scheduling/composables/useScheduleDayNote.d.ts +1 -1
  79. package/dist/src/views/scheduling/composables/useScheduleDemand.d.ts +4 -19
  80. package/dist/src/views/scheduling/composables/useScheduleDemandSheet.d.ts +13 -2
  81. package/dist/src/views/scheduling/composables/useScheduleEmployeeAccess.d.ts +11 -0
  82. package/dist/src/views/scheduling/composables/useScheduleEmployeeAvailability.d.ts +13 -0
  83. package/dist/src/views/scheduling/composables/useScheduleEmployeeCandidates.d.ts +26 -0
  84. package/dist/src/views/scheduling/composables/useScheduleEmployeeCompensation.d.ts +7 -0
  85. package/dist/src/views/scheduling/composables/useScheduleEmployeeForm.d.ts +22 -0
  86. package/dist/src/views/scheduling/composables/useScheduleEmployeeIdentity.d.ts +9 -0
  87. package/dist/src/views/scheduling/composables/useScheduleEmployeeMenu.d.ts +6 -3
  88. package/dist/src/views/scheduling/composables/useScheduleEmployeePersistence.d.ts +25 -0
  89. package/dist/src/views/scheduling/composables/useScheduleEmployeeValidation.d.ts +18 -0
  90. package/dist/src/views/scheduling/composables/useScheduleExport.d.ts +19 -11
  91. package/dist/src/views/scheduling/composables/useScheduleGapPopover.d.ts +3 -6
  92. package/dist/src/views/scheduling/composables/useScheduleOnboardingAvailability.d.ts +58 -0
  93. package/dist/src/views/scheduling/composables/useScheduleOnboardingDemand.d.ts +45 -0
  94. package/dist/src/views/scheduling/composables/useScheduleOnboardingEmployees.d.ts +187 -0
  95. package/dist/src/views/scheduling/composables/useScheduleOnboardingHours.d.ts +15 -0
  96. package/dist/src/views/scheduling/composables/useScheduleOnboardingNavigation.d.ts +11 -0
  97. package/dist/src/views/scheduling/composables/useScheduleOnboardingWizard.d.ts +64 -487
  98. package/dist/src/views/scheduling/composables/useSchedulePageActions.d.ts +18 -0
  99. package/dist/src/views/scheduling/composables/useSchedulePageCellActions.d.ts +21 -0
  100. package/dist/src/views/scheduling/composables/useSchedulePageCellDrop.d.ts +18 -0
  101. package/dist/src/views/scheduling/composables/useSchedulePageEmployeeActions.d.ts +22 -0
  102. package/dist/src/views/scheduling/composables/useSchedulePageOverlays.d.ts +10 -3
  103. package/dist/src/views/scheduling/composables/useSchedulePdfExport.d.ts +19 -0
  104. package/dist/src/views/scheduling/composables/useSchedulePositionModal.d.ts +3 -1
  105. package/dist/src/views/scheduling/composables/useSchedulePositions.d.ts +3 -1
  106. package/dist/src/views/scheduling/composables/useSchedulePublish.d.ts +7 -1
  107. package/dist/src/views/scheduling/composables/useSchedulePublishPersistence.d.ts +11 -0
  108. package/dist/src/views/scheduling/composables/useScheduleRoster.d.ts +6 -0
  109. package/dist/src/views/scheduling/composables/useScheduleSettings.d.ts +2 -24
  110. package/dist/src/views/scheduling/composables/useScheduleShiftActions.d.ts +6 -1
  111. package/dist/src/views/scheduling/composables/useScheduleShiftDraft.d.ts +62 -0
  112. package/dist/src/views/scheduling/composables/useScheduleShiftPersistence.d.ts +17 -0
  113. package/dist/src/views/scheduling/composables/useScheduleShiftPopover.d.ts +10 -5
  114. package/dist/src/views/scheduling/composables/useScheduleStatsRow.d.ts +4 -1
  115. package/dist/src/views/scheduling/composables/useScheduleTour.d.ts +6 -4
  116. package/dist/src/views/scheduling/country-rules/index.d.ts +24 -0
  117. package/dist/src/views/scheduling/data.d.ts +11 -6
  118. package/dist/src/views/scheduling/locales/index.d.ts +80 -0
  119. package/dist/src/views/scheduling/schedule-constants.d.ts +7 -0
  120. package/dist/src/views/scheduling/schedule-state.d.ts +32 -8
  121. package/dist/src/views/scheduling/schedule-store.d.ts +4 -1
  122. package/dist/src/views/scheduling/types.d.ts +5 -0
  123. package/dist/style.css +1 -1
  124. package/dist/tsconfig.app.tsbuildinfo +1 -1
  125. package/dist/{useReportPermissions-Bl6Br79r.js → useReportPermissions-B2ev0j4w.js} +3 -3
  126. package/package.json +2 -1
  127. package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-B-XtB64L.js +0 -452
  128. package/dist/SchedulePage-Nm0krGVU.js +0 -17056
  129. package/dist/ScheduleSelect.vue_vue_type_script_setup_true_lang-DTDXir_7.js +0 -1150
  130. package/dist/src/components/layout/AppSidebar.vue.d.ts +0 -2
  131. package/dist/src/components/layout/withShell.d.ts +0 -14
  132. package/dist/src/views/scheduling/components/ScheduleShiftCardMenu.vue.d.ts +0 -12
  133. package/dist/src/views/scheduling/composables/useScheduleStaffRail.d.ts +0 -17
  134. package/dist/src/views/scheduling/composables/useScheduleTopbar.d.ts +0 -10
@@ -49,6 +49,7 @@ export declare const i18nMessages: {
49
49
  status: {
50
50
  draft: string;
51
51
  published: string;
52
+ locked: string;
52
53
  };
53
54
  staffRail: {
54
55
  title: string;
@@ -149,6 +150,25 @@ export declare const i18nMessages: {
149
150
  thisWeek: string;
150
151
  nextWeek: string;
151
152
  };
153
+ common: {
154
+ anyPosition: string;
155
+ none: string;
156
+ leaveAsIs: string;
157
+ monthly: string;
158
+ hourly: string;
159
+ everyone: string;
160
+ fullTime: string;
161
+ partTime: string;
162
+ noPosition: string;
163
+ noPay: string;
164
+ cancel: string;
165
+ done: string;
166
+ tryAgain: string;
167
+ };
168
+ positionModal: {
169
+ editTitle: string;
170
+ addTitle: string;
171
+ };
152
172
  comingSoon: string;
153
173
  };
154
174
  };
@@ -200,6 +220,7 @@ export declare const i18nMessages: {
200
220
  status: {
201
221
  draft: string;
202
222
  published: string;
223
+ locked: string;
203
224
  };
204
225
  staffRail: {
205
226
  title: string;
@@ -300,6 +321,25 @@ export declare const i18nMessages: {
300
321
  thisWeek: string;
301
322
  nextWeek: string;
302
323
  };
324
+ common: {
325
+ anyPosition: string;
326
+ none: string;
327
+ leaveAsIs: string;
328
+ monthly: string;
329
+ hourly: string;
330
+ everyone: string;
331
+ fullTime: string;
332
+ partTime: string;
333
+ noPosition: string;
334
+ noPay: string;
335
+ cancel: string;
336
+ done: string;
337
+ tryAgain: string;
338
+ };
339
+ positionModal: {
340
+ editTitle: string;
341
+ addTitle: string;
342
+ };
303
343
  comingSoon: string;
304
344
  };
305
345
  };
@@ -351,6 +391,7 @@ export declare const i18nMessages: {
351
391
  status: {
352
392
  draft: string;
353
393
  published: string;
394
+ locked: string;
354
395
  };
355
396
  staffRail: {
356
397
  title: string;
@@ -451,6 +492,25 @@ export declare const i18nMessages: {
451
492
  thisWeek: string;
452
493
  nextWeek: string;
453
494
  };
495
+ common: {
496
+ anyPosition: string;
497
+ none: string;
498
+ leaveAsIs: string;
499
+ monthly: string;
500
+ hourly: string;
501
+ everyone: string;
502
+ fullTime: string;
503
+ partTime: string;
504
+ noPosition: string;
505
+ noPay: string;
506
+ cancel: string;
507
+ done: string;
508
+ tryAgain: string;
509
+ };
510
+ positionModal: {
511
+ editTitle: string;
512
+ addTitle: string;
513
+ };
454
514
  comingSoon: string;
455
515
  };
456
516
  };
@@ -502,6 +562,7 @@ export declare const i18nMessages: {
502
562
  status: {
503
563
  draft: string;
504
564
  published: string;
565
+ locked: string;
505
566
  };
506
567
  staffRail: {
507
568
  title: string;
@@ -602,6 +663,25 @@ export declare const i18nMessages: {
602
663
  thisWeek: string;
603
664
  nextWeek: string;
604
665
  };
666
+ common: {
667
+ anyPosition: string;
668
+ none: string;
669
+ leaveAsIs: string;
670
+ monthly: string;
671
+ hourly: string;
672
+ everyone: string;
673
+ fullTime: string;
674
+ partTime: string;
675
+ noPosition: string;
676
+ noPay: string;
677
+ cancel: string;
678
+ done: string;
679
+ tryAgain: string;
680
+ };
681
+ positionModal: {
682
+ editTitle: string;
683
+ addTitle: string;
684
+ };
605
685
  comingSoon: string;
606
686
  };
607
687
  };
@@ -0,0 +1,7 @@
1
+ /** Shared scheduling limits and UI timing values. Keeping these named makes the product
2
+ * trade-offs visible when the API or board behavior changes. */
3
+ export declare const EMPLOYEE_PAGE_SIZE = 500;
4
+ export declare const MAX_BUSINESS_EMPLOYEE_PAGES = 10;
5
+ export declare const PREFETCH_WEEKS = 6;
6
+ export declare const RECENT_SAVE_FLASH_MS = 1500;
7
+ export declare const EMPLOYEE_ID_BASE = 1000000;
@@ -38,6 +38,7 @@ export declare const scheduleState: {
38
38
  days: {
39
39
  date: string;
40
40
  id: string;
41
+ updatedAt: string;
41
42
  isPublicHoliday: boolean;
42
43
  title: string;
43
44
  description: string;
@@ -56,6 +57,9 @@ export declare const scheduleState: {
56
57
  headcount: number;
57
58
  }[];
58
59
  settings: {
60
+ overtime: {
61
+ maxMonthlyHours: number;
62
+ };
59
63
  payRate: {
60
64
  NORMAL: {
61
65
  overtime: number;
@@ -73,12 +77,12 @@ export declare const scheduleState: {
73
77
  };
74
78
  restaurantProfile: {
75
79
  operatingHours: {
76
- dayOfWeek: number;
77
- closed: boolean;
78
80
  hours: {
79
81
  start: string;
80
82
  end: string;
81
83
  }[];
84
+ dayOfWeek: number;
85
+ closed: boolean;
82
86
  }[];
83
87
  };
84
88
  positions: {
@@ -129,6 +133,7 @@ export declare const scheduleState: {
129
133
  startTime: string;
130
134
  endTime: string;
131
135
  })[];
136
+ updatedAt: string;
132
137
  }[];
133
138
  } | null, {
134
139
  timeOff: {
@@ -160,6 +165,7 @@ export declare const scheduleState: {
160
165
  days: {
161
166
  date: string;
162
167
  id: string;
168
+ updatedAt: string;
163
169
  isPublicHoliday: boolean;
164
170
  title: string;
165
171
  description: string;
@@ -178,6 +184,9 @@ export declare const scheduleState: {
178
184
  headcount: number;
179
185
  }[];
180
186
  settings: {
187
+ overtime: {
188
+ maxMonthlyHours: number;
189
+ };
181
190
  payRate: {
182
191
  NORMAL: {
183
192
  overtime: number;
@@ -195,12 +204,12 @@ export declare const scheduleState: {
195
204
  };
196
205
  restaurantProfile: {
197
206
  operatingHours: {
198
- dayOfWeek: number;
199
- closed: boolean;
200
207
  hours: {
201
208
  start: string;
202
209
  end: string;
203
210
  }[];
211
+ dayOfWeek: number;
212
+ closed: boolean;
204
213
  }[];
205
214
  };
206
215
  positions: {
@@ -251,6 +260,7 @@ export declare const scheduleState: {
251
260
  startTime: string;
252
261
  endTime: string;
253
262
  })[];
263
+ updatedAt: string;
254
264
  }[];
255
265
  } | null>;
256
266
  loading: import("vue").Ref<boolean, boolean>;
@@ -384,6 +394,7 @@ export declare const payload: import("vue").ShallowRef<{
384
394
  days: {
385
395
  date: string;
386
396
  id: string;
397
+ updatedAt: string;
387
398
  isPublicHoliday: boolean;
388
399
  title: string;
389
400
  description: string;
@@ -402,6 +413,9 @@ export declare const payload: import("vue").ShallowRef<{
402
413
  headcount: number;
403
414
  }[];
404
415
  settings: {
416
+ overtime: {
417
+ maxMonthlyHours: number;
418
+ };
405
419
  payRate: {
406
420
  NORMAL: {
407
421
  overtime: number;
@@ -419,12 +433,12 @@ export declare const payload: import("vue").ShallowRef<{
419
433
  };
420
434
  restaurantProfile: {
421
435
  operatingHours: {
422
- dayOfWeek: number;
423
- closed: boolean;
424
436
  hours: {
425
437
  start: string;
426
438
  end: string;
427
439
  }[];
440
+ dayOfWeek: number;
441
+ closed: boolean;
428
442
  }[];
429
443
  };
430
444
  positions: {
@@ -475,6 +489,7 @@ export declare const payload: import("vue").ShallowRef<{
475
489
  startTime: string;
476
490
  endTime: string;
477
491
  })[];
492
+ updatedAt: string;
478
493
  }[];
479
494
  } | null, {
480
495
  timeOff: {
@@ -506,6 +521,7 @@ export declare const payload: import("vue").ShallowRef<{
506
521
  days: {
507
522
  date: string;
508
523
  id: string;
524
+ updatedAt: string;
509
525
  isPublicHoliday: boolean;
510
526
  title: string;
511
527
  description: string;
@@ -524,6 +540,9 @@ export declare const payload: import("vue").ShallowRef<{
524
540
  headcount: number;
525
541
  }[];
526
542
  settings: {
543
+ overtime: {
544
+ maxMonthlyHours: number;
545
+ };
527
546
  payRate: {
528
547
  NORMAL: {
529
548
  overtime: number;
@@ -541,12 +560,12 @@ export declare const payload: import("vue").ShallowRef<{
541
560
  };
542
561
  restaurantProfile: {
543
562
  operatingHours: {
544
- dayOfWeek: number;
545
- closed: boolean;
546
563
  hours: {
547
564
  start: string;
548
565
  end: string;
549
566
  }[];
567
+ dayOfWeek: number;
568
+ closed: boolean;
550
569
  }[];
551
570
  };
552
571
  positions: {
@@ -597,6 +616,7 @@ export declare const payload: import("vue").ShallowRef<{
597
616
  startTime: string;
598
617
  endTime: string;
599
618
  })[];
619
+ updatedAt: string;
600
620
  }[];
601
621
  } | null>, loading: import("vue").Ref<boolean, boolean>, rosterLoading: import("vue").Ref<boolean, boolean>, loadError: import("vue").Ref<string | null, string | null>, scheduleSetupCompleted: import("vue").Ref<boolean, boolean>, dataVersion: import("vue").Ref<number, number>, outletId: import("vue").Ref<string, string>, restaurantEmployees: import("vue").Ref<{
602
622
  _id: string;
@@ -677,3 +697,7 @@ export declare const payload: import("vue").ShallowRef<{
677
697
  };
678
698
  };
679
699
  };
700
+ /** Restore all outlet-scoped rules before another outlet is allowed to populate them. Keeping
701
+ * the reactive object and its nested containers alive matters because many board composables
702
+ * hold references to RULES members rather than reading the store object afresh. */
703
+ export declare function resetRules(): void;
@@ -1,10 +1,12 @@
1
+ import ScheduleAPI from '@/api/schedule';
1
2
  import type { IFdtoPosUserSummary } from '@/types/employee';
2
3
  import type { FdtoScheduleAssignment, FdtoScheduleAutoScheduleApplyReq, FdtoScheduleAutoScheduleApplyResult, FdtoScheduleAutoScheduleCapabilities, FdtoScheduleAutoScheduleGenerateReq, FdtoScheduleAutoScheduleResult, FdtoScheduleBulkUpdateAssignmentStatusReq, FdtoScheduleCreateEmployeeProfileReq, FdtoScheduleSaveAssignmentReq, FdtoScheduleSavePositionReq, FdtoScheduleSaveScheduleDayReq, FdtoScheduleUpdateEmployeeProfileReq, FdtoScheduleCreateTimeOffReq, FdtoScheduleTimeOff, FdtoScheduleUpdateTimeOffStatusReq, FdtoScheduleSaveEmployeeConfigsReq, ScheduleReplaceDemandReq } from '@/types/schedule';
4
+ import { isoDateKey } from './composables/schedule-calendar';
3
5
  export { businessEmployees, dataVersion, employeeOutletIds, loadError, loading, outletId, payload, restaurantEmployees, employeeConfigs, rosterLoading, scheduleSetupCompleted, } from './schedule-state';
4
6
  /** dayjs-free local-date key — the board's own isoDateKey, repeated here so the store does not
5
7
  * have to import a composable. Local Y/M/D, never UTC: a BSON-free 'YYYY-MM-DD' that survives
6
8
  * a timezone west of Greenwich. */
7
- export declare function isoDate(d: Date): string;
9
+ export declare const isoDate: typeof isoDateKey;
8
10
  /** Points the board at an outlet. Switching throws the held window away rather than widening
9
11
  * it — two outlets' rosters are not one dataset, and half of each is not a schedule.
10
12
  *
@@ -96,6 +98,7 @@ export declare function applyAutoSchedule(req: FdtoScheduleAutoScheduleApplyReq)
96
98
  * their own to read back from yet). */
97
99
  export declare function createAssignment(req: FdtoScheduleSaveAssignmentReq): Promise<FdtoScheduleAssignment>;
98
100
  export declare function updateAssignment(id: string, req: FdtoScheduleSaveAssignmentReq): Promise<FdtoScheduleAssignment | null>;
101
+ export declare function bulkSaveAssignments(req: Parameters<typeof ScheduleAPI.bulkSaveAssignments>[1]): Promise<Awaited<ReturnType<typeof ScheduleAPI.bulkSaveAssignments>>>;
99
102
  /** Deletes a batch of existing assignments in a single request — see
100
103
  * `ScheduleAPI.deleteAssignments`. Deleting one is just this with a single-id array. */
101
104
  export declare function deleteAssignments(ids: string[]): Promise<void>;
@@ -35,6 +35,8 @@ export interface WorkSlot {
35
35
  * round-tripped to the backend yet, or it's an OpenShift fill (see openId), which has its
36
36
  * own record shape and no write path of its own yet. */
37
37
  assignmentId?: string;
38
+ /** Server timestamp used to reject stale background saves. */
39
+ updatedAt?: string;
38
40
  /** Client-only — never sent to the backend (there's no linking field in
39
41
  * FdtoScheduleAssignment to persist it against). Shared by every period of ONE shift
40
42
  * authored through the popover's "+ Split", set there and nowhere else. Two workslots on
@@ -85,6 +87,8 @@ export interface EmployeeAvailHours {
85
87
  }
86
88
  export interface Employee {
87
89
  id: number;
90
+ /** Stable backend identity. The numeric id is only a board/view-model id. */
91
+ sourceId: string;
88
92
  name: string;
89
93
  employmentType: 'FULLTIME' | 'PARTTIME';
90
94
  role: string;
@@ -227,6 +231,7 @@ export interface ScheduleRules {
227
231
  }
228
232
  export interface PendingChange {
229
233
  empId: number;
234
+ employeeKey: string;
230
235
  dayIdx: number;
231
236
  kind: 'add' | 'change' | 'remove';
232
237
  label: string;