@feedmepos/mf-hrm-portal 2.0.24-dev.9 → 2.0.25-dev

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 (32) hide show
  1. package/dist/AuditLogList-NOjQWc0n.js +1145 -0
  2. package/dist/{EmployeeList-CYOUXmdo.js → EmployeeList-CLAEc_Dl.js} +8 -8
  3. package/dist/{FormItem.vue_vue_type_script_setup_true_lang-S4Mh4MvG.js → FormItem.vue_vue_type_script_setup_true_lang-DPT2FoIc.js} +1 -1
  4. package/dist/{Main-DR0uJn8p.js → Main-CnLbqtUE.js} +1142 -1138
  5. package/dist/{Main-9hhLn78R.js → Main-DaG5Gqo3.js} +6 -6
  6. package/dist/Main-zga1U6eC.js +94 -0
  7. package/dist/{PermissionSetList-CPzhnAsF.js → PermissionSetList-4T-K3P1Y.js} +6 -6
  8. package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-DwVt6Zov.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-SBojB1i0.js} +741 -741
  9. package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_a439fdd8_lang-B3wDoRUf.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_a439fdd8_lang-Sn93AcEd.js} +1 -1
  10. package/dist/{RoleList-DQEogUW9.js → RoleList-Dz7Vwovj.js} +51 -49
  11. package/dist/{SelectFilter-C61IZSID.js → SelectFilter-ATOm0hdn.js} +37 -37
  12. package/dist/{TeamMemberList-BjZhJqoO.js → TeamMemberList-DYGEd5pe.js} +57 -57
  13. package/dist/{TimesheetList-FsSNYSN_.js → TimesheetList-nAeY6i18.js} +7 -7
  14. package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_91afda4e_lang-DcyltQoo.js → TimesheetList.vue_vue_type_style_index_0_scoped_91afda4e_lang-Bd74jnJu.js} +2 -2
  15. package/dist/{app-D9NotBhb.js → app-DhjOMwb9.js} +778 -732
  16. package/dist/app.js +1 -1
  17. package/dist/{dayjs.min-DtwtoL_z.js → dayjs.min-Bd3JE67B.js} +1 -1
  18. package/dist/{employee-F_qzDON_.js → employee-B3aJC3BG.js} +3 -3
  19. package/dist/{iteration-BQBKoufN.js → iteration-gb-z-6D3.js} +1 -1
  20. package/dist/{lodash-gOdQI_3W.js → lodash-BOwvb210.js} +1 -1
  21. package/dist/{rule-BR05-rZt.js → rule-CkP2wcOa.js} +25 -25
  22. package/dist/src/api/audit-log/index.d.ts +17 -0
  23. package/dist/src/views/hr/locales/index.d.ts +4 -0
  24. package/dist/src/views/team/locales/index.d.ts +4 -0
  25. package/dist/style.css +1 -1
  26. package/dist/tsconfig.app.tsbuildinfo +1 -1
  27. package/dist/{useAppStore-CAmajyh0.js → useAppStore-ByWfAgOH.js} +1 -1
  28. package/dist/{useLoading-D7Nr5flX.js → useLoading-cyuvXo-X.js} +1 -1
  29. package/dist/{useReportPermissions-DRSVPDf-.js → useReportPermissions-Blkuv4SJ.js} +3 -3
  30. package/package.json +2 -2
  31. package/dist/AuditLogList-Cc0vtZTU.js +0 -1054
  32. package/dist/Main-DHNuxBWB.js +0 -90
