@feedmepos/mf-hrm-portal 2.2.2-dev → 2.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ApprovalCodeList-B9O8QzzI.js → ApprovalCodeList-Dpg-lwZA.js} +5 -5
- package/dist/AuditLogList-B8lU5FU1.js +1149 -0
- package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-C9MYbxum.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-Di-1ZwEW.js} +2 -2
- package/dist/{EmployeeList-BFxMwFJq.js → EmployeeList-ByeniR1c.js} +71 -71
- package/dist/{GrantUserList-CZtmMRoS.js → GrantUserList-D0YIdpMH.js} +6 -6
- package/dist/{Main-on0TXkQt.js → Main-Bg0Najd8.js} +8 -8
- package/dist/{Main-B622Z4q4.js → Main-C9-EztWV.js} +11 -11
- package/dist/{Main-DD6IthCS.js → Main-CTsTrR0m.js} +5 -5
- package/dist/{PermissionSetList-FCX3TBoi.js → PermissionSetList-CqVP3iB8.js} +78 -77
- package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-Cl_YNh0k.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-CXNhJDfA.js} +569 -564
- package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-XHuHin8t.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-Z-DH7ouY.js} +1 -1
- package/dist/RoleList-CQuV9O_f.js +739 -0
- package/dist/{TeamMemberList-BAU7Y3jh.js → TeamMemberList-DNitiMN5.js} +312 -313
- package/dist/{TimesheetList-DtFBWhma.js → TimesheetList-DYJsjODe.js} +7 -7
- package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_2c7a177a_lang-Tatn3jUv.js → TimesheetList.vue_vue_type_style_index_0_scoped_2c7a177a_lang-DWKJIq76.js} +3 -3
- package/dist/{app-Bbf6hEPt.js → app-BJKd6Faz.js} +521 -817
- package/dist/app.js +1 -1
- package/dist/{approval-code-jIjkeVEb.js → approval-code-BRClD2HN.js} +1 -1
- package/dist/{dayjs.min-BAnGg8q2.js → dayjs.min-D8ClaZcZ.js} +1 -1
- package/dist/{employee-DVSD3L51.js → employee-C9VVckRM.js} +4 -4
- package/dist/{grant-user-SNiDV22U.js → grant-user-Dhi3ilC_.js} +1 -1
- package/dist/{iteration-BTZViJtd.js → iteration-CMXHdaKL.js} +1 -1
- package/dist/{lodash-Cgdk4_YL.js → lodash-0-Y1xSyQ.js} +1 -1
- package/dist/{restaurant-BTpBmfBV.js → restaurant-DiYb0pCm.js} +2 -2
- package/dist/{role-CXVpO6fB.js → role-B-Y4JezP.js} +2 -2
- package/dist/{rule-TR3MVo-b.js → rule-raGIIqlH.js} +288 -261
- package/dist/src/api/audit-log/index.d.ts +0 -6
- package/dist/src/api/user/index.d.ts +2 -2
- package/dist/src/composables/useReportPermissions.d.ts +1 -0
- package/dist/src/helpers/rule.d.ts +2 -0
- package/dist/src/types/audit-log.d.ts +1 -1
- package/dist/src/types/role.d.ts +1 -0
- package/dist/src/views/audit-log/locales/index.d.ts +0 -300
- package/dist/src/views/hr/locales/index.d.ts +12 -8
- package/dist/style.css +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{useAppStore-DCwd8GWN.js → useAppStore-BGhlB1_1.js} +1 -1
- package/dist/useDebounce-CWb5QR9G.js +28 -0
- package/dist/{useLoading-CXzTpIVv.js → useLoading-CvgqVDbF.js} +1 -1
- package/dist/useReportPermissions-C5_EivtU.js +82 -0
- package/package.json +2 -2
- package/dist/AuditLogList-CtFEXKWZ.js +0 -1722
- package/dist/RoleList-p_9KHzqF.js +0 -725
- package/dist/Skeleton.vue_vue_type_script_setup_true_lang-B4PxNMwq.js +0 -16
- package/dist/src/views/audit-log/change-nodes.d.ts +0 -14
- package/dist/src/views/audit-log/event-line.d.ts +0 -13
- package/dist/src/views/audit-log/operation-status.d.ts +0 -2
- package/dist/src/views/audit-log/snapshot-diff.d.ts +0 -11
- package/dist/useDebounce-B8ZPVS5C.js +0 -15
- package/dist/useReportPermissions-BpAFyO17.js +0 -71
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { defineComponent as t, createElementBlock as n, openBlock as o, normalizeStyle as l } from "vue";
|
|
2
|
-
const i = /* @__PURE__ */ t({
|
|
3
|
-
__name: "Skeleton",
|
|
4
|
-
props: {
|
|
5
|
-
width: { default: "160px" }
|
|
6
|
-
},
|
|
7
|
-
setup(e) {
|
|
8
|
-
return (r, a) => (o(), n("div", {
|
|
9
|
-
class: "h-16 animate-pulse rounded bg-fm-color-neutral-gray-200",
|
|
10
|
-
style: l({ width: e.width })
|
|
11
|
-
}, null, 4));
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
export {
|
|
15
|
-
i as _
|
|
16
|
-
};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { ChangeNode } from '@feedmepos/hrm-permission';
|
|
2
|
-
export interface ChangeNodeDisplay {
|
|
3
|
-
label: string;
|
|
4
|
-
labelKey?: string;
|
|
5
|
-
type: 'add' | 'remove' | 'update';
|
|
6
|
-
beforeDisplay: string;
|
|
7
|
-
afterDisplay: string;
|
|
8
|
-
}
|
|
9
|
-
/** Render a single ChangeNode value (string | string[] | undefined) as display text. */
|
|
10
|
-
export declare function formatChangeValue(value: string | string[] | undefined): string;
|
|
11
|
-
/** Convert a ChangeNode into a flat display object for the UI. */
|
|
12
|
-
export declare function prepareChangeNodeDisplay(node: ChangeNode): ChangeNodeDisplay;
|
|
13
|
-
/** Decide whether to render changeNodes table (true) or fall back to raw diff (false). */
|
|
14
|
-
export declare function shouldRenderChangeNodes(changeNodes: ChangeNode[] | undefined): boolean;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export interface EventLineSource {
|
|
2
|
-
eventKey?: string;
|
|
3
|
-
params?: Record<string, string | number>;
|
|
4
|
-
operationLabel?: string;
|
|
5
|
-
}
|
|
6
|
-
type Translate = (key: string, params?: Record<string, unknown>) => string;
|
|
7
|
-
export declare function splitEventKey(key: string): {
|
|
8
|
-
entity: string;
|
|
9
|
-
verb: string;
|
|
10
|
-
} | null;
|
|
11
|
-
export declare function humanizeSegment(segment: string): string;
|
|
12
|
-
export declare function renderEventLine(t: Translate, source: EventLineSource): string;
|
|
13
|
-
export {};
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export type SnapshotDiffType = 'added' | 'removed' | 'changed';
|
|
2
|
-
export interface SnapshotDiffRow {
|
|
3
|
-
/** e.g. "name", "permissions[business::unitCostHistory]", "roles[0].roleId" */
|
|
4
|
-
path: string;
|
|
5
|
-
type: SnapshotDiffType;
|
|
6
|
-
/** null = value absent on the before side (render as em dash by caller) */
|
|
7
|
-
before: string | null;
|
|
8
|
-
/** null = value absent on the after side */
|
|
9
|
-
after: string | null;
|
|
10
|
-
}
|
|
11
|
-
export declare function computeSnapshotDiff(before: unknown, after: unknown): SnapshotDiffRow[];
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { watch as s } from "vue";
|
|
2
|
-
function m(o, e, c = 300) {
|
|
3
|
-
let t;
|
|
4
|
-
const i = s(o, (r) => {
|
|
5
|
-
t && clearTimeout(t), t = setTimeout(() => {
|
|
6
|
-
e(r);
|
|
7
|
-
}, c);
|
|
8
|
-
});
|
|
9
|
-
return () => {
|
|
10
|
-
i(), t && (clearTimeout(t), t = void 0);
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
export {
|
|
14
|
-
m as u
|
|
15
|
-
};
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { computed as i, ref as t } from "vue";
|
|
2
|
-
import { e as m } from "./iteration-BTZViJtd.js";
|
|
3
|
-
import { useCoreStore as h } from "@feedmepos/mf-common";
|
|
4
|
-
import { e as S, R as L } from "./rule-TR3MVo-b.js";
|
|
5
|
-
import "./app-Bbf6hEPt.js";
|
|
6
|
-
const l = t([]), a = t(!1), r = t(!1), d = t(null), p = t(null), u = t(!1);
|
|
7
|
-
function B() {
|
|
8
|
-
const v = h();
|
|
9
|
-
async function f() {
|
|
10
|
-
var e;
|
|
11
|
-
const s = (e = v.currentBusiness.value) == null ? void 0 : e.id;
|
|
12
|
-
if (!s) return;
|
|
13
|
-
d.value !== s && (l.value = [], a.value = !1, r.value = !1, d.value = s, u.value = !1);
|
|
14
|
-
const o = localStorage.getItem("locale");
|
|
15
|
-
if (!(a.value && p.value === o)) {
|
|
16
|
-
if (r.value) {
|
|
17
|
-
u.value = !0;
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
r.value = !0;
|
|
21
|
-
try {
|
|
22
|
-
l.value = await L.fetchReportPermissions(
|
|
23
|
-
s,
|
|
24
|
-
o
|
|
25
|
-
), a.value = !0, p.value = o;
|
|
26
|
-
} catch (n) {
|
|
27
|
-
console.warn("Failed to fetch dynamic report permissions, keeping last known list:", n), a.value = !1;
|
|
28
|
-
} finally {
|
|
29
|
-
r.value = !1, u.value && (u.value = !1, await f());
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
const c = S.filter(
|
|
34
|
-
(s) => s.subject === m.F_RULE_SUBJECT.enum.report && s.conditions
|
|
35
|
-
), y = i(() => {
|
|
36
|
-
const s = new Set(
|
|
37
|
-
c.map((e) => {
|
|
38
|
-
const n = typeof e.conditions == "string" ? JSON.parse(e.conditions) : e.conditions;
|
|
39
|
-
return n == null ? void 0 : n.name;
|
|
40
|
-
})
|
|
41
|
-
), o = l.value.filter((e) => !s.has(e.permissionKey)).map((e) => ({
|
|
42
|
-
label: e.name,
|
|
43
|
-
subject: m.F_RULE_SUBJECT.enum.report,
|
|
44
|
-
actions: ["read"],
|
|
45
|
-
conditions: { name: e.permissionKey },
|
|
46
|
-
inverted: !1,
|
|
47
|
-
reason: ""
|
|
48
|
-
}));
|
|
49
|
-
return [...c, ...o];
|
|
50
|
-
}), R = i(() => {
|
|
51
|
-
const s = new Set(
|
|
52
|
-
c.map((o) => {
|
|
53
|
-
const e = typeof o.conditions == "string" ? JSON.parse(o.conditions) : o.conditions;
|
|
54
|
-
return e == null ? void 0 : e.name;
|
|
55
|
-
})
|
|
56
|
-
);
|
|
57
|
-
for (const o of l.value)
|
|
58
|
-
s.add(o.permissionKey);
|
|
59
|
-
return s;
|
|
60
|
-
});
|
|
61
|
-
return {
|
|
62
|
-
fetchReportPermissions: f,
|
|
63
|
-
allReportPermissions: y,
|
|
64
|
-
availableReportKeys: R,
|
|
65
|
-
isLoading: i(() => r.value),
|
|
66
|
-
isLoaded: i(() => a.value)
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
export {
|
|
70
|
-
B as u
|
|
71
|
-
};
|