@feedmepos/mf-hrm-portal 2.3.2-dev.7 → 2.3.2-dev.9
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-Bw0E-hZl.js → ApprovalCodeList-gb0bre9J.js} +7 -7
- package/dist/{AuditLogList-CA-_t77n.js → AuditLogList-9cwS6bL7.js} +795 -719
- package/dist/{ConditionBuilderForm.vue_vue_type_script_setup_true_lang-LtjNCAFN.js → ConditionBuilderForm.vue_vue_type_script_setup_true_lang-DR-c15gr.js} +2 -2
- package/dist/{EmployeeList-D_bX0EhQ.js → EmployeeList-DjyoW1we.js} +8 -8
- package/dist/{FormSection.vue_vue_type_script_setup_true_lang-CyZxQa-b.js → FormSection.vue_vue_type_script_setup_true_lang-BBWlADve.js} +1 -1
- package/dist/{GrantUserList-Cg7ITk_M.js → GrantUserList-yU2NqFVO.js} +8 -8
- package/dist/{Main-Bl-Ocx1G.js → Main-4KwMqF3h.js} +5 -5
- package/dist/{Main-BaB4vgI5.js → Main-BS_Lk_eB.js} +1005 -999
- package/dist/{Main-D5wi42fp.js → Main-BuG7SPnC.js} +10 -10
- package/dist/MyPosProfile-CuDzRaRS.js +360 -0
- package/dist/{PermissionSetList-kgG9H3DX.js → PermissionSetList-D7SS1iAr.js} +30 -29
- package/dist/{PortalPermissionEditor.vue_vue_type_script_setup_true_lang-y1YcZpGA.js → PortalPermissionEditor.vue_vue_type_script_setup_true_lang-u1UlV2Aw.js} +902 -901
- package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-fQyCtDXM.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_827dfd60_lang-CYkv2x_y.js} +1 -1
- package/dist/{RoleForm.vue_vue_type_script_setup_true_lang-3Q8udk43.js → RoleForm.vue_vue_type_script_setup_true_lang-hiMgwiya.js} +9 -9
- package/dist/{RoleList-Cmz97HHP.js → RoleList-B3P-LQYV.js} +7 -7
- package/dist/{ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang-CggEy3OI.js → ScheduleAddPositionModal.vue_vue_type_script_setup_true_lang--dsZOhnv.js} +1 -1
- package/dist/{ScheduleGeneralPage-B39k3SQH.js → ScheduleGeneralPage-Pq6ufiDu.js} +2 -2
- package/dist/{ScheduleModal.vue_vue_type_script_setup_true_lang-C5j3D4eF.js → ScheduleModal.vue_vue_type_script_setup_true_lang-DKFJLsTW.js} +4 -4
- package/dist/{SchedulePage-AVmRkFi1.js → SchedulePage-8EAOfiJx.js} +189 -201
- package/dist/{SchedulePositionPage-3rE-O8CG.js → SchedulePositionPage-CGXeUnju.js} +3 -3
- package/dist/{SelectFilter-R7ry_GEg.js → SelectFilter-C-UEVLla.js} +1 -1
- package/dist/{TeamMemberList-CvDnIILn.js → TeamMemberList-Bd1O44Ur.js} +102 -101
- package/dist/TimesheetList-CSCmigCM.js +437 -0
- package/dist/{app-DKUCzcrc.js → app-BohKQtlz.js} +82 -14
- package/dist/app.js +1 -1
- package/dist/{approval-code-nsETgIry.js → approval-code-Bfvxsg8h.js} +4 -4
- package/dist/{dayjs.min-CtULWW1N.js → dayjs.min-C0MqTPg1.js} +1 -1
- package/dist/employee-DWxT78W2.js +172 -0
- package/dist/{grant-user-Dpa_Rl6j.js → grant-user-LZ3b6siI.js} +2 -2
- package/dist/{iteration-DpHBtiyr.js → index-DDDG-LHm.js} +698 -726
- package/dist/iteration-CcXrOMQe.js +30 -0
- package/dist/{lodash-YaHCUo_F.js → lodash-BRqMda7F.js} +1 -1
- package/dist/{member-grant-CEokFI3_.js → member-grant-a3AGCWfT.js} +2 -2
- package/dist/{restaurant-CDFKqEFm.js → restaurant-pL7vHt-H.js} +2 -2
- package/dist/{role-DyBVVlEA.js → role--EKCVqho.js} +8 -7
- package/dist/{rule-xErZqYmH.js → rule-Db3gFVHx.js} +83 -82
- package/dist/src/api/audit-log/index.d.ts +2 -0
- package/dist/src/api/employee/index.d.ts +1 -2
- package/dist/src/stores/approval-code.d.ts +1 -1
- package/dist/src/stores/employee.d.ts +3 -9
- package/dist/src/stores/grant-user.d.ts +1 -1
- package/dist/src/stores/permission-assignment.d.ts +2 -2
- package/dist/src/stores/permission-set.d.ts +2 -2
- package/dist/src/stores/restaurant.d.ts +2 -2
- package/dist/src/stores/role.d.ts +2 -2
- package/dist/src/stores/team.d.ts +1 -1
- package/dist/src/stores/timesheet.d.ts +62 -47
- package/dist/src/types/timesheet.d.ts +3 -0
- package/dist/src/views/audit-log/locales/index.d.ts +28 -0
- package/dist/src/views/audit-log/useTraceIdDeepLink.d.ts +19 -0
- package/dist/src/views/my-pos-profile/components/PasscodeChangedDialog.vue.d.ts +1 -1
- package/dist/src/views/my-pos-profile/locales/index.d.ts +40 -0
- package/dist/style.css +1 -1
- package/dist/timesheet-NYW1P4rf.js +76 -0
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{useAppStore-BqsvPsPB.js → useAppStore-DV13z6oc.js} +1 -1
- package/dist/{useLoading-BS1bnZg1.js → useLoading-Fcnnfywt.js} +1 -1
- package/dist/useMessage-_ywT_N9X.js +17 -0
- package/dist/{useReportPermissions-DJEhkyGc.js → useReportPermissions-BcyVoKVq.js} +13 -13
- package/package.json +3 -3
- package/dist/MyPosProfile-CUG_201f.js +0 -290
- package/dist/TimesheetList-DYoglTi8.js +0 -401
- package/dist/TimesheetList.vue_vue_type_style_index_0_scoped_d0c6fd51_lang-DBpzyQ17.js +0 -63
- package/dist/employee-DlsSqR3i.js +0 -210
|
@@ -0,0 +1,437 @@
|
|
|
1
|
+
import { ref as m, computed as v, defineComponent as fe, onMounted as pe, watch as X, resolveComponent as d, createElementBlock as P, openBlock as L, Fragment as Z, createVNode as s, createElementVNode as i, unref as n, withCtx as w, createCommentVNode as ve, toDisplayString as T, createTextVNode as he, isRef as ge, renderList as De, createBlock as ee, nextTick as we } from "vue";
|
|
2
|
+
import { d as l } from "./dayjs.min-C0MqTPg1.js";
|
|
3
|
+
import { useI18n as Ye } from "@feedmepos/mf-common";
|
|
4
|
+
import { useSnackbar as be, components as ye } from "@feedmepos/ui-library";
|
|
5
|
+
import { S as _e } from "./SelectFilter-C-UEVLla.js";
|
|
6
|
+
import { _ as Me } from "./app-BohKQtlz.js";
|
|
7
|
+
import { _ as xe } from "./TableEmptyState.vue_vue_type_script_setup_true_lang-IfAZmWr0.js";
|
|
8
|
+
import { u as ke } from "./useLoading-Fcnnfywt.js";
|
|
9
|
+
import { g as Se, s as Ve } from "./iteration-CcXrOMQe.js";
|
|
10
|
+
import { f as Ce } from "./utils-BZkjJbju.js";
|
|
11
|
+
import { n as Fe } from "./string-DZQ1uNjn.js";
|
|
12
|
+
import { u as Le } from "./restaurant-pL7vHt-H.js";
|
|
13
|
+
import { u as Te } from "./timesheet-NYW1P4rf.js";
|
|
14
|
+
function Oe(Y, a) {
|
|
15
|
+
return ["years", "months"].find((y) => {
|
|
16
|
+
const _ = Y.startOf(y), p = Y.endOf(y);
|
|
17
|
+
return Y.isSame(_, "day") && a.isSame(p, "day");
|
|
18
|
+
}) || "days";
|
|
19
|
+
}
|
|
20
|
+
function Re() {
|
|
21
|
+
const Y = {
|
|
22
|
+
startDate: l().format("YYYY-MM-DD"),
|
|
23
|
+
endDate: l().format("YYYY-MM-DD")
|
|
24
|
+
}, a = m(Y), b = v(() => {
|
|
25
|
+
if (!a.value) return "No dates selected.";
|
|
26
|
+
const p = a.value.startDate ?? "Start", g = a.value.endDate ?? "End";
|
|
27
|
+
return `${p} - ${g}`;
|
|
28
|
+
}), y = v(() => ({
|
|
29
|
+
startDate: new Date(a.value.startDate),
|
|
30
|
+
endDate: new Date(a.value.endDate)
|
|
31
|
+
}));
|
|
32
|
+
function _(p) {
|
|
33
|
+
const g = l(a.value.startDate), c = l(a.value.endDate), h = Oe(g, c), M = h === "days" ? c.diff(g, "days") + 1 : 1, O = p === "subtract" ? (D) => D.subtract(M, h) : (D) => D.add(M, h);
|
|
34
|
+
a.value = {
|
|
35
|
+
startDate: O(g).startOf(h).format("YYYY-MM-DD"),
|
|
36
|
+
endDate: O(c).endOf(h).format("YYYY-MM-DD")
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
return { dateRange: a, parsedDateRange: y, dateRangeLabel: b, setRange: _ };
|
|
40
|
+
}
|
|
41
|
+
const Ie = {
|
|
42
|
+
class: "my-16 flex w-[350px] flex-col gap-40"
|
|
43
|
+
}, $e = {
|
|
44
|
+
class: "flex gap-16"
|
|
45
|
+
}, Ae = {
|
|
46
|
+
class: "flex flex-col gap-4"
|
|
47
|
+
}, Ee = {
|
|
48
|
+
class: "fm-typo-body-md-400 text-fm-color-typo-secondary"
|
|
49
|
+
}, Ke = {
|
|
50
|
+
class: "fm-typo-body-md-700 text-fm-color-typo-primary"
|
|
51
|
+
}, Ne = {
|
|
52
|
+
class: "flex flex-col gap-8"
|
|
53
|
+
}, Ue = {
|
|
54
|
+
class: "fm-typo-body-xl-700"
|
|
55
|
+
}, ze = {
|
|
56
|
+
class: "flex flex-col gap-24"
|
|
57
|
+
}, Be = {
|
|
58
|
+
class: "flex flex-col gap-8"
|
|
59
|
+
}, Pe = {
|
|
60
|
+
class: "fm-typo-body-xl-700"
|
|
61
|
+
}, je = {
|
|
62
|
+
class: "flex flex-col gap-24"
|
|
63
|
+
}, He = {
|
|
64
|
+
key: 0,
|
|
65
|
+
class: "fm-typo-body-sm-400 text-fm-color-typo-error mt-1 flex items-center gap-4"
|
|
66
|
+
}, Ge = {
|
|
67
|
+
class: "flex items-center justify-start gap-8"
|
|
68
|
+
}, qe = {
|
|
69
|
+
class: "space-y-8"
|
|
70
|
+
}, Je = {
|
|
71
|
+
class: "flex items-start gap-8 flex-wrap xs:px-16"
|
|
72
|
+
}, Qe = {
|
|
73
|
+
class: "flex items-center gap-8"
|
|
74
|
+
}, We = {
|
|
75
|
+
class: "flex h-full flex-col overflow-auto"
|
|
76
|
+
}, ct = /* @__PURE__ */ fe({
|
|
77
|
+
__name: "TimesheetList",
|
|
78
|
+
setup(Y) {
|
|
79
|
+
const {
|
|
80
|
+
t: a
|
|
81
|
+
} = Ye(), b = be(), y = ke(b), _ = [{
|
|
82
|
+
label: a("hr.timesheet.listView"),
|
|
83
|
+
value: "listView"
|
|
84
|
+
}, {
|
|
85
|
+
label: a("hr.timesheet.userView"),
|
|
86
|
+
value: "userView"
|
|
87
|
+
}], p = m("listView"), g = v(() => {
|
|
88
|
+
var t;
|
|
89
|
+
return (t = _.find((e) => e.value === p.value)) == null ? void 0 : t.label;
|
|
90
|
+
}), c = m(""), h = Te(), M = Le(), O = v(() => new Map(M.restaurants.value.map((t) => [t._id, t.profile.code]))), D = v(() => h.timesheets.value.map((r) => {
|
|
91
|
+
const u = O.value.get(r.restaurantId);
|
|
92
|
+
return {
|
|
93
|
+
...r,
|
|
94
|
+
restaurantCode: u
|
|
95
|
+
};
|
|
96
|
+
})), R = v(() => D.value.filter((t) => {
|
|
97
|
+
var e, r;
|
|
98
|
+
return t.user.name.toLowerCase().includes(c.value.toLowerCase()) || t.restaurantName.toLowerCase().includes(c.value.toLowerCase()) || ((e = t.restaurantCode) == null ? void 0 : e.toLowerCase().includes(c.value.toLowerCase())) || ((r = t.user.code) == null ? void 0 : r.toLowerCase().includes(c.value.toLowerCase()));
|
|
99
|
+
})), j = v(() => {
|
|
100
|
+
const t = Se(D.value, (r) => r.user.name), e = Object.entries(t).map(([r, u]) => ({
|
|
101
|
+
key: r,
|
|
102
|
+
user: u[0].user.name,
|
|
103
|
+
code: u[0].user.code || "",
|
|
104
|
+
timesheets: u,
|
|
105
|
+
total: Ce(u.reduce((A, B) => A + B.totalMin, 0))
|
|
106
|
+
}));
|
|
107
|
+
return Ve(e, {
|
|
108
|
+
selector: "user"
|
|
109
|
+
});
|
|
110
|
+
}), H = v(() => j.value.filter((t) => {
|
|
111
|
+
var e;
|
|
112
|
+
return t.user.toLowerCase().includes(c.value.toLowerCase()) || ((e = t.code) == null ? void 0 : e.toLowerCase().includes(c.value.toLowerCase()));
|
|
113
|
+
})), K = m(!1), N = v(() => K.value && D.value.length === 0), U = async () => {
|
|
114
|
+
const {
|
|
115
|
+
startDate: t,
|
|
116
|
+
endDate: e
|
|
117
|
+
} = x.value;
|
|
118
|
+
K.value = !0;
|
|
119
|
+
try {
|
|
120
|
+
await h.readTimesheet(new Date(t), new Date(e), I.value), await we(), z.value = Object.fromEntries(Object.entries(new Array(j.value.length).fill(!0)));
|
|
121
|
+
} catch (r) {
|
|
122
|
+
b.open({
|
|
123
|
+
title: r instanceof Error ? r.message : `${r}`,
|
|
124
|
+
type: "error"
|
|
125
|
+
});
|
|
126
|
+
} finally {
|
|
127
|
+
K.value = !1;
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
pe(async () => {
|
|
131
|
+
try {
|
|
132
|
+
await M.readRestaurants();
|
|
133
|
+
} catch (t) {
|
|
134
|
+
console.error("Failed to load timesheet dependencies:", t), b.open({
|
|
135
|
+
message: t instanceof Error ? t.message : String(t),
|
|
136
|
+
type: "error"
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
U();
|
|
140
|
+
});
|
|
141
|
+
const I = m(), te = v(() => M.restaurants.value.filter((t) => t.managable).map((t) => ({
|
|
142
|
+
label: `${t.profile.code ? `${t.profile.code} - ` : ""}${t.profile.name}`,
|
|
143
|
+
value: t._id
|
|
144
|
+
}))), {
|
|
145
|
+
dateRange: x,
|
|
146
|
+
dateRangeLabel: ae,
|
|
147
|
+
setRange: G
|
|
148
|
+
} = Re(), oe = [{
|
|
149
|
+
label: "Today",
|
|
150
|
+
value: {
|
|
151
|
+
startDate: l().format("YYYY-MM-DD"),
|
|
152
|
+
endDate: l().format("YYYY-MM-DD")
|
|
153
|
+
}
|
|
154
|
+
}, {
|
|
155
|
+
label: "Yesterday",
|
|
156
|
+
value: {
|
|
157
|
+
startDate: l().subtract(1, "day").format("YYYY-MM-DD"),
|
|
158
|
+
endDate: l().subtract(1, "day").format("YYYY-MM-DD")
|
|
159
|
+
}
|
|
160
|
+
}, {
|
|
161
|
+
label: "This week",
|
|
162
|
+
value: {
|
|
163
|
+
startDate: l().startOf("week").format("YYYY-MM-DD"),
|
|
164
|
+
endDate: l().endOf("week").format("YYYY-MM-DD")
|
|
165
|
+
}
|
|
166
|
+
}, {
|
|
167
|
+
label: "Last week",
|
|
168
|
+
value: {
|
|
169
|
+
startDate: l().subtract(1, "week").startOf("week").format("YYYY-MM-DD"),
|
|
170
|
+
endDate: l().subtract(1, "week").endOf("week").format("YYYY-MM-DD")
|
|
171
|
+
}
|
|
172
|
+
}, {
|
|
173
|
+
label: "Last 7 days",
|
|
174
|
+
value: {
|
|
175
|
+
startDate: l().subtract(7, "day").format("YYYY-MM-DD"),
|
|
176
|
+
endDate: l().subtract(1, "day").format("YYYY-MM-DD")
|
|
177
|
+
}
|
|
178
|
+
}, {
|
|
179
|
+
label: "This month",
|
|
180
|
+
value: {
|
|
181
|
+
startDate: l().startOf("month").format("YYYY-MM-DD"),
|
|
182
|
+
endDate: l().endOf("month").format("YYYY-MM-DD")
|
|
183
|
+
}
|
|
184
|
+
}, {
|
|
185
|
+
label: "Last month",
|
|
186
|
+
value: {
|
|
187
|
+
startDate: l().subtract(1, "month").startOf("month").format("YYYY-MM-DD"),
|
|
188
|
+
endDate: l().subtract(1, "month").endOf("month").format("YYYY-MM-DD")
|
|
189
|
+
}
|
|
190
|
+
}];
|
|
191
|
+
X([x, I], async () => {
|
|
192
|
+
U();
|
|
193
|
+
});
|
|
194
|
+
const se = [{
|
|
195
|
+
accessorKey: "user.code",
|
|
196
|
+
size: 100,
|
|
197
|
+
header: () => a("hr.employee.columns.code"),
|
|
198
|
+
cell: (t) => t.row.original.user.code || "--",
|
|
199
|
+
enableSorting: !0
|
|
200
|
+
}, {
|
|
201
|
+
accessorKey: "user",
|
|
202
|
+
header: () => a("hr.timesheet.columns.name"),
|
|
203
|
+
cell: (t) => t.row.original.user.name,
|
|
204
|
+
enableSorting: !1
|
|
205
|
+
}, {
|
|
206
|
+
accessorKey: "restaurantName",
|
|
207
|
+
header: () => a("hr.timesheet.columns.restaurant"),
|
|
208
|
+
cell: (t) => {
|
|
209
|
+
const e = t.row.original.restaurantCode, r = t.row.original.restaurantName;
|
|
210
|
+
return `${e ? e + " - " : ""}${r}`;
|
|
211
|
+
},
|
|
212
|
+
enableSorting: !0
|
|
213
|
+
}, {
|
|
214
|
+
accessorKey: "start",
|
|
215
|
+
header: () => a("hr.timesheet.columns.start"),
|
|
216
|
+
cell: (t) => t.row.original.start || "--",
|
|
217
|
+
enableSorting: !0
|
|
218
|
+
}, {
|
|
219
|
+
accessorKey: "end",
|
|
220
|
+
header: () => a("hr.timesheet.columns.end"),
|
|
221
|
+
cell: (t) => t.row.original.end || "--",
|
|
222
|
+
enableSorting: !0
|
|
223
|
+
}, {
|
|
224
|
+
name: "duration",
|
|
225
|
+
accessorKey: "duration",
|
|
226
|
+
header: () => a("hr.timesheet.columns.duration"),
|
|
227
|
+
cell: (t) => t.row.original.duration || "--",
|
|
228
|
+
enableSorting: !0
|
|
229
|
+
}], z = m({}), le = [{
|
|
230
|
+
accessorKey: "code",
|
|
231
|
+
size: 100,
|
|
232
|
+
header: () => a("hr.employee.columns.code"),
|
|
233
|
+
cell: (t) => t.row.original.code,
|
|
234
|
+
enableSorting: !1
|
|
235
|
+
}, {
|
|
236
|
+
accessorKey: "user",
|
|
237
|
+
header: () => a("hr.timesheet.columns.name"),
|
|
238
|
+
cell: (t) => {
|
|
239
|
+
const e = t.row.original;
|
|
240
|
+
if (typeof e.user == "string") {
|
|
241
|
+
const r = t.row.getIsExpanded();
|
|
242
|
+
return s("div", {
|
|
243
|
+
class: "flex items-center gap-8"
|
|
244
|
+
}, [s("div", {
|
|
245
|
+
onClick: (u) => {
|
|
246
|
+
u.stopPropagation(), t.row.getToggleExpandedHandler()(u);
|
|
247
|
+
}
|
|
248
|
+
}, [s(ye.FmButton, {
|
|
249
|
+
variant: "tertiary",
|
|
250
|
+
icon: r ? "keyboard_arrow_up" : "keyboard_arrow_down"
|
|
251
|
+
}, null)]), e.user]);
|
|
252
|
+
}
|
|
253
|
+
},
|
|
254
|
+
enableSorting: !1
|
|
255
|
+
}, {
|
|
256
|
+
accessorKey: "start",
|
|
257
|
+
header: () => a("hr.timesheet.columns.start"),
|
|
258
|
+
cell: (t) => {
|
|
259
|
+
const e = t.row.original;
|
|
260
|
+
return (e == null ? void 0 : e.start) || "--";
|
|
261
|
+
},
|
|
262
|
+
enableSorting: !1
|
|
263
|
+
}, {
|
|
264
|
+
accessorKey: "end",
|
|
265
|
+
header: () => a("hr.timesheet.columns.end"),
|
|
266
|
+
cell: (t) => {
|
|
267
|
+
const e = t.row.original;
|
|
268
|
+
return (e == null ? void 0 : e.end) || "--";
|
|
269
|
+
},
|
|
270
|
+
enableSorting: !1
|
|
271
|
+
}, {
|
|
272
|
+
name: "duration",
|
|
273
|
+
accessorKey: "duration",
|
|
274
|
+
header: () => a("hr.timesheet.columns.hourMinute"),
|
|
275
|
+
cell: (t) => {
|
|
276
|
+
const e = t.row.original;
|
|
277
|
+
return e.total ? `Total: ${e.total}` : e.duration;
|
|
278
|
+
},
|
|
279
|
+
enableSorting: !1
|
|
280
|
+
}], k = m(!1);
|
|
281
|
+
function q(t) {
|
|
282
|
+
f.value = t, S.value = l(f.value.startedAt).format("YYYY-MM-DD"), C.value = l(f.value.endedAt || f.value.startedAt).format("YYYY-MM-DD"), V.value = l(f.value.startedAt).format("HH:mm"), F.value = l(f.value.endedAt || f.value.startedAt).format("HH:mm"), k.value = !0;
|
|
283
|
+
}
|
|
284
|
+
const S = m(), V = m(), C = m(), F = m(), f = m(), $ = m("");
|
|
285
|
+
async function re() {
|
|
286
|
+
const t = J(S.value, V.value), e = J(C.value, F.value);
|
|
287
|
+
if (l(t).isAfter(e)) {
|
|
288
|
+
$.value = a("hr.timesheet.checkOutMustBeforeCheckIn");
|
|
289
|
+
return;
|
|
290
|
+
}
|
|
291
|
+
y.minor(async () => {
|
|
292
|
+
await h.updateTimesheet(f.value, t, e);
|
|
293
|
+
}, {
|
|
294
|
+
successMessage: a("hr.timesheet.update.successMessage")
|
|
295
|
+
}), U(), k.value = !1;
|
|
296
|
+
}
|
|
297
|
+
const J = (t, e) => l(t).set("h", parseInt(e.split(":")[0])).set("m", parseInt(e.split(":")[1])).toISOString();
|
|
298
|
+
return X([S, C, V, F], ([t, e, r, u]) => {
|
|
299
|
+
(t || e || r || u) && ($.value = "");
|
|
300
|
+
}), (t, e) => {
|
|
301
|
+
const r = d("FmAvatar"), u = d("FmDatePicker"), A = d("FmTimePicker"), B = d("FmIcon"), E = d("FmButton"), ne = d("FmSideSheet"), Q = d("FmChip"), ie = d("FmDateRangePicker"), ue = d("FmMenuItem"), de = d("FmMenu"), me = d("FmSpacer"), ce = d("FmSearch"), W = d("FmTable");
|
|
302
|
+
return L(), P(Z, null, [s(ne, {
|
|
303
|
+
modelValue: k.value,
|
|
304
|
+
"onUpdate:modelValue": e[5] || (e[5] = (o) => k.value = o),
|
|
305
|
+
"dismiss-away": "",
|
|
306
|
+
header: n(a)("hr.timesheet.update.title")
|
|
307
|
+
}, {
|
|
308
|
+
"side-sheet-footer": w(() => [i("div", Ge, [s(E, {
|
|
309
|
+
label: n(a)("common.update"),
|
|
310
|
+
size: "md",
|
|
311
|
+
variant: "primary",
|
|
312
|
+
onClick: re
|
|
313
|
+
}, null, 8, ["label"]), s(E, {
|
|
314
|
+
label: n(a)("common.cancel"),
|
|
315
|
+
size: "md",
|
|
316
|
+
variant: "secondary",
|
|
317
|
+
onClick: e[4] || (e[4] = (o) => k.value = !1)
|
|
318
|
+
}, null, 8, ["label"])])]),
|
|
319
|
+
default: w(() => [i("div", Ie, [i("div", $e, [s(r, {
|
|
320
|
+
name: f.value.user.name,
|
|
321
|
+
initials: n(Fe)(f.value.user.name),
|
|
322
|
+
size: "lg"
|
|
323
|
+
}, null, 8, ["name", "initials"]), i("div", Ae, [i("div", Ee, T(n(a)("hr.timesheet.employeeName")), 1), i("div", Ke, T(f.value.user.name), 1)])]), i("div", Ne, [i("div", Ue, T(n(a)("hr.timesheet.update.checkIn")), 1), i("div", ze, [s(u, {
|
|
324
|
+
modelValue: S.value,
|
|
325
|
+
"onUpdate:modelValue": e[0] || (e[0] = (o) => S.value = o),
|
|
326
|
+
disabled: !1,
|
|
327
|
+
label: n(a)("hr.timesheet.update.date")
|
|
328
|
+
}, null, 8, ["modelValue", "label"]), s(A, {
|
|
329
|
+
modelValue: V.value,
|
|
330
|
+
"onUpdate:modelValue": e[1] || (e[1] = (o) => V.value = o),
|
|
331
|
+
label: n(a)("hr.timesheet.update.time")
|
|
332
|
+
}, null, 8, ["modelValue", "label"])])]), i("div", Be, [i("div", Pe, T(n(a)("hr.timesheet.update.checkOut")), 1), i("div", je, [s(u, {
|
|
333
|
+
modelValue: C.value,
|
|
334
|
+
"onUpdate:modelValue": e[2] || (e[2] = (o) => C.value = o),
|
|
335
|
+
disabled: !1,
|
|
336
|
+
label: n(a)("hr.timesheet.update.date")
|
|
337
|
+
}, null, 8, ["modelValue", "label"]), s(A, {
|
|
338
|
+
modelValue: F.value,
|
|
339
|
+
"onUpdate:modelValue": e[3] || (e[3] = (o) => F.value = o),
|
|
340
|
+
label: n(a)("hr.timesheet.update.time")
|
|
341
|
+
}, null, 8, ["modelValue", "label"])])]), $.value ? (L(), P("div", He, [s(B, {
|
|
342
|
+
color: "#FF3B30",
|
|
343
|
+
name: "error",
|
|
344
|
+
size: "sm"
|
|
345
|
+
}), he(" " + T($.value), 1)])) : ve("", !0)])]),
|
|
346
|
+
_: 1
|
|
347
|
+
}, 8, ["modelValue", "header"]), i("div", qe, [i("div", Je, [s(_e, {
|
|
348
|
+
modelValue: I.value,
|
|
349
|
+
"onUpdate:modelValue": e[6] || (e[6] = (o) => I.value = o),
|
|
350
|
+
multiple: "",
|
|
351
|
+
items: te.value,
|
|
352
|
+
variant: "dark",
|
|
353
|
+
"selected-prefix": n(a)("hr.role.columns.restaurants"),
|
|
354
|
+
placeholder: n(a)("hr.role.columns.restaurants"),
|
|
355
|
+
class: "!w-auto pt-[3px]"
|
|
356
|
+
}, null, 8, ["modelValue", "items", "selected-prefix", "placeholder"]), i("div", Qe, [s(ie, {
|
|
357
|
+
modelValue: n(x),
|
|
358
|
+
"onUpdate:modelValue": e[7] || (e[7] = (o) => ge(x) ? x.value = o : null),
|
|
359
|
+
"show-predefined-range": "",
|
|
360
|
+
"predefined-range": oe
|
|
361
|
+
}, {
|
|
362
|
+
"trigger-button": w(() => [s(Q, {
|
|
363
|
+
label: n(ae)
|
|
364
|
+
}, null, 8, ["label"])]),
|
|
365
|
+
_: 1
|
|
366
|
+
}, 8, ["modelValue"]), s(E, {
|
|
367
|
+
icon: "chevron_left",
|
|
368
|
+
variant: "tertiary",
|
|
369
|
+
onClick: e[8] || (e[8] = (o) => n(G)("subtract"))
|
|
370
|
+
}), s(E, {
|
|
371
|
+
icon: "chevron_right",
|
|
372
|
+
variant: "tertiary",
|
|
373
|
+
onClick: e[9] || (e[9] = (o) => n(G)("add"))
|
|
374
|
+
})]), s(de, {
|
|
375
|
+
class: "pt-[3px]"
|
|
376
|
+
}, {
|
|
377
|
+
"menu-button": w(() => [s(Q, {
|
|
378
|
+
label: g.value,
|
|
379
|
+
"right-icon": "keyboard_arrow_down"
|
|
380
|
+
}, null, 8, ["label"])]),
|
|
381
|
+
default: w(() => [(L(), P(Z, null, De(_, (o) => s(ue, {
|
|
382
|
+
key: o.value,
|
|
383
|
+
label: o.label,
|
|
384
|
+
onClick: (Xe) => p.value = o.value
|
|
385
|
+
}, null, 8, ["label", "onClick"])), 64))]),
|
|
386
|
+
_: 1
|
|
387
|
+
}), s(me), s(ce, {
|
|
388
|
+
modelValue: c.value,
|
|
389
|
+
"onUpdate:modelValue": e[10] || (e[10] = (o) => c.value = o),
|
|
390
|
+
class: "w-[320px]",
|
|
391
|
+
placeholder: n(a)("hr.timesheet.search.placeholder")
|
|
392
|
+
}, null, 8, ["modelValue", "placeholder"])]), s(Me, {
|
|
393
|
+
class: "w-full xs:px-16"
|
|
394
|
+
}, {
|
|
395
|
+
default: w(() => [i("div", We, [s(xe, {
|
|
396
|
+
"is-loading": N.value,
|
|
397
|
+
"is-empty": p.value === "listView" ? R.value.length === 0 : H.value.length === 0,
|
|
398
|
+
"collapse-at": !1,
|
|
399
|
+
title: n(a)("hr.timesheet.noData.title"),
|
|
400
|
+
subtitle: ""
|
|
401
|
+
}, {
|
|
402
|
+
default: w(() => [p.value === "listView" ? (L(), ee(W, {
|
|
403
|
+
key: 0,
|
|
404
|
+
class: "min-w-[640px]",
|
|
405
|
+
"column-defs": se,
|
|
406
|
+
"row-data": R.value,
|
|
407
|
+
"page-size": R.value.length,
|
|
408
|
+
loading: N.value,
|
|
409
|
+
virtual: R.value.length > 0,
|
|
410
|
+
"pin-header-row": "",
|
|
411
|
+
"hide-footer": "",
|
|
412
|
+
"shrink-at": !1,
|
|
413
|
+
onRowClick: e[11] || (e[11] = (o) => q(o.original))
|
|
414
|
+
}, null, 8, ["row-data", "page-size", "loading", "virtual"])) : (L(), ee(W, {
|
|
415
|
+
key: 1,
|
|
416
|
+
class: "min-w-[640px]",
|
|
417
|
+
"column-defs": le,
|
|
418
|
+
"row-data": H.value,
|
|
419
|
+
"page-size": 100,
|
|
420
|
+
loading: N.value,
|
|
421
|
+
"pin-header-row": "",
|
|
422
|
+
"shrink-at": !1,
|
|
423
|
+
"expanded-state": z.value,
|
|
424
|
+
"get-sub-row": (o) => o.timesheets,
|
|
425
|
+
"onUpdate:expandedState": e[12] || (e[12] = (o) => z.value = o),
|
|
426
|
+
onRowClick: e[13] || (e[13] = (o) => q(o.original))
|
|
427
|
+
}, null, 8, ["row-data", "loading", "expanded-state", "get-sub-row"]))]),
|
|
428
|
+
_: 1
|
|
429
|
+
}, 8, ["is-loading", "is-empty", "title"])])]),
|
|
430
|
+
_: 1
|
|
431
|
+
})])], 64);
|
|
432
|
+
};
|
|
433
|
+
}
|
|
434
|
+
});
|
|
435
|
+
export {
|
|
436
|
+
ct as default
|
|
437
|
+
};
|
|
@@ -2721,7 +2721,14 @@ const gn = {
|
|
|
2721
2721
|
requestPath: "Request Path",
|
|
2722
2722
|
traceId: "Trace ID"
|
|
2723
2723
|
},
|
|
2724
|
+
deepLink: {
|
|
2725
|
+
notFound: "Audit log not found for this link.",
|
|
2726
|
+
loadFailed: "Could not load the audit log for this link. Reload to try again."
|
|
2727
|
+
},
|
|
2724
2728
|
detail: {
|
|
2729
|
+
copyLink: "Copy link",
|
|
2730
|
+
linkCopied: "Link copied",
|
|
2731
|
+
linkCopyFailed: "Failed to copy link",
|
|
2725
2732
|
header: "Audit Log Detail",
|
|
2726
2733
|
date: "Date",
|
|
2727
2734
|
timestamp: "Timestamp",
|
|
@@ -3075,7 +3082,14 @@ const gn = {
|
|
|
3075
3082
|
requestPath: "URL ที่เข้าถึง",
|
|
3076
3083
|
traceId: "รหัสติดตาม"
|
|
3077
3084
|
},
|
|
3085
|
+
deepLink: {
|
|
3086
|
+
notFound: "ไม่พบบันทึกการตรวจสอบสำหรับลิงก์นี้",
|
|
3087
|
+
loadFailed: "ไม่สามารถโหลดบันทึกการตรวจสอบสำหรับลิงก์นี้ได้ โปรดโหลดหน้าใหม่เพื่อลองอีกครั้ง"
|
|
3088
|
+
},
|
|
3078
3089
|
detail: {
|
|
3090
|
+
copyLink: "คัดลอกลิงก์",
|
|
3091
|
+
linkCopied: "คัดลอกลิงก์แล้ว",
|
|
3092
|
+
linkCopyFailed: "คัดลอกลิงก์ไม่สำเร็จ",
|
|
3079
3093
|
header: "รายละเอียดประวัติการใช้งาน",
|
|
3080
3094
|
date: "วันที่",
|
|
3081
3095
|
timestamp: "เวลา",
|
|
@@ -3430,7 +3444,14 @@ const gn = {
|
|
|
3430
3444
|
requestPath: "请求路径",
|
|
3431
3445
|
traceId: "追踪 ID"
|
|
3432
3446
|
},
|
|
3447
|
+
deepLink: {
|
|
3448
|
+
notFound: "找不到此链接对应的审计日志。",
|
|
3449
|
+
loadFailed: "无法加载此链接对应的审计日志,请刷新页面重试。"
|
|
3450
|
+
},
|
|
3433
3451
|
detail: {
|
|
3452
|
+
copyLink: "复制链接",
|
|
3453
|
+
linkCopied: "链接已复制",
|
|
3454
|
+
linkCopyFailed: "复制链接失败",
|
|
3434
3455
|
header: "审计日志详情",
|
|
3435
3456
|
date: "日期",
|
|
3436
3457
|
timestamp: "时间戳",
|
|
@@ -3785,7 +3806,14 @@ const gn = {
|
|
|
3785
3806
|
requestPath: "請求路徑",
|
|
3786
3807
|
traceId: "追蹤 ID"
|
|
3787
3808
|
},
|
|
3809
|
+
deepLink: {
|
|
3810
|
+
notFound: "找不到此連結對應的稽核日誌。",
|
|
3811
|
+
loadFailed: "無法載入此連結對應的稽核日誌,請重新整理頁面後再試。"
|
|
3812
|
+
},
|
|
3788
3813
|
detail: {
|
|
3814
|
+
copyLink: "複製連結",
|
|
3815
|
+
linkCopied: "連結已複製",
|
|
3816
|
+
linkCopyFailed: "複製連結失敗",
|
|
3789
3817
|
header: "審計日誌詳情",
|
|
3790
3818
|
date: "日期",
|
|
3791
3819
|
timestamp: "時間戳",
|
|
@@ -14338,7 +14366,10 @@ Max 5 days / week`,
|
|
|
14338
14366
|
updatedJustNow: "Updated just now",
|
|
14339
14367
|
show: "Show passcode",
|
|
14340
14368
|
hide: "Hide passcode",
|
|
14341
|
-
change: "Change passcode"
|
|
14369
|
+
change: "Change passcode",
|
|
14370
|
+
empty: "No passcode yet",
|
|
14371
|
+
emptyHint: "Generate a passcode to log in to FeedMe POS.",
|
|
14372
|
+
generate: "Generate passcode"
|
|
14342
14373
|
},
|
|
14343
14374
|
change: {
|
|
14344
14375
|
title: "Change POS passcode",
|
|
@@ -14348,11 +14379,18 @@ Max 5 days / week`,
|
|
|
14348
14379
|
inProgress: "Your passcode is already being changed. Please wait a moment and try again.",
|
|
14349
14380
|
incomplete: "Your passcode was not updated at every restaurant. Please change it again."
|
|
14350
14381
|
},
|
|
14382
|
+
generate: {
|
|
14383
|
+
failed: "Couldn't generate your passcode. Please try again."
|
|
14384
|
+
},
|
|
14351
14385
|
changed: {
|
|
14352
14386
|
title: "Passcode changed",
|
|
14353
14387
|
message: "Your old passcode has stopped working. Use this new one to log in to FeedMe POS at all your restaurants.",
|
|
14354
14388
|
done: "Done"
|
|
14355
14389
|
},
|
|
14390
|
+
generated: {
|
|
14391
|
+
title: "Passcode generated",
|
|
14392
|
+
message: "Use this passcode to log in to FeedMe POS at all your restaurants."
|
|
14393
|
+
},
|
|
14356
14394
|
manageAccount: {
|
|
14357
14395
|
message: "To update your name, phone number, email or account password, go to",
|
|
14358
14396
|
link: "Manage Account",
|
|
@@ -14389,7 +14427,10 @@ Max 5 days / week`,
|
|
|
14389
14427
|
updatedJustNow: "อัปเดตเมื่อสักครู่",
|
|
14390
14428
|
show: "แสดงรหัสผ่าน",
|
|
14391
14429
|
hide: "ซ่อนรหัสผ่าน",
|
|
14392
|
-
change: "เปลี่ยนรหัสผ่าน"
|
|
14430
|
+
change: "เปลี่ยนรหัสผ่าน",
|
|
14431
|
+
empty: "ยังไม่มีรหัสผ่าน",
|
|
14432
|
+
emptyHint: "สร้างรหัสผ่านเพื่อเข้าสู่ระบบ FeedMe POS",
|
|
14433
|
+
generate: "สร้างรหัสผ่าน"
|
|
14393
14434
|
},
|
|
14394
14435
|
change: {
|
|
14395
14436
|
title: "เปลี่ยนรหัสผ่าน POS",
|
|
@@ -14399,11 +14440,18 @@ Max 5 days / week`,
|
|
|
14399
14440
|
inProgress: "กำลังเปลี่ยนรหัสผ่านของคุณอยู่ โปรดรอสักครู่แล้วลองอีกครั้ง",
|
|
14400
14441
|
incomplete: "รหัสผ่านของคุณยังไม่ได้อัปเดตในทุกร้านอาหาร โปรดเปลี่ยนอีกครั้ง"
|
|
14401
14442
|
},
|
|
14443
|
+
generate: {
|
|
14444
|
+
failed: "ไม่สามารถสร้างรหัสผ่านได้ โปรดลองอีกครั้ง"
|
|
14445
|
+
},
|
|
14402
14446
|
changed: {
|
|
14403
14447
|
title: "เปลี่ยนรหัสผ่านแล้ว",
|
|
14404
14448
|
message: "รหัสผ่านเดิมของคุณใช้งานไม่ได้แล้ว ใช้รหัสใหม่นี้เพื่อเข้าสู่ระบบ FeedMe POS ในทุกร้านอาหารของคุณ",
|
|
14405
14449
|
done: "เสร็จสิ้น"
|
|
14406
14450
|
},
|
|
14451
|
+
generated: {
|
|
14452
|
+
title: "สร้างรหัสผ่านแล้ว",
|
|
14453
|
+
message: "ใช้รหัสผ่านนี้เพื่อเข้าสู่ระบบ FeedMe POS ในทุกร้านอาหารของคุณ"
|
|
14454
|
+
},
|
|
14407
14455
|
manageAccount: {
|
|
14408
14456
|
message: "หากต้องการอัปเดตชื่อ หมายเลขโทรศัพท์ อีเมล หรือรหัสผ่านบัญชี ให้ไปที่",
|
|
14409
14457
|
link: "จัดการบัญชี",
|
|
@@ -14440,7 +14488,10 @@ Max 5 days / week`,
|
|
|
14440
14488
|
updatedJustNow: "刚刚更新",
|
|
14441
14489
|
show: "显示密码",
|
|
14442
14490
|
hide: "隐藏密码",
|
|
14443
|
-
change: "更改密码"
|
|
14491
|
+
change: "更改密码",
|
|
14492
|
+
empty: "尚未设置密码",
|
|
14493
|
+
emptyHint: "生成密码后即可登录 FeedMe POS。",
|
|
14494
|
+
generate: "生成密码"
|
|
14444
14495
|
},
|
|
14445
14496
|
change: {
|
|
14446
14497
|
title: "更改 POS 密码",
|
|
@@ -14450,11 +14501,18 @@ Max 5 days / week`,
|
|
|
14450
14501
|
inProgress: "您的密码正在更改中,请稍候再试。",
|
|
14451
14502
|
incomplete: "您的密码未在所有餐厅更新,请再次更改。"
|
|
14452
14503
|
},
|
|
14504
|
+
generate: {
|
|
14505
|
+
failed: "无法生成密码,请重试。"
|
|
14506
|
+
},
|
|
14453
14507
|
changed: {
|
|
14454
14508
|
title: "密码已更改",
|
|
14455
14509
|
message: "您的旧密码已失效。请使用此新密码登录您所有餐厅的 FeedMe POS。",
|
|
14456
14510
|
done: "完成"
|
|
14457
14511
|
},
|
|
14512
|
+
generated: {
|
|
14513
|
+
title: "密码已生成",
|
|
14514
|
+
message: "请使用此密码在您的所有餐厅登录 FeedMe POS。"
|
|
14515
|
+
},
|
|
14458
14516
|
manageAccount: {
|
|
14459
14517
|
message: "如需更新姓名、电话号码、电子邮件或账户密码,请前往",
|
|
14460
14518
|
link: "管理账户",
|
|
@@ -14491,7 +14549,10 @@ Max 5 days / week`,
|
|
|
14491
14549
|
updatedJustNow: "剛剛更新",
|
|
14492
14550
|
show: "顯示密碼",
|
|
14493
14551
|
hide: "隱藏密碼",
|
|
14494
|
-
change: "更改密碼"
|
|
14552
|
+
change: "更改密碼",
|
|
14553
|
+
empty: "尚未設定密碼",
|
|
14554
|
+
emptyHint: "產生密碼後即可登入 FeedMe POS。",
|
|
14555
|
+
generate: "產生密碼"
|
|
14495
14556
|
},
|
|
14496
14557
|
change: {
|
|
14497
14558
|
title: "更改 POS 密碼",
|
|
@@ -14501,11 +14562,18 @@ Max 5 days / week`,
|
|
|
14501
14562
|
inProgress: "您的密碼正在更改中,請稍候再試。",
|
|
14502
14563
|
incomplete: "您的密碼未在所有餐廳更新,請再次更改。"
|
|
14503
14564
|
},
|
|
14565
|
+
generate: {
|
|
14566
|
+
failed: "無法產生密碼,請再試一次。"
|
|
14567
|
+
},
|
|
14504
14568
|
changed: {
|
|
14505
14569
|
title: "密碼已更改",
|
|
14506
14570
|
message: "您的舊密碼已失效。請使用此新密碼登入您所有餐廳的 FeedMe POS。",
|
|
14507
14571
|
done: "完成"
|
|
14508
14572
|
},
|
|
14573
|
+
generated: {
|
|
14574
|
+
title: "密碼已產生",
|
|
14575
|
+
message: "請使用此密碼在您的所有餐廳登入 FeedMe POS。"
|
|
14576
|
+
},
|
|
14509
14577
|
manageAccount: {
|
|
14510
14578
|
message: "如需更新姓名、電話號碼、電子郵件或帳戶密碼,請前往",
|
|
14511
14579
|
link: "管理帳戶",
|
|
@@ -20430,20 +20498,20 @@ const wt = (e) => ({
|
|
|
20430
20498
|
}
|
|
20431
20499
|
]
|
|
20432
20500
|
}
|
|
20433
|
-
}), Sh = zt(Nt(je(() => import("./Main-
|
|
20434
|
-
Nt(je(() => import("./AuditLogList-
|
|
20501
|
+
}), Sh = zt(Nt(je(() => import("./Main-BS_Lk_eB.js")))), Ph = zt(Nt(je(() => import("./Main-BuG7SPnC.js")))), Dh = zt(
|
|
20502
|
+
Nt(je(() => import("./AuditLogList-9cwS6bL7.js")))
|
|
20435
20503
|
), Oh = zt(
|
|
20436
|
-
Nt(je(() => import("./Main-
|
|
20504
|
+
Nt(je(() => import("./Main-4KwMqF3h.js")))
|
|
20437
20505
|
), Mh = zt(
|
|
20438
|
-
je(() => import("./MyPosProfile-
|
|
20439
|
-
), kh = je(() => import("./ApprovalCodeList-
|
|
20440
|
-
() => import("./PermissionSetList-
|
|
20506
|
+
je(() => import("./MyPosProfile-CuDzRaRS.js"))
|
|
20507
|
+
), kh = je(() => import("./ApprovalCodeList-gb0bre9J.js")), Bh = je(() => import("./GrantUserList-yU2NqFVO.js")), Th = je(() => import("./EmployeeList-DjyoW1we.js")), Eh = je(() => import("./RoleList-B3P-LQYV.js")), xh = je(() => import("./TimesheetList-CSCmigCM.js")), Rh = je(() => import("./TeamMemberList-Bd1O44Ur.js")), Nh = je(
|
|
20508
|
+
() => import("./PermissionSetList-D7SS1iAr.js")
|
|
20441
20509
|
), Fh = so(
|
|
20442
|
-
Nt(je(() => import("./SchedulePage-
|
|
20510
|
+
Nt(je(() => import("./SchedulePage-8EAOfiJx.js")))
|
|
20443
20511
|
), jh = so(
|
|
20444
|
-
Nt(je(() => import("./SchedulePositionPage-
|
|
20512
|
+
Nt(je(() => import("./SchedulePositionPage-CGXeUnju.js")))
|
|
20445
20513
|
), Hh = so(
|
|
20446
|
-
Nt(je(() => import("./ScheduleGeneralPage-
|
|
20514
|
+
Nt(je(() => import("./ScheduleGeneralPage-Pq6ufiDu.js")))
|
|
20447
20515
|
), Gy = [
|
|
20448
20516
|
// Landing: waits for menu access, then opens the first page the user can open.
|
|
20449
20517
|
// Declared before the Employee parent (same path) so it wins the exact '/' match.
|
|
@@ -21554,7 +21622,7 @@ const Vy = /* @__PURE__ */ dt({
|
|
|
21554
21622
|
};
|
|
21555
21623
|
}
|
|
21556
21624
|
});
|
|
21557
|
-
var ks = { name: "@feedmepos/mf-hrm-portal", version: "2.3.2-dev.
|
|
21625
|
+
var ks = { name: "@feedmepos/mf-hrm-portal", version: "2.3.2-dev.9", mode: "fmmf" };
|
|
21558
21626
|
console.log(
|
|
21559
21627
|
`%c${ks.name}%c v${ks.version} %c${ks.mode}`,
|
|
21560
21628
|
"background:#1f1f1f;color:#fff;padding:2px 6px;border-radius:3px 0 0 3px",
|
package/dist/app.js
CHANGED