@feedmepos/mf-hrm-portal 2.3.0-dev.9 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/dist/{ApprovalCodeList-BDpxEJpC.js → ApprovalCodeList-DwubNElp.js} +7 -7
  2. package/dist/{AuditLogList-Dgwj1gz8.js → AuditLogList-CTeMbyHL.js} +18 -19
  3. package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-BBK2gl7r.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-CmLLNcB4.js} +2 -2
  4. package/dist/{EmployeeList-C8cbVcmY.js → EmployeeList-DEAJPx9F.js} +255 -266
  5. package/dist/{FormItem.vue_vue_type_script_setup_true_lang-CUnlKsxk.js → FormItem.vue_vue_type_script_setup_true_lang-OAvd6eHM.js} +6 -6
  6. package/dist/{GrantUserList-zul0_Dlm.js → GrantUserList-Dx4jF2qJ.js} +8 -8
  7. package/dist/{Main-Cjo4FMZZ.js → Main-BirWXk7o.js} +5 -5
  8. package/dist/{Main-DSr9KbjT.js → Main-C2PBSCte.js} +11 -11
  9. package/dist/{Main-5TsFTFpc.js → Main-CL5JYCPg.js} +8 -8
  10. package/dist/{PermissionSetList-CDhiiu37.js → PermissionSetList-BtYcqPiO.js} +19 -18
  11. package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-DoK944l0.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-BXw4aX39.js} +1127 -1127
  12. package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-BVz6q3HE.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-DaAx79pC.js} +1 -1
  13. package/dist/ResponsiveContextMenu.vue_vue_type_script_setup_true_lang-mSJFKo7r.js +132 -0
  14. package/dist/{RoleList-DEbOPQD_.js → RoleList-YS_LBfoJ.js} +21 -20
  15. package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-BorKuXxL.js +530 -0
  16. package/dist/{ScheduleGeneralPage-B8PWNsc2.js → ScheduleGeneralPage-C1p2mivt.js} +252 -248
  17. package/dist/ScheduleModal.vue_vue_type_script_setup_true_lang-CnKzVz3I.js +2457 -0
  18. package/dist/SchedulePage-BP7x7JAl.js +19485 -0
  19. package/dist/{SchedulePositionPage-Cuv4ydOK.js → SchedulePositionPage-BogOQZVW.js} +78 -80
  20. package/dist/{SelectFilter-CG13h83-.js → SelectFilter-Dh3eY1hV.js} +1 -1
  21. package/dist/{TeamMemberList-DpCGqHCk.js → TeamMemberList-Bv6_2bzs.js} +27 -27
  22. package/dist/{TimesheetList-B7HAC5zS.js → TimesheetList-B3BmpH0I.js} +52 -53
  23. package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-BGD6m5M-.js → TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-C4rbnZh1.js} +3 -3
  24. package/dist/{app-Lh0cqgHy.js → app-CyS8c8dx.js} +2879 -2462
  25. package/dist/app.js +1 -1
  26. package/dist/{approval-code-DHsUgc4K.js → approval-code-BIpLingm.js} +1 -1
  27. package/dist/{dayjs.min-joq4stsa.js → dayjs.min-BRlEc3-d.js} +1 -1
  28. package/dist/{employee-BPmp9c6i.js → employee-CcdjLOLQ.js} +51 -47
  29. package/dist/{grant-user-qzKHFTro.js → grant-user-uZmvD_bw.js} +1 -1
  30. package/dist/{iteration-jvdTHQUx.js → iteration-CL1RDmws.js} +1 -1
  31. package/dist/{lodash-CIAEpr9s.js → lodash-C00ieagp.js} +1 -1
  32. package/dist/object-Dwyg2LgX.js +16 -0
  33. package/dist/{restaurant-BbYRA_IT.js → restaurant-CHpkjUPy.js} +46 -47
  34. package/dist/{role-Dd1TUMhn.js → role-DtatkKp9.js} +2 -2
  35. package/dist/{rule-DmxI7qEY.js → rule-DJJMpkoG.js} +3 -3
  36. package/dist/src/api/employee/index.d.ts +2 -2
  37. package/dist/src/api/schedule/index.d.ts +11 -1
  38. package/dist/src/components/layout/SchedulePromoBanner.vue.d.ts +2 -0
  39. package/dist/src/composables/useDiscardConfirm.d.ts +3 -1
  40. package/dist/src/stores/employee.d.ts +12 -12
  41. package/dist/src/types/schedule.d.ts +1 -1
  42. package/dist/src/views/audit-log/locales/index.d.ts +252 -0
  43. package/dist/src/views/scheduling/components/ScheduleAreaRows.vue.d.ts +6 -2
  44. package/dist/src/views/scheduling/components/ScheduleAutoScheduleDoneArt.vue.d.ts +2 -0
  45. package/dist/src/views/scheduling/components/ScheduleBoardAreaRows.vue.d.ts +2 -0
  46. package/dist/src/views/scheduling/components/ScheduleBoardGridHeader.vue.d.ts +5 -0
  47. package/dist/src/views/scheduling/components/ScheduleBoardInteractionOverlays.vue.d.ts +2 -0
  48. package/dist/src/views/scheduling/components/ScheduleBoardOnboardingOverlays.vue.d.ts +1 -0
  49. package/dist/src/views/scheduling/components/ScheduleBoardToolbar.vue.d.ts +0 -1
  50. package/dist/src/views/scheduling/components/ScheduleCompletionDialog.vue.d.ts +1 -1
  51. package/dist/src/views/scheduling/components/ScheduleConfirmModal.vue.d.ts +4 -1
  52. package/dist/src/views/scheduling/components/ScheduleDayTimeline.vue.d.ts +5 -0
  53. package/dist/src/views/scheduling/components/ScheduleLoadState.vue.d.ts +0 -1
  54. package/dist/src/views/scheduling/components/ScheduleOnboardingSettings.vue.d.ts +6 -0
  55. package/dist/src/views/scheduling/components/ScheduleShiftPopover.vue.d.ts +1 -1
  56. package/dist/src/views/scheduling/composables/auto-schedule-mapping.d.ts +3 -3
  57. package/dist/src/views/scheduling/composables/onboarding-types.d.ts +2 -1
  58. package/dist/src/views/scheduling/composables/remyPrompt.d.ts +4 -2
  59. package/dist/src/views/scheduling/composables/schedule-board-helpers.d.ts +4 -0
  60. package/dist/src/views/scheduling/composables/schedule-day-meta.d.ts +1 -3
  61. package/dist/src/views/scheduling/composables/schedule-demand-domain.d.ts +13 -1
  62. package/dist/src/views/scheduling/composables/schedule-error.d.ts +1 -0
  63. package/dist/src/views/scheduling/composables/schedule-leave-split.d.ts +5 -0
  64. package/dist/src/views/scheduling/composables/schedule-quick-pick.d.ts +22 -0
  65. package/dist/src/views/scheduling/composables/schedule-shift-time.d.ts +3 -0
  66. package/dist/src/views/scheduling/composables/schedule-week-cache.d.ts +3 -1
  67. package/dist/src/views/scheduling/composables/useRemyAppStore.d.ts +1 -0
  68. package/dist/src/views/scheduling/composables/useScheduleAddEmployee.d.ts +25 -2
  69. package/dist/src/views/scheduling/composables/useScheduleAddPick.d.ts +3 -11
  70. package/dist/src/views/scheduling/composables/useScheduleAreaDragDrop.d.ts +0 -1
  71. package/dist/src/views/scheduling/composables/useScheduleAutoSchedule.d.ts +22 -13
  72. package/dist/src/views/scheduling/composables/useScheduleBoard.d.ts +58 -7
  73. package/dist/src/views/scheduling/composables/useScheduleCopyWeek.d.ts +3 -10
  74. package/dist/src/views/scheduling/composables/useScheduleCostRail.d.ts +13 -1
  75. package/dist/src/views/scheduling/composables/useScheduleDayNote.d.ts +0 -1
  76. package/dist/src/views/scheduling/composables/useScheduleDayTimeline.d.ts +16 -2
  77. package/dist/src/views/scheduling/composables/useScheduleDemandSheet.d.ts +7 -0
  78. package/dist/src/views/scheduling/composables/useScheduleDragDrop.d.ts +1 -0
  79. package/dist/src/views/scheduling/composables/useScheduleEmployeeAccess.d.ts +14 -6
  80. package/dist/src/views/scheduling/composables/useScheduleEmployeeCandidates.d.ts +26 -4
  81. package/dist/src/views/scheduling/composables/useScheduleEmployeePersistence.d.ts +3 -0
  82. package/dist/src/views/scheduling/composables/useScheduleEmployeeValidation.d.ts +0 -2
  83. package/dist/src/views/scheduling/composables/useScheduleExport.d.ts +1 -0
  84. package/dist/src/views/scheduling/composables/useScheduleLeave.d.ts +5 -1
  85. package/dist/src/views/scheduling/composables/useScheduleOnboardingDemand.d.ts +1 -1
  86. package/dist/src/views/scheduling/composables/useScheduleOnboardingEmployees.d.ts +28 -2
  87. package/dist/src/views/scheduling/composables/useScheduleOnboardingWizard.d.ts +203 -8
  88. package/dist/src/views/scheduling/composables/useScheduleOutlet.d.ts +11 -8
  89. package/dist/src/views/scheduling/composables/useSchedulePageActions.d.ts +1 -1
  90. package/dist/src/views/scheduling/composables/useSchedulePageCellDrop.d.ts +3 -1
  91. package/dist/src/views/scheduling/composables/useSchedulePageClearActions.d.ts +1 -0
  92. package/dist/src/views/scheduling/composables/useSchedulePositions.d.ts +6 -0
  93. package/dist/src/views/scheduling/composables/useSchedulePublish.d.ts +2 -1
  94. package/dist/src/views/scheduling/composables/useScheduleRoster.d.ts +46 -0
  95. package/dist/src/views/scheduling/composables/useScheduleSetupBanner.d.ts +2 -2
  96. package/dist/src/views/scheduling/composables/useScheduleShiftActions.d.ts +29 -1
  97. package/dist/src/views/scheduling/composables/useScheduleShiftPopover.d.ts +32 -3
  98. package/dist/src/views/scheduling/country-rules/index.d.ts +8 -3
  99. package/dist/src/views/scheduling/data.d.ts +17 -0
  100. package/dist/src/views/scheduling/locales/index.d.ts +28 -0
  101. package/dist/src/views/scheduling/schedule-state.d.ts +236 -236
  102. package/dist/src/views/scheduling/schedule-store.d.ts +26 -7
  103. package/dist/src/views/scheduling/types.d.ts +8 -0
  104. package/dist/style.css +1 -1
  105. package/dist/tsconfig.app.tsbuildinfo +1 -1
  106. package/dist/{useAppStore-BoLkvkE2.js → useAppStore-Bp0PwbAN.js} +1 -1
  107. package/dist/useDiscardConfirm-CzZSPyvh.js +28 -0
  108. package/dist/{useLoading-Ch1AUYT1.js → useLoading-sgL8DRUz.js} +1 -1
  109. package/dist/{useReportPermissions-DM3GOFCC.js → useReportPermissions-DI-xg3OX.js} +3 -3
  110. package/package.json +2 -2
  111. package/dist/ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-Cx9jFgBS.js +0 -492
  112. package/dist/ScheduleModal.vue_vue_type_script_setup_true_lang-V1sZ_xhO.js +0 -2253
  113. package/dist/SchedulePage-ndLByVBl.js +0 -17785
  114. package/dist/_plugin-vue_export-helper-CHgC5LLL.js +0 -9
  115. package/dist/useDiscardConfirm-DPhEV6v0.js +0 -157
