@feedmepos/mf-hrm-portal 2.3.0-dev.24 → 2.3.0-dev.26

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 (42) hide show
  1. package/dist/{ApprovalCodeList-Bsmmc9Wl.js → ApprovalCodeList-BErlk4ha.js} +4 -4
  2. package/dist/{AuditLogList-Bw1L-8Ro.js → AuditLogList-Chvwt0ar.js} +4 -4
  3. package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-Cw0zwzzl.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-2u2WyZdb.js} +2 -2
  4. package/dist/{EmployeeList-BjBga77D.js → EmployeeList-CGD1h2OK.js} +6 -6
  5. package/dist/{FormItem.vue_vue_type_script_setup_true_lang-CAVLLiAc.js → FormItem.vue_vue_type_script_setup_true_lang-BuGNer42.js} +1 -1
  6. package/dist/{GrantUserList-DIzeYo5f.js → GrantUserList-DzpqTaSY.js} +5 -5
  7. package/dist/{Main-MqN-iD9G.js → Main-CPyn7NFE.js} +5 -5
  8. package/dist/{Main-BFNbfmLb.js → Main-DAGEZQlr.js} +2 -2
  9. package/dist/{Main-DOMUhfu4.js → Main-iNdaHQX2.js} +9 -9
  10. package/dist/{PermissionSetList-BB85jrcL.js → PermissionSetList-Db8_PEwm.js} +5 -5
  11. package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-B_UkACYT.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-BjUf9foK.js} +924 -924
  12. package/dist/{RoleList-BQoDfBQx.js → RoleList-CQi7_guB.js} +7 -7
  13. package/dist/{ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-gCfAtm2Z.js → ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-D5wnGhBH.js} +47 -47
  14. package/dist/{ScheduleGeneralPage-CjX2NZbK.js → ScheduleGeneralPage-Box_itY2.js} +2 -2
  15. package/dist/{ScheduleModal.vue_vue_type_script_setup_true_lang-BQJHvhhU.js → ScheduleModal.vue_vue_type_script_setup_true_lang-3XOtfHXG.js} +509 -491
  16. package/dist/{SchedulePage-DIORvqvV.js → SchedulePage-D5ech6qY.js} +7168 -7196
  17. package/dist/{SchedulePositionPage-tOhaLOig.js → SchedulePositionPage-Df5K6dRn.js} +8 -8
  18. package/dist/{SelectFilter-JbRCPwje.js → SelectFilter-CnL5hOUi.js} +1 -1
  19. package/dist/{TeamMemberList-D_8uzdqO.js → TeamMemberList-BJDrGXAU.js} +7 -7
  20. package/dist/{TimesheetList-C6pyrpBo.js → TimesheetList-DjasY9Ga.js} +6 -6
  21. package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-CavswueP.js → TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-BipggXKS.js} +2 -2
  22. package/dist/{app-Bt9MRyXV.js → app-6RyACUtu.js} +8 -8
  23. package/dist/app.js +1 -1
  24. package/dist/{dayjs.min-BgR7wIDw.js → dayjs.min-dR2BNXww.js} +1 -1
  25. package/dist/{employee-D_5FXbzP.js → employee-CZII8yO4.js} +3 -3
  26. package/dist/{iteration-DnWzCQin.js → iteration-BrBn3q_q.js} +1 -1
  27. package/dist/{lodash-B92TiMwA.js → lodash-CiDhR4Jm.js} +1 -1
  28. package/dist/{role-C7fstfIX.js → role-DzoAHzTj.js} +1 -1
  29. package/dist/{rule-JHWUYuuF.js → rule-DucHSUev.js} +2 -2
  30. package/dist/src/api/schedule/index.d.ts +5 -0
  31. package/dist/src/views/scheduling/composables/useScheduleAddEmployee.d.ts +17 -0
  32. package/dist/src/views/scheduling/composables/useScheduleAutoSchedule.d.ts +3 -3
  33. package/dist/src/views/scheduling/composables/useScheduleEmployeeCandidates.d.ts +23 -4
  34. package/dist/src/views/scheduling/composables/useScheduleEmployeePersistence.d.ts +2 -0
  35. package/dist/src/views/scheduling/composables/useScheduleOnboardingEmployees.d.ts +1 -1
  36. package/dist/src/views/scheduling/composables/useScheduleOnboardingWizard.d.ts +17 -0
  37. package/dist/src/views/scheduling/schedule-state.d.ts +12 -12
  38. package/dist/src/views/scheduling/schedule-store.d.ts +3 -1
  39. package/dist/style.css +1 -1
  40. package/dist/tsconfig.app.tsbuildinfo +1 -1
  41. package/dist/{useReportPermissions-CLtcvdda.js → useReportPermissions-B0VLybQf.js} +3 -3
  42. package/package.json +3 -3
