@feedmepos/mf-hrm-portal 2.2.4 → 2.2.5-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.
- package/dist/{ApprovalCodeList-ChGQwko6.js → ApprovalCodeList-DgcWZ3SZ.js} +5 -5
- package/dist/{AuditLogList-Cpj8O5qS.js → AuditLogList-vWKMMGvd.js} +235 -233
- package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-CNmbZlVZ.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-DuhXogXK.js} +2 -2
- package/dist/EmployeeList-Cu4RxVQX.js +889 -0
- package/dist/{GrantUserList-CAXJmQ4i.js → GrantUserList-BAW0C1bA.js} +6 -6
- package/dist/{Main-7yT_w5vt.js → Main-B7Nn8CLQ.js} +11 -11
- package/dist/{Main-Ada9K_jO.js → Main-NzpdRNB3.js} +8 -8
- package/dist/{Main-T9-30vq8.js → Main-Wr6cTqfM.js} +5 -5
- package/dist/PasscodePinField.vue_vue_type_script_setup_true_lang-BUI0Xsgc.js +85 -0
- package/dist/{PermissionSetList-CkWYPmT2.js → PermissionSetList-D6AFOleD.js} +7 -7
- package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-CCLLrSyq.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-Bzq2_BMn.js} +874 -881
- package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-Z-DH7ouY.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-XHuHin8t.js} +1 -1
- package/dist/{RoleList-Do36AmlU.js → RoleList-BuqpmXn_.js} +9 -9
- package/dist/TeamMemberList-M6HA9BWu.js +1248 -0
- package/dist/{TimesheetList-DboJ2_89.js → TimesheetList-B5FyVyCz.js} +92 -90
- package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_2c7a177a_lang-C4g8wRjv.js → TimesheetList.vue_vue_type_style_index_0_scoped_63294af2_lang-C99Jr6Ax.js} +3 -3
- package/dist/{app-CcCcPbyB.js → app-8samJY5z.js} +214 -190
- package/dist/app.js +1 -1
- package/dist/{approval-code-BRClD2HN.js → approval-code-jIjkeVEb.js} +1 -1
- package/dist/{dayjs.min-lvkj1Rwa.js → dayjs.min-Ba4X_9nY.js} +1 -1
- package/dist/employee-BcFgm8Rt.js +204 -0
- package/dist/{grant-user-Dhi3ilC_.js → grant-user-SNiDV22U.js} +1 -1
- package/dist/{iteration-LZbo-knt.js → iteration-Dhdew1jW.js} +1 -1
- package/dist/{lodash-CKzaMa7f.js → lodash-CJ3mHku0.js} +1 -1
- package/dist/{restaurant-DiYb0pCm.js → restaurant-BTpBmfBV.js} +2 -2
- package/dist/{role-BZr8zzeq.js → role-BViYS7RK.js} +2 -2
- package/dist/{rule-DNaqlUUB.js → rule-Dxt1ZSQS.js} +48 -40
- package/dist/src/api/employee/index.d.ts +5 -1
- package/dist/src/api/team/index.d.ts +3 -0
- package/dist/src/components/form/PasscodeGenerateButton.vue.d.ts +15 -0
- package/dist/src/components/form/PasscodePinField.vue.d.ts +18 -0
- package/dist/src/helpers/string.d.ts +2 -1
- package/dist/src/views/audit-log/locales/index.d.ts +4 -0
- package/dist/src/views/hr/locales/index.d.ts +8 -0
- package/dist/src/views/team/locales/index.d.ts +12 -0
- package/dist/src/views/team/member/AddMemberForm.vue.d.ts +1 -0
- package/dist/src/views/team/member/TeamMemberMasterUser.vue.d.ts +9 -0
- package/dist/string-VNuQNweN.js +15 -0
- package/dist/style.css +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{useAppStore-BGhlB1_1.js → useAppStore-DCwd8GWN.js} +1 -1
- package/dist/{useLoading-CvgqVDbF.js → useLoading-CXzTpIVv.js} +1 -1
- package/dist/{useReportPermissions-Buzv6pkY.js → useReportPermissions-BiyAfGvZ.js} +3 -3
- package/package.json +1 -1
- package/dist/EmployeeList-PdGzSCP-.js +0 -887
- package/dist/Skeleton.vue_vue_type_script_setup_true_lang-B4PxNMwq.js +0 -16
- package/dist/TeamMemberList-CVVNnz0R.js +0 -1216
- package/dist/employee-CLgrXpmZ.js +0 -201
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import { defineComponent as Mt, ref as S, computed as A, onMounted as Ao, onBeforeUnmount as Fo, watch as de, resolveComponent as N, createElementBlock as b, openBlock as v, createBlock as
|
|
2
|
-
import { d as D } from "./dayjs.min-
|
|
1
|
+
import { defineComponent as Mt, ref as S, computed as A, onMounted as Ao, onBeforeUnmount as Fo, watch as de, resolveComponent as N, createElementBlock as b, openBlock as v, createBlock as we, createCommentVNode as j, createElementVNode as a, Fragment as q, renderList as ae, withCtx as B, createVNode as m, toDisplayString as l, unref as c, nextTick as Mo, onUnmounted as Oo, createTextVNode as Ve, normalizeClass as Do } from "vue";
|
|
2
|
+
import { d as D } from "./dayjs.min-Ba4X_9nY.js";
|
|
3
3
|
import { useI18n as Ot, useCoreStore as jo } from "@feedmepos/mf-common";
|
|
4
|
-
import { B as St, _ as Co } from "./app-
|
|
4
|
+
import { B as St, _ as Co } from "./app-8samJY5z.js";
|
|
5
5
|
import { components as ue } from "@feedmepos/ui-library";
|
|
6
|
-
import { g as Ze, b as et } from "./restaurant-
|
|
6
|
+
import { g as Ze, b as et } from "./restaurant-BTpBmfBV.js";
|
|
7
7
|
import { S as Pe, _ as To } from "./SelectFilter-ATOm0hdn.js";
|
|
8
8
|
import { _ as Vo } from "./PageLayout.vue_vue_type_script_setup_true_lang-HKK4cbW8.js";
|
|
9
9
|
import { _ as Po } from "./TableEmptyState.vue_vue_type_script_setup_true_lang-IfAZmWr0.js";
|
|
10
|
-
import { t as Eo, p as kt } from "./rule-
|
|
10
|
+
import { t as Eo, p as kt } from "./rule-Dxt1ZSQS.js";
|
|
11
11
|
import { defineStore as $o } from "pinia";
|
|
12
12
|
import { u as No } from "./useDebounce-B8ZPVS5C.js";
|
|
13
|
-
|
|
13
|
+
import { n as Uo } from "./string-VNuQNweN.js";
|
|
14
|
+
const Se = [
|
|
14
15
|
{ key: "all", label: "All", subjectPrefixes: [] },
|
|
15
16
|
{ key: "inventory", label: "Inventory", subjectPrefixes: ["business::inventory", "inventory"] },
|
|
16
17
|
{ key: "report", label: "Report", subjectPrefixes: ["business::report", "report"] },
|
|
@@ -97,10 +98,10 @@ const Le = [
|
|
|
97
98
|
await et().get(`${tt}/actors`, { params: o })
|
|
98
99
|
);
|
|
99
100
|
}
|
|
100
|
-
},
|
|
101
|
+
}, Ro = { class: "flex h-[46px] items-center gap-8 rounded-sm px-16 hover:bg-fm-color-opacity-sm" }, Ko = { class: "fm-typo-en-body-lg-400 text-fm-color-typo-secondary" }, Bo = {
|
|
101
102
|
"data-more-measure": "",
|
|
102
103
|
class: "flex h-[46px] items-center gap-8 rounded-sm px-16"
|
|
103
|
-
},
|
|
104
|
+
}, Yo = { class: "fm-typo-en-body-lg-400 text-fm-color-typo-secondary" }, zo = /* @__PURE__ */ Mt({
|
|
104
105
|
__name: "AuditLogModuleTabs",
|
|
105
106
|
props: {
|
|
106
107
|
modelValue: {},
|
|
@@ -135,9 +136,9 @@ const Le = [
|
|
|
135
136
|
if (!T || E.some((J) => J.value === T.value)) return E;
|
|
136
137
|
if (_ === 0) return [T];
|
|
137
138
|
const Y = n.items.findIndex((J) => J.value === T.value), U = i.value, w = C.value, ce = U[Y] ?? 0;
|
|
138
|
-
let ne = _,
|
|
139
|
-
for (; ne > 1 &&
|
|
140
|
-
ne--,
|
|
139
|
+
let ne = _, Ae = U.slice(0, ne - 1).reduce((J, he) => J + he, 0);
|
|
140
|
+
for (; ne > 1 && Ae + ce + w > O.value; )
|
|
141
|
+
ne--, Ae = U.slice(0, ne - 1).reduce((J, he) => J + he, 0);
|
|
141
142
|
return [...n.items.slice(0, Math.max(ne - 1, 0)), T];
|
|
142
143
|
}), K = A(() => {
|
|
143
144
|
const _ = new Set(I.value.map((M) => M.value));
|
|
@@ -165,7 +166,7 @@ const Le = [
|
|
|
165
166
|
ref: p,
|
|
166
167
|
class: "relative flex w-full flex-row items-center"
|
|
167
168
|
}, [
|
|
168
|
-
(v(!0), b(q, null, ae(I.value, (w) => (v(),
|
|
169
|
+
(v(!0), b(q, null, ae(I.value, (w) => (v(), we(E, {
|
|
169
170
|
key: w.value,
|
|
170
171
|
"model-value": t.modelValue,
|
|
171
172
|
label: w.label,
|
|
@@ -174,7 +175,7 @@ const Le = [
|
|
|
174
175
|
value: w.value,
|
|
175
176
|
"onUpdate:modelValue": W
|
|
176
177
|
}, null, 8, ["model-value", "label", "badge", "disabled", "value"]))), 128)),
|
|
177
|
-
K.value.length > 0 ? (v(),
|
|
178
|
+
K.value.length > 0 ? (v(), we(U, {
|
|
178
179
|
key: 0,
|
|
179
180
|
"show-menu": g.value,
|
|
180
181
|
class: "max-w-[360px] min-w-[90px] rounded-sm",
|
|
@@ -182,13 +183,13 @@ const Le = [
|
|
|
182
183
|
onMenuChanged: M[0] || (M[0] = (w) => g.value = w)
|
|
183
184
|
}, {
|
|
184
185
|
"menu-button": B(() => [
|
|
185
|
-
a("div",
|
|
186
|
+
a("div", Ro, [
|
|
186
187
|
m(T, { name: "more_vert" }),
|
|
187
|
-
a("span",
|
|
188
|
+
a("span", Ko, l(c(d)("auditLog.modules.more")), 1)
|
|
188
189
|
])
|
|
189
190
|
]),
|
|
190
191
|
default: B(() => [
|
|
191
|
-
(v(!0), b(q, null, ae(K.value, (w) => (v(),
|
|
192
|
+
(v(!0), b(q, null, ae(K.value, (w) => (v(), we(Y, {
|
|
192
193
|
key: w.value,
|
|
193
194
|
"model-value": t.modelValue === w.value,
|
|
194
195
|
label: w.label,
|
|
@@ -216,15 +217,15 @@ const Le = [
|
|
|
216
217
|
value: w.value
|
|
217
218
|
}, null, 8, ["model-value", "label", "badge", "disabled", "value"])
|
|
218
219
|
]))), 128)),
|
|
219
|
-
a("div",
|
|
220
|
+
a("div", Bo, [
|
|
220
221
|
m(T, { name: "more_vert" }),
|
|
221
|
-
a("span",
|
|
222
|
+
a("span", Yo, l(c(d)("auditLog.modules.more")), 1)
|
|
222
223
|
])
|
|
223
224
|
], 512)
|
|
224
225
|
], 512);
|
|
225
226
|
};
|
|
226
227
|
}
|
|
227
|
-
}),
|
|
228
|
+
}), qo = $o("team", () => {
|
|
228
229
|
const t = S([]), o = S(!1), n = S(!1), r = A(
|
|
229
230
|
() => Object.fromEntries(t.value.map((h) => [h.doc.userId, h.name]))
|
|
230
231
|
), d = A(
|
|
@@ -252,7 +253,7 @@ const Le = [
|
|
|
252
253
|
readTeamMembers: p
|
|
253
254
|
};
|
|
254
255
|
});
|
|
255
|
-
function
|
|
256
|
+
function Jo(t) {
|
|
256
257
|
const o = t.indexOf(".");
|
|
257
258
|
return o <= 0 || o === t.length - 1 ? null : { entity: t.slice(0, o), verb: t.slice(o + 1) };
|
|
258
259
|
}
|
|
@@ -260,16 +261,16 @@ function wt(t) {
|
|
|
260
261
|
const o = t.split("-").join(" ");
|
|
261
262
|
return o.charAt(0).toUpperCase() + o.slice(1);
|
|
262
263
|
}
|
|
263
|
-
function
|
|
264
|
+
function Ho(t, o, n) {
|
|
264
265
|
const r = t(o, n);
|
|
265
266
|
return r === o ? null : r;
|
|
266
267
|
}
|
|
267
268
|
function st(t, o) {
|
|
268
269
|
const { eventKey: n, params: r, operationLabel: d } = o;
|
|
269
270
|
if (n) {
|
|
270
|
-
const g =
|
|
271
|
+
const g = Ho(t, `auditLog.event.sentence.${n}`, r);
|
|
271
272
|
if (g) return g;
|
|
272
|
-
const p =
|
|
273
|
+
const p = Jo(n);
|
|
273
274
|
if (p) {
|
|
274
275
|
const h = `${wt(p.verb)} ${wt(p.entity)}`, i = (r == null ? void 0 : r.label) ?? (r == null ? void 0 : r.name);
|
|
275
276
|
return i !== void 0 && i !== "" ? `${h} — ${i}` : h;
|
|
@@ -280,7 +281,7 @@ function st(t, o) {
|
|
|
280
281
|
function ge(t) {
|
|
281
282
|
return typeof t == "object" && t !== null && !Array.isArray(t);
|
|
282
283
|
}
|
|
283
|
-
function
|
|
284
|
+
function Ie(t) {
|
|
284
285
|
return Array.isArray(t);
|
|
285
286
|
}
|
|
286
287
|
function Ne(t) {
|
|
@@ -293,7 +294,7 @@ function Ne(t) {
|
|
|
293
294
|
}
|
|
294
295
|
return String(t);
|
|
295
296
|
}
|
|
296
|
-
function
|
|
297
|
+
function Wo(t, o) {
|
|
297
298
|
return t ? `${t}.${o}` : o;
|
|
298
299
|
}
|
|
299
300
|
function It(t) {
|
|
@@ -302,19 +303,19 @@ function It(t) {
|
|
|
302
303
|
if (!o.startsWith("{") && !o.startsWith("[")) return { ok: !1, value: void 0 };
|
|
303
304
|
try {
|
|
304
305
|
const n = JSON.parse(o);
|
|
305
|
-
return ge(n) ||
|
|
306
|
+
return ge(n) || Ie(n) ? { ok: !0, value: n } : { ok: !1, value: void 0 };
|
|
306
307
|
} catch {
|
|
307
308
|
return { ok: !1, value: void 0 };
|
|
308
309
|
}
|
|
309
310
|
}
|
|
310
|
-
const
|
|
311
|
-
function
|
|
311
|
+
const Go = ["_id", "id", "subject", "key", "name"];
|
|
312
|
+
function Xo(t, o) {
|
|
312
313
|
if (t.length === 0 || o.length === 0) return null;
|
|
313
314
|
const n = (d, g) => d.every((p) => ge(p) && p[g] !== void 0), r = (d, g) => {
|
|
314
315
|
const p = d.map((h) => h[g]);
|
|
315
316
|
return p.length === new Set(p).size;
|
|
316
317
|
};
|
|
317
|
-
for (const d of
|
|
318
|
+
for (const d of Go)
|
|
318
319
|
if (n(t, d) && n(o, d) && r(t, d) && r(o, d))
|
|
319
320
|
return d;
|
|
320
321
|
return null;
|
|
@@ -325,15 +326,15 @@ function Dt(t, o, n) {
|
|
|
325
326
|
function jt(t, o, n) {
|
|
326
327
|
n.push({ path: t, type: "removed", before: Ne(o), after: null });
|
|
327
328
|
}
|
|
328
|
-
function
|
|
329
|
+
function Qo(t, o, n, r) {
|
|
329
330
|
const d = /* @__PURE__ */ new Set([...Object.keys(o), ...Object.keys(n)]);
|
|
330
331
|
for (const g of Array.from(d)) {
|
|
331
332
|
const p = Object.prototype.hasOwnProperty.call(o, g), h = Object.prototype.hasOwnProperty.call(n, g);
|
|
332
|
-
Ue(
|
|
333
|
+
Ue(Wo(t, g), o[g], p, n[g], h, r);
|
|
333
334
|
}
|
|
334
335
|
}
|
|
335
|
-
function
|
|
336
|
-
const d =
|
|
336
|
+
function Zo(t, o, n, r) {
|
|
337
|
+
const d = Xo(o, n);
|
|
337
338
|
if (d) {
|
|
338
339
|
const L = new Map(
|
|
339
340
|
o.map((_) => [_[d], _])
|
|
@@ -383,11 +384,11 @@ function Ue(t, o, n, r, d, g) {
|
|
|
383
384
|
}
|
|
384
385
|
if (JSON.stringify(o) === JSON.stringify(r)) return;
|
|
385
386
|
if (ge(o) && ge(r)) {
|
|
386
|
-
|
|
387
|
+
Qo(t, o, r, g);
|
|
387
388
|
return;
|
|
388
389
|
}
|
|
389
|
-
if (
|
|
390
|
-
|
|
390
|
+
if (Ie(o) && Ie(r)) {
|
|
391
|
+
Zo(t, o, r, g);
|
|
391
392
|
return;
|
|
392
393
|
}
|
|
393
394
|
const p = It(o), h = It(r);
|
|
@@ -402,13 +403,13 @@ function Ue(t, o, n, r, d, g) {
|
|
|
402
403
|
after: Ne(r)
|
|
403
404
|
});
|
|
404
405
|
}
|
|
405
|
-
function
|
|
406
|
+
function es(t, o) {
|
|
406
407
|
if (JSON.stringify(t) === JSON.stringify(o)) return [];
|
|
407
408
|
const n = t == null, r = o == null;
|
|
408
409
|
let d = t;
|
|
409
|
-
n && (ge(o) ? d = {} :
|
|
410
|
+
n && (ge(o) ? d = {} : Ie(o) && (d = []));
|
|
410
411
|
let g = o;
|
|
411
|
-
r && (ge(t) ? g = {} :
|
|
412
|
+
r && (ge(t) ? g = {} : Ie(t) && (g = []));
|
|
412
413
|
const p = [];
|
|
413
414
|
return Ue("", d, !0, g, !0, p), p;
|
|
414
415
|
}
|
|
@@ -419,7 +420,7 @@ function At(t) {
|
|
|
419
420
|
function pe(t) {
|
|
420
421
|
return t === void 0 ? "—" : Array.isArray(t) ? t.length > 0 ? t.join(", ") : "—" : t || "—";
|
|
421
422
|
}
|
|
422
|
-
function
|
|
423
|
+
function ts(t) {
|
|
423
424
|
return {
|
|
424
425
|
label: t.label,
|
|
425
426
|
labelKey: t.labelKey,
|
|
@@ -428,7 +429,7 @@ function es(t) {
|
|
|
428
429
|
afterDisplay: pe(t.after)
|
|
429
430
|
};
|
|
430
431
|
}
|
|
431
|
-
function
|
|
432
|
+
function os(t) {
|
|
432
433
|
return Array.isArray(t) && t.length > 0;
|
|
433
434
|
}
|
|
434
435
|
function Ct(t, o, n) {
|
|
@@ -437,7 +438,7 @@ function Ct(t, o, n) {
|
|
|
437
438
|
function Tt(t, o) {
|
|
438
439
|
return st(t, o) || t("auditLog.operation.unlabeled");
|
|
439
440
|
}
|
|
440
|
-
function
|
|
441
|
+
function ss(t, o) {
|
|
441
442
|
return !o || o.length === 0 ? "" : o.map((n) => {
|
|
442
443
|
const r = Tt(t, n), d = t(`auditLog.outcome.${n.status}`);
|
|
443
444
|
let g = `${r}: ${d}`;
|
|
@@ -445,35 +446,33 @@ function os(t, o) {
|
|
|
445
446
|
}).join(`
|
|
446
447
|
`);
|
|
447
448
|
}
|
|
448
|
-
function
|
|
449
|
+
function as(t, o, n) {
|
|
449
450
|
const r = Ct(t, o, n);
|
|
450
451
|
return n.type === "add" ? `${r}: + ${pe(n.after)}` : n.type === "remove" ? `${r}: - ${pe(n.before)}` : `${r}: ${pe(n.before)} → ${pe(n.after)}`;
|
|
451
452
|
}
|
|
452
|
-
function
|
|
453
|
+
function ns(t, o, n) {
|
|
453
454
|
if (!n || n.length === 0) return "";
|
|
454
455
|
const r = n.filter((p) => p.changeNodes && p.changeNodes.length > 0);
|
|
455
456
|
if (r.length === 0) return "";
|
|
456
457
|
const d = r.length > 1;
|
|
457
458
|
return r.map((p) => {
|
|
458
|
-
const h = (p.changeNodes ?? []).map((i) =>
|
|
459
|
+
const h = (p.changeNodes ?? []).map((i) => as(t, o, i));
|
|
459
460
|
return d ? [`[${Tt(t, p)}]`, ...h].join(`
|
|
460
461
|
`) : h.join(`
|
|
461
462
|
`);
|
|
462
463
|
}).join(`
|
|
463
464
|
`);
|
|
464
465
|
}
|
|
465
|
-
const
|
|
466
|
+
const ls = {
|
|
466
467
|
class: "flex flex-col gap-4 p-12 w-[260px]"
|
|
467
|
-
}, ls = {
|
|
468
|
-
class: "text-xs font-semibold text-fm-color-typo-secondary mb-4"
|
|
469
468
|
}, rs = {
|
|
470
|
-
class: "
|
|
469
|
+
class: "text-xs font-semibold text-fm-color-typo-secondary mb-4"
|
|
471
470
|
}, is = {
|
|
472
|
-
class: "
|
|
471
|
+
class: "flex min-h-0 flex-1 flex-col gap-16"
|
|
473
472
|
}, us = {
|
|
474
|
-
class: "
|
|
473
|
+
class: "space-y-16"
|
|
475
474
|
}, ds = {
|
|
476
|
-
class: "
|
|
475
|
+
class: "flex flex-wrap items-center gap-8"
|
|
477
476
|
}, cs = {
|
|
478
477
|
class: "w-fit"
|
|
479
478
|
}, fs = {
|
|
@@ -481,232 +480,234 @@ const ns = {
|
|
|
481
480
|
}, ms = {
|
|
482
481
|
class: "w-fit"
|
|
483
482
|
}, vs = {
|
|
484
|
-
class: "
|
|
483
|
+
class: "w-fit"
|
|
485
484
|
}, ps = {
|
|
485
|
+
class: "flex h-full flex-col overflow-auto"
|
|
486
|
+
}, gs = {
|
|
486
487
|
key: 0,
|
|
487
488
|
class: "space-y-12 p-4 text-sm"
|
|
488
|
-
}, gs = {
|
|
489
|
-
class: "flex items-start justify-between gap-8 rounded-lg border border-fm-color-border-default p-12"
|
|
490
489
|
}, hs = {
|
|
491
|
-
class: "
|
|
490
|
+
class: "flex items-start justify-between gap-8 rounded-lg border border-fm-color-border-default p-12"
|
|
492
491
|
}, ys = {
|
|
493
|
-
class: "
|
|
492
|
+
class: "min-w-0 flex-1"
|
|
494
493
|
}, bs = {
|
|
494
|
+
class: "audit-log-operation-label-detail text-base font-bold leading-snug text-fm-color-typo-primary"
|
|
495
|
+
}, _s = {
|
|
495
496
|
key: 0,
|
|
496
497
|
class: "mt-4 break-all font-mono text-xs text-fm-color-typo-secondary"
|
|
497
|
-
}, _s = {
|
|
498
|
-
class: "flex items-center gap-4"
|
|
499
498
|
}, xs = {
|
|
500
|
-
class: "
|
|
499
|
+
class: "flex items-center gap-4"
|
|
501
500
|
}, Ls = {
|
|
502
|
-
class: "
|
|
501
|
+
class: "rounded-lg border border-fm-color-border-default p-12"
|
|
503
502
|
}, Ss = {
|
|
504
|
-
class: "
|
|
503
|
+
class: "space-y-12"
|
|
505
504
|
}, ks = {
|
|
506
|
-
class: "font-semibold"
|
|
507
|
-
}, ws = {
|
|
508
505
|
class: "text-xs text-fm-color-typo-secondary"
|
|
509
|
-
},
|
|
506
|
+
}, ws = {
|
|
510
507
|
class: "font-semibold"
|
|
511
|
-
},
|
|
508
|
+
}, Is = {
|
|
512
509
|
class: "text-xs text-fm-color-typo-secondary"
|
|
510
|
+
}, As = {
|
|
511
|
+
class: "font-semibold"
|
|
513
512
|
}, Fs = {
|
|
514
|
-
class: "
|
|
513
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
515
514
|
}, Ms = {
|
|
516
|
-
|
|
515
|
+
class: "break-all font-semibold"
|
|
517
516
|
}, Os = {
|
|
518
|
-
|
|
517
|
+
key: 0
|
|
519
518
|
}, Ds = {
|
|
520
|
-
class: "break-all font-mono text-xs font-semibold"
|
|
521
|
-
}, js = {
|
|
522
519
|
class: "text-xs text-fm-color-typo-secondary"
|
|
523
|
-
},
|
|
520
|
+
}, js = {
|
|
524
521
|
class: "break-all font-mono text-xs font-semibold"
|
|
525
|
-
},
|
|
522
|
+
}, Cs = {
|
|
526
523
|
class: "text-xs text-fm-color-typo-secondary"
|
|
524
|
+
}, Ts = {
|
|
525
|
+
class: "break-all font-mono text-xs font-semibold"
|
|
527
526
|
}, Vs = {
|
|
528
|
-
class: "
|
|
527
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
529
528
|
}, Ps = {
|
|
530
|
-
class: "
|
|
529
|
+
class: "font-semibold"
|
|
531
530
|
}, Es = {
|
|
532
|
-
class: "
|
|
531
|
+
class: "rounded-lg border border-fm-color-border-default"
|
|
533
532
|
}, $s = {
|
|
534
|
-
class: "
|
|
533
|
+
class: "p-12"
|
|
535
534
|
}, Ns = {
|
|
536
|
-
class: "
|
|
535
|
+
class: "text-base font-bold text-fm-color-typo-primary"
|
|
537
536
|
}, Us = {
|
|
538
|
-
class: "
|
|
537
|
+
class: "space-y-12 p-12"
|
|
539
538
|
}, Rs = {
|
|
540
|
-
class: "
|
|
539
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
541
540
|
}, Ks = {
|
|
542
|
-
class: "
|
|
541
|
+
class: "font-semibold"
|
|
543
542
|
}, Bs = {
|
|
544
|
-
class: "
|
|
543
|
+
class: "rounded-lg border border-fm-color-border-default"
|
|
545
544
|
}, Ys = {
|
|
546
|
-
class: "
|
|
545
|
+
class: "p-12"
|
|
547
546
|
}, zs = {
|
|
548
|
-
class: "
|
|
547
|
+
class: "text-base font-bold text-fm-color-typo-primary"
|
|
549
548
|
}, qs = {
|
|
550
|
-
class: "
|
|
549
|
+
class: "space-y-12 p-12"
|
|
551
550
|
}, Js = {
|
|
552
|
-
class: "
|
|
551
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
553
552
|
}, Hs = {
|
|
554
|
-
|
|
553
|
+
class: "font-semibold"
|
|
555
554
|
}, Ws = {
|
|
556
|
-
|
|
555
|
+
key: 0
|
|
557
556
|
}, Gs = {
|
|
557
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
558
|
+
}, Xs = {
|
|
558
559
|
key: 0,
|
|
559
560
|
class: "font-semibold"
|
|
560
|
-
},
|
|
561
|
+
}, Qs = {
|
|
561
562
|
key: 1,
|
|
562
563
|
class: "break-all font-mono text-xs text-fm-color-typo-secondary"
|
|
563
|
-
}, Qs = {
|
|
564
|
-
key: 1
|
|
565
564
|
}, Zs = {
|
|
566
|
-
|
|
565
|
+
key: 1
|
|
567
566
|
}, ea = {
|
|
568
|
-
class: "font-semibold whitespace-pre-line"
|
|
569
|
-
}, ta = {
|
|
570
567
|
class: "text-xs text-fm-color-typo-secondary"
|
|
568
|
+
}, ta = {
|
|
569
|
+
class: "font-semibold whitespace-pre-line"
|
|
571
570
|
}, oa = {
|
|
572
|
-
class: "font-semibold"
|
|
573
|
-
}, sa = {
|
|
574
571
|
class: "text-xs text-fm-color-typo-secondary"
|
|
572
|
+
}, sa = {
|
|
573
|
+
class: "font-semibold"
|
|
575
574
|
}, aa = {
|
|
576
|
-
class: "
|
|
575
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
577
576
|
}, na = {
|
|
578
|
-
|
|
577
|
+
class: "break-all font-mono text-xs font-semibold"
|
|
579
578
|
}, la = {
|
|
580
|
-
|
|
579
|
+
key: 2
|
|
581
580
|
}, ra = {
|
|
582
|
-
class: "
|
|
581
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
583
582
|
}, ia = {
|
|
584
|
-
class: "
|
|
583
|
+
class: "mt-4 space-y-4"
|
|
585
584
|
}, ua = {
|
|
586
|
-
class: "text-xs font-
|
|
585
|
+
class: "flex h-16 w-16 shrink-0 items-center justify-center rounded-full bg-fm-color-primary-default text-xs font-bold text-white"
|
|
587
586
|
}, da = {
|
|
587
|
+
class: "text-xs font-semibold"
|
|
588
|
+
}, ca = {
|
|
588
589
|
key: 0,
|
|
589
590
|
class: "text-fm-color-typo-secondary"
|
|
590
|
-
}, ca = {
|
|
591
|
-
key: 3
|
|
592
591
|
}, fa = {
|
|
593
|
-
|
|
592
|
+
key: 3
|
|
594
593
|
}, ma = {
|
|
595
|
-
class: "
|
|
594
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
596
595
|
}, va = {
|
|
596
|
+
class: "mt-4 max-h-[400px] overflow-auto rounded bg-gray-100 p-8 font-mono text-xs leading-relaxed shadow-inner whitespace-pre-wrap break-all"
|
|
597
|
+
}, pa = {
|
|
597
598
|
key: 0,
|
|
598
599
|
class: "space-y-12 p-4 text-sm"
|
|
599
|
-
}, pa = {
|
|
600
|
-
class: "flex items-start justify-between gap-8 rounded-lg border border-fm-color-border-default p-12"
|
|
601
600
|
}, ga = {
|
|
602
|
-
class: "
|
|
601
|
+
class: "flex items-start justify-between gap-8 rounded-lg border border-fm-color-border-default p-12"
|
|
603
602
|
}, ha = {
|
|
604
|
-
class: "
|
|
603
|
+
class: "min-w-0 flex-1"
|
|
605
604
|
}, ya = {
|
|
605
|
+
class: "text-base font-bold leading-snug text-fm-color-typo-primary"
|
|
606
|
+
}, ba = {
|
|
606
607
|
key: 0,
|
|
607
608
|
class: "text-xs text-fm-color-typo-secondary"
|
|
608
|
-
}, ba = {
|
|
609
|
-
class: "rounded-lg border border-fm-color-border-default p-12"
|
|
610
609
|
}, _a = {
|
|
611
|
-
class: "
|
|
610
|
+
class: "rounded-lg border border-fm-color-border-default p-12"
|
|
612
611
|
}, xa = {
|
|
613
|
-
class: "
|
|
612
|
+
class: "space-y-12"
|
|
614
613
|
}, La = {
|
|
615
|
-
class: "
|
|
614
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
616
615
|
}, Sa = {
|
|
617
|
-
|
|
616
|
+
class: "font-semibold"
|
|
618
617
|
}, ka = {
|
|
619
|
-
|
|
618
|
+
key: 0
|
|
620
619
|
}, wa = {
|
|
621
|
-
class: "
|
|
620
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
622
621
|
}, Ia = {
|
|
623
|
-
|
|
622
|
+
class: "font-semibold"
|
|
624
623
|
}, Aa = {
|
|
625
|
-
|
|
624
|
+
key: 1
|
|
626
625
|
}, Fa = {
|
|
627
|
-
class: "
|
|
626
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
628
627
|
}, Ma = {
|
|
628
|
+
class: "font-semibold"
|
|
629
|
+
}, Oa = {
|
|
629
630
|
key: 0,
|
|
630
631
|
class: "rounded-lg border border-fm-color-border-default p-12"
|
|
631
|
-
}, Oa = {
|
|
632
|
-
class: "text-xs text-fm-color-typo-secondary"
|
|
633
632
|
}, Da = {
|
|
634
|
-
class: "
|
|
633
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
635
634
|
}, ja = {
|
|
636
|
-
class: "
|
|
635
|
+
class: "whitespace-pre-line font-semibold text-fm-color-typo-error"
|
|
637
636
|
}, Ca = {
|
|
638
|
-
class: "
|
|
637
|
+
class: "rounded-lg border border-fm-color-border-default"
|
|
639
638
|
}, Ta = {
|
|
640
|
-
class: "text-base font-bold text-fm-color-typo-primary"
|
|
641
|
-
}, Va = {
|
|
642
639
|
class: "p-12"
|
|
640
|
+
}, Va = {
|
|
641
|
+
class: "text-base font-bold text-fm-color-typo-primary"
|
|
643
642
|
}, Pa = {
|
|
643
|
+
class: "p-12"
|
|
644
|
+
}, Ea = {
|
|
644
645
|
key: 0,
|
|
645
646
|
class: "divide-y divide-fm-color-border-default"
|
|
646
|
-
}, Ea = {
|
|
647
|
-
class: "flex flex-wrap items-center gap-8"
|
|
648
647
|
}, $a = {
|
|
649
|
-
class: "
|
|
648
|
+
class: "flex flex-wrap items-center gap-8"
|
|
650
649
|
}, Na = {
|
|
651
|
-
class: "break-all
|
|
650
|
+
class: "break-all text-xs"
|
|
652
651
|
}, Ua = {
|
|
652
|
+
class: "break-all font-mono text-xs"
|
|
653
|
+
}, Ra = {
|
|
653
654
|
key: 0,
|
|
654
655
|
class: "text-fm-color-typo-success"
|
|
655
|
-
}, Ra = {
|
|
656
|
-
key: 1,
|
|
657
|
-
class: "text-fm-color-typo-error"
|
|
658
656
|
}, Ka = {
|
|
657
|
+
key: 1,
|
|
659
658
|
class: "text-fm-color-typo-error"
|
|
660
659
|
}, Ba = {
|
|
661
|
-
class: "text-fm-color-typo-
|
|
660
|
+
class: "text-fm-color-typo-error"
|
|
662
661
|
}, Ya = {
|
|
662
|
+
class: "text-fm-color-typo-success"
|
|
663
|
+
}, za = {
|
|
663
664
|
key: 1,
|
|
664
665
|
class: "divide-y divide-fm-color-border-default"
|
|
665
|
-
}, za = {
|
|
666
|
-
class: "flex flex-wrap items-center gap-8"
|
|
667
666
|
}, qa = {
|
|
668
|
-
class: "
|
|
667
|
+
class: "flex flex-wrap items-center gap-8"
|
|
669
668
|
}, Ja = {
|
|
670
|
-
class: "
|
|
669
|
+
class: "break-all font-mono text-xs"
|
|
671
670
|
}, Ha = {
|
|
671
|
+
class: "space-y-4"
|
|
672
|
+
}, Wa = {
|
|
672
673
|
key: 0,
|
|
673
674
|
class: "text-fm-color-typo-success"
|
|
674
|
-
}, Wa = {
|
|
675
|
-
key: 1,
|
|
676
|
-
class: "text-fm-color-typo-error"
|
|
677
675
|
}, Ga = {
|
|
676
|
+
key: 1,
|
|
678
677
|
class: "text-fm-color-typo-error"
|
|
679
678
|
}, Xa = {
|
|
680
|
-
class: "text-fm-color-typo-
|
|
679
|
+
class: "text-fm-color-typo-error"
|
|
681
680
|
}, Qa = {
|
|
681
|
+
class: "text-fm-color-typo-success"
|
|
682
|
+
}, Za = {
|
|
682
683
|
key: 2,
|
|
683
684
|
class: "text-fm-color-typo-secondary"
|
|
684
|
-
},
|
|
685
|
+
}, en = {
|
|
685
686
|
key: 1,
|
|
686
687
|
class: "rounded-lg border border-fm-color-border-default"
|
|
687
|
-
}, en = {
|
|
688
|
-
class: "text-base font-bold text-fm-color-typo-primary"
|
|
689
688
|
}, tn = {
|
|
690
|
-
class: "
|
|
689
|
+
class: "text-base font-bold text-fm-color-typo-primary"
|
|
691
690
|
}, on = {
|
|
692
|
-
|
|
691
|
+
class: "space-y-12 p-12"
|
|
693
692
|
}, sn = {
|
|
694
|
-
|
|
693
|
+
key: 0
|
|
695
694
|
}, an = {
|
|
696
|
-
class: "
|
|
695
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
697
696
|
}, nn = {
|
|
698
|
-
|
|
697
|
+
class: "mt-4 max-h-[400px] overflow-auto rounded bg-gray-100 p-8 font-mono text-xs leading-relaxed shadow-inner whitespace-pre-wrap break-all"
|
|
699
698
|
}, ln = {
|
|
700
|
-
|
|
699
|
+
key: 1
|
|
701
700
|
}, rn = {
|
|
701
|
+
class: "text-xs text-fm-color-typo-secondary"
|
|
702
|
+
}, un = {
|
|
702
703
|
class: "mt-4 max-h-[400px] overflow-auto rounded bg-gray-100 p-8 font-mono text-xs leading-relaxed shadow-inner whitespace-pre-wrap break-all"
|
|
703
|
-
},
|
|
704
|
+
}, ke = 100, ot = 1e3, $e = "__feedmeAdmin__", dn = "D MMM YYYY h:mm A", cn = "YYYY-MM-DD HH:mm", R = "YYYY-MM-DD", Ft = "audit-log-export-fields-v3", fn = /* @__PURE__ */ Mt({
|
|
704
705
|
__name: "AuditLogList",
|
|
705
706
|
setup(t) {
|
|
706
707
|
const {
|
|
707
708
|
t: o,
|
|
708
709
|
te: n
|
|
709
|
-
} = Ot(), r = jo(), d =
|
|
710
|
+
} = Ot(), r = jo(), d = qo(), g = S(!1), p = S(!1), h = S([]), i = S(null), C = S(!1), O = S({}), k = S(null), V = S(!1);
|
|
710
711
|
async function L(e) {
|
|
711
712
|
const s = Uint8Array.from(atob(e), (x) => x.charCodeAt(0)), u = new DecompressionStream("gzip"), y = u.writable.getWriter();
|
|
712
713
|
return await y.write(s), await y.close(), new Response(u.readable).text();
|
|
@@ -776,7 +777,7 @@ const ns = {
|
|
|
776
777
|
const s = ++w;
|
|
777
778
|
if (M.value = [], E.value = [], T.value = "", Y.value = "", U.value = !1, !e) return;
|
|
778
779
|
const [u, y] = await Promise.all([W(e.before), W(e.after)]);
|
|
779
|
-
s === w && (
|
|
780
|
+
s === w && (os(e.changeNodes) ? E.value = e.changeNodes.map(ts) : M.value = es(u, y), T.value = _(u), Y.value = _(y));
|
|
780
781
|
});
|
|
781
782
|
function ce(e) {
|
|
782
783
|
return e === "added" ? "success" : e === "removed" ? "critical" : "warning";
|
|
@@ -784,7 +785,7 @@ const ns = {
|
|
|
784
785
|
function ne(e) {
|
|
785
786
|
return o(e === "added" ? "auditLog.operation.added" : e === "removed" ? "auditLog.operation.removed" : "auditLog.operation.updated");
|
|
786
787
|
}
|
|
787
|
-
function
|
|
788
|
+
function Ae(e) {
|
|
788
789
|
return e.replace(/\[[^\]]*\]/g, "");
|
|
789
790
|
}
|
|
790
791
|
function at(e) {
|
|
@@ -799,7 +800,7 @@ const ns = {
|
|
|
799
800
|
const nt = A(() => {
|
|
800
801
|
const e = [], s = /* @__PURE__ */ new Map();
|
|
801
802
|
for (const u of M.value) {
|
|
802
|
-
const y =
|
|
803
|
+
const y = Ae(u.path), x = `${u.type}::${y}`;
|
|
803
804
|
let F = s.get(x);
|
|
804
805
|
F || (F = {
|
|
805
806
|
groupKey: x,
|
|
@@ -809,28 +810,28 @@ const ns = {
|
|
|
809
810
|
}, s.set(x, F), e.push(F)), F.rows.push(u);
|
|
810
811
|
}
|
|
811
812
|
return e;
|
|
812
|
-
}),
|
|
813
|
+
}), Fe = S(1), Vt = S(!1), Re = S(0), lt = A(() => Math.max(1, Math.ceil(Re.value / ke))), rt = D().format("YYYY-MM-DD"), Q = S({
|
|
813
814
|
startDate: `${rt} 00:00`,
|
|
814
815
|
endDate: `${rt} 23:59`
|
|
815
816
|
}), fe = S(), G = S(), Z = S(), ee = S(), le = S("all");
|
|
816
817
|
function Pt(e) {
|
|
817
818
|
return typeof e == "string" ? [e] : Array.isArray(e) ? e.filter((s) => typeof s == "string") : [];
|
|
818
819
|
}
|
|
819
|
-
const it =
|
|
820
|
-
function
|
|
821
|
-
const s =
|
|
820
|
+
const it = Se.filter((e) => e.key !== "all").map((e) => e.key);
|
|
821
|
+
function Me(e) {
|
|
822
|
+
const s = Se.find((u) => u.key !== "all" && u.subjectPrefixes.some((y) => e.startsWith(y)));
|
|
822
823
|
return (s == null ? void 0 : s.key) ?? "other";
|
|
823
824
|
}
|
|
824
825
|
function ut(e) {
|
|
825
826
|
const s = it.indexOf(e);
|
|
826
827
|
return s === -1 ? it.length : s;
|
|
827
828
|
}
|
|
828
|
-
const Et = A(() =>
|
|
829
|
+
const Et = A(() => Se.map(({
|
|
829
830
|
key: e
|
|
830
831
|
}) => ({
|
|
831
832
|
label: o(`auditLog.modules.${e}`),
|
|
832
833
|
value: e
|
|
833
|
-
}))), Ke = A(() =>
|
|
834
|
+
}))), Ke = A(() => Se.find((e) => e.key === le.value) ?? Se[0]), $t = A(() => le.value === "all"), ye = S([]), Oe = S(!1), Nt = A(() => [...Oe.value ? [{
|
|
834
835
|
label: o("auditLog.user.feedmeAdmin"),
|
|
835
836
|
value: $e
|
|
836
837
|
}] : [], ...d.members.map((e) => ({
|
|
@@ -871,13 +872,13 @@ const ns = {
|
|
|
871
872
|
for (const x of [...e, ...s])
|
|
872
873
|
if (!u.has(x.value)) {
|
|
873
874
|
u.add(x.value);
|
|
874
|
-
const F =
|
|
875
|
+
const F = Me(x.value);
|
|
875
876
|
y.push({
|
|
876
877
|
...x,
|
|
877
878
|
group: o(`auditLog.modules.${F}`)
|
|
878
879
|
});
|
|
879
880
|
}
|
|
880
|
-
return y.sort((x, F) => ut(
|
|
881
|
+
return y.sort((x, F) => ut(Me(x.value)) - ut(Me(F.value)));
|
|
881
882
|
}), me = A(() => {
|
|
882
883
|
const e = X.value.toLowerCase();
|
|
883
884
|
if (!e) return [];
|
|
@@ -885,7 +886,7 @@ const ns = {
|
|
|
885
886
|
for (const u of Ye.value)
|
|
886
887
|
u.label.toLowerCase().includes(e) && s.add(u.value);
|
|
887
888
|
return [...s];
|
|
888
|
-
}), Rt = A(() => $t.value ? Ye.value : Ye.value.filter((e) =>
|
|
889
|
+
}), Rt = A(() => $t.value ? Ye.value : Ye.value.filter((e) => Me(e.value) === le.value));
|
|
889
890
|
function Kt(e, s) {
|
|
890
891
|
const u = s.toLowerCase();
|
|
891
892
|
return e.label.toLowerCase().includes(u) || e.value.replace(/^business::/, "").toLowerCase().includes(u) ? !0 : e.value.toLowerCase().includes(u);
|
|
@@ -911,7 +912,7 @@ const ns = {
|
|
|
911
912
|
}, {
|
|
912
913
|
label: H.value.delete,
|
|
913
914
|
value: "delete"
|
|
914
|
-
}]),
|
|
915
|
+
}]), De = A(() => ({
|
|
915
916
|
allowed: o("auditLog.outcome.success"),
|
|
916
917
|
denied: o("auditLog.outcome.failed"),
|
|
917
918
|
skipped: o("auditLog.outcome.skipped")
|
|
@@ -926,13 +927,13 @@ const ns = {
|
|
|
926
927
|
return !(e != null && e.length) || ze.value ? e : e.includes("allowed") ? [.../* @__PURE__ */ new Set([...e, "skipped"])] : e;
|
|
927
928
|
}
|
|
928
929
|
const Yt = A(() => [{
|
|
929
|
-
label:
|
|
930
|
+
label: De.value.allowed,
|
|
930
931
|
value: "allowed"
|
|
931
932
|
}, {
|
|
932
|
-
label:
|
|
933
|
+
label: De.value.denied,
|
|
933
934
|
value: "denied"
|
|
934
935
|
}, ...ze.value ? [{
|
|
935
|
-
label:
|
|
936
|
+
label: De.value.skipped,
|
|
936
937
|
value: "skipped"
|
|
937
938
|
}] : []]), zt = A(() => ({
|
|
938
939
|
admin: o("auditLog.detail.resolvedFromValue.admin"),
|
|
@@ -953,15 +954,15 @@ const ns = {
|
|
|
953
954
|
denied: "critical",
|
|
954
955
|
skipped: "warning"
|
|
955
956
|
};
|
|
956
|
-
function
|
|
957
|
-
return D(e).format(
|
|
957
|
+
function je(e) {
|
|
958
|
+
return D(e).format(dn);
|
|
958
959
|
}
|
|
959
960
|
const Ht = A(() => {
|
|
960
961
|
const {
|
|
961
962
|
startDate: e,
|
|
962
963
|
endDate: s
|
|
963
964
|
} = Q.value;
|
|
964
|
-
return e && s ? `${
|
|
965
|
+
return e && s ? `${je(e)} – ${je(s)}` : e ? je(e) : s ? je(s) : o("auditLog.dateRange.placeholder");
|
|
965
966
|
}), Wt = A(() => [{
|
|
966
967
|
label: o("date.predefinedRanges.today"),
|
|
967
968
|
value: {
|
|
@@ -1009,7 +1010,7 @@ const ns = {
|
|
|
1009
1010
|
var s;
|
|
1010
1011
|
return ((s = kt.find((u) => u.subject === e)) == null ? void 0 : s.label) ?? St[e];
|
|
1011
1012
|
}
|
|
1012
|
-
function
|
|
1013
|
+
function be(e) {
|
|
1013
1014
|
var u, y;
|
|
1014
1015
|
if (e.actorType === "portalUser")
|
|
1015
1016
|
return e.actorName ?? e.userId;
|
|
@@ -1047,7 +1048,7 @@ const ns = {
|
|
|
1047
1048
|
return Je(e.subject) ?? e.subject;
|
|
1048
1049
|
}
|
|
1049
1050
|
function He(e) {
|
|
1050
|
-
return
|
|
1051
|
+
return De.value[dt(e)];
|
|
1051
1052
|
}
|
|
1052
1053
|
function ht(e) {
|
|
1053
1054
|
return Jt[dt(e)] ?? "neutral";
|
|
@@ -1070,7 +1071,7 @@ const ns = {
|
|
|
1070
1071
|
}, {
|
|
1071
1072
|
key: "userName",
|
|
1072
1073
|
labelKey: "auditLog.exportFields.userName",
|
|
1073
|
-
getValue: (e) =>
|
|
1074
|
+
getValue: (e) => be(e),
|
|
1074
1075
|
defaultSelected: !0
|
|
1075
1076
|
}, {
|
|
1076
1077
|
key: "userPhone",
|
|
@@ -1100,12 +1101,12 @@ const ns = {
|
|
|
1100
1101
|
}, {
|
|
1101
1102
|
key: "operationEvents",
|
|
1102
1103
|
labelKey: "auditLog.exportFields.operationEvents",
|
|
1103
|
-
getValue: (e) =>
|
|
1104
|
+
getValue: (e) => ss(o, e.operations),
|
|
1104
1105
|
defaultSelected: !0
|
|
1105
1106
|
}, {
|
|
1106
1107
|
key: "changes",
|
|
1107
1108
|
labelKey: "auditLog.exportFields.changes",
|
|
1108
|
-
getValue: (e) =>
|
|
1109
|
+
getValue: (e) => ns(o, n, e.operations),
|
|
1109
1110
|
defaultSelected: !1
|
|
1110
1111
|
}, {
|
|
1111
1112
|
key: "businessId",
|
|
@@ -1185,7 +1186,7 @@ const ns = {
|
|
|
1185
1186
|
const {
|
|
1186
1187
|
startDate: F,
|
|
1187
1188
|
endDate: $
|
|
1188
|
-
} = Q.value, oe = Ke.value.subjectPrefixes, Ce = (/* @__PURE__ */ new Date()).toISOString().slice(0, 19).replace("T", " "),
|
|
1189
|
+
} = Q.value, oe = Ke.value.subjectPrefixes, Ce = (/* @__PURE__ */ new Date()).toISOString().slice(0, 19).replace("T", " "), _e = $ ? se($) : null, Te = _e && _e < Ce ? _e : Ce, Xe = {
|
|
1189
1190
|
...F ? {
|
|
1190
1191
|
from: se(F)
|
|
1191
1192
|
} : {},
|
|
@@ -1217,7 +1218,7 @@ const ns = {
|
|
|
1217
1218
|
...me.value.length ? {
|
|
1218
1219
|
searchSubjects: me.value
|
|
1219
1220
|
} : {}
|
|
1220
|
-
},
|
|
1221
|
+
}, xe = [];
|
|
1221
1222
|
let f = 0;
|
|
1222
1223
|
for (; ; ) {
|
|
1223
1224
|
const z = await Ee.read({
|
|
@@ -1225,14 +1226,14 @@ const ns = {
|
|
|
1225
1226
|
limit: ot,
|
|
1226
1227
|
offset: f
|
|
1227
1228
|
});
|
|
1228
|
-
if (
|
|
1229
|
+
if (xe.push(...z), z.length < ot) break;
|
|
1229
1230
|
f += ot;
|
|
1230
1231
|
}
|
|
1231
|
-
const P = We.filter((z) => ve.value.has(z.key)), go = P.map((z) => o(z.labelKey)), ho =
|
|
1232
|
+
const P = We.filter((z) => ve.value.has(z.key)), go = P.map((z) => o(z.labelKey)), ho = xe.map((z) => P.map((Io) => Io.getValue(z) ?? "")), Qe = -(/* @__PURE__ */ new Date()).getTimezoneOffset(), yo = Qe >= 0 ? "+" : "-", bo = String(Math.floor(Math.abs(Qe) / 60)).padStart(2, "0"), _o = String(Math.abs(Qe) % 60).padStart(2, "0"), xo = `UTC${yo}${bo}:${_o}`, xt = ((y = r.currentBusiness.value) == null ? void 0 : y.name) || "", Lo = [F, $].filter(Boolean).join(" – "), So = [...[[o("auditLog.title")], [`${o("auditLog.frontMatter.date")}: ${Lo}`], ...xt ? [[`${o("auditLog.frontMatter.business")}: ${xt}`]] : [], [`${o("auditLog.frontMatter.generatedBy")}: ${D().format("DD MMM YYYY, HH:mm")} (${xo})`], []].map((z) => z.map(yt).join(",")), ...[go, ...ho].map((z) => z.map(yt).join(","))].join(`
|
|
1232
1233
|
`), ko = `audit-log_${(((x = r.currentBusiness.value) == null ? void 0 : x.name) || "business").replace(/[^a-z0-9_-]+/gi, "_")}_${D().format("YYYYMMDD_HHmmss")}.csv`, wo = new Blob([`\uFEFF${So}`], {
|
|
1233
1234
|
type: "text/csv;charset=utf-8;"
|
|
1234
|
-
}), Lt = window.URL.createObjectURL(wo),
|
|
1235
|
-
|
|
1235
|
+
}), Lt = window.URL.createObjectURL(wo), Le = document.createElement("a");
|
|
1236
|
+
Le.href = Lt, Le.download = ko, document.body.appendChild(Le), Le.click(), Le.remove(), window.URL.revokeObjectURL(Lt);
|
|
1236
1237
|
} finally {
|
|
1237
1238
|
p.value = !1;
|
|
1238
1239
|
}
|
|
@@ -1278,14 +1279,15 @@ const ns = {
|
|
|
1278
1279
|
return ie(s) ? null : m("div", {
|
|
1279
1280
|
class: "flex items-center gap-8"
|
|
1280
1281
|
}, [m(ue.FmAvatar, {
|
|
1281
|
-
name:
|
|
1282
|
+
name: be(s),
|
|
1283
|
+
initials: Uo(be(s)),
|
|
1282
1284
|
size: "sm",
|
|
1283
1285
|
class: "shrink-0"
|
|
1284
1286
|
}, null), m("div", {
|
|
1285
1287
|
class: "min-w-0"
|
|
1286
1288
|
}, [m("p", {
|
|
1287
1289
|
class: "truncate font-semibold"
|
|
1288
|
-
}, [
|
|
1290
|
+
}, [be(s)]), m("p", {
|
|
1289
1291
|
class: "truncate text-fm-color-typo-secondary"
|
|
1290
1292
|
}, [ct(s)])])]);
|
|
1291
1293
|
}
|
|
@@ -1363,7 +1365,7 @@ const ns = {
|
|
|
1363
1365
|
}
|
|
1364
1366
|
}];
|
|
1365
1367
|
function se(e) {
|
|
1366
|
-
const s = D(e,
|
|
1368
|
+
const s = D(e, cn);
|
|
1367
1369
|
return new Date(s.year(), s.month(), s.date(), s.hour(), s.minute(), 0).toISOString().slice(0, 19).replace("T", " ");
|
|
1368
1370
|
}
|
|
1369
1371
|
async function bt() {
|
|
@@ -1373,8 +1375,8 @@ const ns = {
|
|
|
1373
1375
|
const {
|
|
1374
1376
|
startDate: y,
|
|
1375
1377
|
endDate: x
|
|
1376
|
-
} = Q.value, F = (
|
|
1377
|
-
limit:
|
|
1378
|
+
} = Q.value, F = (Fe.value - 1) * ke, $ = Ke.value.subjectPrefixes, oe = await Ee.read({
|
|
1379
|
+
limit: ke,
|
|
1378
1380
|
offset: F,
|
|
1379
1381
|
...y ? {
|
|
1380
1382
|
from: se(y)
|
|
@@ -1410,7 +1412,7 @@ const ns = {
|
|
|
1410
1412
|
searchSubjects: me.value
|
|
1411
1413
|
} : {}
|
|
1412
1414
|
});
|
|
1413
|
-
h.value = oe, Vt.value = oe.length ===
|
|
1415
|
+
h.value = oe, Vt.value = oe.length === ke, O.value = {};
|
|
1414
1416
|
} finally {
|
|
1415
1417
|
g.value = !1;
|
|
1416
1418
|
}
|
|
@@ -1476,7 +1478,7 @@ const ns = {
|
|
|
1476
1478
|
}
|
|
1477
1479
|
de(_t, async () => {
|
|
1478
1480
|
var e;
|
|
1479
|
-
|
|
1481
|
+
Fe.value = 1, (e = r.currentBusiness.value) != null && e._id && await Promise.all([ro(), bt()]);
|
|
1480
1482
|
}, {
|
|
1481
1483
|
immediate: !0
|
|
1482
1484
|
}), de(le, () => {
|
|
@@ -1487,8 +1489,8 @@ const ns = {
|
|
|
1487
1489
|
pageIndex: e
|
|
1488
1490
|
}) {
|
|
1489
1491
|
var s;
|
|
1490
|
-
if ((s = r.currentBusiness.value) != null && s._id && !(e === 0 &&
|
|
1491
|
-
Ge = !0,
|
|
1492
|
+
if ((s = r.currentBusiness.value) != null && s._id && !(e === 0 && Fe.value === 1) && !Ge) {
|
|
1493
|
+
Ge = !0, Fe.value = e + 1;
|
|
1492
1494
|
try {
|
|
1493
1495
|
await bt();
|
|
1494
1496
|
} finally {
|
|
@@ -1520,7 +1522,7 @@ const ns = {
|
|
|
1520
1522
|
function vo() {
|
|
1521
1523
|
const e = fe.value;
|
|
1522
1524
|
if (!(e != null && e.length)) return;
|
|
1523
|
-
const s = new Set(ye.value.map((x) => x.userId)), u = new Set(d.members.map((x) => x.doc.userId)), y = e.filter((x) => x === $e ?
|
|
1525
|
+
const s = new Set(ye.value.map((x) => x.userId)), u = new Set(d.members.map((x) => x.doc.userId)), y = e.filter((x) => x === $e ? Oe.value : d.hasLoaded ? u.has(x) || s.has(x) : !0);
|
|
1524
1526
|
y.length !== e.length && (fe.value = y.length ? y : void 0);
|
|
1525
1527
|
}
|
|
1526
1528
|
async function po() {
|
|
@@ -1542,9 +1544,9 @@ const ns = {
|
|
|
1542
1544
|
to: se(s)
|
|
1543
1545
|
} : {}
|
|
1544
1546
|
});
|
|
1545
|
-
ye.value = y,
|
|
1547
|
+
ye.value = y, Oe.value = x;
|
|
1546
1548
|
} catch {
|
|
1547
|
-
ye.value = [],
|
|
1549
|
+
ye.value = [], Oe.value = !1;
|
|
1548
1550
|
}
|
|
1549
1551
|
vo();
|
|
1550
1552
|
}
|
|
@@ -1558,7 +1560,7 @@ const ns = {
|
|
|
1558
1560
|
immediate: !0,
|
|
1559
1561
|
deep: !0
|
|
1560
1562
|
}), (e, s) => {
|
|
1561
|
-
const u = N("FmSpacer"), y = N("FmButton"), x = N("FmMenuItem"), F = N("FmMenu"), $ = N("FmChip"), oe = N("FmDateRangePicker"), Ce = N("FmSearch"),
|
|
1563
|
+
const u = N("FmSpacer"), y = N("FmButton"), x = N("FmMenuItem"), F = N("FmMenu"), $ = N("FmChip"), oe = N("FmDateRangePicker"), Ce = N("FmSearch"), _e = N("FmTable"), Te = N("FmIcon"), Xe = N("FmTooltip"), xe = N("FmSideSheet");
|
|
1562
1564
|
return v(), b(q, null, [m(Vo, {
|
|
1563
1565
|
heading: c(o)("auditLog.title")
|
|
1564
1566
|
}, {
|
|
@@ -1579,7 +1581,7 @@ const ns = {
|
|
|
1579
1581
|
"aria-label": c(o)("auditLog.exportSettings.title"),
|
|
1580
1582
|
disabled: p.value
|
|
1581
1583
|
}, null, 8, ["aria-label", "disabled"])]),
|
|
1582
|
-
default: B(() => [a("div",
|
|
1584
|
+
default: B(() => [a("div", ls, [a("p", rs, l(c(o)("auditLog.exportSettings.title")), 1), (v(), b(q, null, ae(We, (f) => m(x, {
|
|
1583
1585
|
key: f.key,
|
|
1584
1586
|
label: c(o)(f.labelKey),
|
|
1585
1587
|
"has-checkbox": "",
|
|
@@ -1589,11 +1591,11 @@ const ns = {
|
|
|
1589
1591
|
}, null, 8, ["label", "model-value", "disabled", "onClick"])), 64))])]),
|
|
1590
1592
|
_: 1
|
|
1591
1593
|
})]),
|
|
1592
|
-
default: B(() => [a("div",
|
|
1594
|
+
default: B(() => [a("div", is, [a("div", us, [m(zo, {
|
|
1593
1595
|
modelValue: le.value,
|
|
1594
1596
|
"onUpdate:modelValue": s[0] || (s[0] = (f) => le.value = f),
|
|
1595
1597
|
items: Et.value
|
|
1596
|
-
}, null, 8, ["modelValue", "items"]), a("div",
|
|
1598
|
+
}, null, 8, ["modelValue", "items"]), a("div", ds, [m(oe, {
|
|
1597
1599
|
modelValue: Q.value,
|
|
1598
1600
|
"onUpdate:modelValue": s[1] || (s[1] = (f) => Q.value = f),
|
|
1599
1601
|
"show-predefined-range": "",
|
|
@@ -1605,7 +1607,7 @@ const ns = {
|
|
|
1605
1607
|
icon: "calendar_month"
|
|
1606
1608
|
}, null, 8, ["label"])]),
|
|
1607
1609
|
_: 1
|
|
1608
|
-
}, 8, ["modelValue", "predefined-range"]), a("div",
|
|
1610
|
+
}, 8, ["modelValue", "predefined-range"]), a("div", cs, [m(Pe, {
|
|
1609
1611
|
modelValue: fe.value,
|
|
1610
1612
|
"onUpdate:modelValue": s[2] || (s[2] = (f) => fe.value = f),
|
|
1611
1613
|
items: Nt.value,
|
|
@@ -1614,7 +1616,7 @@ const ns = {
|
|
|
1614
1616
|
placeholder: c(o)("auditLog.filter.user_placeholder"),
|
|
1615
1617
|
"selected-prefix": c(o)("auditLog.filter.selected_user_prefix"),
|
|
1616
1618
|
"chip-icon": "account_circle"
|
|
1617
|
-
}, null, 8, ["modelValue", "items", "placeholder", "selected-prefix"])]), a("div",
|
|
1619
|
+
}, null, 8, ["modelValue", "items", "placeholder", "selected-prefix"])]), a("div", fs, [m(Pe, {
|
|
1618
1620
|
modelValue: G.value,
|
|
1619
1621
|
"onUpdate:modelValue": s[3] || (s[3] = (f) => G.value = f),
|
|
1620
1622
|
items: Rt.value,
|
|
@@ -1624,7 +1626,7 @@ const ns = {
|
|
|
1624
1626
|
placeholder: c(o)("auditLog.filter.subject_placeholder"),
|
|
1625
1627
|
"selected-prefix": c(o)("auditLog.filter.selected_subject_prefix"),
|
|
1626
1628
|
"chip-icon": "badge"
|
|
1627
|
-
}, null, 8, ["modelValue", "items", "placeholder", "selected-prefix"])]), a("div",
|
|
1629
|
+
}, null, 8, ["modelValue", "items", "placeholder", "selected-prefix"])]), a("div", ms, [m(Pe, {
|
|
1628
1630
|
modelValue: ee.value,
|
|
1629
1631
|
"onUpdate:modelValue": s[4] || (s[4] = (f) => ee.value = f),
|
|
1630
1632
|
items: Bt.value,
|
|
@@ -1633,7 +1635,7 @@ const ns = {
|
|
|
1633
1635
|
placeholder: c(o)("auditLog.filter.action_placeholder"),
|
|
1634
1636
|
"selected-prefix": c(o)("auditLog.filter.selected_action_prefix"),
|
|
1635
1637
|
searchable: !1
|
|
1636
|
-
}, null, 8, ["modelValue", "items", "placeholder", "selected-prefix"])]), a("div",
|
|
1638
|
+
}, null, 8, ["modelValue", "items", "placeholder", "selected-prefix"])]), a("div", vs, [m(Pe, {
|
|
1637
1639
|
modelValue: Z.value,
|
|
1638
1640
|
"onUpdate:modelValue": s[5] || (s[5] = (f) => Z.value = f),
|
|
1639
1641
|
items: Yt.value,
|
|
@@ -1649,17 +1651,17 @@ const ns = {
|
|
|
1649
1651
|
class: "ml-auto w-[280px]",
|
|
1650
1652
|
placeholder: c(o)("auditLog.search.placeholder")
|
|
1651
1653
|
}, null, 8, ["modelValue", "placeholder"])])]), m(Co, null, {
|
|
1652
|
-
default: B(() => [a("div",
|
|
1654
|
+
default: B(() => [a("div", ps, [m(Po, {
|
|
1653
1655
|
"is-loading": g.value,
|
|
1654
1656
|
"is-empty": h.value.length === 0,
|
|
1655
1657
|
title: c(o)("auditLog.noData.title"),
|
|
1656
1658
|
subtitle: c(o)("auditLog.noData.subtitle")
|
|
1657
1659
|
}, {
|
|
1658
|
-
default: B(() => [(v(),
|
|
1660
|
+
default: B(() => [(v(), we(_e, {
|
|
1659
1661
|
key: _t.value,
|
|
1660
1662
|
"column-defs": lo,
|
|
1661
1663
|
"row-data": h.value,
|
|
1662
|
-
"page-size":
|
|
1664
|
+
"page-size": ke,
|
|
1663
1665
|
"page-count": lt.value,
|
|
1664
1666
|
"row-count": Re.value,
|
|
1665
1667
|
"fetch-fn": io,
|
|
@@ -1678,7 +1680,7 @@ const ns = {
|
|
|
1678
1680
|
_: 1
|
|
1679
1681
|
})])]),
|
|
1680
1682
|
_: 1
|
|
1681
|
-
}, 8, ["heading"]), m(
|
|
1683
|
+
}, 8, ["heading"]), m(xe, {
|
|
1682
1684
|
header: c(o)("auditLog.detail.header"),
|
|
1683
1685
|
"model-value": C.value,
|
|
1684
1686
|
"max-width": 768,
|
|
@@ -1687,11 +1689,11 @@ const ns = {
|
|
|
1687
1689
|
f || co();
|
|
1688
1690
|
})
|
|
1689
1691
|
}, {
|
|
1690
|
-
default: B(() => [i.value ? (v(), b("div",
|
|
1692
|
+
default: B(() => [i.value ? (v(), b("div", gs, [a("div", hs, [a("div", ys, [a("p", bs, l(Xt(i.value)), 1), i.value.traceId ? (v(), b("p", _s, " Trace ID: " + l(i.value.traceId), 1)) : j("", !0)]), a("div", xs, [m($, {
|
|
1691
1693
|
variant: ht(i.value.outcome),
|
|
1692
1694
|
label: He(i.value.outcome),
|
|
1693
1695
|
compact: ""
|
|
1694
|
-
}, null, 8, ["variant", "label"]), c(At)(i.value) ? (v(),
|
|
1696
|
+
}, null, 8, ["variant", "label"]), c(At)(i.value) ? (v(), we(Xe, {
|
|
1695
1697
|
key: 0,
|
|
1696
1698
|
variant: "plain",
|
|
1697
1699
|
placement: "top"
|
|
@@ -1703,16 +1705,16 @@ const ns = {
|
|
|
1703
1705
|
class: "cursor-help text-fm-color-typo-error"
|
|
1704
1706
|
})]),
|
|
1705
1707
|
_: 1
|
|
1706
|
-
})) : j("", !0)])]), a("div",
|
|
1708
|
+
})) : j("", !0)])]), a("div", Ls, [a("div", Ss, [a("div", null, [a("p", ks, l(c(o)("auditLog.detail.date")), 1), a("p", ws, l(mt(i.value.timestamp)), 1)]), a("div", null, [a("p", Is, l(c(o)("auditLog.detail.user")), 1), a("p", As, l(be(i.value)), 1)]), a("div", null, [a("p", Fs, l(c(o)("auditLog.detail.email")), 1), a("p", Ms, l(Gt(i.value)), 1)]), i.value.field ? (v(), b("div", Os, [a("p", Ds, l(c(o)("auditLog.detail.field")), 1), a("p", js, l(i.value.field), 1)])) : j("", !0), a("div", null, [a("p", Cs, l(c(o)("auditLog.detail.business")), 1), a("p", Ts, l(i.value.businessId || "-"), 1)]), a("div", null, [a("p", Vs, l(c(o)("auditLog.detail.restaurant")), 1), a("p", Ps, l(i.value.restaurantId || "-"), 1)])])]), a("div", Es, [a("div", $s, [a("p", Ns, l(c(o)("auditLog.detail.eventDetails")), 1)]), s[12] || (s[12] = a("hr", {
|
|
1707
1709
|
class: "border-fm-color-border-default"
|
|
1708
|
-
}, null, -1)), a("div",
|
|
1710
|
+
}, null, -1)), a("div", Us, [a("div", null, [a("p", Rs, l(c(o)("auditLog.detail.actionDescription")), 1), a("p", Ks, l(i.value.metadata.operationLabel || "-"), 1)])])]), a("div", Bs, [a("div", Ys, [a("p", zs, l(c(o)("auditLog.detail.metadata")), 1)]), s[13] || (s[13] = a("hr", {
|
|
1709
1711
|
class: "border-fm-color-border-default"
|
|
1710
|
-
}, null, -1)), a("div",
|
|
1712
|
+
}, null, -1)), a("div", qs, [a("div", null, [a("p", Js, l(c(o)("auditLog.detail.resolvedFrom")), 1), a("p", Hs, l(Qt(i.value.metadata.resolvedFrom)), 1)]), (i.value.metadata.resolvedFrom === "permissionSet" || i.value.metadata.resolvedFrom === "systemPermissionSet") && (i.value.metadata.permissionSetName || i.value.metadata.permissionSetId) ? (v(), b("div", Ws, [a("p", Gs, l(c(o)("auditLog.detail.permissionSet")), 1), i.value.metadata.permissionSetName ? (v(), b("p", Xs, l(i.value.metadata.permissionSetName), 1)) : j("", !0), i.value.metadata.permissionSetId ? (v(), b("p", Qs, l(i.value.metadata.permissionSetId), 1)) : j("", !0)])) : j("", !0), i.value.metadata.reason ? (v(), b("div", Zs, [a("p", ea, l(c(o)("auditLog.detail.reason")), 1), a("p", ta, l(i.value.metadata.reason), 1)])) : j("", !0), a("div", null, [a("p", oa, l(c(o)("auditLog.detail.requestMethod")), 1), a("p", sa, l(Zt(i.value)), 1)]), a("div", null, [a("p", aa, l(c(o)("auditLog.detail.requestPath")), 1), a("p", na, l(i.value.metadata.requestPath || "-"), 1)]), i.value.metadata.trace && i.value.metadata.trace.length > 0 ? (v(), b("div", la, [a("p", ra, l(c(o)("auditLog.detail.permissionTrace")), 1), a("ol", ia, [(v(!0), b(q, null, ae(i.value.metadata.trace, (f, P) => (v(), b("li", {
|
|
1711
1713
|
key: P,
|
|
1712
1714
|
class: "flex items-center gap-6"
|
|
1713
|
-
}, [a("span",
|
|
1715
|
+
}, [a("span", ua, l(P + 1), 1), a("span", da, l(f), 1), P < i.value.metadata.trace.length - 1 ? (v(), b("span", ca, "→")) : j("", !0)]))), 128))])])) : j("", !0), I.value ? (v(), b("div", fa, [a("p", ma, l(c(o)("auditLog.detail.requestBody")), 1), a("pre", va, l(I.value), 1)])) : j("", !0)])])])) : j("", !0)]),
|
|
1714
1716
|
_: 1
|
|
1715
|
-
}, 8, ["header", "model-value"]), m(
|
|
1717
|
+
}, 8, ["header", "model-value"]), m(xe, {
|
|
1716
1718
|
header: c(o)("auditLog.operation.sheetHeader"),
|
|
1717
1719
|
"model-value": V.value,
|
|
1718
1720
|
"max-width": 768,
|
|
@@ -1721,56 +1723,56 @@ const ns = {
|
|
|
1721
1723
|
f || mo();
|
|
1722
1724
|
})
|
|
1723
1725
|
}, {
|
|
1724
|
-
default: B(() => [k.value ? (v(), b("div",
|
|
1726
|
+
default: B(() => [k.value ? (v(), b("div", pa, [a("div", ga, [a("div", ha, [a("p", ya, l(gt(k.value)), 1), k.value.entityId ? (v(), b("p", ba, l(k.value.entityId), 1)) : j("", !0)]), m($, {
|
|
1725
1727
|
variant: k.value.status === "failed" ? "critical" : "success",
|
|
1726
1728
|
label: k.value.status === "failed" ? c(o)("auditLog.outcome.failed") : c(o)("auditLog.outcome.success"),
|
|
1727
1729
|
compact: ""
|
|
1728
|
-
}, null, 8, ["variant", "label"])]), a("div",
|
|
1730
|
+
}, null, 8, ["variant", "label"])]), a("div", _a, [a("div", xa, [a("div", null, [a("p", La, l(c(o)("auditLog.detail.date")), 1), a("p", Sa, l(mt(k.value.timestamp)), 1)]), k.value.entityId ? (v(), b("div", ka, [a("p", wa, l(c(o)("auditLog.operation.entity")), 1), a("p", Ia, l(k.value.entityId), 1)])) : j("", !0), k.value.durationMs !== void 0 ? (v(), b("div", Aa, [a("p", Fa, l(c(o)("auditLog.operation.duration")), 1), a("p", Ma, l(c(o)("auditLog.operation.durationValue", {
|
|
1729
1731
|
ms: k.value.durationMs
|
|
1730
|
-
})), 1)])) : j("", !0)])]), k.value.status === "failed" ? (v(), b("div",
|
|
1732
|
+
})), 1)])) : j("", !0)])]), k.value.status === "failed" ? (v(), b("div", Oa, [a("p", Da, l(c(o)("auditLog.operation.error")), 1), a("p", ja, l(k.value.errorMessage || "-"), 1)])) : j("", !0), a("div", Ca, [a("div", Ta, [a("p", Va, l(c(o)("auditLog.operation.changes")), 1)]), s[16] || (s[16] = a("hr", {
|
|
1731
1733
|
class: "border-fm-color-border-default"
|
|
1732
|
-
}, null, -1)), a("div",
|
|
1734
|
+
}, null, -1)), a("div", Pa, [E.value.length ? (v(), b("div", Ea, [(v(!0), b(q, null, ae(E.value, (f, P) => (v(), b("div", {
|
|
1733
1735
|
key: P,
|
|
1734
1736
|
class: "space-y-4 py-8 first:pt-0 last:pb-0"
|
|
1735
|
-
}, [a("div",
|
|
1737
|
+
}, [a("div", $a, [m($, {
|
|
1736
1738
|
variant: at(f.type),
|
|
1737
1739
|
label: J(f.type),
|
|
1738
1740
|
compact: ""
|
|
1739
|
-
}, null, 8, ["variant", "label"]), a("span",
|
|
1741
|
+
}, null, 8, ["variant", "label"]), a("span", Na, l(he(f)), 1)]), a("p", Ua, [f.type === "add" ? (v(), b("span", Ra, l(f.afterDisplay), 1)) : f.type === "remove" ? (v(), b("span", Ka, l(f.beforeDisplay), 1)) : (v(), b(q, {
|
|
1740
1742
|
key: 2
|
|
1741
|
-
}, [a("span",
|
|
1743
|
+
}, [a("span", Ba, l(f.beforeDisplay), 1), s[14] || (s[14] = a("span", {
|
|
1742
1744
|
class: "text-fm-color-typo-secondary"
|
|
1743
|
-
}, " → ", -1)), a("span",
|
|
1745
|
+
}, " → ", -1)), a("span", Ya, l(f.afterDisplay), 1)], 64))])]))), 128))])) : nt.value.length ? (v(), b("div", za, [(v(!0), b(q, null, ae(nt.value, (f) => (v(), b("div", {
|
|
1744
1746
|
key: f.groupKey,
|
|
1745
1747
|
class: "space-y-4 py-8 first:pt-0 last:pb-0"
|
|
1746
|
-
}, [a("div",
|
|
1748
|
+
}, [a("div", qa, [m($, {
|
|
1747
1749
|
variant: ce(f.type),
|
|
1748
1750
|
label: ne(f.type),
|
|
1749
1751
|
compact: ""
|
|
1750
|
-
}, null, 8, ["variant", "label"]), a("span",
|
|
1752
|
+
}, null, 8, ["variant", "label"]), a("span", Ja, l(f.displayKey), 1)]), a("div", Ha, [(v(!0), b(q, null, ae(f.rows, (P) => (v(), b("p", {
|
|
1751
1753
|
key: P.path,
|
|
1752
1754
|
class: "break-all font-mono text-xs"
|
|
1753
|
-
}, [P.type === "added" ? (v(), b("span",
|
|
1755
|
+
}, [P.type === "added" ? (v(), b("span", Wa, l(P.after ?? "—"), 1)) : P.type === "removed" ? (v(), b("span", Ga, l(P.before ?? "—"), 1)) : (v(), b(q, {
|
|
1754
1756
|
key: 2
|
|
1755
|
-
}, [a("span",
|
|
1757
|
+
}, [a("span", Xa, l(P.before ?? "—"), 1), s[15] || (s[15] = a("span", {
|
|
1756
1758
|
class: "text-fm-color-typo-secondary"
|
|
1757
|
-
}, " → ", -1)), a("span",
|
|
1759
|
+
}, " → ", -1)), a("span", Qa, l(P.after ?? "—"), 1)], 64))]))), 128))])]))), 128))])) : (v(), b("p", Za, l(c(o)("auditLog.operation.noChanges")), 1))])]), T.value || Y.value ? (v(), b("div", en, [a("button", {
|
|
1758
1760
|
type: "button",
|
|
1759
1761
|
class: "flex w-full items-center justify-between p-12 text-left",
|
|
1760
1762
|
onClick: s[10] || (s[10] = (f) => U.value = !U.value)
|
|
1761
|
-
}, [a("p",
|
|
1763
|
+
}, [a("p", tn, l(c(o)("auditLog.operation.showData")), 1), m(Te, {
|
|
1762
1764
|
name: "keyboard_arrow_down",
|
|
1763
1765
|
class: Do(["shrink-0 transition-transform", U.value ? "rotate-180" : ""])
|
|
1764
1766
|
}, null, 8, ["class"])]), U.value ? (v(), b(q, {
|
|
1765
1767
|
key: 0
|
|
1766
1768
|
}, [s[17] || (s[17] = a("hr", {
|
|
1767
1769
|
class: "border-fm-color-border-default"
|
|
1768
|
-
}, null, -1)), a("div",
|
|
1770
|
+
}, null, -1)), a("div", on, [T.value ? (v(), b("div", sn, [a("p", an, l(c(o)("auditLog.operation.before")), 1), a("pre", nn, l(T.value), 1)])) : j("", !0), Y.value ? (v(), b("div", ln, [a("p", rn, l(c(o)("auditLog.operation.after")), 1), a("pre", un, l(Y.value), 1)])) : j("", !0)])], 64)) : j("", !0)])) : j("", !0)])) : j("", !0)]),
|
|
1769
1771
|
_: 1
|
|
1770
1772
|
}, 8, ["header", "model-value"])], 64);
|
|
1771
1773
|
};
|
|
1772
1774
|
}
|
|
1773
|
-
}),
|
|
1775
|
+
}), Fn = /* @__PURE__ */ To(fn, [["__scopeId", "data-v-f7aebfad"]]);
|
|
1774
1776
|
export {
|
|
1775
|
-
|
|
1777
|
+
Fn as default
|
|
1776
1778
|
};
|