@feedmepos/mf-hrm-portal 2.0.17-dev.4 → 2.0.17-dev.5
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.
- package/dist/AuditLogList-Dl3Nmf00.js +1011 -0
- package/dist/CollapsibleWrapper.vue_vue_type_script_setup_true_lang-BLJlmPVa.js +58 -0
- package/dist/EmployeeList-DBd_rVW2.js +831 -0
- package/dist/FormItem.vue_vue_type_script_setup_true_lang-CoorkndT.js +34 -0
- package/dist/FormSection.vue_vue_type_script_setup_true_lang-DknXTYiK.js +49 -0
- package/dist/{Main-BAx-c_oZ.js → Main-CQ3KwxDY.js} +1368 -1371
- package/dist/{Main-CyReTP3K.js → Main-pTgqNncY.js} +128 -128
- package/dist/{Main-CfAQYaaW.js → Main-w0XUUaBp.js} +16 -14
- package/dist/PermissionSetList-B8qNOWH6.js +347 -0
- package/dist/PortalPermissionEditor.vue_vue_type_script_setup_true_lang-C9VUjAu_.js +3443 -0
- package/dist/RoleList-DMFJsUZv.js +545 -0
- package/dist/Skeleton.vue_vue_type_script_setup_true_lang-B4PxNMwq.js +16 -0
- package/dist/TeamMemberList-BLRTfKLz.js +1031 -0
- package/dist/{TimesheetList-NRUfSiYL.js → TimesheetList-Bwp9_xHe.js} +6 -6
- package/dist/{app-B0bANDrM.js → app-COJbSNM4.js} +759 -711
- package/dist/app.js +1 -1
- package/dist/{dayjs.min-DdUO0d-2.js → dayjs.min-CcBi6N-K.js} +1 -1
- package/dist/{employee-DJDUT0Wj.js → employee-xiV0LfnL.js} +3 -3
- package/dist/{iteration-DqYIXL4P.js → iteration-JOKbtlLf.js} +1 -1
- package/dist/{lodash-BBQT31li.js → lodash-D5xlVzib.js} +1 -1
- package/dist/{rule-T7VKkRdN.js → rule-3sXHiW0y.js} +179 -181
- package/dist/src/api/audit-log/index.d.ts +9 -0
- package/dist/src/components/CheckboxInput.vue.d.ts +1 -1
- package/dist/src/components/CollapsibleWrapper.vue.d.ts +2 -0
- package/dist/src/components/Skeleton.vue.d.ts +7 -0
- package/dist/src/composables/useBasePermission.d.ts +1 -0
- package/dist/src/stores/team.d.ts +6 -6
- package/dist/src/types/team.d.ts +1 -1
- package/dist/src/views/hr/locales/index.d.ts +16 -0
- package/dist/src/views/team/components/BasePermission.vue.d.ts +3 -7
- package/dist/src/views/team/components/PosRolePermission.vue.d.ts +2 -2
- package/dist/src/views/team/locales/index.d.ts +32 -0
- package/dist/src/views/team/member/AddMemberForm.vue.d.ts +5 -3
- package/dist/style.css +1 -1
- package/dist/team-CyNektSD.js +33 -0
- package/dist/{timesheet-DjtuB4we.js → timesheet-DkD3AysG.js} +2 -2
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{useAppStore-CBb-dugK.js → useAppStore-CvmsaYSG.js} +1 -1
- package/dist/useDiscardConfirm-DPhEV6v0.js +157 -0
- package/dist/{useLoading-BCOj8y-t.js → useLoading-4TNmhm5N.js} +1 -1
- package/dist/{useReportPermissions-DyzhBpi8.js → useReportPermissions-CWMFFb8E.js} +3 -3
- package/dist/useSearch-BAPEUu1R.js +15 -0
- package/package.json +1 -1
- package/dist/AuditLogList-CV82_8fj.js +0 -980
- package/dist/EmployeeList-dE0So94R.js +0 -736
- package/dist/FormSection.vue_vue_type_script_setup_true_lang-BVb8c4YU.js +0 -71
- package/dist/HorizontalSplitter-o860F4xM.js +0 -12
- package/dist/PermissionSetList-DmsJnW2i.js +0 -341
- package/dist/PortalPermissionEditor.vue_vue_type_script_setup_true_lang-BbcY9q1x.js +0 -3480
- package/dist/RoleList-CKB8L-BW.js +0 -530
- package/dist/TeamMemberList-CszlbmAX.js +0 -1108
- package/dist/useDebounce-B8ZPVS5C.js +0 -15
- package/dist/useDiscardConfirm-BHni0LNu.js +0 -28
- package/dist/useSearch-B6WK1LBB.js +0 -15
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { g as
|
|
2
|
-
import { e as I, P as
|
|
3
|
-
import { s as
|
|
4
|
-
import { defineStore as
|
|
5
|
-
import { ref as S, computed as
|
|
6
|
-
import { useCoreStore as
|
|
7
|
-
const
|
|
1
|
+
import { g as p, b as g, q as D, s as W, d as Y, e as h } from "./iteration-JOKbtlLf.js";
|
|
2
|
+
import { e as I, P as V, d as x, y as j, C as Z, i as M } from "./app-COJbSNM4.js";
|
|
3
|
+
import { s as q } from "./utils-BZkjJbju.js";
|
|
4
|
+
import { defineStore as z, storeToRefs as K } from "pinia";
|
|
5
|
+
import { ref as S, computed as U } from "vue";
|
|
6
|
+
import { useCoreStore as L } from "@feedmepos/mf-common";
|
|
7
|
+
const J = [
|
|
8
8
|
{
|
|
9
9
|
label: "",
|
|
10
10
|
subject: "order",
|
|
@@ -338,38 +338,38 @@ const B = [
|
|
|
338
338
|
inverted: !1,
|
|
339
339
|
reason: ""
|
|
340
340
|
}
|
|
341
|
-
],
|
|
341
|
+
], O = "/permission-sets", _ = {
|
|
342
342
|
async read() {
|
|
343
|
-
return
|
|
343
|
+
return p(await g().get(O));
|
|
344
344
|
},
|
|
345
345
|
async create(e) {
|
|
346
|
-
return
|
|
346
|
+
return p(await g().post(O, e));
|
|
347
347
|
},
|
|
348
348
|
async update(e, s) {
|
|
349
|
-
return
|
|
349
|
+
return p(await g().put(`${O}/${e}`, s));
|
|
350
350
|
},
|
|
351
351
|
async delete(e) {
|
|
352
|
-
return
|
|
352
|
+
return p(await g().delete(`${O}/${e}`));
|
|
353
353
|
}
|
|
354
|
-
},
|
|
355
|
-
const { currentBusiness: e } =
|
|
354
|
+
}, ee = z("permissionSet", () => {
|
|
355
|
+
const { currentBusiness: e } = L(), s = S([]), n = S(null);
|
|
356
356
|
async function o() {
|
|
357
357
|
var l;
|
|
358
358
|
const c = ((l = e.value) == null ? void 0 : l._id) ?? null;
|
|
359
359
|
if (n.value === c) return;
|
|
360
|
-
const u = await
|
|
360
|
+
const u = await _.read();
|
|
361
361
|
s.value = r(u), n.value = c;
|
|
362
362
|
}
|
|
363
363
|
async function i(c) {
|
|
364
|
-
const u = await
|
|
364
|
+
const u = await _.create(c);
|
|
365
365
|
s.value = r([...s.value, u]);
|
|
366
366
|
}
|
|
367
367
|
async function t(c, u) {
|
|
368
|
-
const l = await
|
|
368
|
+
const l = await _.update(c, u);
|
|
369
369
|
s.value = r(s.value.map((d) => d.id === c ? l : d));
|
|
370
370
|
}
|
|
371
371
|
async function a(c) {
|
|
372
|
-
await
|
|
372
|
+
await _.delete(c), s.value = r(s.value.filter((u) => u.id !== c));
|
|
373
373
|
}
|
|
374
374
|
function r(c) {
|
|
375
375
|
return c.sort((u, l) => u.name.localeCompare(l.name));
|
|
@@ -381,14 +381,14 @@ const B = [
|
|
|
381
381
|
updatePermissionSet: t,
|
|
382
382
|
deletePermissionSet: a
|
|
383
383
|
};
|
|
384
|
-
}),
|
|
385
|
-
const e =
|
|
384
|
+
}), se = () => {
|
|
385
|
+
const e = ee();
|
|
386
386
|
return {
|
|
387
387
|
...e,
|
|
388
|
-
...
|
|
388
|
+
...K(e)
|
|
389
389
|
};
|
|
390
390
|
};
|
|
391
|
-
function
|
|
391
|
+
function X(e) {
|
|
392
392
|
const s = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map(), o = (i, t, a) => {
|
|
393
393
|
var r, c;
|
|
394
394
|
const u = `${t.subject}::${JSON.stringify([...t.actions].sort())}`, l = i.get(u);
|
|
@@ -397,9 +397,9 @@ function K(e) {
|
|
|
397
397
|
return;
|
|
398
398
|
}
|
|
399
399
|
if (l.setNames.push(a.name), l.conditions && t.conditions) {
|
|
400
|
-
const d = typeof l.conditions == "string" ? JSON.parse(l.conditions) : l.conditions,
|
|
401
|
-
for (const m in
|
|
402
|
-
(r = d[m]) != null && r.$in && (c =
|
|
400
|
+
const d = typeof l.conditions == "string" ? JSON.parse(l.conditions) : l.conditions, f = typeof t.conditions == "string" ? JSON.parse(t.conditions) : t.conditions;
|
|
401
|
+
for (const m in f)
|
|
402
|
+
(r = d[m]) != null && r.$in && (c = f[m]) != null && c.$in ? d[m].$in = Array.from(/* @__PURE__ */ new Set([...d[m].$in, ...f[m].$in])) : d[m] || (d[m] = f[m]);
|
|
403
403
|
l.conditions = JSON.stringify(d);
|
|
404
404
|
}
|
|
405
405
|
};
|
|
@@ -408,29 +408,29 @@ function K(e) {
|
|
|
408
408
|
o(t.inverted ? n : s, t, i);
|
|
409
409
|
return [...Array.from(s.values()), ...Array.from(n.values())];
|
|
410
410
|
}
|
|
411
|
-
function
|
|
411
|
+
function B(e, s) {
|
|
412
412
|
return `${e}::${[...s].sort().join(",")}`;
|
|
413
413
|
}
|
|
414
|
-
function
|
|
414
|
+
function Q(e, s) {
|
|
415
415
|
const n = [...e], o = /* @__PURE__ */ new Set(), i = /* @__PURE__ */ new Set(), t = /* @__PURE__ */ new Set();
|
|
416
416
|
for (const r of e) {
|
|
417
417
|
const c = I(r.subject);
|
|
418
|
-
o.add(
|
|
418
|
+
o.add(B(c, r.actions)), r.inverted && r.actions.includes("manage") && i.add(`set_${c}`), !r.inverted && r.actions.includes("manage") && t.add(c);
|
|
419
419
|
}
|
|
420
420
|
const a = [...e];
|
|
421
421
|
for (; a.length > 0; ) {
|
|
422
422
|
const r = a.shift(), c = `set_${I(r.subject)}`, u = s[c];
|
|
423
423
|
if (!u || i.has(c) || !r.actions.includes("manage") || r.inverted) continue;
|
|
424
424
|
i.add(c);
|
|
425
|
-
const l =
|
|
425
|
+
const l = ne(r);
|
|
426
426
|
r.source && !r.source.trace && (r.source = { ...r.source, trace: l });
|
|
427
427
|
const d = [...l, `${u.name} (system)`];
|
|
428
|
-
for (const
|
|
429
|
-
const m = I(
|
|
430
|
-
o.has(
|
|
431
|
-
...
|
|
428
|
+
for (const f of u.permissions ?? []) {
|
|
429
|
+
const m = I(f.subject), b = B(m, f.actions);
|
|
430
|
+
o.has(b) || t.has(m) || (o.add(b), n.push({
|
|
431
|
+
...f,
|
|
432
432
|
// FdoPermissionRule.fields is string[] | null; RawRule expects string[] | undefined
|
|
433
|
-
fields:
|
|
433
|
+
fields: f.fields ?? void 0,
|
|
434
434
|
source: {
|
|
435
435
|
type: "systemPermissionSet",
|
|
436
436
|
permissionSetId: u.key,
|
|
@@ -439,8 +439,8 @@ function X(e, s) {
|
|
|
439
439
|
}
|
|
440
440
|
}));
|
|
441
441
|
}
|
|
442
|
-
for (const
|
|
443
|
-
const m = I(
|
|
442
|
+
for (const f of u.permissionSets ?? []) {
|
|
443
|
+
const m = I(f), b = B(m, ["manage"]), v = {
|
|
444
444
|
subject: m,
|
|
445
445
|
actions: ["manage"],
|
|
446
446
|
source: {
|
|
@@ -450,12 +450,12 @@ function X(e, s) {
|
|
|
450
450
|
trace: d
|
|
451
451
|
}
|
|
452
452
|
};
|
|
453
|
-
o.has(
|
|
453
|
+
o.has(b) || (o.add(b), n.push(v)), a.push(v);
|
|
454
454
|
}
|
|
455
455
|
}
|
|
456
456
|
return [...n.filter((r) => !r.inverted), ...n.filter((r) => r.inverted)];
|
|
457
457
|
}
|
|
458
|
-
function
|
|
458
|
+
function ne(e) {
|
|
459
459
|
if (!e.source) return [];
|
|
460
460
|
const { type: s, trace: n, permissionSetName: o } = e.source;
|
|
461
461
|
if (n && n.length > 0) return n;
|
|
@@ -468,24 +468,24 @@ function se(e) {
|
|
|
468
468
|
return [];
|
|
469
469
|
}
|
|
470
470
|
}
|
|
471
|
-
function
|
|
471
|
+
function G(e, s, n = /* @__PURE__ */ new Set()) {
|
|
472
472
|
var i;
|
|
473
473
|
const o = [];
|
|
474
474
|
for (const t of e) {
|
|
475
475
|
if (n.has(t)) continue;
|
|
476
476
|
n.add(t);
|
|
477
477
|
const a = s.find((r) => r.id === t);
|
|
478
|
-
a && (o.push(a), (i = a.permissionSetIds) != null && i.length && o.push(...
|
|
478
|
+
a && (o.push(a), (i = a.permissionSetIds) != null && i.length && o.push(...G(a.permissionSetIds, s, n)));
|
|
479
479
|
}
|
|
480
480
|
return o;
|
|
481
481
|
}
|
|
482
|
-
function
|
|
483
|
-
const s =
|
|
482
|
+
function Pe(e) {
|
|
483
|
+
const s = X(e).map(
|
|
484
484
|
({ setNames: i, setId: t, ...a }) => a
|
|
485
485
|
), n = s.filter((i) => !i.inverted), o = s.filter((i) => i.inverted);
|
|
486
|
-
return
|
|
486
|
+
return F(n, o);
|
|
487
487
|
}
|
|
488
|
-
function
|
|
488
|
+
function we(e, s, n) {
|
|
489
489
|
const o = /* @__PURE__ */ new Map();
|
|
490
490
|
return e.forEach(
|
|
491
491
|
({ name: i, permissions: t }) => t.forEach(({ conditions: a, actions: r }) => {
|
|
@@ -502,7 +502,7 @@ function Pe(e, s, n) {
|
|
|
502
502
|
setNames: [...t]
|
|
503
503
|
}));
|
|
504
504
|
}
|
|
505
|
-
function
|
|
505
|
+
function $e(e, s) {
|
|
506
506
|
const n = (r, c) => {
|
|
507
507
|
const u = { ...r }, l = JSON.parse(u.conditions || "{}");
|
|
508
508
|
if (c)
|
|
@@ -521,21 +521,21 @@ function we(e, s) {
|
|
|
521
521
|
const c = o.get(r), u = i.get(r);
|
|
522
522
|
if (c && u) {
|
|
523
523
|
if (c.conditions && u.conditions) {
|
|
524
|
-
const l = JSON.parse(c.conditions), d = JSON.parse(u.conditions),
|
|
525
|
-
(
|
|
524
|
+
const l = JSON.parse(c.conditions), d = JSON.parse(u.conditions), f = Object.keys(l)[0], m = l[f].$in.filter(
|
|
525
|
+
(v) => !d[f].$in.includes(v)
|
|
526
526
|
);
|
|
527
|
-
m.length > 0 && t.push(n(c, m)), d[
|
|
528
|
-
(
|
|
527
|
+
m.length > 0 && t.push(n(c, m)), d[f].$in.filter(
|
|
528
|
+
(v) => !l[f].$in.includes(v)
|
|
529
529
|
).length > 0 && t.push(u);
|
|
530
530
|
} else if (!c.conditions && u.conditions)
|
|
531
531
|
t.push(u);
|
|
532
532
|
else if (!c.conditions && !u.conditions) {
|
|
533
|
-
const l = new Set(c.actions), d = new Set(u.actions),
|
|
534
|
-
if (
|
|
535
|
-
const
|
|
533
|
+
const l = new Set(c.actions), d = new Set(u.actions), f = u.actions.some((b) => !l.has(b)), m = c.actions.filter((b) => !d.has(b));
|
|
534
|
+
if (f) {
|
|
535
|
+
const b = u.actions.filter((v) => !l.has(v));
|
|
536
536
|
t.push({
|
|
537
537
|
...u,
|
|
538
|
-
actions:
|
|
538
|
+
actions: b
|
|
539
539
|
});
|
|
540
540
|
}
|
|
541
541
|
m.length > 0 && t.push({
|
|
@@ -561,10 +561,10 @@ function we(e, s) {
|
|
|
561
561
|
}
|
|
562
562
|
return t;
|
|
563
563
|
}
|
|
564
|
-
function
|
|
565
|
-
const s =
|
|
564
|
+
function Re(e) {
|
|
565
|
+
const s = Q(
|
|
566
566
|
e,
|
|
567
|
-
|
|
567
|
+
V
|
|
568
568
|
), n = new Set(
|
|
569
569
|
s.filter((i) => {
|
|
570
570
|
var t;
|
|
@@ -580,20 +580,20 @@ function $e(e) {
|
|
|
580
580
|
);
|
|
581
581
|
return e.filter((i) => i.inverted ? !(n.has(i.subject) && !o.has(i.subject)) : !n.has(i.subject));
|
|
582
582
|
}
|
|
583
|
-
const
|
|
584
|
-
function
|
|
583
|
+
const te = "business::report::";
|
|
584
|
+
function Ie(e, s) {
|
|
585
585
|
const n = [], o = e.filter((i) => {
|
|
586
586
|
const t = i.subject;
|
|
587
|
-
return !t.startsWith(
|
|
587
|
+
return !t.startsWith(te) || s.has(t) ? !0 : (n.push(t), !1);
|
|
588
588
|
});
|
|
589
589
|
return n.length > 0 && console.warn("[filterStalePermissions] dropped stale report permissions:", n), o;
|
|
590
590
|
}
|
|
591
|
-
const
|
|
592
|
-
function
|
|
591
|
+
const oe = "business::report::reports::", ie = "business::report::allDefaultReports", re = "business::report::allCustomReports";
|
|
592
|
+
function Ae(e, s) {
|
|
593
593
|
const n = e.find(
|
|
594
|
-
(a) => !a.inverted && a.subject === oe
|
|
595
|
-
), o = e.find(
|
|
596
594
|
(a) => !a.inverted && a.subject === ie
|
|
595
|
+
), o = e.find(
|
|
596
|
+
(a) => !a.inverted && a.subject === re
|
|
597
597
|
);
|
|
598
598
|
if (!n && !o) return e;
|
|
599
599
|
const i = n ? new Set(n.actions) : null, t = o ? new Set(o.actions) : null;
|
|
@@ -601,20 +601,20 @@ function Ie(e, s) {
|
|
|
601
601
|
if (r.inverted)
|
|
602
602
|
return a.push(r), a;
|
|
603
603
|
const c = r.subject;
|
|
604
|
-
if (!c.startsWith(
|
|
604
|
+
if (!c.startsWith(oe))
|
|
605
605
|
return a.push(r), a;
|
|
606
606
|
const l = s.has(c) ? i : t;
|
|
607
607
|
if (!l)
|
|
608
608
|
return a.push(r), a;
|
|
609
609
|
if (l.has("manage")) return a;
|
|
610
|
-
const d = new Set(r.actions),
|
|
610
|
+
const d = new Set(r.actions), f = d.has("manage");
|
|
611
611
|
let m = !1;
|
|
612
|
-
for (const
|
|
613
|
-
|
|
614
|
-
return
|
|
612
|
+
for (const b of l)
|
|
613
|
+
b !== "manage" && d.delete(b) && (m = !0);
|
|
614
|
+
return f && m && d.delete("manage"), d.size === 0 || a.push({ ...r, actions: Array.from(d) }), a;
|
|
615
615
|
}, []);
|
|
616
616
|
}
|
|
617
|
-
function
|
|
617
|
+
function F(e, s) {
|
|
618
618
|
var o, i;
|
|
619
619
|
const n = new Map(e.map((t) => [t.subject, t]));
|
|
620
620
|
for (const t of s) {
|
|
@@ -622,7 +622,7 @@ function L(e, s) {
|
|
|
622
622
|
const r = n.get(t.subject);
|
|
623
623
|
if (t.conditions) {
|
|
624
624
|
if (r != null && r.conditions) {
|
|
625
|
-
const c = JSON.parse(r.conditions), u = JSON.parse(t.conditions), l = Object.keys(u)[0], d = ((o = u[l]) == null ? void 0 : o.$in) ?? [], m = (((i = c[l]) == null ? void 0 : i.$in) ?? []).filter((
|
|
625
|
+
const c = JSON.parse(r.conditions), u = JSON.parse(t.conditions), l = Object.keys(u)[0], d = ((o = u[l]) == null ? void 0 : o.$in) ?? [], m = (((i = c[l]) == null ? void 0 : i.$in) ?? []).filter((b) => !d.includes(b));
|
|
626
626
|
m.length > 0 ? n.set(t.subject, {
|
|
627
627
|
...r,
|
|
628
628
|
conditions: JSON.stringify({ [l]: { $in: m } })
|
|
@@ -656,37 +656,37 @@ function L(e, s) {
|
|
|
656
656
|
}
|
|
657
657
|
return Array.from(n.values());
|
|
658
658
|
}
|
|
659
|
-
function
|
|
660
|
-
const n =
|
|
659
|
+
function ae(e, s) {
|
|
660
|
+
const n = F(e, s), o = new Set(e.map((t) => t.subject)), i = s.filter(
|
|
661
661
|
(t) => t.inverted && !o.has(t.subject)
|
|
662
662
|
);
|
|
663
663
|
return [...n, ...i];
|
|
664
664
|
}
|
|
665
665
|
const y = "/permission-assignments", P = {
|
|
666
666
|
async readAll() {
|
|
667
|
-
return
|
|
667
|
+
return p(await g().get(y));
|
|
668
668
|
},
|
|
669
669
|
async readByUserId(e) {
|
|
670
|
-
return
|
|
670
|
+
return p(await g().get(`${y}/user/${e}`));
|
|
671
671
|
},
|
|
672
672
|
async readById(e) {
|
|
673
|
-
return
|
|
673
|
+
return p(await g().get(`${y}/${e}`));
|
|
674
674
|
},
|
|
675
675
|
async create(e) {
|
|
676
|
-
return
|
|
676
|
+
return p(await g().post(y, e));
|
|
677
677
|
},
|
|
678
678
|
async update(e, s) {
|
|
679
|
-
return
|
|
679
|
+
return p(await g().put(`${y}/${e}`, s));
|
|
680
680
|
},
|
|
681
681
|
async delete(e) {
|
|
682
|
-
return
|
|
682
|
+
return p(await g().delete(`${y}/${e}`));
|
|
683
683
|
},
|
|
684
684
|
async addReportManagePermission(e, s) {
|
|
685
|
-
return
|
|
686
|
-
await
|
|
685
|
+
return p(
|
|
686
|
+
await g().post("/my-permissions/report-manage", { permissionKey: e, label: s })
|
|
687
687
|
);
|
|
688
688
|
}
|
|
689
|
-
},
|
|
689
|
+
}, ce = z("permissionAssignment", () => {
|
|
690
690
|
const e = S([]);
|
|
691
691
|
async function s() {
|
|
692
692
|
const r = await P.readAll();
|
|
@@ -718,57 +718,57 @@ const y = "/permission-assignments", P = {
|
|
|
718
718
|
deletePermissionAssignment: t,
|
|
719
719
|
getPermissionAssignmentByUserId: a
|
|
720
720
|
};
|
|
721
|
-
}),
|
|
722
|
-
const e =
|
|
721
|
+
}), ue = () => {
|
|
722
|
+
const e = ce();
|
|
723
723
|
return {
|
|
724
724
|
...e,
|
|
725
|
-
...
|
|
725
|
+
...K(e)
|
|
726
726
|
};
|
|
727
|
-
},
|
|
727
|
+
}, le = {
|
|
728
728
|
async fetchReportPermissions(e, s) {
|
|
729
729
|
const n = s ? { lang: s } : {};
|
|
730
|
-
return
|
|
731
|
-
await
|
|
730
|
+
return p(
|
|
731
|
+
await D().get(`/report-query/hrm/${e}/reports`, { params: n })
|
|
732
732
|
);
|
|
733
733
|
},
|
|
734
734
|
async fetchReportPermissionsForPortal(e, s) {
|
|
735
735
|
const n = s ? { isSupportPos: !1, lang: s } : { isSupportPos: !1 };
|
|
736
|
-
return
|
|
737
|
-
await
|
|
736
|
+
return p(
|
|
737
|
+
await D().get(`/report-query/hrm/${e}/reports`, { params: n })
|
|
738
738
|
);
|
|
739
739
|
}
|
|
740
|
-
},
|
|
741
|
-
function
|
|
742
|
-
const e =
|
|
740
|
+
}, E = S([]), C = S(!1), w = S(!1), $ = S(null), k = S(null), N = S(!1);
|
|
741
|
+
function de() {
|
|
742
|
+
const e = L();
|
|
743
743
|
async function s() {
|
|
744
744
|
var t;
|
|
745
745
|
const o = (t = e.currentBusiness.value) == null ? void 0 : t.id;
|
|
746
746
|
if (!o) return;
|
|
747
747
|
const i = localStorage.getItem("locale");
|
|
748
|
-
if ($.value !== o && (
|
|
748
|
+
if ($.value !== o && (E.value = [], C.value = !1, w.value = !1, $.value = o, N.value = !1), !(C.value && k.value === i)) {
|
|
749
749
|
if (w.value) {
|
|
750
|
-
|
|
750
|
+
N.value = !0;
|
|
751
751
|
return;
|
|
752
752
|
}
|
|
753
753
|
w.value = !0;
|
|
754
754
|
try {
|
|
755
|
-
const a = await
|
|
755
|
+
const a = await le.fetchReportPermissionsForPortal(o, i);
|
|
756
756
|
if ($.value !== o) return;
|
|
757
|
-
|
|
757
|
+
E.value = a, C.value = !0, k.value = i;
|
|
758
758
|
} catch (a) {
|
|
759
759
|
if ($.value !== o) return;
|
|
760
|
-
console.warn("Failed to fetch custom report permissions:", a),
|
|
760
|
+
console.warn("Failed to fetch custom report permissions:", a), E.value = [];
|
|
761
761
|
} finally {
|
|
762
|
-
$.value === o && (w.value = !1,
|
|
762
|
+
$.value === o && (w.value = !1, N.value && (N.value = !1, await s()));
|
|
763
763
|
}
|
|
764
764
|
}
|
|
765
765
|
}
|
|
766
|
-
const n =
|
|
766
|
+
const n = U(() => E.value.map(
|
|
767
767
|
(o) => o.isDefault ? {
|
|
768
768
|
label: o.name,
|
|
769
769
|
subject: `business::report::reports::${o.permissionKey}`,
|
|
770
770
|
actions: [j.manage, j.read, j.create],
|
|
771
|
-
category:
|
|
771
|
+
category: x.reports
|
|
772
772
|
} : {
|
|
773
773
|
label: o.name,
|
|
774
774
|
subject: `business::report::reports::${o.permissionKey}`,
|
|
@@ -779,60 +779,58 @@ function le() {
|
|
|
779
779
|
j.update,
|
|
780
780
|
j.delete
|
|
781
781
|
],
|
|
782
|
-
category:
|
|
782
|
+
category: x.customReports
|
|
783
783
|
}
|
|
784
784
|
));
|
|
785
785
|
return {
|
|
786
786
|
fetchCustomReportPermissions: s,
|
|
787
787
|
customReportPermissions: n,
|
|
788
|
-
isLoading:
|
|
789
|
-
isLoaded:
|
|
788
|
+
isLoading: U(() => w.value),
|
|
789
|
+
isLoaded: U(() => C.value)
|
|
790
790
|
};
|
|
791
791
|
}
|
|
792
792
|
function R(e) {
|
|
793
|
-
const s =
|
|
793
|
+
const s = L(), n = se(), o = ue(), i = s.restaurants, { customReportPermissions: t } = de(), a = o.getPermissionAssignmentByUserId(e.id), r = G(
|
|
794
794
|
(a == null ? void 0 : a.permissionSetIds) ?? [],
|
|
795
795
|
n.permissionSets.value
|
|
796
|
-
), c =
|
|
797
|
-
({ setNames:
|
|
798
|
-
), u = a == null ? void 0 : a.customPermissions, l = u ?? e.permissions.map((
|
|
799
|
-
...
|
|
800
|
-
subject: I(
|
|
801
|
-
})), d =
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
).filter((
|
|
796
|
+
), c = X(r).map(
|
|
797
|
+
({ setNames: v, ...A }) => A
|
|
798
|
+
), u = a == null ? void 0 : a.customPermissions, l = u ?? e.permissions.map((v) => ({
|
|
799
|
+
...v,
|
|
800
|
+
subject: I(v.subject)
|
|
801
|
+
})), d = F(c, l), f = Q(
|
|
802
|
+
ae(c, l),
|
|
803
|
+
V
|
|
804
|
+
).filter((v) => !v.inverted), m = fe(f), b = m ?? i.value.map((v) => v._id);
|
|
805
805
|
return {
|
|
806
806
|
doc: e,
|
|
807
807
|
id: e.id,
|
|
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:
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
}
|
|
817
|
-
)
|
|
811
|
+
restaurants: W(
|
|
812
|
+
b.map((v) => {
|
|
813
|
+
var A;
|
|
814
|
+
return ((A = i.value.find((H) => H._id === v)) == null ? void 0 : A.profile.name) ?? "";
|
|
815
|
+
})
|
|
818
816
|
),
|
|
819
817
|
managableRestaurantIds: m,
|
|
820
|
-
permissionLabels:
|
|
818
|
+
permissionLabels: be(f, t.value),
|
|
821
819
|
permissions: d
|
|
822
820
|
};
|
|
823
821
|
}
|
|
824
|
-
const
|
|
825
|
-
Object.values(
|
|
826
|
-
),
|
|
822
|
+
const me = Object.freeze(
|
|
823
|
+
Object.values(Z)
|
|
824
|
+
), Oe = {
|
|
827
825
|
async readTeamMembers() {
|
|
828
|
-
return
|
|
829
|
-
await
|
|
826
|
+
return p(
|
|
827
|
+
await g().get("/portal-users")
|
|
830
828
|
).map(R);
|
|
831
829
|
},
|
|
832
830
|
async readTeamMembersPage(e) {
|
|
833
831
|
var n, o;
|
|
834
|
-
const s =
|
|
835
|
-
await
|
|
832
|
+
const s = p(
|
|
833
|
+
await g().get("/portal-users/paged", {
|
|
836
834
|
params: {
|
|
837
835
|
limit: e.limit,
|
|
838
836
|
offset: e.offset,
|
|
@@ -849,35 +847,35 @@ const de = Object.freeze(
|
|
|
849
847
|
},
|
|
850
848
|
async readTeamMember(e) {
|
|
851
849
|
return R(
|
|
852
|
-
|
|
850
|
+
p(await g().get(`/portal-users/${e}`))
|
|
853
851
|
);
|
|
854
852
|
},
|
|
855
853
|
async createTeamMember(e) {
|
|
856
854
|
return R(
|
|
857
|
-
|
|
855
|
+
p(await g().post("/portal-users", e))
|
|
858
856
|
);
|
|
859
857
|
},
|
|
860
858
|
async updateTeamMember(e, s) {
|
|
861
859
|
return R(
|
|
862
|
-
|
|
860
|
+
p(await g().put(`/portal-users/${e}`, s))
|
|
863
861
|
);
|
|
864
862
|
},
|
|
865
863
|
async deleteTeamMember(e) {
|
|
866
|
-
return
|
|
864
|
+
return p(await g().delete(`/portal-users/${e}`));
|
|
867
865
|
},
|
|
868
866
|
async readTeamMemberPosUserIds() {
|
|
869
|
-
return
|
|
867
|
+
return p(await g().get("/portal-users")).map((s) => s.posUserId);
|
|
870
868
|
}
|
|
871
869
|
};
|
|
872
|
-
function
|
|
870
|
+
function _e(e, s, n) {
|
|
873
871
|
if (e.some((a) => a.subject === "all")) return "All";
|
|
874
|
-
const o = (n ??
|
|
872
|
+
const o = (n ?? J).filter(
|
|
875
873
|
(a) => a.subject === s
|
|
876
|
-
), i = new Set(o.map((a) =>
|
|
874
|
+
), i = new Set(o.map((a) => T(a).value)), t = e.filter((a) => a.subject === s).filter((a) => i.has(T(a).value));
|
|
877
875
|
return t.length === o.length ? "All" : t.length === 0 ? "-" : `${t.length} permission allow`;
|
|
878
876
|
}
|
|
879
|
-
function
|
|
880
|
-
const s =
|
|
877
|
+
function T(e) {
|
|
878
|
+
const s = Y(e), n = s.subject;
|
|
881
879
|
return {
|
|
882
880
|
...s,
|
|
883
881
|
get conditions() {
|
|
@@ -898,33 +896,33 @@ function N(e) {
|
|
|
898
896
|
return this.isOrderOperation ? o(this.conditions.operation) : this.isReportPermission ? o(this.conditions.name) : n.toString();
|
|
899
897
|
},
|
|
900
898
|
get label() {
|
|
901
|
-
return s.label ||
|
|
899
|
+
return s.label || q(this.formatted);
|
|
902
900
|
},
|
|
903
901
|
get value() {
|
|
904
902
|
return this.isOrderOperation ? `${n}:${this.conditions.operation}` : this.isReportPermission ? `${n}:${this.conditions.name}` : n.toString();
|
|
905
903
|
}
|
|
906
904
|
};
|
|
907
905
|
}
|
|
908
|
-
function
|
|
909
|
-
const s = e.map((n) =>
|
|
906
|
+
function Ee(e) {
|
|
907
|
+
const s = e.map((n) => T(n)).find((n) => n.isDiscountOperation);
|
|
910
908
|
return s ? parseInt((s.conditions.adjustment.$lte * 100).toFixed(0)) : 100;
|
|
911
909
|
}
|
|
912
|
-
function
|
|
910
|
+
function fe(e) {
|
|
913
911
|
const s = e.find(
|
|
914
|
-
(n) => n.subject ===
|
|
912
|
+
(n) => n.subject === M.Subject.Restaurant.restaurant
|
|
915
913
|
);
|
|
916
914
|
return s ? s.conditions ? JSON.parse(s.conditions).restaurantId.$in : null : [];
|
|
917
915
|
}
|
|
918
|
-
function
|
|
916
|
+
function Ce(e) {
|
|
919
917
|
return (e == null ? void 0 : e.some((s) => s.subject === "all")) ?? !1;
|
|
920
918
|
}
|
|
921
|
-
function
|
|
922
|
-
const s = e.find((n) => n.subject ===
|
|
919
|
+
function Ne(e) {
|
|
920
|
+
const s = e.find((n) => n.subject === M.Subject.Business.role);
|
|
923
921
|
return s ? s.conditions ? JSON.parse(s.conditions).roleId.$in : null : [];
|
|
924
922
|
}
|
|
925
|
-
function
|
|
923
|
+
function Te(e, s) {
|
|
926
924
|
return e.map((n) => {
|
|
927
|
-
const o =
|
|
925
|
+
const o = pe(n);
|
|
928
926
|
return {
|
|
929
927
|
subject: o.subject,
|
|
930
928
|
actions: o.actions,
|
|
@@ -935,10 +933,10 @@ function Ne(e, s) {
|
|
|
935
933
|
};
|
|
936
934
|
});
|
|
937
935
|
}
|
|
938
|
-
function
|
|
936
|
+
function pe(e) {
|
|
939
937
|
const [s, n] = e.split(":");
|
|
940
938
|
let o;
|
|
941
|
-
return n ? (o =
|
|
939
|
+
return n ? (o = J.find(
|
|
942
940
|
(i) => i.subject === s && [
|
|
943
941
|
(typeof i.conditions == "object" ? i.conditions : JSON.parse(i.conditions)).operation,
|
|
944
942
|
i.conditions.name
|
|
@@ -950,16 +948,16 @@ function fe(e) {
|
|
|
950
948
|
conditions: { name: n },
|
|
951
949
|
inverted: !1,
|
|
952
950
|
reason: ""
|
|
953
|
-
})) : o =
|
|
951
|
+
})) : o = J.find((i) => i.subject === s), T(o || { subject: h.F_RULE_SUBJECT.enum.order, actions: [], label: "" });
|
|
954
952
|
}
|
|
955
|
-
function
|
|
956
|
-
return
|
|
953
|
+
function be(e, s = []) {
|
|
954
|
+
return W(
|
|
957
955
|
e.reduce((n, o) => {
|
|
958
|
-
const i =
|
|
956
|
+
const i = me.find(
|
|
959
957
|
(t) => t.subject === o.subject && o.actions.includes("manage")
|
|
960
958
|
) || s.find((t) => t.subject === o.subject);
|
|
961
959
|
if (i) {
|
|
962
|
-
const t = i.subject ===
|
|
960
|
+
const t = i.subject === M.Subject.Business.inventory_stock ? "Warehouse Management" : i.label;
|
|
963
961
|
n.push(t);
|
|
964
962
|
}
|
|
965
963
|
return n;
|
|
@@ -967,30 +965,30 @@ function pe(e, s = []) {
|
|
|
967
965
|
);
|
|
968
966
|
}
|
|
969
967
|
export {
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
968
|
+
Q as $,
|
|
969
|
+
le as R,
|
|
970
|
+
_e as a,
|
|
971
|
+
ae as b,
|
|
972
|
+
G as c,
|
|
973
|
+
de as d,
|
|
974
|
+
J as e,
|
|
975
|
+
Te as f,
|
|
976
|
+
Ee as g,
|
|
977
|
+
Ce as h,
|
|
978
|
+
te as i,
|
|
979
|
+
Ne as j,
|
|
980
|
+
Ie as k,
|
|
981
|
+
Ae as l,
|
|
982
|
+
Pe as m,
|
|
983
|
+
$e as n,
|
|
984
|
+
ue as o,
|
|
985
|
+
me as p,
|
|
986
|
+
be as q,
|
|
987
|
+
T as r,
|
|
988
|
+
Re as s,
|
|
989
|
+
Oe as t,
|
|
990
|
+
se as u,
|
|
991
|
+
X as v,
|
|
992
|
+
we as w,
|
|
993
|
+
fe as x
|
|
996
994
|
};
|