@@ -1,12 +1,10 @@
1
- import { ref as w, reactive as B, computed as N, defineComponent as T, createBlock as I, openBlock as p, withCtx as b, createElementVNode as e, createVNode as k, createElementBlock as m, Fragment as L, createTextVNode as H, toDisplayString as h, withDirectives as f, vModelText as g, createCommentVNode as A, renderList as V, onMounted as z, unref as o, normalizeClass as U } from "vue";
2
- import { useRouter as W } from "vue-router";
3
- import { useSnackbar as Y } from "@feedmepos/ui-library";
4
- import { R as q } from "./app-Lh0cqgHy.js";
5
- import { b as v, o as M, L as E, g as G, aq as F, ao as x, as as j, at as J, aa as K, ap as Q } from "./ScheduleModal.vue_vue_type_script_setup_true_lang-V1sZ_xhO.js";
6
- import "./iteration-jvdTHQUx.js";
7
- import { useCoreStore as X } from "@feedmepos/mf-common";
8
- import "./employee-BPmp9c6i.js";
9
- const Z = [
1
+ import { ref as w, reactive as B, computed as E, defineComponent as V, createBlock as A, openBlock as p, withCtx as b, createElementVNode as e, createVNode as k, createElementBlock as v, Fragment as L, createTextVNode as H, toDisplayString as g, withDirectives as f, vModelText as h, createCommentVNode as T, renderList as z, onMounted as Y, createStaticVNode as q, unref as r, normalizeClass as I } from "vue";
2
+ import { useRouter as F } from "vue-router";
3
+ import { useSnackbar as G } from "@feedmepos/ui-library";
4
+ import { R as j } from "./app-CyS8c8dx.js";
5
+ import { b as m, o as M, g as U, Q as J, $ as W, p as N, au as Q, as as C, aw as K, ax as X, ag as Z, at as _ } from "./ScheduleModal.vue_vue_type_script_setup_true_lang-CnKzVz3I.js";
6
+ import { useCoreStore as ee } from "@feedmepos/mf-common";
7
+ const se = [
10
8
  { key: "payrates", label: "Pay rates" },
11
9
  { key: "overtime", label: "Overtime" },
12
10
  { key: "workingHours", label: "Working hours" }
@@ -16,108 +14,115 @@ function $() {
16
14
  // RULES is reactive, so spreading each rate tier first gives structuredClone plain
17
15
  // objects instead of Vue Proxy instances, which structuredClone cannot clone.
18
16
  payRate: {
19
- NORMAL: { ...v.payRate.NORMAL },
20
- REST_DAY: { ...v.payRate.REST_DAY },
21
- PUBLIC_HOLIDAY: { ...v.payRate.PUBLIC_HOLIDAY }
17
+ NORMAL: { ...m.payRate.NORMAL },
18
+ REST_DAY: { ...m.payRate.REST_DAY },
19
+ PUBLIC_HOLIDAY: { ...m.payRate.PUBLIC_HOLIDAY }
22
20
  },
23
- otCapHours: v.otCapHours,
24
- workingHours: { ...v.workingHours }
21
+ otCapHours: m.otCapHours,
22
+ workingHours: { ...m.workingHours }
25
23
  });
26
24
  }