package/dist/app.js CHANGED
@@ -1,4 +1,4 @@
1
- import { f as e, i as r, r as o } from "./app-D9NotBhb.js";
1
+ import { f as e, i as r, r as o } from "./app-DhjOMwb9.js";
2
2
  export {
3
3
  e as FmApp,
4
4
  r as i18nMessages,
@@ -1,4 +1,4 @@
1
- import { g as Q, c as K } from "./app-D9NotBhb.js";
1
+ import { g as Q, c as K } from "./app-DhjOMwb9.js";
2
2
  var E = { exports: {} };
3
3
  (function(V, X) {
4
4
  (function(W, k) {
@@ -1,9 +1,9 @@
1
- import { d as g } from "./dayjs.min-DtwtoL_z.js";
1
+ import { d as g } from "./dayjs.min-Bd3JE67B.js";
2
2
  import { defineStore as $, storeToRefs as T } from "pinia";
3
3
  import { ref as m } from "vue";
4
- import { b as l, g as f, u as w, s as E } from "./iteration-BQBKoufN.js";
4
+ import { b as l, g as f, u as w, s as E } from "./iteration-gb-z-6D3.js";
5
5
  import { i as v } from "./utils-BZkjJbju.js";
6
- import { u as _ } from "./useAppStore-CAmajyh0.js";
6
+ import { u as _ } from "./useAppStore-ByWfAgOH.js";
7
7
  const o = {
8
8
  async readEmployees() {
9
9
  return f(await l().get("/pos-users"));
@@ -1,7 +1,7 @@
1
1
  import { defineStore as Gs, storeToRefs as Hs } from "pinia";
2
2
  import { ref as eo } from "vue";
3
3
  import { useCoreStore as ui, baseClientInstance as Dr, FeedMeAuth as qs } from "@feedmepos/mf-common";
4
- import { c as U } from "./app-D9NotBhb.js";
4
+ import { c as U } from "./app-DhjOMwb9.js";
5
5
  function Ur(e, n) {
6
6
  return function() {
7
7
  return e.apply(n, arguments);
@@ -1,4 +1,4 @@
1
- import { c as jt } from "./app-D9NotBhb.js";
1
+ import { c as jt } from "./app-DhjOMwb9.js";
2
2
  var Jr = { exports: {} };
3
3
  /**
4
4
  * @license
@@ -1,8 +1,8 @@
1
- import { g as b, b as v, q as L, u as H, s as x, d as Y, e as h } from "./iteration-BQBKoufN.js";
2
- import { e as R, h as k, b as F, l as j, C as Z, d as J } from "./app-D9NotBhb.js";
1
+ import { g as b, b as v, q as L, u as H, s as k, d as Y, e as h } from "./iteration-gb-z-6D3.js";
2
+ import { e as R, P as x, b as F, l as j, k as Z, d as J } from "./app-DhjOMwb9.js";
3
3
  import { s as q } from "./utils-BZkjJbju.js";
4
4
  import { defineStore as W, storeToRefs as V } from "pinia";
5
- import { ref as S, computed as T } from "vue";
5
+ import { ref as S, computed as C } from "vue";
6
6
  import { useCoreStore as z } from "@feedmepos/mf-common";
7
7
  const B = [
8
8
  {
@@ -564,7 +564,7 @@ function $e(e, s) {
564
564
  function Ie(e) {
565
565
  const s = X(
566
566
  e,
567
- k
567
+ x
568
568
  ), t = new Set(
569
569
  s.filter((i) => {
570
570
  var n;
@@ -737,7 +737,7 @@ const y = "/permission-assignments", P = {
737
737
  await L().get(`/report-query/hrm/${e}/reports`, { params: t })
738
738
  );
739
739
  }
740
- }, _ = S([]), E = S(!1), w = S(!1), $ = S(null), D = S(null), C = S(!1);
740
+ }, _ = S([]), E = S(!1), w = S(!1), $ = S(null), D = S(null), N = S(!1);
741
741
  function de() {
742
742
  const e = z();
743
743
  async function s() {
@@ -745,9 +745,9 @@ function de() {
745
745
  const o = (n = e.currentBusiness.value) == null ? void 0 : n.id;
746
746
  if (!o) return;
747
747
  const i = localStorage.getItem("locale");
748
- if ($.value !== o && (_.value = [], E.value = !1, w.value = !1, $.value = o, C.value = !1), !(E.value && D.value === i)) {
748
+ if ($.value !== o && (_.value = [], E.value = !1, w.value = !1, $.value = o, N.value = !1), !(E.value && D.value === i)) {
749
749
  if (w.value) {
750
- C.value = !0;
750
+ N.value = !0;
751
751
  return;
752
752
  }
753
753
  w.value = !0;
@@ -759,11 +759,11 @@ function de() {
759
759
  if ($.value !== o) return;
760
760
  console.warn("Failed to fetch custom report permissions:", c), _.value = [];
761
761
  } finally {
762
- $.value === o && (w.value = !1, C.value && (C.value = !1, await s()));
762
+ $.value === o && (w.value = !1, N.value && (N.value = !1, await s()));
763
763
  }
764
764
  }
765
765
  }
766
- const t = T(() => _.value.map(
766
+ const t = C(() => _.value.map(
767
767
  (o) => o.isDefault ? {
768
768
  label: o.name,
769
769
  subject: `business::report::reports::${o.permissionKey}`,
@@ -785,8 +785,8 @@ function de() {
785
785
  return {
786
786
  fetchCustomReportPermissions: s,
787
787
  customReportPermissions: t,
788
- isLoading: T(() => w.value),
789
- isLoaded: T(() => E.value)
788
+ isLoading: C(() => w.value),
789
+ isLoaded: C(() => E.value)
790
790
  };
791
791
  }
792
792
  function I(e) {
@@ -800,7 +800,7 @@ function I(e) {
800
800
  subject: R(f.subject)
801
801
  })), l = M(r, u), d = X(
802
802
  ae(r, u),
803
- k
803
+ x
804
804
  ).filter((f) => !f.inverted), p = fe(d), m = p ?? o.value.map((f) => f._id);
805
805
  return {
806
806
  doc: e,
@@ -808,7 +808,7 @@ function I(e) {
808
808
  name: e.name && e.name !== e.email && e.name !== e.phoneNumber ? e.name : "-",
809
809
  phoneNumber: e.phoneNumber,
810
810
  email: e.email,
811
- restaurants: x(
811
+ restaurants: k(
812
812
  m.map((f) => {
813
813
  var g;
814
814
  return ((g = o.value.find((G) => G._id === f)) == null ? void 0 : g.profile.name) ?? "";
@@ -872,10 +872,10 @@ function _e(e, s, t) {
872
872
  if (e.some((c) => c.subject === "all")) return "All";
873
873
  const o = (t ?? B).filter(
874
874
  (c) => c.subject === s
875
- ), i = new Set(o.map((c) => N(c).value)), n = e.filter((c) => c.subject === s).filter((c) => i.has(N(c).value));
875
+ ), i = new Set(o.map((c) => T(c).value)), n = e.filter((c) => c.subject === s).filter((c) => i.has(T(c).value));
876
876
  return n.length === o.length ? "All" : n.length === 0 ? "-" : `${n.length} permission allow`;
877
877
  }
878
- function N(e) {
878
+ function T(e) {
879
879
  const s = Y(e), t = s.subject;
880
880
  return {
881
881
  ...s,
@@ -905,7 +905,7 @@ function N(e) {
905
905
  };
906
906
  }
907
907
  function Ee(e) {
908
- const s = e.map((t) => N(t)).find((t) => t.isDiscountOperation);
908
+ const s = e.map((t) => T(t)).find((t) => t.isDiscountOperation);
909
909
  return s ? parseInt((s.conditions.adjustment.$lte * 100).toFixed(0)) : 100;
910
910
  }
911
911
  function fe(e) {
@@ -914,14 +914,14 @@ function fe(e) {
914
914
  );
915
915
  return s ? s.conditions ? JSON.parse(s.conditions).restaurantId.$in : null : [];
916
916
  }
917
- function Ce(e) {
917
+ function Ne(e) {
918
918
  return (e == null ? void 0 : e.some((s) => s.subject === "all")) ?? !1;
919
919
  }
920
- function Ne(e) {
920
+ function Te(e) {
921
921
  const s = e.find((t) => t.subject === J.Subject.Business.role);
922
922
  return s ? s.conditions ? JSON.parse(s.conditions).roleId.$in : null : [];
923
923
  }
924
- function Te(e, s) {
924
+ function Ce(e, s) {
925
925
  return e.map((t) => {
926
926
  const o = pe(t);
927
927
  return {
@@ -949,10 +949,10 @@ function pe(e) {
949
949
  conditions: { name: t },
950
950
  inverted: !1,
951
951
  reason: ""
952
- })) : o = B.find((i) => i.subject === s), N(o || { subject: h.F_RULE_SUBJECT.enum.order, actions: [], label: "" });
952
+ })) : o = B.find((i) => i.subject === s), T(o || { subject: h.F_RULE_SUBJECT.enum.order, actions: [], label: "" });
953
953
  }
954
954
  function be(e, s = []) {
955
- return x(
955
+ return k(
956
956
  e.reduce((t, o) => {
957
957
  const i = me.find(
958
958
  (n) => n.subject === o.subject && o.actions.includes("manage")
@@ -973,11 +973,11 @@ export {
973
973
  Q as c,
974
974
  de as d,
975
975
  B as e,
976
- Te as f,
976
+ Ce as f,
977
977
  Ee as g,
978
- Ce as h,
978
+ Ne as h,
979
979
  te as i,
980
- Ne as j,
980
+ Te as j,
981
981
  fe as k,
982
982
  Re as l,
983
983
  Pe as m,
@@ -985,7 +985,7 @@ export {
985
985
  $e as o,
986
986
  me as p,
987
987
  ue as q,
988
- N as r,
988
+ T as r,
989
989
  Ie as s,
990
990
  Oe as t,
991
991
  se as u,
@@ -8,6 +8,7 @@ declare const AuditLogAPI: {
8
8
  subjectPrefixes?: string[];
9
9
  actions?: string[];
10
10
  outcomes?: string[];
11
+ feedmeAdminActors?: boolean;
11
12
  }): Promise<number>;
12
13
  read(params?: {
13
14
  limit?: number;
@@ -19,6 +20,22 @@ declare const AuditLogAPI: {
19
20
  subjectPrefixes?: string[];
20
21
  actions?: string[];
21
22
  outcomes?: string[];
23
+ feedmeAdminActors?: boolean;
22
24
  }): Promise<AuditLogEntry[]>;
25
+ /**
26
+ * FeedMe-admin options for the User filter. `actors` is the named admin list (internal
27
+ * viewers only; empty for merchants). `showFeedmeAdminFilter` indicates whether to offer
28
+ * the "FeedMe Admin" catch-all (only when the business has relevant admin activity).
29
+ */
30
+ getFeedmeAdminFilter(params?: {
31
+ from?: string;
32
+ to?: string;
33
+ }): Promise<{
34
+ actors: {
35
+ userId: string;
36
+ name: string;
37
+ }[];
38
+ showFeedmeAdminFilter: boolean;
39
+ }>;
23
40
  };
24
41
  export default AuditLogAPI;
@@ -5,6 +5,7 @@ export declare const i18nMessages: {
5
5
  hr: {
6
6
  employee: {
7
7
  title: string;
8
+ subtitle: string;
8
9
  exportButtonLabel: string;
9
10
  createButtonLabel: string;
10
11
  columns: {
@@ -208,6 +209,7 @@ export declare const i18nMessages: {
208
209
  hr: {
209
210
  employee: {
210
211
  title: string;
212
+ subtitle: string;
211
213
  exportButtonLabel: string;
212
214
  createButtonLabel: string;
213
215
  columns: {
@@ -411,6 +413,7 @@ export declare const i18nMessages: {
411
413
  hr: {
412
414
  employee: {
413
415
  title: string;
416
+ subtitle: string;
414
417
  exportButtonLabel: string;
415
418
  createButtonLabel: string;
416
419
  columns: {
@@ -613,6 +616,7 @@ export declare const i18nMessages: {
613
616
  hr: {
614
617
  employee: {
615
618
  title: string;
619
+ subtitle: string;
616
620
  exportButtonLabel: string;
617
621
  createButtonLabel: string;
618
622
  columns: {
@@ -4,6 +4,7 @@ export declare const i18nMessages: {
4
4
  'en-US': {
5
5
  team: {
6
6
  title: string;
7
+ subtitle: string;
7
8
  actions: {
8
9
  addMember: string;
9
10
  updateMember: string;
@@ -234,6 +235,7 @@ export declare const i18nMessages: {
234
235
  'zh-CN': {
235
236
  team: {
236
237
  title: string;
238
+ subtitle: string;
237
239
  actions: {
238
240
  addMember: string;
239
241
  updateMember: string;
@@ -464,6 +466,7 @@ export declare const i18nMessages: {
464
466
  'th-TH': {
465
467
  team: {
466
468
  title: string;
469
+ subtitle: string;
467
470
  actions: {
468
471
  addMember: string;
469
472
  updateMember: string;
@@ -694,6 +697,7 @@ export declare const i18nMessages: {
694
697
  'zh-Hant': {
695
698
  team: {
696
699
  title: string;
700
+ subtitle: string;
697
701
  actions: {
698
702
  addMember: string;
699
703
  updateMember: string;
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .employee-list-table[data-v-202bbc71] [class~=gap-24]>div:first-child{display:none}.timesheet-user-view[data-v-91afda4e] .basis-72{display:none}.user-info-icon[data-v-a439fdd8]{flex-shrink:0;cursor:pointer;font-size:.75rem;font-weight:600;line-height:1rem;letter-spacing:.02em;text-decoration-line:none;color:var(--fm-color-neutral-white);display:flex;align-items:center;justify-content:center;background:linear-gradient(201deg,#fc9b40 10.3%,#ff6052 98.36%)}.user-info-icon--md[data-v-a439fdd8]{height:2.25rem;width:2.25rem;border-radius:8px}.user-info-icon--lg[data-v-a439fdd8]{height:48px;width:48px;border-radius:16px}.profile-menu[data-v-a439fdd8]{width:280px;padding-top:12px;padding-bottom:12px}.profile-menu--profile[data-v-a439fdd8]>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(8px * var(--tw-space-x-reverse));margin-left:calc(8px * calc(1 - var(--tw-space-x-reverse)))}.profile-menu--profile[data-v-a439fdd8]{padding:16px 16px 12px;border-radius:8px;display:flex;align-items:center;border-width:1px;border-color:var(--fm-color-neutral-gray-200)}.profile-menu--profile .profile-displayName[data-v-a439fdd8]{font-size:1rem;font-weight:400;line-height:1.25rem;letter-spacing:.005em;text-decoration-line:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-menu--profile .profile-email[data-v-a439fdd8],.profile-menu--profile .profile-phone[data-v-a439fdd8]{font-size:.875rem;font-weight:400;line-height:1.125rem;letter-spacing:.0125em;text-decoration-line:none;color:var(--fm-color-neutral-gray-300);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-log-list-table[data-v-cf386576] [class~=gap-24]>div:first-child{display:none}.audit-log-action-label[data-v-cf386576]{display:block;width:100%;max-width:100%;max-height:6.25rem;overflow-y:auto;white-space:pre-line;word-break:break-word;line-height:1.25rem;scrollbar-width:none;-ms-overflow-style:none}.audit-log-action-label[data-v-cf386576]::-webkit-scrollbar{display:none}.audit-log-operation-label-detail[data-v-cf386576]{max-height:6.875rem;overflow-y:auto;white-space:pre-line;word-break:break-word;line-height:1.375rem;scrollbar-width:none;-ms-overflow-style:none}.audit-log-operation-label-detail[data-v-cf386576]::-webkit-scrollbar{display:none}
1
+ .employee-list-table[data-v-202bbc71] [class~=gap-24]>div:first-child{display:none}.timesheet-user-view[data-v-91afda4e] .basis-72{display:none}.user-info-icon[data-v-a439fdd8]{flex-shrink:0;cursor:pointer;font-size:.75rem;font-weight:600;line-height:1rem;letter-spacing:.02em;text-decoration-line:none;color:var(--fm-color-neutral-white);display:flex;align-items:center;justify-content:center;background:linear-gradient(201deg,#fc9b40 10.3%,#ff6052 98.36%)}.user-info-icon--md[data-v-a439fdd8]{height:2.25rem;width:2.25rem;border-radius:8px}.user-info-icon--lg[data-v-a439fdd8]{height:48px;width:48px;border-radius:16px}.profile-menu[data-v-a439fdd8]{width:280px;padding-top:12px;padding-bottom:12px}.profile-menu--profile[data-v-a439fdd8]>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(8px * var(--tw-space-x-reverse));margin-left:calc(8px * calc(1 - var(--tw-space-x-reverse)))}.profile-menu--profile[data-v-a439fdd8]{padding:16px 16px 12px;border-radius:8px;display:flex;align-items:center;border-width:1px;border-color:var(--fm-color-neutral-gray-200)}.profile-menu--profile .profile-displayName[data-v-a439fdd8]{font-size:1rem;font-weight:400;line-height:1.25rem;letter-spacing:.005em;text-decoration-line:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-menu--profile .profile-email[data-v-a439fdd8],.profile-menu--profile .profile-phone[data-v-a439fdd8]{font-size:.875rem;font-weight:400;line-height:1.125rem;letter-spacing:.0125em;text-decoration-line:none;color:var(--fm-color-neutral-gray-300);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-log-list-table[data-v-e7378504] [class~=gap-24]>div:first-child{display:none}.audit-log-action-label[data-v-e7378504]{display:block;width:100%;max-width:100%;max-height:6.25rem;overflow-y:auto;white-space:pre-line;word-break:break-word;line-height:1.25rem;scrollbar-width:none;-ms-overflow-style:none}.audit-log-action-label[data-v-e7378504]::-webkit-scrollbar{display:none}.audit-log-operation-label-detail[data-v-e7378504]{max-height:6.875rem;overflow-y:auto;white-space:pre-line;word-break:break-word;line-height:1.375rem;scrollbar-width:none;-ms-overflow-style:none}.audit-log-operation-label-detail[data-v-e7378504]::-webkit-scrollbar{display:none}