@@ -1,9 +1,9 @@
1
- import { defineComponent as M, ref as A, onMounted as F, computed as S, createElementBlock as i, openBlock as l, createElementVNode as o, createVNode as n, createStaticVNode as x, withCtx as d, unref as s, toDisplayString as c, createTextVNode as r, normalizeClass as h, createCommentVNode as z, withDirectives as E, withKeys as k, vModelText as P, Fragment as C, renderList as V, withModifiers as g } from "vue";
1
+ import { defineComponent as M, ref as x, onMounted as A, computed as F, createElementBlock as i, openBlock as l, createElementVNode as o, createVNode as n, createStaticVNode as S, withCtx as d, unref as s, toDisplayString as c, createTextVNode as r, normalizeClass as h, createCommentVNode as z, withDirectives as E, withKeys as k, vModelText as P, Fragment as C, renderList as V, withModifiers as g } from "vue";
2
2
  import { useRouter as B } from "vue-router";
3
3
  import { useSnackbar as I } from "@feedmepos/ui-library";
4
- import { R as L, a as O } from "./app-Bt9MRyXV.js";
5
- import { av as R, aw as K, ag as T, ar as u, as as U } from "./ScheduleModal.vue_vue_type_script_setup_true_lang-BQJHvhhU.js";
6
- import { u as W, a as j, _ as q } from "./ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-gCfAtm2Z.js";
4
+ import { R as L, a as O } from "./app-6RyACUtu.js";
5
+ import { aw as R, ax as K, ag as T, as as u, at as U } from "./ScheduleModal.vue_vue_type_script_setup_true_lang-3XOtfHXG.js";
6
+ import { u as W, a as j, _ as q } from "./ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-D5wnGhBH.js";
7
7
  const H = { class: "main" }, G = {
8
8
  id: "viewPositions",
9
9
  class: "view"
@@ -22,13 +22,13 @@ const H = { class: "main" }, G = {
22
22
  }, ce = { class: "q" }, ve = /* @__PURE__ */ M({
23
23
  __name: "SchedulePositionPage",
24
24
  setup(fe) {
25
- const y = A(null);
25
+ const y = x(null);
26
26
  R(y);
27
27
  const w = B(), _ = I(), b = (m, e = "info") => _.open({ message: m, type: e }), t = W({ notify: b }), v = K(), f = j(void 0, { notify: b });
28
- F(async () => {
28
+ A(async () => {
29
29
  await v.resolve() && await T(/* @__PURE__ */ new Date());
30
30
  });
31
- const $ = S(
31
+ const $ = F(
32
32
  () => v.options.value.length ? v.options.value : [{ value: "", label: "No outlet selected", disabled: !0 }]
33
33
  );
34
34
  function D(m) {
@@ -72,7 +72,7 @@ const H = { class: "main" }, G = {
72
72
  ])]),
73
73
  _: 1
74
74
  }),
75
- e[9] || (e[9] = x('<div class="sp-title-row" data-v-77f876af><div class="sp-title" data-v-77f876af>Position</div><span class="page-tags" data-v-77f876af><span class="sch-badge page-tag-premium" data-color="brand" data-v-77f876af>Premium</span><span class="sch-badge" data-color="info" data-v-77f876af>Free until 31 Dec 2026</span></span></div><div class="sp-sub" data-v-77f876af>What your employees can do — the same catalogue across every outlet.</div>', 2)),
75
+ e[9] || (e[9] = S('<div class="sp-title-row" data-v-77f876af><div class="sp-title" data-v-77f876af>Position</div><span class="page-tags" data-v-77f876af><span class="sch-badge page-tag-premium" data-color="brand" data-v-77f876af>Premium</span><span class="sch-badge" data-color="info" data-v-77f876af>Free until 31 Dec 2026</span></span></div><div class="sp-sub" data-v-77f876af>What your employees can do — the same catalogue across every outlet.</div>', 2)),
76
76
  o("div", Q, [
77
77
  e[8] || (e[8] = o("span", { class: "outlet-bar-lbl" }, "Outlet", -1)),
78
78
  n(U, {
@@ -1,7 +1,7 @@
1
1
  import { ref as $, computed as v, defineComponent as X, watch as Y, nextTick as Z, resolveComponent as F, createElementBlock as d, openBlock as c, createElementVNode as A, createVNode as b, renderSlot as z, withCtx as O, createCommentVNode as x, normalizeStyle as ee, Fragment as S, createBlock as T, unref as k, renderList as R, toDisplayString as N, normalizeClass as le, withModifiers as te } from "vue";
2
2
  import "@feedmepos/ui-library";
3
3
  /* empty css */
4
- import { a as ae } from "./app-Bt9MRyXV.js";
4
+ import { a as ae } from "./app-6RyACUtu.js";
5
5
  function ue(r, u, _ = r) {
6
6
  const t = $(!0), C = v(() => {
7
7
  if (!t.value && !u.value)
@@ -2,22 +2,22 @@ import { defineComponent as we, resolveComponent as F, createElementBlock as L,
2
2
  import { useI18n as Ve, useCoreStore as Ze } from "@feedmepos/mf-common";
3
3
  import { useSnackbar as Le, useDialog as Qe, useBreakpoints as Ye, components as Oe } from "@feedmepos/ui-library";
4
4
  import { u as ps } from "./useDebounce-B8ZPVS5C.js";
5
- import { S as ye } from "./SelectFilter-JbRCPwje.js";
6
- import { a as vs, v as Te, m as fs, O as bs, _ as hs, b as ys } from "./app-Bt9MRyXV.js";
5
+ import { S as ye } from "./SelectFilter-CnL5hOUi.js";
6
+ import { a as vs, v as Te, m as fs, O as bs, _ as hs, b as ys } from "./app-6RyACUtu.js";
7
7
  import { _ as gs } from "./ResponsiveContextMenu.vue_vue_type_script_setup_true_lang-mSJFKo7r.js";
8
8
  import { _ as _s } from "./TableEmptyState.vue_vue_type_script_setup_true_lang-IfAZmWr0.js";
9
9
  import { s as Us, _ as Ss, a as xs, b as Fs, c as Ps } from "./PasscodePinField.vue_vue_type_script_setup_true_lang-CqG0v0Sz.js";
10
10
  import { u as He } from "./useLoading-Nygx2zn8.js";
11
11
  import { u as Is } from "./useDiscardConfirm-CzZSPyvh.js";
12
12
  import { n as es } from "./string-VNuQNweN.js";
13
- import { l as Pe } from "./lodash-B92TiMwA.js";
14
- import { c as he } from "./iteration-DnWzCQin.js";
15
- import { t as _e, u as ss, c as Ae, b as qe, m as $e, d as ts, p as Ge, i as ws, j as Ke, k as Vs, l as ks, n as Rs, o as Cs, q as $s } from "./rule-JHWUYuuF.js";
16
- import { u as as } from "./role-C7fstfIX.js";
13
+ import { l as Pe } from "./lodash-CiDhR4Jm.js";
14
+ import { c as he } from "./iteration-BrBn3q_q.js";
15
+ import { t as _e, u as ss, c as Ae, b as qe, m as $e, d as ts, p as Ge, i as ws, j as Ke, k as Vs, l as ks, n as Rs, o as Cs, q as $s } from "./rule-DucHSUev.js";
16
+ import { u as as } from "./role-DzoAHzTj.js";
17
17
  import { u as ls, i as Ms } from "./PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-DQcgZ0nF.js";
18
18
  import "./useAppStore-DZCdxlCd.js";
19
19
  import { g as ze, b as We, u as os } from "./restaurant-D2mfKHaH.js";
20
- import { _ as Ns } from "./PortalPermissionEditor.vue_vue_type_script_setup_true_lang-B_UkACYT.js";
20
+ import { _ as Ns } from "./PortalPermissionEditor.vue_vue_type_script_setup_true_lang-BjUf9foK.js";
21
21
  var Ue = /* @__PURE__ */ ((o) => (o.Update = "Update", o.Remove = "Remove", o))(Ue || {});
22
22
  const Ie = "__unassigned__";
23
23
  function Je(o) {
@@ -1,17 +1,17 @@
1
1
  import { ref as d, computed as g, defineComponent as pe, onMounted as fe, watch as Z, resolveComponent as u, createElementBlock as P, openBlock as E, Fragment as ee, createVNode as l, createElementVNode as i, unref as n, withCtx as b, createCommentVNode as ve, toDisplayString as O, createTextVNode as he, isRef as ge, renderList as we, createBlock as te, nextTick as ye } from "vue";
2
- import { d as v } from "./dayjs.min-BgR7wIDw.js";
2
+ import { d as v } from "./dayjs.min-dR2BNXww.js";
3
3
  import { useI18n as _e } from "@feedmepos/mf-common";
4
4
  import { useSnackbar as be, components as xe } from "@feedmepos/ui-library";
5
- import { S as De } from "./SelectFilter-JbRCPwje.js";
6
- import { _ as Se, a as Ve } from "./app-Bt9MRyXV.js";
5
+ import { S as De } from "./SelectFilter-CnL5hOUi.js";
6
+ import { _ as Se, a as Ve } from "./app-6RyACUtu.js";
7
7
  import { _ as ke } from "./TableEmptyState.vue_vue_type_script_setup_true_lang-IfAZmWr0.js";
8
8
  import { u as Ce } from "./useLoading-Nygx2zn8.js";
9
- import { g as Fe, s as Ye } from "./iteration-DnWzCQin.js";
9
+ import { g as Fe, s as Ye } from "./iteration-BrBn3q_q.js";
10
10
  import { f as Le } from "./utils-BZkjJbju.js";
11
11
  import { n as Me } from "./string-VNuQNweN.js";
12
- import { u as Te } from "./employee-D_5FXbzP.js";
12
+ import { u as Te } from "./employee-CZII8yO4.js";
13
13
  import { u as Ie } from "./restaurant-D2mfKHaH.js";
14
- import { u as Re } from "./TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-CavswueP.js";
14
+ import { u as Re } from "./TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-BipggXKS.js";
15
15
  function $e(x, a) {
16
16
  return ["years", "months"].find((S) => {
17
17
  const V = x.startOf(S), p = x.endOf(S);
@@ -1,8 +1,8 @@
1
- import { d as i } from "./dayjs.min-BgR7wIDw.js";
1
+ import { d as i } from "./dayjs.min-dR2BNXww.js";
2
2
  import { defineStore as p, storeToRefs as T } from "pinia";
3
3
  import { ref as l } from "vue";
4
4
  import { b as c, g as y } from "./restaurant-D2mfKHaH.js";
5
- import { s as S } from "./iteration-DnWzCQin.js";
5
+ import { s as S } from "./iteration-BrBn3q_q.js";
6
6
  import { i as f, f as g } from "./utils-BZkjJbju.js";
7
7
  const u = {
8
8
  async readTimesheets(t, e) {
@@ -10146,16 +10146,16 @@ const tt = (e) => ({
10146
10146
  }
10147
10147
  ]
10148
10148
  }
10149
- }), Vc = it(he(() => import("./Main-DOMUhfu4.js"))), Fc = it(he(() => import("./Main-MqN-iD9G.js"))), Sc = it(
10150
- he(() => import("./AuditLogList-Bw1L-8Ro.js"))
10151
- ), Tc = it(he(() => import("./Main-BFNbfmLb.js"))), kc = he(() => import("./ApprovalCodeList-Bsmmc9Wl.js")), Rc = he(() => import("./GrantUserList-DIzeYo5f.js")), Nc = he(() => import("./EmployeeList-BjBga77D.js")), Ic = he(() => import("./RoleList-BQoDfBQx.js")), Hc = he(() => import("./TimesheetList-C6pyrpBo.js")), qc = he(() => import("./TeamMemberList-D_8uzdqO.js")), Xc = he(
10152
- () => import("./PermissionSetList-BB85jrcL.js")
10149
+ }), Vc = it(he(() => import("./Main-iNdaHQX2.js"))), Fc = it(he(() => import("./Main-CPyn7NFE.js"))), Sc = it(
10150
+ he(() => import("./AuditLogList-Chvwt0ar.js"))
10151
+ ), Tc = it(he(() => import("./Main-DAGEZQlr.js"))), kc = he(() => import("./ApprovalCodeList-BErlk4ha.js")), Rc = he(() => import("./GrantUserList-DzpqTaSY.js")), Nc = he(() => import("./EmployeeList-CGD1h2OK.js")), Ic = he(() => import("./RoleList-CQi7_guB.js")), Hc = he(() => import("./TimesheetList-DjasY9Ga.js")), qc = he(() => import("./TeamMemberList-BJDrGXAU.js")), Xc = he(
10152
+ () => import("./PermissionSetList-Db8_PEwm.js")
10153
10153
  ), Qc = _s(
10154
- it(he(() => import("./SchedulePage-DIORvqvV.js")))
10154
+ it(he(() => import("./SchedulePage-D5ech6qY.js")))
10155
10155
  ), Zc = _s(
10156
- it(he(() => import("./SchedulePositionPage-tOhaLOig.js")))
10156
+ it(he(() => import("./SchedulePositionPage-Df5K6dRn.js")))
10157
10157
  ), Uc = _s(
10158
- it(he(() => import("./ScheduleGeneralPage-CjX2NZbK.js")))
10158
+ it(he(() => import("./ScheduleGeneralPage-Box_itY2.js")))
10159
10159
  ), wu = [
10160
10160
  {
10161
10161
  path: "/",
@@ -11304,7 +11304,7 @@ const Bu = /* @__PURE__ */ Ke({
11304
11304
  };
11305
11305
  }
11306
11306
  });
11307
- var Os = { name: "@feedmepos/mf-hrm-portal", version: "2.3.0-dev.24", mode: "fmmf" };
11307
+ var Os = { name: "@feedmepos/mf-hrm-portal", version: "2.3.0-dev.26", mode: "fmmf" };
11308
11308
  console.log(
11309
11309
  `%c${Os.name}%c v${Os.version} %c${Os.mode}`,
11310
11310
  "background:#1f1f1f;color:#fff;padding:2px 6px;border-radius:3px 0 0 3px",
package/dist/app.js CHANGED
@@ -1,4 +1,4 @@
1
- import { j as e, i as r, r as o } from "./app-Bt9MRyXV.js";
1
+ import { j as e, i as r, r as o } from "./app-6RyACUtu.js";
2
2
  export {
3
3
  e as FmApp,
4
4
  r as i18nMessages,
@@ -1,4 +1,4 @@
1
- import { g as Q, f as K } from "./app-Bt9MRyXV.js";
1
+ import { g as Q, f as K } from "./app-6RyACUtu.js";
2
2
  var E = { exports: {} };
3
3
  (function(V, X) {
4
4
  (function(W, k) {
@@ -1,10 +1,10 @@
1
- import { d as g } from "./dayjs.min-BgR7wIDw.js";
1
+ import { d as g } from "./dayjs.min-dR2BNXww.js";
2
2
  import { defineStore as $, storeToRefs as x } from "pinia";
3
3
  import { ref as y } from "vue";
4
- import { s as E } from "./iteration-DnWzCQin.js";
4
+ import { s as E } from "./iteration-BrBn3q_q.js";
5
5
  import { b as l, g as m, u as I } from "./restaurant-D2mfKHaH.js";
6
6
  import { i as v } from "./utils-BZkjJbju.js";
7
- import { u as P } from "./role-C7fstfIX.js";
7
+ import { u as P } from "./role-DzoAHzTj.js";
8
8
  const o = {
9
9
  async readEmployees() {
10
10
  return m(await l().get("/pos-users"));
@@ -1,4 +1,4 @@
1
- import { f as B } from "./app-Bt9MRyXV.js";
1
+ import { f as B } from "./app-6RyACUtu.js";
2
2
  var ma = {}, Zt = {}, l = {}, ji = {}, Ei = {}, Ii = {}, Dn = {};
3
3
  (function(e) {
4
4
  Object.defineProperty(e, "__esModule", { value: !0 }), e.getParsedType = e.ZodParsedType = e.util = void 0;
@@ -1,4 +1,4 @@
1
- import { f as jt } from "./app-Bt9MRyXV.js";
1
+ import { f as jt } from "./app-6RyACUtu.js";
2
2
  var Jr = { exports: {} };
3
3
  /**
4
4
  * @license
@@ -1,7 +1,7 @@
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-DnWzCQin.js";
4
+ import { s as v } from "./iteration-BrBn3q_q.js";
5
5
  import { g as f, b as p, u as I } from "./restaurant-D2mfKHaH.js";
6
6
  const R = {
7
7
  async readRoles() {
@@ -1,5 +1,5 @@
1
- import { s as W, c as q, e as y } from "./iteration-DnWzCQin.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-Bt9MRyXV.js";
1
+ import { s as W, c as q, e as y } from "./iteration-BrBn3q_q.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-6RyACUtu.js";
3
3
  import { s as se } from "./utils-BZkjJbju.js";
4
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";
@@ -56,6 +56,11 @@ declare const ScheduleAPI: {
56
56
  ok: true;
57
57
  deletedCount: number;
58
58
  }>;
59
+ /** Removes all assignments for an employee from the inclusive removal date onward. */
60
+ deleteEmployeeFutureAssignments(restaurantId: string, employeeId: string, from: string): Promise<{
61
+ ok: true;
62
+ deletedCount: number;
63
+ }>;
59
64
  /** Flips a batch of assignments to one status in a single request — e.g. Publish sending
60
65
  * every DRAFT shift on the board to PUBLISHED at once. */
61
66
  bulkUpdateAssignmentStatus(restaurantId: string, req: FdtoScheduleBulkUpdateAssignmentStatusReq): Promise<FdtoScheduleAssignment[]>;
@@ -80,6 +80,23 @@ export declare function useScheduleAddEmployee(board: ScheduleBoardApi, options?
80
80
  candidatesLoading: import("vue").Ref<boolean, boolean>;
81
81
  candidatesError: import("vue").Ref<string | null, string | null>;
82
82
  selectingExisting: import("vue").Ref<boolean, boolean>;
83
+ candidates: import("vue").Ref<{
84
+ employeeId: string;
85
+ name: string;
86
+ otherOutlets: string[];
87
+ locations: string[];
88
+ }[], import("../types").ExistingStaffCandidate[] | {
89
+ employeeId: string;
90
+ name: string;
91
+ otherOutlets: string[];
92
+ locations: string[];
93
+ }[]>;
94
+ candidatesTotal: import("vue").Ref<number, number>;
95
+ candidatesPage: import("vue").Ref<number, number>;
96
+ candidatesPageItemCount: import("vue").Ref<number, number>;
97
+ candidatesPageSize: number;
98
+ searchExisting: (search: string) => void;
99
+ goToExistingPage: (page: number, search: string) => void;
83
100
  openWizard: (section: string) => void;
84
101
  openEditFor: (emp: Employee) => void;
85
102
  confirmClose: () => void;
@@ -41,8 +41,8 @@ export declare function useScheduleAutoSchedule(board: ScheduleBoardApi, demand:
41
41
  date: string;
42
42
  startTime: string;
43
43
  endTime: string;
44
- positionId: string | null;
45
44
  employeeId: string;
45
+ positionId: string | null;
46
46
  employeeName: string;
47
47
  position: string;
48
48
  reason: string;
@@ -106,8 +106,8 @@ export declare function useScheduleAutoSchedule(board: ScheduleBoardApi, demand:
106
106
  date: string;
107
107
  startTime: string;
108
108
  endTime: string;
109
- positionId: string | null;
110
109
  employeeId: string;
110
+ positionId: string | null;
111
111
  employeeName: string;
112
112
  position: string;
113
113
  reason: string;
@@ -171,8 +171,8 @@ export declare function useScheduleAutoSchedule(board: ScheduleBoardApi, demand:
171
171
  date: string;
172
172
  startTime: string;
173
173
  endTime: string;
174
- positionId: string | null;
175
174
  employeeId: string;
175
+ positionId: string | null;
176
176
  employeeName: string;
177
177
  position: string;
178
178
  reason: string;
@@ -1,5 +1,7 @@
1
1
  import { type ComputedRef } from 'vue';
2
+ import type { IFdtoPosUserSummary } from '@/types/employee';
2
3
  import type { ScheduleAddEmployeeForm, ScheduleAddEmployeeStep } from './schedule-add-employee-form';
4
+ import type { ExistingStaffCandidate } from '../types';
3
5
  import type { ScheduleBoardApi } from './useScheduleBoard';
4
6
  interface UseScheduleEmployeeCandidatesOptions {
5
7
  board: ScheduleBoardApi;
@@ -11,19 +13,36 @@ interface UseScheduleEmployeeCandidatesOptions {
11
13
  open: {
12
14
  value: boolean;
13
15
  };
14
- onPicked: (employeeId: string) => void;
15
- onPrefillPasscode: (employeeId: string) => void | Promise<void>;
16
- onPrefillPosRoles: (employeeId: string) => void | Promise<void>;
16
+ onPicked: (employeeId: string, employee?: IFdtoPosUserSummary) => void;
17
+ onPrefillPasscode: (employeeId: string, employee?: IFdtoPosUserSummary) => void | Promise<void>;
18
+ onPrefillPosRoles: (employeeId: string, employee?: IFdtoPosUserSummary) => void | Promise<void>;
17
19
  onPrefillPosRoleAccess: (roleIds: string[] | null | undefined) => void;
18
20
  onPrefillPosRestaurantAccess: (restaurantIds: string[] | null | undefined) => void;
19
21
  }
20
22
  /** Directory lookup and profile prefill for the existing-employee path of the add wizard. */
21
23
  export declare function useScheduleEmployeeCandidates(options: UseScheduleEmployeeCandidatesOptions): {
22
24
  selectExistingOpen: import("vue").Ref<boolean, boolean>;
25
+ candidates: import("vue").Ref<{
26
+ employeeId: string;
27
+ name: string;
28
+ otherOutlets: string[];
29
+ locations: string[];
30
+ }[], ExistingStaffCandidate[] | {
31
+ employeeId: string;
32
+ name: string;
33
+ otherOutlets: string[];
34
+ locations: string[];
35
+ }[]>;
36
+ candidatesTotal: import("vue").Ref<number, number>;
37
+ candidatesPage: import("vue").Ref<number, number>;
38
+ candidatesPageItemCount: import("vue").Ref<number, number>;
39
+ candidatesPageSize: number;
23
40
  candidatesLoading: import("vue").Ref<boolean, boolean>;
24
41
  candidatesError: import("vue").Ref<string | null, string | null>;
25
42
  selectingExisting: import("vue").Ref<boolean, boolean>;
26
- openSelectExisting: () => void;
43
+ openSelectExisting: (search?: string) => void;
44
+ searchExisting: (search: string) => void;
45
+ goToExistingPage: (page: number, search: string) => void;
27
46
  closeSelectExisting: () => void;
28
47
  pickExisting: (employeeId: string) => Promise<void>;
29
48
  };
@@ -1,9 +1,11 @@
1
1
  import type { ComputedRef, Ref } from 'vue';
2
+ import type { IFdtoPosUserSummary } from '@/types/employee';
2
3
  import { type ScheduleAddEmployeeForm } from './schedule-add-employee-form';
3
4
  import type { ScheduleBoardApi } from './useScheduleBoard';
4
5
  interface UseScheduleEmployeePersistenceOptions {
5
6
  form: ScheduleAddEmployeeForm;
6
7
  pickedEmployeeId: Ref<string | null>;
8
+ selectedBusinessEmployee: Ref<IFdtoPosUserSummary | null>;
7
9
  payAmountNumber: ComputedRef<number>;
8
10
  saving: Ref<boolean>;
9
11
  saveError: Ref<string | null>;
@@ -179,8 +179,8 @@ export declare function useScheduleOnboardingEmployees(options: ScheduleOnboardi
179
179
  maxHoursPerDay: number | null;
180
180
  maxHoursPerWeek: number | null;
181
181
  } | undefined;
182
- name: string;
183
182
  employeeId: string;
183
+ name: string;
184
184
  employmentType: "FULLTIME" | "PARTTIME";
185
185
  wage: {
186
186
  type: "HOURLY" | "MONTHLY";
@@ -1477,6 +1477,23 @@ export declare function useScheduleOnboardingWizard(board: ScheduleBoardApi, add
1477
1477
  candidatesLoading: import("vue").Ref<boolean, boolean>;
1478
1478
  candidatesError: import("vue").Ref<string | null, string | null>;
1479
1479
  selectingExisting: import("vue").Ref<boolean, boolean>;
1480
+ candidates: import("vue").Ref<{
1481
+ employeeId: string;
1482
+ name: string;
1483
+ otherOutlets: string[];
1484
+ locations: string[];
1485
+ }[], import("../types").ExistingStaffCandidate[] | {
1486
+ employeeId: string;
1487
+ name: string;
1488
+ otherOutlets: string[];
1489
+ locations: string[];
1490
+ }[]>;
1491
+ candidatesTotal: import("vue").Ref<number, number>;
1492
+ candidatesPage: import("vue").Ref<number, number>;
1493
+ candidatesPageItemCount: import("vue").Ref<number, number>;
1494
+ candidatesPageSize: number;
1495
+ searchExisting: (search: string) => void;
1496
+ goToExistingPage: (page: number, search: string) => void;
1480
1497
  openWizard: (section: string) => void;
1481
1498
  openEditFor: (emp: import("../types").Employee) => void;
1482
1499
  confirmClose: () => void;
@@ -12,8 +12,8 @@ export declare const scheduleState: {
12
12
  timeOff: {
13
13
  type: "OFF_DAY" | "LEAVE";
14
14
  status: "PENDING" | "APPROVED" | "REJECTED" | "CANCELLED";
15
- id: string;
16
15
  employeeId: string;
16
+ id: string;
17
17
  leaveType: "UNPAID" | "ANNUAL" | "MEDICAL" | "EMERGENCY" | null;
18
18
  startDate: string;
19
19
  endDate: string;
@@ -61,8 +61,8 @@ export declare const scheduleState: {
61
61
  date: string;
62
62
  startTime: string;
63
63
  endTime: string;
64
- id: string;
65
64
  employeeId: string;
65
+ id: string;
66
66
  position: {
67
67
  positionId: string;
68
68
  positionName: string;
@@ -93,8 +93,8 @@ export declare const scheduleState: {
93
93
  maxHoursPerDay: number | null;
94
94
  maxHoursPerWeek: number | null;
95
95
  } | undefined;
96
- name: string;
97
96
  employeeId: string;
97
+ name: string;
98
98
  employmentType: "FULLTIME" | "PARTTIME";
99
99
  wage: {
100
100
  type: "HOURLY" | "MONTHLY";
@@ -153,8 +153,8 @@ export declare const scheduleState: {
153
153
  timeOff: {
154
154
  type: "OFF_DAY" | "LEAVE";
155
155
  status: "PENDING" | "APPROVED" | "REJECTED" | "CANCELLED";
156
- id: string;
157
156
  employeeId: string;
157
+ id: string;
158
158
  leaveType: "UNPAID" | "ANNUAL" | "MEDICAL" | "EMERGENCY" | null;
159
159
  startDate: string;
160
160
  endDate: string;
@@ -202,8 +202,8 @@ export declare const scheduleState: {
202
202
  date: string;
203
203
  startTime: string;
204
204
  endTime: string;
205
- id: string;
206
205
  employeeId: string;
206
+ id: string;
207
207
  position: {
208
208
  positionId: string;
209
209
  positionName: string;
@@ -234,8 +234,8 @@ export declare const scheduleState: {
234
234
  maxHoursPerDay: number | null;
235
235
  maxHoursPerWeek: number | null;
236
236
  } | undefined;
237
- name: string;
238
237
  employeeId: string;
238
+ name: string;
239
239
  employmentType: "FULLTIME" | "PARTTIME";
240
240
  wage: {
241
241
  type: "HOURLY" | "MONTHLY";
@@ -400,8 +400,8 @@ export declare const payload: import("vue").ShallowRef<{
400
400
  timeOff: {
401
401
  type: "OFF_DAY" | "LEAVE";
402
402
  status: "PENDING" | "APPROVED" | "REJECTED" | "CANCELLED";
403
- id: string;
404
403
  employeeId: string;
404
+ id: string;
405
405
  leaveType: "UNPAID" | "ANNUAL" | "MEDICAL" | "EMERGENCY" | null;
406
406
  startDate: string;
407
407
  endDate: string;
@@ -449,8 +449,8 @@ export declare const payload: import("vue").ShallowRef<{
449
449
  date: string;
450
450
  startTime: string;
451
451
  endTime: string;
452
- id: string;
453
452
  employeeId: string;
453
+ id: string;
454
454
  position: {
455
455
  positionId: string;
456
456
  positionName: string;
@@ -481,8 +481,8 @@ export declare const payload: import("vue").ShallowRef<{
481
481
  maxHoursPerDay: number | null;
482
482
  maxHoursPerWeek: number | null;
483
483
  } | undefined;
484
- name: string;
485
484
  employeeId: string;
485
+ name: string;
486
486
  employmentType: "FULLTIME" | "PARTTIME";
487
487
  wage: {
488
488
  type: "HOURLY" | "MONTHLY";
@@ -541,8 +541,8 @@ export declare const payload: import("vue").ShallowRef<{
541
541
  timeOff: {
542
542
  type: "OFF_DAY" | "LEAVE";
543
543
  status: "PENDING" | "APPROVED" | "REJECTED" | "CANCELLED";
544
- id: string;
545
544
  employeeId: string;
545
+ id: string;
546
546
  leaveType: "UNPAID" | "ANNUAL" | "MEDICAL" | "EMERGENCY" | null;
547
547
  startDate: string;
548
548
  endDate: string;
@@ -590,8 +590,8 @@ export declare const payload: import("vue").ShallowRef<{
590
590
  date: string;
591
591
  startTime: string;
592
592
  endTime: string;
593
- id: string;
594
593
  employeeId: string;
594
+ id: string;
595
595
  position: {
596
596
  positionId: string;
597
597
  positionName: string;
@@ -622,8 +622,8 @@ export declare const payload: import("vue").ShallowRef<{
622
622
  maxHoursPerDay: number | null;
623
623
  maxHoursPerWeek: number | null;
624
624
  } | undefined;
625
- name: string;
626
625
  employeeId: string;
626
+ name: string;
627
627
  employmentType: "FULLTIME" | "PARTTIME";
628
628
  wage: {
629
629
  type: "HOURLY" | "MONTHLY";
@@ -24,6 +24,8 @@ export declare function saveEmployeeConfigs(configs: FdtoScheduleSaveEmployeeCon
24
24
  /** Saves outlet settings and keeps the board payload authoritative for any later cache rebuild. */
25
25
  export declare function saveScheduleSettings(req: FdtoScheduleSaveSettingsReq): Promise<FdtoScheduleSettings>;
26
26
  export declare function setEmployeeSchedulingEnabled(employeeId: string, enabled: boolean): Promise<void>;
27
+ /** Removes this employee's future shifts before disabling their scheduling row. */
28
+ export declare function deleteEmployeeFutureAssignments(employeeId: string, from?: string): Promise<void>;
27
29
  /** Re-reads this outlet's POS roster. The roster is what the board's rows are built from and is
28
30
  * otherwise fetched once per outlet, so any write that changes who works here (add, remove)
29
31
  * has to call this for the grid to show it. */
@@ -57,7 +59,7 @@ export declare function saveEmployeePosAccess(employeeId: string, request: {
57
59
  restaurantId: string;
58
60
  roleId: string;
59
61
  }[];
60
- }): Promise<void>;
62
+ }, knownEmployee?: IFdtoPosUserSummary): Promise<void>;
61
63
  /** The cached business roster, fetched on first use. `force` re-reads it (after a write, or to
62
64
  * refresh a list that is already on screen). Concurrent callers share one request. */
63
65
  export declare function ensureBusinessEmployees(force?: boolean): Promise<IFdtoPosUserSummary[]>;