27
- function _() {
28
- const l = X(), d = w(!1), a = w("payrates"), r = B($()), t = w(!1);
25
+ function te() {
26
+ const n = ee(), d = w(!1), a = w("payrates"), i = B($()), t = w(!1);
29
27
  let u = 0;
30
- async function C() {
28
+ async function x() {
31
29
  if (!M.value) return;
32
- const c = ++u, i = M.value;
30
+ const c = ++u, o = M.value;
33
31
  t.value = !0;
34
32
  try {
35
- const s = await E.getSettings(i);
36
- if (c !== u || M.value !== i) return;
37
- const n = G(l.currentCountry.value);
38
- v.payRate = structuredClone(s.settingsConfigured ? s.payRate : n.payRate), v.otCapHours = s.settingsConfigured ? s.overtime.maxHoursPerMonth : n.overtime.maxHoursPerMonth, v.workingHours = s.settingsConfigured ? structuredClone(s.workingHours) : {
33
+ const s = await W.getSettings(o);
34
+ if (c !== u || M.value !== o) return;
35
+ N.value && (N.value = { ...N.value, settings: s });
36
+ const l = U(n.currentCountry.value);
37
+ m.payRate = structuredClone(s.settingsConfigured ? s.payRate : l.payRate), m.otCapHours = s.settingsConfigured ? s.overtime.maxHoursPerMonth : l.overtime.maxHoursPerMonth, m.workingHours = s.settingsConfigured ? structuredClone(s.workingHours) : {
39
38
  minHoursPerDay: null,
40
- maxHoursPerDay: n.workingHours.maxHoursPerDay,
41
- maxHoursPerWeek: n.workingHours.maxHoursPerWeek
39
+ maxHoursPerDay: l.workingHours.fullTime.maxHoursPerDay,
40
+ maxHoursPerWeek: l.workingHours.fullTime.maxHoursPerWeek
42
41
  };
43
42
  } finally {
44
43
  c === u && (t.value = !1);
45
44
  }
46
45
  }
47
46
  function y(c) {
48
- Object.assign(r, $()), a.value = c ?? "payrates", d.value = !0;
47
+ Object.assign(i, $()), a.value = c ?? "payrates", d.value = !0;
49
48
  }
50
- const S = N(() => JSON.stringify(r) !== JSON.stringify($()));
51
- function P() {
52
- return S.value ? !1 : (d.value = !1, !0);
49
+ const P = E(() => JSON.stringify(i) !== JSON.stringify($()));
50
+ function S() {
51
+ return P.value ? !1 : (d.value = !1, !0);
53
52
  }
54
53
  function D() {
55
- Object.assign(r, $()), d.value = !1;
54
+ Object.assign(i, $()), d.value = !1;
56
55
  }
57
56
  async function R() {
58
57
  if (!M.value) throw new Error("No outlet selected");
59
- const c = r.otCapHours === 0 ? null : r.otCapHours;
58
+ const c = i.otCapHours === 0 ? null : i.otCapHours;
60
59
  if (c != null && c <= 0)
61
60
  throw new Error("Maximum monthly overtime hours must be greater than zero");
62
- const i = {
63
- minHoursPerDay: r.workingHours.minHoursPerDay === 0 ? null : r.workingHours.minHoursPerDay,
64
- maxHoursPerDay: r.workingHours.maxHoursPerDay === 0 ? null : r.workingHours.maxHoursPerDay,
65
- maxHoursPerWeek: r.workingHours.maxHoursPerWeek === 0 ? null : r.workingHours.maxHoursPerWeek
66
- };
67
- if (i.minHoursPerDay != null && i.maxHoursPerDay != null && i.minHoursPerDay > i.maxHoursPerDay)
68
- throw new Error("Minimum daily working hours cannot exceed maximum daily working hours");
69
- const s = await E.saveSettings(M.value, {
70
- payRate: r.payRate,
61
+ const o = {
62
+ minHoursPerDay: i.workingHours.minHoursPerDay === 0 ? null : i.workingHours.minHoursPerDay,
63
+ maxHoursPerDay: i.workingHours.maxHoursPerDay === 0 ? null : i.workingHours.maxHoursPerDay,
64
+ maxHoursPerWeek: i.workingHours.maxHoursPerWeek === 0 ? null : i.workingHours.maxHoursPerWeek
65
+ }, s = U(n.currentCountry.value);
66
+ if (o.maxHoursPerDay == null)
67
+ throw new Error(`Maximum daily hours must be greater than zero. Default value to use: ${s.workingHours.fullTime.maxHoursPerDay} hours per day.`);
68
+ if (o.maxHoursPerWeek == null)
69
+ throw new Error(`Maximum weekly hours must be greater than zero. Default value to use: ${s.workingHours.fullTime.maxHoursPerWeek} hours per week.`);
70
+ if (o.minHoursPerDay != null && o.maxHoursPerDay != null && o.minHoursPerDay > o.maxHoursPerDay)
71
+ throw new Error("Minimum daily hours cannot exceed maximum daily hours");
72
+ if (o.maxHoursPerDay != null && o.maxHoursPerWeek != null && o.maxHoursPerDay > o.maxHoursPerWeek)
73
+ throw new Error("Maximum daily hours cannot exceed maximum weekly hours");
74
+ const l = await J({
75
+ payRate: i.payRate,
71
76
  overtime: { maxHoursPerMonth: c },
72
- workingHours: i
77
+ workingHours: o
73
78
  });
74
- v.payRate = structuredClone(s.payRate), v.otCapHours = s.overtime.maxHoursPerMonth, v.workingHours = structuredClone(s.workingHours), d.value = !1;
79
+ m.payRate = structuredClone(l.payRate), m.otCapHours = l.overtime.maxHoursPerMonth, m.workingHours = structuredClone(l.workingHours), d.value = !1;
75
80
  }
76
- return { isOpen: d, activeSection: a, draft: r, dirty: S, loading: t, load: C, open: y, close: P, discard: D, save: R };
81
+ return { isOpen: d, activeSection: a, draft: i, dirty: P, loading: t, load: x, open: y, close: S, discard: D, save: R };
77
82
  }
78
- function ee(l, d = {}) {
79
- const a = w(!1), r = w(""), t = w(/* @__PURE__ */ new Set()), u = w(!1), C = w(null), y = N(
83
+ function ae(n, d = {}) {
84
+ const a = w(!1), i = w(""), t = w(/* @__PURE__ */ new Set()), u = w(!1), x = w(null), y = E(
80
85
  () => {
81
- var i;
82
- return ((i = l.options.value.find((s) => s.value === l.outletId.value)) == null ? void 0 : i.label) ?? "";
86
+ var o;
87
+ return ((o = n.options.value.find((s) => s.value === n.outletId.value)) == null ? void 0 : o.label) ?? "";
83
88
  }
84
- ), S = N(() => {
85
- const i = r.value.trim().toLowerCase();
86
- return l.options.value.filter(
87
- (s) => s.value !== l.outletId.value && (!i || s.label.toLowerCase().includes(i))
89
+ ), P = E(() => {
90
+ const o = i.value.trim().toLowerCase();
91
+ return n.options.value.filter(
92
+ (s) => s.value !== n.outletId.value && (!o || s.label.toLowerCase().includes(o))
88
93
  );
89
94
  });
90
- function P() {
91
- r.value = "", t.value = /* @__PURE__ */ new Set(), u.value = !1, C.value = null, a.value = !0;
95
+ function S() {
96
+ i.value = "", t.value = /* @__PURE__ */ new Set(), u.value = !1, x.value = null, a.value = !0;
92
97
  }
93
98
  function D() {
94
99
  a.value = !1;
95
100
  }
96
- function R(i) {
101
+ function R(o) {
97
102
  const s = new Set(t.value);
98
- s.has(i) ? s.delete(i) : s.add(i), t.value = s;
103
+ s.has(o) ? s.delete(o) : s.add(o), t.value = s;
99
104
  }
100
105
  async function c() {
101
- var s, n;
102
- const i = [...t.value];
103
- if (!(!i.length || u.value)) {
106
+ var s, l;
107
+ const o = [...t.value];
108
+ if (!(!o.length || u.value)) {
104
109
  u.value = !0;
105
110
  try {
106
111
  await Promise.all(
107
- i.map(
108
- (O) => E.saveSettings(O, {
109
- payRate: v.payRate,
110
- overtime: { maxHoursPerMonth: v.otCapHours },
111
- workingHours: v.workingHours
112
+ o.map(
113
+ (O) => W.saveSettings(O, {
114
+ payRate: m.payRate,
115
+ overtime: { maxHoursPerMonth: m.otCapHours },
116
+ workingHours: m.workingHours
112
117
  })
113
118
  )
114
- ), C.value = i.length, (s = d.notify) == null || s.call(
119
+ ), x.value = o.length, (s = d.notify) == null || s.call(
115
120
  d,
116
- `Setup copied to ${i.length} outlet${i.length === 1 ? "" : "s"}`,
121
+ `Setup copied to ${o.length} outlet${o.length === 1 ? "" : "s"}`,
117
122
  "success"
118
123
  );
119
124
  } catch (O) {
120
- (n = d.notify) == null || n.call(
125
+ (l = d.notify) == null || l.call(
121
126
  d,
122
127
  O instanceof Error ? O.message : "Could not clone outlet setup",
123
128
  "error"
@@ -129,54 +134,54 @@ function ee(l, d = {}) {
129
134
  }
130
135
  return {
131
136
  open: a,
132
- query: r,
137
+ query: i,
133
138
  selected: t,
134
139
  saving: u,
135
- done: C,
140
+ done: x,
136
141
  sourceLabel: y,
137
- targets: S,
138
- openModal: P,
142
+ targets: P,
143
+ openModal: S,
139
144
  close: D,
140
145
  toggle: R,
141
146
  confirm: c
142
147
  };
143
148
  }
144
- const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
149
+ const oe = { class: "am-head" }, le = { class: "ce-body" }, re = {
145
150
  class: "ce-hint",
146
151
  style: { "margin-bottom": "var(--fm-spacing-10)" }
147
- }, oe = { class: "sch-search" }, le = { class: "asg-list" }, re = ["checked", "onChange"], ne = { class: "asg-id" }, ie = { class: "asg-nm" }, ue = {
152
+ }, ne = { class: "sch-search" }, ie = { class: "asg-list" }, ue = ["checked", "onChange"], de = { class: "asg-id" }, pe = { class: "asg-nm" }, me = {
148
153
  key: 0,
149
154
  class: "asg-empty"
150
- }, de = {
155
+ }, ve = {
151
156
  key: 1,
152
157
  class: "cg-done"
153
- }, pe = { class: "cg-st-main" }, ve = { class: "am-foot" }, me = { class: "am-cost-preview" }, ce = { class: "am-foot-btns" }, ye = /* @__PURE__ */ T({
158
+ }, ce = { class: "cg-st-main" }, ye = { class: "am-foot" }, fe = { class: "am-cost-preview" }, he = { class: "am-foot-btns" }, ge = /* @__PURE__ */ V({
154
159
  __name: "ScheduleCloneOutletModal",
155
160
  props: {
156
161
  modal: {}
157
162
  },
158
- setup(l) {
159
- return (d, a) => (p(), I(F, {
160
- open: l.modal.open.value,
163
+ setup(n) {
164
+ return (d, a) => (p(), A(Q, {
165
+ open: n.modal.open.value,
161
166
  "panel-class": "ce-modal",
162
167
  "panel-style": "width: min(460px, 95vw)",
163
168
  "labelled-by": "schedule-clone-title",
164
- onClose: a[5] || (a[5] = (r) => l.modal.close())
169
+ onClose: a[5] || (a[5] = (i) => n.modal.close())
165
170
  }, {
166
171
  default: b(() => [
167
- e("div", se, [
172
+ e("div", oe, [
168
173
  a[7] || (a[7] = e("div", {
169
174
  id: "schedule-clone-title",
170
175
  class: "am-title"
171
176
  }, "Clone outlet setup", -1)),
172
- k(x, {
177
+ k(C, {
173
178
  hierarchy: "ghost",
174
179
  size: "xs",
175
180
  "icon-only": "",
176
181
  class: "ce-close-x",
177
182
  type: "button",
178
183
  "aria-label": "Close",
179
- onClick: a[0] || (a[0] = (r) => l.modal.close())
184
+ onClick: a[0] || (a[0] = (i) => n.modal.close())
180
185
  }, {
181
186
  default: b(() => [...a[6] || (a[6] = [
182
187
  e("svg", {
@@ -195,14 +200,14 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
195
200
  _: 1
196
201
  })
197
202
  ]),
198
- e("div", te, [
199
- l.modal.done.value === null ? (p(), m(L, { key: 0 }, [
200
- e("div", ae, [
203
+ e("div", le, [
204
+ n.modal.done.value === null ? (p(), v(L, { key: 0 }, [
205
+ e("div", re, [
201
206
  a[8] || (a[8] = H(" Copy ", -1)),
202
- e("b", null, h(l.modal.sourceLabel.value), 1),
207
+ e("b", null, g(n.modal.sourceLabel.value), 1),
203
208
  a[9] || (a[9] = H("'s pay rates to: ", -1))
204
209
  ]),
205
- e("div", oe, [
210
+ e("div", ne, [
206
211
  a[10] || (a[10] = e("svg", {
207
212
  width: "16",
208
213
  height: "16",
@@ -225,84 +230,84 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
225
230
  })
226
231
  ], -1)),
227
232
  f(e("input", {
228
- "onUpdate:modelValue": a[1] || (a[1] = (r) => l.modal.query.value = r),
233
+ "onUpdate:modelValue": a[1] || (a[1] = (i) => n.modal.query.value = i),
229
234
  type: "search",
230
235
  placeholder: "Search outlets",
231
236
  "aria-label": "Search outlets",
232
237
  autocomplete: "off"
233
238
  }, null, 512), [
234
- [g, l.modal.query.value]
239
+ [h, n.modal.query.value]
235
240
  ])
236
241
  ]),
237
- e("div", le, [
238
- (p(!0), m(L, null, V(l.modal.targets.value, (r) => (p(), m("label", {
239
- key: r.value,
242
+ e("div", ie, [
243
+ (p(!0), v(L, null, z(n.modal.targets.value, (i) => (p(), v("label", {
244
+ key: i.value,
240
245
  class: "asg-row"
241
246
  }, [
242
247
  e("input", {
243
248
  type: "checkbox",
244
249
  class: "sch-checkbox",
245
250
  "data-platform": "desktop",
246
- checked: l.modal.selected.value.has(r.value),
247
- onChange: (t) => l.modal.toggle(r.value)
248
- }, null, 40, re),
249
- e("span", ne, [
250
- e("span", ie, h(r.label), 1)
251
+ checked: n.modal.selected.value.has(i.value),
252
+ onChange: (t) => n.modal.toggle(i.value)
253
+ }, null, 40, ue),
254
+ e("span", de, [
255
+ e("span", pe, g(i.label), 1)
251
256
  ])
252
257
  ]))), 128)),
253
- l.modal.targets.value.length ? A("", !0) : (p(), m("div", ue, h(l.modal.query.value ? "No outlet matches that search." : "No other outlets."), 1))
258
+ n.modal.targets.value.length ? T("", !0) : (p(), v("div", me, g(n.modal.query.value ? "No outlet matches that search." : "No other outlets."), 1))
254
259
  ]),
255
260
  a[11] || (a[11] = e("div", {
256
261
  class: "ce-hint",
257
262
  style: { "margin-top": "var(--fm-spacing-10)" }
258
263
  }, " Copies this outlet's pay rates to the outlets you tick. Their current pay rates are replaced. ", -1))
259
- ], 64)) : (p(), m("div", de, [
264
+ ], 64)) : (p(), v("div", ve, [
260
265
  a[13] || (a[13] = e("span", {
261
266
  class: "cg-done-tick",
262
267
  "aria-hidden": "true"
263
268
  }, "✓", -1)),
264
- e("div", pe, [
269
+ e("div", ce, [
265
270
  a[12] || (a[12] = e("b", null, "Pay rates copied", -1)),
266
- e("small", null, "Sent to " + h(l.modal.done.value) + " outlet" + h(l.modal.done.value === 1 ? "" : "s"), 1)
271
+ e("small", null, "Sent to " + g(n.modal.done.value) + " outlet" + g(n.modal.done.value === 1 ? "" : "s"), 1)
267
272
  ])
268
273
  ]))
269
274
  ]),
270
- e("div", ve, [
271
- e("div", me, h(l.modal.done.value === null && l.modal.selected.value.size ? `${l.modal.selected.value.size} outlet${l.modal.selected.value.size === 1 ? "" : "s"} selected` : ""), 1),
272
- e("div", ce, [
273
- l.modal.done.value === null ? (p(), m(L, { key: 0 }, [
274
- k(x, {
275
+ e("div", ye, [
276
+ e("div", fe, g(n.modal.done.value === null && n.modal.selected.value.size ? `${n.modal.selected.value.size} outlet${n.modal.selected.value.size === 1 ? "" : "s"} selected` : ""), 1),
277
+ e("div", he, [
278
+ n.modal.done.value === null ? (p(), v(L, { key: 0 }, [
279
+ k(C, {
275
280
  hierarchy: "secondary",
276
281
  size: "sm",
277
282
  class: "am-btn am-btn-sec",
278
283
  type: "button",
279
- onClick: a[2] || (a[2] = (r) => l.modal.close())
284
+ onClick: a[2] || (a[2] = (i) => n.modal.close())
280
285
  }, {
281
286
  default: b(() => [...a[14] || (a[14] = [
282
287
  H(" Cancel ", -1)
283
288
  ])]),
284
289
  _: 1
285
290
  }),
286
- k(x, {
291
+ k(C, {
287
292
  hierarchy: "primary",
288
293
  size: "sm",
289
294
  class: "am-btn am-btn-primary",
290
295
  type: "button",
291
- disabled: !l.modal.selected.value.size || l.modal.saving.value,
292
- onClick: a[3] || (a[3] = (r) => l.modal.confirm())
296
+ disabled: !n.modal.selected.value.size || n.modal.saving.value,
297
+ onClick: a[3] || (a[3] = (i) => n.modal.confirm())
293
298
  }, {
294
299
  default: b(() => [
295
- H(h(l.modal.saving.value ? "Copying…" : "Copy setup"), 1)
300
+ H(g(n.modal.saving.value ? "Copying…" : "Copy setup"), 1)
296
301
  ]),
297
302
  _: 1
298
303
  }, 8, ["disabled"])
299
- ], 64)) : (p(), I(x, {
304
+ ], 64)) : (p(), A(C, {
300
305
  key: 1,
301
306
  hierarchy: "primary",
302
307
  size: "sm",
303
308
  class: "am-btn am-btn-primary",
304
309
  type: "button",
305
- onClick: a[4] || (a[4] = (r) => l.modal.close())
310
+ onClick: a[4] || (a[4] = (i) => n.modal.close())
306
311
  }, {
307
312
  default: b(() => [...a[15] || (a[15] = [
308
313
  H(" Done ", -1)
@@ -315,40 +320,40 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
315
320
  _: 1
316
321
  }, 8, ["open"]));
317
322
  }
318
- }), fe = { class: "main" }, ge = {
323
+ }), we = { class: "main" }, ke = {
319
324
  id: "viewSettings",
320
325
  class: "view"
321
- }, he = { class: "sp-head" }, we = { class: "outlet-bar" }, ke = { class: "sp-body" }, be = { class: "sp-tabs" }, He = ["onClick"], Ce = { class: "sp-content" }, xe = { class: "sp-panel" }, Se = {
326
+ }, be = { class: "sp-head" }, He = { class: "outlet-bar" }, xe = { class: "sp-body" }, Ce = { class: "sp-tabs" }, Pe = ["onClick"], Se = { class: "sp-content" }, De = { class: "sp-panel" }, Re = {
322
327
  key: 0,
323
328
  id: "sp-payrates",
324
329
  class: "sp-sec"
325
- }, Pe = { class: "sp-card" }, De = { class: "sp-row" }, Re = { class: "sp-field" }, Oe = { class: "sp-row" }, Me = { class: "sp-field" }, $e = { class: "sp-row" }, Le = { class: "sp-field" }, Ne = { class: "sp-card" }, Ae = { class: "sp-row" }, Ee = { class: "sp-field" }, Ie = { class: "sp-row" }, Ue = { class: "sp-field" }, Te = {
330
+ }, Oe = { class: "sp-card" }, Me = { class: "sp-row" }, $e = { class: "sp-field" }, Le = { class: "sp-row" }, Ee = { class: "sp-field" }, Ne = { class: "sp-row" }, Te = { class: "sp-field" }, Ae = { class: "sp-card" }, Ie = { class: "sp-row" }, Ue = { class: "sp-field" }, Ve = { class: "sp-row" }, ze = { class: "sp-field" }, We = {
326
331
  key: 1,
327
332
  id: "sp-working-hours",
328
333
  class: "sp-sec"
329
- }, Ve = { class: "sp-card" }, Be = { class: "sp-row" }, ze = { class: "sp-field" }, We = { class: "sp-row" }, Ye = { class: "sp-field" }, qe = { class: "sp-row" }, Ge = { class: "sp-field" }, Fe = {
334
+ }, Be = { class: "sp-card" }, Ye = { class: "sp-row" }, qe = { class: "sp-field" }, Fe = { class: "sp-row" }, Ge = { class: "sp-field" }, je = { class: "sp-row" }, Je = { class: "sp-field" }, Qe = {
330
335
  key: 2,
331
336
  id: "sp-overtime",
332
337
  class: "sp-sec"
333
- }, je = { class: "sp-card" }, Je = { class: "sp-row" }, Ke = { class: "sp-save-txt" }, Qe = { key: 0 }, ls = /* @__PURE__ */ T({
338
+ }, Ke = { class: "sp-card" }, Xe = { class: "sp-row" }, Ze = { class: "sp-save-txt" }, _e = { key: 0 }, rs = /* @__PURE__ */ V({
334
339
  __name: "ScheduleGeneralPage",
335
- setup(l) {
340
+ setup(n) {
336
341
  const d = w(null);
337
- j(d);
338
- const a = W(), r = Y(), t = _(), u = J(), C = ee(u, {
339
- notify: (i, s) => r.open({ message: i, type: s })
342
+ K(d);
343
+ const a = F(), i = G(), t = te(), u = X(), x = ae(u, {
344
+ notify: (o, s) => i.open({ message: o, type: s })
340
345
  }), y = w(!1);
341
- z(async () => {
342
- await u.resolve() && await K(/* @__PURE__ */ new Date()), await t.load(), t.open();
346
+ Y(async () => {
347
+ await u.resolve() && await Z(/* @__PURE__ */ new Date()), await t.load(), t.open();
343
348
  });
344
- const S = N(
349
+ const P = E(
345
350
  () => u.options.value.length ? u.options.value : [{ value: "", label: "No outlet selected", disabled: !0 }]
346
351
  );
347
- async function P(i) {
348
- t.dirty.value || await u.switchTo(i, /* @__PURE__ */ new Date()) && (await t.load(), t.open());
352
+ async function S(o) {
353
+ t.dirty.value || await u.switchTo(o, /* @__PURE__ */ new Date()) && (await t.load(), t.open());
349
354
  }
350
355
  function D() {
351
- t.close() && a.push({ name: q.SCHEDULE });
356
+ t.close() && a.push({ name: j.SCHEDULE });
352
357
  }
353
358
  function R() {
354
359
  if (!y.value) {
@@ -359,23 +364,23 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
359
364
  }
360
365
  async function c() {
361
366
  try {
362
- await t.save(), r.open({ message: "General settings saved", type: "success" });
363
- } catch (i) {
364
- r.open({
365
- message: i instanceof Error ? i.message : "Could not save general settings",
367
+ await t.save(), i.open({ message: "General settings saved", type: "success" });
368
+ } catch (o) {
369
+ i.open({
370
+ message: o instanceof Error ? o.message : "Could not save general settings",
366
371
  type: "error"
367
372
  });
368
373
  }
369
374
  }
370
- return (i, s) => (p(), m("div", {
375
+ return (o, s) => (p(), v("div", {
371
376
  ref_key: "rootEl",
372
377
  ref: d,
373
378
  class: "sch"
374
379
  }, [
375
- e("div", fe, [
376
- e("div", ge, [
377
- e("div", he, [
378
- k(x, {
380
+ e("div", we, [
381
+ e("div", ke, [
382
+ e("div", be, [
383
+ k(C, {
379
384
  hierarchy: "ghost",
380
385
  size: "sm",
381
386
  class: "sp-back",
@@ -402,28 +407,27 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
402
407
  ])]),
403
408
  _: 1
404
409
  }),
405
- s[15] || (s[15] = e("div", { class: "sp-title" }, "General Settings", -1)),
406
- s[16] || (s[16] = e("div", { class: "sp-sub" }, "Pay multipliers and overtime limit for this outlet.", -1)),
407
- e("div", we, [
410
+ s[15] || (s[15] = q('<div class="sp-title-row"><div class="sp-title">General Settings</div><span class="page-tags"><span class="sch-badge page-tag-premium" data-color="brand">Premium</span><span class="sch-badge" data-color="info">Free until 31 Dec 2026</span></span></div><div class="sp-sub">Pay multipliers and overtime limit for this outlet.</div>', 2)),
411
+ e("div", He, [
408
412
  s[14] || (s[14] = e("span", { class: "outlet-bar-lbl" }, "Outlet", -1)),
409
- k(Q, {
413
+ k(_, {
410
414
  class: "outlet-sel",
411
415
  "aria-label": "Outlet being configured",
412
416
  searchable: "",
413
- disabled: o(t).dirty.value || o(t).loading.value,
414
- title: o(t).dirty.value ? "Save or discard changes before switching outlets" : "Which outlet these pay rates apply to",
415
- "model-value": o(u).outletId.value,
416
- options: S.value,
417
- "onUpdate:modelValue": P
417
+ disabled: r(t).dirty.value || r(t).loading.value,
418
+ title: r(t).dirty.value ? "Save or discard changes before switching outlets" : "Which outlet these pay rates apply to",
419
+ "model-value": r(u).outletId.value,
420
+ options: P.value,
421
+ "onUpdate:modelValue": S
418
422
  }, null, 8, ["disabled", "title", "model-value", "options"]),
419
- k(x, {
423
+ k(C, {
420
424
  hierarchy: "secondary",
421
425
  size: "sm",
422
426
  class: "outlet-clone",
423
427
  type: "button",
424
- disabled: o(t).dirty.value || o(t).loading.value || !o(u).outletId.value,
425
- title: o(t).dirty.value ? "Save or discard changes before cloning" : "Copy this outlet's pay rates to other outlets",
426
- onClick: s[0] || (s[0] = (n) => o(C).openModal())
428
+ disabled: r(t).dirty.value || r(t).loading.value || !r(u).outletId.value,
429
+ title: r(t).dirty.value ? "Save or discard changes before cloning" : "Copy this outlet's pay rates to other outlets",
430
+ onClick: s[0] || (s[0] = (l) => r(x).openModal())
427
431
  }, {
428
432
  default: b(() => [...s[13] || (s[13] = [
429
433
  e("svg", {
@@ -455,36 +459,36 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
455
459
  }, 8, ["disabled", "title"])
456
460
  ])
457
461
  ]),
458
- e("div", ke, [
459
- e("nav", be, [
460
- (p(!0), m(L, null, V(o(Z), (n) => (p(), m("button", {
461
- key: n.key,
462
+ e("div", xe, [
463
+ e("nav", Ce, [
464
+ (p(!0), v(L, null, z(r(se), (l) => (p(), v("button", {
465
+ key: l.key,
462
466
  type: "button",
463
- class: U(["sch-tab sp-tab", { active: o(t).activeSection.value === n.key }]),
467
+ class: I(["sch-tab sp-tab", { active: r(t).activeSection.value === l.key }]),
464
468
  "data-active": "false",
465
- onClick: (O) => o(t).activeSection.value = n.key
466
- }, h(n.label), 11, He))), 128))
469
+ onClick: (O) => r(t).activeSection.value = l.key
470
+ }, g(l.label), 11, Pe))), 128))
467
471
  ]),
468
- e("div", Ce, [
469
- e("div", xe, [
470
- o(t).activeSection.value === "payrates" ? (p(), m("section", Se, [
471
- s[29] || (s[29] = e("div", { class: "sp-sec-head" }, [
472
+ e("div", Se, [
473
+ e("div", De, [
474
+ r(t).activeSection.value === "payrates" ? (p(), v("section", Re, [
475
+ s[28] || (s[28] = e("div", { class: "sp-sec-head" }, [
472
476
  e("div", { class: "sp-panel-title" }, "Pay rates")
473
477
  ], -1)),
474
- s[30] || (s[30] = e("div", { class: "sp-panel-desc" }, "Pay multipliers by kind of day.", -1)),
475
- e("div", Pe, [
476
- s[23] || (s[23] = e("div", { class: "sp-card-head" }, [
478
+ s[29] || (s[29] = e("div", { class: "sp-panel-desc" }, "Pay multipliers by kind of day.", -1)),
479
+ e("div", Oe, [
480
+ s[22] || (s[22] = e("div", { class: "sp-card-head" }, [
477
481
  e("div", { class: "sp-card-title" }, "Overtime rate"),
478
482
  e("div", { class: "sp-card-note" }, "Multiplier on every OT hour")
479
483
  ], -1)),
480
- e("div", De, [
481
- s[18] || (s[18] = e("div", { class: "sp-row-main" }, [
484
+ e("div", Me, [
485
+ s[17] || (s[17] = e("div", { class: "sp-row-main" }, [
482
486
  e("div", { class: "sp-row-label" }, "Normal operations day"),
483
487
  e("div", { class: "sp-row-hint" }, " Multiplier on their rate for hours past the weekly contract. ")
484
488
  ], -1)),
485
- e("div", Re, [
489
+ e("div", $e, [
486
490
  f(e("input", {
487
- "onUpdate:modelValue": s[1] || (s[1] = (n) => o(t).draft.payRate.NORMAL.overtime = n),
491
+ "onUpdate:modelValue": s[1] || (s[1] = (l) => r(t).draft.payRate.NORMAL.overtime = l),
488
492
  class: "sch-input sp-num",
489
493
  type: "number",
490
494
  min: "1",
@@ -493,23 +497,23 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
493
497
  "aria-label": "Overtime rate on a normal day"
494
498
  }, null, 512), [
495
499
  [
496
- g,
497
- o(t).draft.payRate.NORMAL.overtime,
500
+ h,
501
+ r(t).draft.payRate.NORMAL.overtime,
498
502
  void 0,
499
503
  { number: !0 }
500
504
  ]
501
505
  ]),
502
- s[17] || (s[17] = e("span", { class: "sp-unit" }, "×", -1))
506
+ s[16] || (s[16] = e("span", { class: "sp-unit" }, "×", -1))
503
507
  ])
504
508
  ]),
505
- e("div", Oe, [
506
- s[20] || (s[20] = e("div", { class: "sp-row-main" }, [
509
+ e("div", Le, [
510
+ s[19] || (s[19] = e("div", { class: "sp-row-main" }, [
507
511
  e("div", { class: "sp-row-label" }, "Off day"),
508
512
  e("div", { class: "sp-row-hint" }, " For a shift on the person's off day, weekly or booked. Check the rate with HR. ")
509
513
  ], -1)),
510
- e("div", Me, [
514
+ e("div", Ee, [
511
515
  f(e("input", {
512
- "onUpdate:modelValue": s[2] || (s[2] = (n) => o(t).draft.payRate.REST_DAY.overtime = n),
516
+ "onUpdate:modelValue": s[2] || (s[2] = (l) => r(t).draft.payRate.REST_DAY.overtime = l),
513
517
  class: "sch-input sp-num",
514
518
  type: "number",
515
519
  min: "1",
@@ -518,23 +522,23 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
518
522
  "aria-label": "Overtime rate on an off day"
519
523
  }, null, 512), [
520
524
  [
521
- g,
522
- o(t).draft.payRate.REST_DAY.overtime,
525
+ h,
526
+ r(t).draft.payRate.REST_DAY.overtime,
523
527
  void 0,
524
528
  { number: !0 }
525
529
  ]
526
530
  ]),
527
- s[19] || (s[19] = e("span", { class: "sp-unit" }, "×", -1))
531
+ s[18] || (s[18] = e("span", { class: "sp-unit" }, "×", -1))
528
532
  ])
529
533
  ]),
530
- e("div", $e, [
531
- s[22] || (s[22] = e("div", { class: "sp-row-main" }, [
534
+ e("div", Ne, [
535
+ s[21] || (s[21] = e("div", { class: "sp-row-main" }, [
532
536
  e("div", { class: "sp-row-label" }, "Public holiday"),
533
537
  e("div", { class: "sp-row-hint" }, " For dates on the holiday calendar. Wins over an off day on the same date. ")
534
538
  ], -1)),
535
- e("div", Le, [
539
+ e("div", Te, [
536
540
  f(e("input", {
537
- "onUpdate:modelValue": s[3] || (s[3] = (n) => o(t).draft.payRate.PUBLIC_HOLIDAY.overtime = n),
541
+ "onUpdate:modelValue": s[3] || (s[3] = (l) => r(t).draft.payRate.PUBLIC_HOLIDAY.overtime = l),
538
542
  class: "sch-input sp-num",
539
543
  type: "number",
540
544
  min: "1",
@@ -543,29 +547,29 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
543
547
  "aria-label": "Overtime rate on a public holiday"
544
548
  }, null, 512), [
545
549
  [
546
- g,
547
- o(t).draft.payRate.PUBLIC_HOLIDAY.overtime,
550
+ h,
551
+ r(t).draft.payRate.PUBLIC_HOLIDAY.overtime,
548
552
  void 0,
549
553
  { number: !0 }
550
554
  ]
551
555
  ]),
552
- s[21] || (s[21] = e("span", { class: "sp-unit" }, "×", -1))
556
+ s[20] || (s[20] = e("span", { class: "sp-unit" }, "×", -1))
553
557
  ])
554
558
  ])
555
559
  ]),
556
- e("div", Ne, [
557
- s[28] || (s[28] = e("div", { class: "sp-card-head" }, [
560
+ e("div", Ae, [
561
+ s[27] || (s[27] = e("div", { class: "sp-card-head" }, [
558
562
  e("div", { class: "sp-card-title" }, "Regular rate"),
559
563
  e("div", { class: "sp-card-note" }, "Multiplier on ordinary hours")
560
564
  ], -1)),
561
- e("div", Ae, [
562
- s[25] || (s[25] = e("div", { class: "sp-row-main" }, [
565
+ e("div", Ie, [
566
+ s[24] || (s[24] = e("div", { class: "sp-row-main" }, [
563
567
  e("div", { class: "sp-row-label" }, "Off day"),
564
568
  e("div", { class: "sp-row-hint" }, "Ordinary hours worked on the person's off day.")
565
569
  ], -1)),
566
- e("div", Ee, [
570
+ e("div", Ue, [
567
571
  f(e("input", {
568
- "onUpdate:modelValue": s[4] || (s[4] = (n) => o(t).draft.payRate.REST_DAY.regular = n),
572
+ "onUpdate:modelValue": s[4] || (s[4] = (l) => r(t).draft.payRate.REST_DAY.regular = l),
569
573
  class: "sch-input sp-num",
570
574
  type: "number",
571
575
  min: "1",
@@ -574,23 +578,23 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
574
578
  "aria-label": "Regular rate on an off day"
575
579
  }, null, 512), [
576
580
  [
577
- g,
578
- o(t).draft.payRate.REST_DAY.regular,
581
+ h,
582
+ r(t).draft.payRate.REST_DAY.regular,
579
583
  void 0,
580
584
  { number: !0 }
581
585
  ]
582
586
  ]),
583
- s[24] || (s[24] = e("span", { class: "sp-unit" }, "×", -1))
587
+ s[23] || (s[23] = e("span", { class: "sp-unit" }, "×", -1))
584
588
  ])
585
589
  ]),
586
- e("div", Ie, [
587
- s[27] || (s[27] = e("div", { class: "sp-row-main" }, [
590
+ e("div", Ve, [
591
+ s[26] || (s[26] = e("div", { class: "sp-row-main" }, [
588
592
  e("div", { class: "sp-row-label" }, "Public holiday"),
589
593
  e("div", { class: "sp-row-hint" }, " Ordinary hours worked on a date on the holiday calendar. ")
590
594
  ], -1)),
591
- e("div", Ue, [
595
+ e("div", ze, [
592
596
  f(e("input", {
593
- "onUpdate:modelValue": s[5] || (s[5] = (n) => o(t).draft.payRate.PUBLIC_HOLIDAY.regular = n),
597
+ "onUpdate:modelValue": s[5] || (s[5] = (l) => r(t).draft.payRate.PUBLIC_HOLIDAY.regular = l),
594
598
  class: "sch-input sp-num",
595
599
  type: "number",
596
600
  min: "1",
@@ -599,33 +603,33 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
599
603
  "aria-label": "Regular rate on a public holiday"
600
604
  }, null, 512), [
601
605
  [
602
- g,
603
- o(t).draft.payRate.PUBLIC_HOLIDAY.regular,
606
+ h,
607
+ r(t).draft.payRate.PUBLIC_HOLIDAY.regular,
604
608
  void 0,
605
609
  { number: !0 }
606
610
  ]
607
611
  ]),
608
- s[26] || (s[26] = e("span", { class: "sp-unit" }, "×", -1))
612
+ s[25] || (s[25] = e("span", { class: "sp-unit" }, "×", -1))
609
613
  ])
610
614
  ])
611
615
  ])
612
- ])) : o(t).activeSection.value === "workingHours" ? (p(), m("section", Te, [
613
- s[38] || (s[38] = e("div", { class: "sp-sec-head" }, [
616
+ ])) : r(t).activeSection.value === "workingHours" ? (p(), v("section", We, [
617
+ s[37] || (s[37] = e("div", { class: "sp-sec-head" }, [
614
618
  e("div", { class: "sp-panel-title" }, "Working hours")
615
619
  ], -1)),
616
- s[39] || (s[39] = e("div", { class: "sp-panel-desc" }, "Default employee working-hour limits when no individual setting is provided.", -1)),
617
- e("div", Ve, [
618
- s[37] || (s[37] = e("div", { class: "sp-card-head" }, [
620
+ s[38] || (s[38] = e("div", { class: "sp-panel-desc" }, "Default employee working-hour limits when no individual setting is provided.", -1)),
621
+ e("div", Be, [
622
+ s[36] || (s[36] = e("div", { class: "sp-card-head" }, [
619
623
  e("div", { class: "sp-card-title" }, "Default working hours"),
620
624
  e("div", { class: "sp-card-note" }, "Used as the employee default")
621
625
  ], -1)),
622
- e("div", Be, [
623
- s[32] || (s[32] = e("div", { class: "sp-row-main" }, [
626
+ e("div", Ye, [
627
+ s[31] || (s[31] = e("div", { class: "sp-row-main" }, [
624
628
  e("div", { class: "sp-row-label" }, "Min hours per day")
625
629
  ], -1)),
626
- e("div", ze, [
630
+ e("div", qe, [
627
631
  f(e("input", {
628
- "onUpdate:modelValue": s[6] || (s[6] = (n) => o(t).draft.workingHours.minHoursPerDay = n),
632
+ "onUpdate:modelValue": s[6] || (s[6] = (l) => r(t).draft.workingHours.minHoursPerDay = l),
629
633
  class: "sch-input sp-num",
630
634
  type: "number",
631
635
  min: "0",
@@ -635,22 +639,22 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
635
639
  "aria-label": "Default minimum working hours per day"
636
640
  }, null, 512), [
637
641
  [
638
- g,
639
- o(t).draft.workingHours.minHoursPerDay,
642
+ h,
643
+ r(t).draft.workingHours.minHoursPerDay,
640
644
  void 0,
641
645
  { number: !0 }
642
646
  ]
643
647
  ]),
644
- s[31] || (s[31] = e("span", { class: "sp-unit" }, "hours / day", -1))
648
+ s[30] || (s[30] = e("span", { class: "sp-unit" }, "hours / day", -1))
645
649
  ])
646
650
  ]),
647
- e("div", We, [
648
- s[34] || (s[34] = e("div", { class: "sp-row-main" }, [
651
+ e("div", Fe, [
652
+ s[33] || (s[33] = e("div", { class: "sp-row-main" }, [
649
653
  e("div", { class: "sp-row-label" }, "Max hours per day")
650
654
  ], -1)),
651
- e("div", Ye, [
655
+ e("div", Ge, [
652
656
  f(e("input", {
653
- "onUpdate:modelValue": s[7] || (s[7] = (n) => o(t).draft.workingHours.maxHoursPerDay = n),
657
+ "onUpdate:modelValue": s[7] || (s[7] = (l) => r(t).draft.workingHours.maxHoursPerDay = l),
654
658
  class: "sch-input sp-num",
655
659
  type: "number",
656
660
  min: "0",
@@ -660,22 +664,22 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
660
664
  "aria-label": "Default maximum working hours per day"
661
665
  }, null, 512), [
662
666
  [
663
- g,
664
- o(t).draft.workingHours.maxHoursPerDay,
667
+ h,
668
+ r(t).draft.workingHours.maxHoursPerDay,
665
669
  void 0,
666
670
  { number: !0 }
667
671
  ]
668
672
  ]),
669
- s[33] || (s[33] = e("span", { class: "sp-unit" }, "hours / day", -1))
673
+ s[32] || (s[32] = e("span", { class: "sp-unit" }, "hours / day", -1))
670
674
  ])
671
675
  ]),
672
- e("div", qe, [
673
- s[36] || (s[36] = e("div", { class: "sp-row-main" }, [
676
+ e("div", je, [
677
+ s[35] || (s[35] = e("div", { class: "sp-row-main" }, [
674
678
  e("div", { class: "sp-row-label" }, "Max hours per week")
675
679
  ], -1)),
676
- e("div", Ge, [
680
+ e("div", Je, [
677
681
  f(e("input", {
678
- "onUpdate:modelValue": s[8] || (s[8] = (n) => o(t).draft.workingHours.maxHoursPerWeek = n),
682
+ "onUpdate:modelValue": s[8] || (s[8] = (l) => r(t).draft.workingHours.maxHoursPerWeek = l),
679
683
  class: "sch-input sp-num",
680
684
  type: "number",
681
685
  min: "0",
@@ -685,33 +689,33 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
685
689
  "aria-label": "Default maximum working hours per week"
686
690
  }, null, 512), [
687
691
  [
688
- g,
689
- o(t).draft.workingHours.maxHoursPerWeek,
692
+ h,
693
+ r(t).draft.workingHours.maxHoursPerWeek,
690
694
  void 0,
691
695
  { number: !0 }
692
696
  ]
693
697
  ]),
694
- s[35] || (s[35] = e("span", { class: "sp-unit" }, "hours / week", -1))
698
+ s[34] || (s[34] = e("span", { class: "sp-unit" }, "hours / week", -1))
695
699
  ])
696
700
  ])
697
701
  ])
698
- ])) : o(t).activeSection.value === "overtime" ? (p(), m("section", Fe, [
699
- s[42] || (s[42] = e("div", { class: "sp-sec-head" }, [
702
+ ])) : r(t).activeSection.value === "overtime" ? (p(), v("section", Qe, [
703
+ s[41] || (s[41] = e("div", { class: "sp-sec-head" }, [
700
704
  e("div", { class: "sp-panel-title" }, "Overtime")
701
705
  ], -1)),
702
- s[43] || (s[43] = e("div", { class: "sp-panel-desc" }, "The monthly statutory cap on overtime hours.", -1)),
703
- e("div", je, [
704
- s[41] || (s[41] = e("div", { class: "sp-card-head" }, [
706
+ s[42] || (s[42] = e("div", { class: "sp-panel-desc" }, "The monthly statutory cap on overtime hours.", -1)),
707
+ e("div", Ke, [
708
+ s[40] || (s[40] = e("div", { class: "sp-card-head" }, [
705
709
  e("div", { class: "sp-card-title" }, "Maximum OT Hours"),
706
710
  e("div", { class: "sp-card-note" }, "Enforced")
707
711
  ], -1)),
708
- e("div", Je, [
709
- s[40] || (s[40] = e("div", { class: "sp-row-main" }, [
712
+ e("div", Xe, [
713
+ s[39] || (s[39] = e("div", { class: "sp-row-main" }, [
710
714
  e("div", { class: "sp-row-label" }, "Monthly OT cap"),
711
715
  e("div", { class: "sp-row-hint" }, " Hours per person per month. Auto-Schedule never exceeds it. ")
712
716
  ], -1)),
713
717
  f(e("input", {
714
- "onUpdate:modelValue": s[9] || (s[9] = (n) => o(t).draft.otCapHours = n),
718
+ "onUpdate:modelValue": s[9] || (s[9] = (l) => r(t).draft.otCapHours = l),
715
719
  class: "sch-input sp-num",
716
720
  type: "number",
717
721
  min: "0",
@@ -721,44 +725,44 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
721
725
  "aria-label": "Monthly OT cap in hours"
722
726
  }, null, 512), [
723
727
  [
724
- g,
725
- o(t).draft.otCapHours,
728
+ h,
729
+ r(t).draft.otCapHours,
726
730
  void 0,
727
731
  { number: !0 }
728
732
  ]
729
733
  ])
730
734
  ])
731
735
  ])
732
- ])) : A("", !0)
736
+ ])) : T("", !0)
733
737
  ])
734
738
  ]),
735
739
  e("div", {
736
- class: U(["sp-save", { dirty: o(t).dirty.value, arming: y.value }])
740
+ class: I(["sp-save", { dirty: r(t).dirty.value, arming: y.value }])
737
741
  }, [
738
- e("div", Ke, [
739
- H(h(y.value ? "Discard unsaved changes?" : "Unsaved changes") + " ", 1),
740
- y.value ? A("", !0) : (p(), m("span", Qe, "— save or discard before leaving."))
742
+ e("div", Ze, [
743
+ H(g(y.value ? "Discard unsaved changes?" : "Unsaved changes") + " ", 1),
744
+ y.value ? T("", !0) : (p(), v("span", _e, "— save or discard before leaving."))
741
745
  ]),
742
- k(x, {
746
+ k(C, {
743
747
  hierarchy: "secondary",
744
748
  size: "sm",
745
749
  class: "am-btn am-btn-sec",
746
750
  type: "button",
747
- onClick: s[10] || (s[10] = (n) => R())
751
+ onClick: s[10] || (s[10] = (l) => R())
748
752
  }, {
749
753
  default: b(() => [
750
- H(h(y.value ? "Confirm discard" : "Discard"), 1)
754
+ H(g(y.value ? "Confirm discard" : "Discard"), 1)
751
755
  ]),
752
756
  _: 1
753
757
  }),
754
- k(x, {
758
+ k(C, {
755
759
  hierarchy: "primary",
756
760
  size: "sm",
757
761
  class: "am-btn am-btn-primary",
758
762
  type: "button",
759
- onClick: s[11] || (s[11] = (n) => c())
763
+ onClick: s[11] || (s[11] = (l) => c())
760
764
  }, {
761
- default: b(() => [...s[44] || (s[44] = [
765
+ default: b(() => [...s[43] || (s[43] = [
762
766
  H(" Save changes ", -1)
763
767
  ])]),
764
768
  _: 1
@@ -767,10 +771,10 @@ const se = { class: "am-head" }, te = { class: "ce-body" }, ae = {
767
771
  ])
768
772
  ])
769
773
  ]),
770
- k(ye, { modal: o(C) }, null, 8, ["modal"])
774
+ k(ge, { modal: r(x) }, null, 8, ["modal"])
771
775
  ], 512));
772
776
  }
773
777
  });
774
778
  export {
775
- ls as default
779
+ rs as default
776
780
  };