@vc-shell/framework 2.1.0-pr255.4dc5c0d → 2.1.0-pr255.87acc71
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/chunks/{VcTableAdapter.vue_vue_type_script_setup_true_lang-BL653h9q.js → VcTableAdapter.vue_vue_type_script_setup_true_lang-DfRo-sZe.js} +4628 -4614
- package/dist/chunks/VcTableAdapter.vue_vue_type_script_setup_true_lang-DfRo-sZe.js.map +1 -0
- package/dist/chunks/VcTableAdapter.vue_vue_type_style_index_0_lang-CtkZR5a1.js.map +1 -1
- package/dist/framework.js +680 -680
- package/dist/framework.js.map +1 -1
- package/dist/index.css +1 -1
- package/dist/locales/de.js +3 -0
- package/dist/locales/en.js +3 -0
- package/dist/locales/en.json +3 -0
- package/dist/locales/types.d.ts +3 -0
- package/dist/shell/_internal/notifications/composables/useContainer/index.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/components/organisms/vc-app/_internal/layouts/MobileLayout.vue.d.ts +2 -0
- package/dist/ui/components/organisms/vc-app/_internal/layouts/MobileLayout.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-app/_internal/menu/VcAppMenu.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-data-table/components/TableSelectAllBar.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-data-table/components/mobile/DataTableMobileCard.vue.d.ts.map +1 -1
- package/dist/ui/index.js +1 -1
- package/package.json +4 -4
- package/dist/chunks/VcTableAdapter.vue_vue_type_script_setup_true_lang-BL653h9q.js.map +0 -1
package/dist/framework.js
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import { a as Ca, b as Pa } from "./chunks/vendor-vueuse-core-BYWoPpF_.js";
|
|
2
|
-
import { w as at, x as oe, y as q, z as
|
|
3
|
-
import { Q as Vl, B as Ul, R as Fl, S as Gl, T as Wl, U as Hl, W as $l, X as xl, Y as zl, a as Kl, c as ql, e as jl, f as Yl, g as Zl, h as Xl, i as Ql, j as Jl, k as eu, Z as tu, $ as au, a0 as
|
|
4
|
-
import { getCurrentScope as Pt, onScopeDispose as Nt, computed as
|
|
5
|
-
import { b3 as me, b4 as
|
|
6
|
-
import { _ as Hu, a as $u, b as xu, c as zu, d as Ku, e as qu, f as ju, g as Yu, h as Zu, i as Xu, j as Qu, bh as Ju, bi as ed, C as td, bj as ad, bk as
|
|
7
|
-
import { _ as
|
|
8
|
-
import { c as U, a as
|
|
9
|
-
import { A as Cf, r as Pf, s as Nf, t as Df, v as yf, w as Bf, x as Mf, y as kf, z as Vf, C as Uf, d as Ff, e as Gf, D as Wf, F as Hf, G as $f, H as xf, J as zf, K as Kf, O as qf, P as jf, Q as Yf, R as Zf, U as Xf, E as Qf, V as Jf, X as eE, Y as tE, Z as aE, $ as
|
|
10
|
-
import { H as
|
|
11
|
-
import { a as
|
|
2
|
+
import { w as at, x as oe, y as q, z as X, _ as x, A as Ce, C as Na, I as Ct, d as z, b as Ae, l as Da, D as ya, E as Ba, F as Ma, V as fe, G as ka, H as Va, J as Ua, K as Fa, L as Ga, M as Wa, N as Ha, O as $a, P as xa } from "./chunks/VcTableAdapter.vue_vue_type_style_index_0_lang-CtkZR5a1.js";
|
|
3
|
+
import { Q as Vl, B as Ul, R as Fl, S as Gl, T as Wl, U as Hl, W as $l, X as xl, Y as zl, a as Kl, c as ql, e as jl, f as Yl, g as Zl, h as Xl, i as Ql, j as Jl, k as eu, Z as tu, $ as au, a0 as su, a1 as nu, a2 as ou, a3 as ru, a4 as iu, a5 as lu, a6 as uu, a7 as du, a8 as cu, a9 as fu, aa as Eu, ab as mu, ac as gu, ad as Su, p as pu, ae as Au, af as hu, ag as Tu, ah as Lu, ai as Ou, aj as vu, ak as Iu, al as Ru, am as wu, an as _u, ao as bu, u as Cu, m as Pu, t as Nu, ap as Du, n as yu, o as Bu, aq as Mu, q as ku, ar as Vu, r as Uu, as as Fu, at as Gu } from "./chunks/VcTableAdapter.vue_vue_type_style_index_0_lang-CtkZR5a1.js";
|
|
4
|
+
import { getCurrentScope as Pt, onScopeDispose as Nt, computed as _, inject as J, watch as se, defineComponent as H, openBlock as b, createBlock as D, createSlots as Oe, withCtx as A, renderSlot as j, createElementVNode as V, normalizeClass as za, createElementBlock as W, Fragment as ne, createVNode as I, unref as r, createTextVNode as k, toDisplayString as y, shallowReactive as Ka, ref as C, readonly as Qe, onMounted as ve, onBeforeMount as qa, onBeforeUnmount as ja, onUnmounted as Ya, provide as Dt, toValue as yt, isRef as Bt, normalizeStyle as Mt, createCommentVNode as K, withDirectives as Za, withModifiers as Ge, reactive as le, createApp as Xa, nextTick as Pe, renderList as Ue, withKeys as st, mergeProps as ie, getCurrentInstance as Qa, warn as Ja, h as te, toRaw as es } from "vue";
|
|
5
|
+
import { b3 as me, b4 as ts, b5 as as, b6 as kt, b7 as We, b8 as ss, b9 as ns, an as os, ba as He, bb as rs, bc as is, bd as Vt, Q as Ut, Z as ls, a8 as ge, aa as nt, a6 as $e, az as us, $ as ds, at as cs, N as Ie, ag as Ft, P as fs, be as Es, aA as dt, bf as ms, bg as gs } from "./chunks/VcTableAdapter.vue_vue_type_script_setup_true_lang-DfRo-sZe.js";
|
|
6
|
+
import { _ as Hu, a as $u, b as xu, c as zu, d as Ku, e as qu, f as ju, g as Yu, h as Zu, i as Xu, j as Qu, bh as Ju, bi as ed, C as td, bj as ad, bk as sd, bl as nd, k as od, bm as rd, bn as id, bo as ld, bp as ud, l as dd, m as cd, n as fd, o as Ed, p as md, q as gd, T as Sd, r as pd, s as Ad, t as hd, u as Td, v as Ld, w as Od, x as vd, bq as Id, br as Rd, V as wd, y as _d, z as bd, A as Cd, B as Pd, D as Nd, E as Dd, F as yd, G as Bd, H as Md, I as kd, J as Vd, K as Ud, L as Fd, M as Gd, O as Wd, bs as Hd, bs as $d, bt as xd, R as zd, S as Kd, U as qd, W as jd, X as Yd, Y as Zd, a0 as Xd, a1 as Qd, a2 as Jd, a3 as ec, a4 as tc, a5 as ac, a7 as sc, a9 as nc, ab as oc, ac as rc, ad as ic, ae as lc, af as uc, ah as dc, ai as cc, aj as fc, ak as Ec, al as mc, am as gc, ao as Sc, ap as pc, aq as Ac, ar as hc, as as Tc, au as Lc, av as Oc, aw as vc, ax as Ic, ay as Rc, aB as wc, aC as _c, bu as bc, aD as Cc, bv as Pc, bw as Nc, bx as Dc, by as yc, bz as Bc, bA as Mc, bB as kc, bC as Vc, bD as Uc, bE as Fc, bF as Gc, bG as Wc, bH as Hc, bI as $c, bJ as xc, bK as zc, aE as Kc, aF as qc, aG as jc, bL as Yc, aH as Zc, aI as Xc, bM as Qc, bN as Jc, aJ as ef, aK as tf, aL as af, aM as sf, bO as nf, aN as of, aO as rf, aP as lf, bP as uf, aQ as df, bQ as cf, aR as ff, aS as Ef, aT as mf, bR as gf, aU as Sf, aV as pf, aW as Af, aX as hf, aY as Tf, aZ as Lf, a_ as Of, a$ as vf, b0 as If, b1 as Rf, b2 as wf, aD as _f } from "./chunks/VcTableAdapter.vue_vue_type_script_setup_true_lang-DfRo-sZe.js";
|
|
7
|
+
import { _ as Ss } from "./chunks/vendor-cypress-signalr-mock-itnm2wpA.js";
|
|
8
|
+
import { c as U, a as ps, b as As, S as hs, W as Gt, B as Wt, f as Ts, g as Ht, h as $t, i as Ls, _ as Os, L as vs, I as Is, j as Rs, k as ws, l as _s, m as bs, n as Cs, T as Ps, o as Ns, p as Ds, q as ys, N as Bs } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-D2KmNhhl.js";
|
|
9
|
+
import { A as Cf, r as Pf, s as Nf, t as Df, v as yf, w as Bf, x as Mf, y as kf, z as Vf, C as Uf, d as Ff, e as Gf, D as Wf, F as Hf, G as $f, H as xf, J as zf, K as Kf, O as qf, P as jf, Q as Yf, R as Zf, U as Xf, E as Qf, V as Jf, X as eE, Y as tE, Z as aE, $ as sE, a0 as nE, a1 as oE, a2 as rE, M as iE, a3 as lE, a4 as uE, a5 as dE, a6 as cE, a7 as fE, a8 as EE, a9 as mE, aa as gE, ab as SE, ac as pE, ad as AE, ae as hE, u as TE } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-D2KmNhhl.js";
|
|
10
|
+
import { H as Ms, L as ks } from "./chunks/vendor-microsoft-signalr-Bgpbb4fW.js";
|
|
11
|
+
import { a as Vs } from "./chunks/index-CvSe3hjU.js";
|
|
12
12
|
import { u as OE } from "./chunks/index-CvSe3hjU.js";
|
|
13
|
-
import { p as
|
|
14
|
-
import { A as IE, D as
|
|
13
|
+
import { p as Us, b as Fs, a as Gs, s as Ws, d as Hs, e as $s, f as xs, g as ot, h as zs, i as Ks, j as qs, k as js, l as Ys, m as Zs } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-Cx8_DCu_.js";
|
|
14
|
+
import { A as IE, D as RE, E as wE, H as _E, _ as bE, c as CE, u as PE, n as NE } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-Cx8_DCu_.js";
|
|
15
15
|
import "./chunks/ExtensionPoint.vue_vue_type_style_index_0_lang-B1R06zHa.js";
|
|
16
16
|
import "./chunks/vendor-dompurify-DpIUMBYC.js";
|
|
17
17
|
import { u as ue } from "./chunks/vendor-vue-i18n-LO-EJStU.js";
|
|
18
|
-
import { useForm as de, useIsFormValid as
|
|
19
|
-
import { useRouter as
|
|
18
|
+
import { useForm as de, useIsFormValid as Re, useIsFormDirty as rt, Field as Z } from "vee-validate";
|
|
19
|
+
import { useRouter as we } from "vue-router";
|
|
20
20
|
import "./chunks/vendor-tiptap-starter-kit-ny-AoaO_.js";
|
|
21
21
|
import "./chunks/vendor-tiptap-extension-underline-Bo1pXXDN.js";
|
|
22
22
|
import "./chunks/vendor-tiptap-extension-table-QVjcLO_H.js";
|
|
@@ -91,23 +91,23 @@ import "./assets/72de3a63bc0b70dd.svg";
|
|
|
91
91
|
import "./chunks/vendor-iso-639-1-BEjYyfKo.js";
|
|
92
92
|
import "./chunks/vendor-truncate-html-ChA1T5zy.js";
|
|
93
93
|
import "./chunks/vendor-sortablejs-Bsvu-FKn.js";
|
|
94
|
-
import { v as
|
|
94
|
+
import { v as Xs } from "./chunks/vendor-vue3-touch-events-DqysuuWh.js";
|
|
95
95
|
import "./chunks/vendor-gridstack-Beau2jQ7.js";
|
|
96
96
|
import { _ as yE, a as BE, b as ME, c as kE, d as VE, L as UE, e as FE, f as GE, l as WE, m as HE, s as $E, t as xE, u as zE } from "./chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-Cs-yidUE.js";
|
|
97
97
|
import { _ as qE, a as jE, b as YE, c as ZE, d as XE, e as QE } from "./chunks/DashboardDonutChart.vue_vue_type_script_setup_true_lang-hTcM33bM.js";
|
|
98
|
-
import { A as
|
|
99
|
-
import { o as
|
|
100
|
-
import { T as
|
|
101
|
-
import { _ as
|
|
98
|
+
import { A as Qs, u as Js } from "./chunks/vendor-vue3-application-insights-CAgbt8pk.js";
|
|
99
|
+
import { o as en, c as Q, d as tn, i as an } from "./chunks/vendor-lodash-es-D2n90GJy.js";
|
|
100
|
+
import { T as sn, x as nn, b as on, S as rn, $ as ln } from "./chunks/vendor-web-vitals-ByFgAM-8.js";
|
|
101
|
+
import { _ as un } from "./chunks/index-BuTo_Lx8.js";
|
|
102
102
|
import { E as em, d as tm, u as am } from "./chunks/index-BuTo_Lx8.js";
|
|
103
103
|
function ol(e) {
|
|
104
104
|
return e.replace(/[\w]([A-Z])/g, function(t) {
|
|
105
105
|
return t[0] + "_" + t[1];
|
|
106
106
|
}).toLowerCase();
|
|
107
107
|
}
|
|
108
|
-
const
|
|
108
|
+
const dn = (e) => e.replace(/-./g, (t) => t[1].toUpperCase());
|
|
109
109
|
function rl(e) {
|
|
110
|
-
const t =
|
|
110
|
+
const t = dn(e);
|
|
111
111
|
return t[0].toUpperCase() + t.substring(1);
|
|
112
112
|
}
|
|
113
113
|
function il(e) {
|
|
@@ -115,19 +115,19 @@ function il(e) {
|
|
|
115
115
|
return a.toUpperCase();
|
|
116
116
|
});
|
|
117
117
|
}
|
|
118
|
-
const
|
|
118
|
+
const cn = /* @__PURE__ */ new Set(["png", "jpg", "jpeg", "svg", "gif"]);
|
|
119
119
|
function it(e) {
|
|
120
120
|
return e.split(".").pop()?.toLowerCase();
|
|
121
121
|
}
|
|
122
122
|
function xt(e) {
|
|
123
|
-
return e ?
|
|
123
|
+
return e ? cn.has(it(e) ?? "") : !1;
|
|
124
124
|
}
|
|
125
125
|
function zt(e, t = 2) {
|
|
126
126
|
if (!e) return "0 Bytes";
|
|
127
|
-
const a = 1024,
|
|
128
|
-
return `${parseFloat((e / Math.pow(a, o)).toFixed(
|
|
127
|
+
const a = 1024, s = t < 0 ? 0 : t, n = ["Bytes", "KB", "MB", "GB"], o = Math.floor(Math.log(e) / Math.log(a));
|
|
128
|
+
return `${parseFloat((e / Math.pow(a, o)).toFixed(s))} ${n[o]}`;
|
|
129
129
|
}
|
|
130
|
-
const
|
|
130
|
+
const fn = {
|
|
131
131
|
pdf: "#e74c3c",
|
|
132
132
|
doc: "#2b579a",
|
|
133
133
|
docx: "#2b579a",
|
|
@@ -145,12 +145,12 @@ const fs = {
|
|
|
145
145
|
function Kt(e) {
|
|
146
146
|
if (!e) return "var(--neutrals-400)";
|
|
147
147
|
const t = it(e) ?? "";
|
|
148
|
-
return
|
|
148
|
+
return fn[t] ?? "var(--neutrals-400)";
|
|
149
149
|
}
|
|
150
150
|
function qt(e) {
|
|
151
151
|
return e ? (it(e) ?? "FILE").toUpperCase() : "FILE";
|
|
152
152
|
}
|
|
153
|
-
const
|
|
153
|
+
const En = {
|
|
154
154
|
install(e) {
|
|
155
155
|
const { hasAccess: t } = at();
|
|
156
156
|
e.config.globalProperties.$hasAccess = t;
|
|
@@ -163,20 +163,20 @@ function ll(e) {
|
|
|
163
163
|
handler: e.onMessage
|
|
164
164
|
});
|
|
165
165
|
Pt() && Nt(a);
|
|
166
|
-
const
|
|
166
|
+
const s = _(
|
|
167
167
|
() => t.realtime.value.filter((i) => !(!i.notifyType || !e.types.includes(i.notifyType) || !i.isNew || e.filter && !e.filter(i)))
|
|
168
|
-
),
|
|
168
|
+
), n = _(() => s.value.length);
|
|
169
169
|
function o(i) {
|
|
170
170
|
t.markAsRead(i);
|
|
171
171
|
}
|
|
172
172
|
return {
|
|
173
|
-
messages:
|
|
174
|
-
unreadCount:
|
|
173
|
+
messages: s,
|
|
174
|
+
unreadCount: n,
|
|
175
175
|
markAsRead: o
|
|
176
176
|
};
|
|
177
177
|
}
|
|
178
178
|
function ul() {
|
|
179
|
-
const e = J(
|
|
179
|
+
const e = J(ts);
|
|
180
180
|
if (!e)
|
|
181
181
|
throw new Error("useNotificationContext() must be used inside a notification template");
|
|
182
182
|
return e;
|
|
@@ -188,51 +188,51 @@ function dl() {
|
|
|
188
188
|
clearBroadcastFilter: e.clearBroadcastFilter
|
|
189
189
|
};
|
|
190
190
|
}
|
|
191
|
-
const jt = Symbol("NotificationContainerState"), ct = U("signalR"),
|
|
191
|
+
const jt = Symbol("NotificationContainerState"), ct = U("signalR"), mn = {
|
|
192
192
|
install(e) {
|
|
193
193
|
const t = me(), { isAuthenticated: a } = oe();
|
|
194
|
-
let
|
|
195
|
-
const
|
|
196
|
-
|
|
194
|
+
let s = !1;
|
|
195
|
+
const n = Ss("pushNotificationHub", { enableForVitest: !0 }) ?? new Ms().withUrl("/pushNotificationHub").withAutomaticReconnect().configureLogging(ks.Information).build(), o = () => {
|
|
196
|
+
n.start().then(() => {
|
|
197
197
|
ct.info("Connected.");
|
|
198
198
|
}).catch((l) => {
|
|
199
199
|
ct.error("Connection Error: ", l), setTimeout(() => o(), 5e3);
|
|
200
200
|
});
|
|
201
201
|
};
|
|
202
202
|
async function i() {
|
|
203
|
-
await
|
|
203
|
+
await n.stop();
|
|
204
204
|
}
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
}),
|
|
205
|
+
n.onclose(() => {
|
|
206
|
+
s && o();
|
|
207
|
+
}), n.on("Send", (l) => {
|
|
208
208
|
t.ingest(l);
|
|
209
|
-
}),
|
|
209
|
+
}), n.on("SendSystemEvents", (l) => {
|
|
210
210
|
t.ingest(l, { broadcast: !0 });
|
|
211
|
-
}),
|
|
211
|
+
}), se(
|
|
212
212
|
a,
|
|
213
213
|
async (l) => {
|
|
214
|
-
l ? (
|
|
214
|
+
l ? (s = !0, o()) : (s = !1, await i());
|
|
215
215
|
},
|
|
216
216
|
{ immediate: !0 }
|
|
217
217
|
);
|
|
218
218
|
}
|
|
219
219
|
};
|
|
220
220
|
function cl(e) {
|
|
221
|
-
const t = J(
|
|
221
|
+
const t = J(as, void 0);
|
|
222
222
|
return {
|
|
223
223
|
read: () => t ? t.read(e) : {}
|
|
224
224
|
};
|
|
225
225
|
}
|
|
226
|
-
const
|
|
226
|
+
const gn = U("modularity");
|
|
227
227
|
function lt(e) {
|
|
228
|
-
const { blades: t, locales: a, notificationTemplates:
|
|
228
|
+
const { blades: t, locales: a, notificationTemplates: s, notifications: n } = e;
|
|
229
229
|
return {
|
|
230
230
|
install(o) {
|
|
231
231
|
const i = me();
|
|
232
232
|
if (t && Object.keys(t).length > 0) {
|
|
233
233
|
const l = o.runWithContext(() => J(kt));
|
|
234
234
|
if (!l?._registerBladeFn)
|
|
235
|
-
|
|
235
|
+
gn.error("defineAppModule: BladeRegistry not found. Blade registration will be skipped.");
|
|
236
236
|
else
|
|
237
237
|
for (const [d, u] of Object.entries(t)) {
|
|
238
238
|
const f = u.name || d;
|
|
@@ -247,11 +247,11 @@ function lt(e) {
|
|
|
247
247
|
});
|
|
248
248
|
}
|
|
249
249
|
}
|
|
250
|
-
if (
|
|
251
|
-
for (const [l, d] of Object.entries(
|
|
250
|
+
if (n)
|
|
251
|
+
for (const [l, d] of Object.entries(n))
|
|
252
252
|
i.registerType(l, d);
|
|
253
|
-
if (!
|
|
254
|
-
for (const l of Object.values(
|
|
253
|
+
if (!n && s)
|
|
254
|
+
for (const l of Object.values(s)) {
|
|
255
255
|
const d = l.notifyType;
|
|
256
256
|
d && i.registerType(d, {
|
|
257
257
|
template: l,
|
|
@@ -276,28 +276,28 @@ function lt(e) {
|
|
|
276
276
|
}
|
|
277
277
|
if (a)
|
|
278
278
|
for (const [l, d] of Object.entries(a))
|
|
279
|
-
|
|
279
|
+
X.global.mergeLocaleMessage(l, d);
|
|
280
280
|
}
|
|
281
281
|
};
|
|
282
282
|
}
|
|
283
|
-
function fl(e, t, a,
|
|
283
|
+
function fl(e, t, a, s) {
|
|
284
284
|
return lt({
|
|
285
285
|
blades: e,
|
|
286
286
|
locales: t,
|
|
287
287
|
notificationTemplates: a
|
|
288
288
|
});
|
|
289
289
|
}
|
|
290
|
-
async function
|
|
290
|
+
async function Sn(e, t, a, s, n, o) {
|
|
291
291
|
if (!a.workspaceUrl) return !1;
|
|
292
292
|
const i = t.getBladeByRoute(a.workspaceUrl);
|
|
293
293
|
if (!i)
|
|
294
|
-
return console.warn(`[restoreFromUrl] No workspace blade found for URL segment '${a.workspaceUrl}'`),
|
|
294
|
+
return console.warn(`[restoreFromUrl] No workspace blade found for URL segment '${a.workspaceUrl}'`), n && We(n, o), !1;
|
|
295
295
|
if (!i.data.isWorkspace)
|
|
296
296
|
return console.warn(
|
|
297
297
|
`[restoreFromUrl] Blade '${i.name}' matched URL '${a.workspaceUrl}' but is not a workspace`
|
|
298
|
-
),
|
|
299
|
-
if (
|
|
300
|
-
return console.warn(`[restoreFromUrl] Access denied to workspace '${i.name}'`), q.error(
|
|
298
|
+
), n && We(n, o), !1;
|
|
299
|
+
if (s && i.data.permissions && !s(i.data.permissions))
|
|
300
|
+
return console.warn(`[restoreFromUrl] Access denied to workspace '${i.name}'`), q.error(X.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), { timeout: 3e3 }), n && We(n, o), !1;
|
|
301
301
|
if (e.workspace.value?.name !== i.name && await e.openWorkspace({ name: i.name }), a.bladeUrl) {
|
|
302
302
|
const d = t.getBladeByRoute(a.bladeUrl);
|
|
303
303
|
if (d) {
|
|
@@ -323,28 +323,28 @@ async function ft(e) {
|
|
|
323
323
|
}
|
|
324
324
|
return e.blades.value.length > 0 && e._restoreStack([]), !0;
|
|
325
325
|
}
|
|
326
|
-
async function
|
|
326
|
+
async function pn(e, t, a, s, n) {
|
|
327
327
|
if (!e.matched.some((f) => f.meta?.root)) return;
|
|
328
328
|
if (!e.matched.some((f) => f.meta?.bladeCatchAll))
|
|
329
329
|
return t.blades.value.length > 0 && !await ft(t) ? !1 : void 0;
|
|
330
|
-
const i = Object.values(e.params)?.[0] || "", l =
|
|
330
|
+
const i = Object.values(e.params)?.[0] || "", l = Us(e.path, i);
|
|
331
331
|
if (!l.workspaceUrl)
|
|
332
332
|
return t.blades.value.length > 0 && !await ft(t) ? !1 : void 0;
|
|
333
333
|
const d = Object.fromEntries(Object.entries(e.params).filter(([, f]) => typeof f == "string"));
|
|
334
|
-
if (await
|
|
335
|
-
const { path: f, query: g } =
|
|
334
|
+
if (await Sn(t, a, l, s, n, d)) {
|
|
335
|
+
const { path: f, query: g } = Fs(i, t.blades.value);
|
|
336
336
|
return { path: f, query: g, replace: !0 };
|
|
337
337
|
}
|
|
338
338
|
}
|
|
339
|
-
const
|
|
339
|
+
const An = {
|
|
340
340
|
install(e, t) {
|
|
341
|
-
const { router: a } = t,
|
|
341
|
+
const { router: a } = t, s = {
|
|
342
342
|
router: t.router
|
|
343
343
|
};
|
|
344
|
-
|
|
345
|
-
const
|
|
344
|
+
$s(s);
|
|
345
|
+
const n = e.runWithContext(() => {
|
|
346
346
|
try {
|
|
347
|
-
return
|
|
347
|
+
return ss();
|
|
348
348
|
} catch {
|
|
349
349
|
console.warn(
|
|
350
350
|
"[BladeNavigationPlugin] BladeRegistry not yet available. BladeStack will be created but URL restoration may be deferred."
|
|
@@ -352,20 +352,20 @@ const As = {
|
|
|
352
352
|
return;
|
|
353
353
|
}
|
|
354
354
|
});
|
|
355
|
-
if (!
|
|
355
|
+
if (!n) {
|
|
356
356
|
console.error("[BladeNavigationPlugin] BladeRegistry is required but not found.");
|
|
357
357
|
return;
|
|
358
358
|
}
|
|
359
|
-
const { hasAccess: o } = e.runWithContext(() => at()), i =
|
|
360
|
-
e.provide(
|
|
361
|
-
const l =
|
|
362
|
-
e.provide(
|
|
359
|
+
const { hasAccess: o } = e.runWithContext(() => at()), i = Gs(n, o);
|
|
360
|
+
e.provide(ps, i), Ws(i);
|
|
361
|
+
const l = ns(i);
|
|
362
|
+
e.provide(As, l), Hs(l), xs(n);
|
|
363
363
|
const d = a.getRoutes().find((u) => u.meta?.root);
|
|
364
364
|
d && a.addRoute(d.name, {
|
|
365
365
|
path: ":pathMatch(.*)*",
|
|
366
366
|
component: { render: () => null },
|
|
367
367
|
meta: { bladeCatchAll: !0 }
|
|
368
|
-
}), a.beforeEach((u) =>
|
|
368
|
+
}), a.beforeEach((u) => pn(u, i, n, o, a));
|
|
369
369
|
}
|
|
370
370
|
}, ut = /* @__PURE__ */ H({
|
|
371
371
|
__name: "vc-popup-base",
|
|
@@ -383,11 +383,11 @@ const As = {
|
|
|
383
383
|
},
|
|
384
384
|
emits: ["close", "confirm"],
|
|
385
385
|
setup(e, { emit: t }) {
|
|
386
|
-
const a = e,
|
|
387
|
-
function
|
|
388
|
-
|
|
386
|
+
const a = e, s = t;
|
|
387
|
+
function n(o) {
|
|
388
|
+
s("confirm"), a.closeOnConfirm && o();
|
|
389
389
|
}
|
|
390
|
-
return (o, i) => (
|
|
390
|
+
return (o, i) => (b(), D(os, {
|
|
391
391
|
variant: e.variant,
|
|
392
392
|
"is-mobile-fullscreen": e.isMobileFullscreen,
|
|
393
393
|
title: e.title,
|
|
@@ -400,7 +400,7 @@ const As = {
|
|
|
400
400
|
footer: A(({ close: l }) => [
|
|
401
401
|
j(o.$slots, "footer", {
|
|
402
402
|
close: l,
|
|
403
|
-
confirm: () =>
|
|
403
|
+
confirm: () => n(l)
|
|
404
404
|
}, () => [
|
|
405
405
|
V("div", {
|
|
406
406
|
class: za(["vc-popup-base__actions", {
|
|
@@ -408,11 +408,11 @@ const As = {
|
|
|
408
408
|
"vc-popup-base__actions--single": e.mode === "acknowledge"
|
|
409
409
|
}])
|
|
410
410
|
}, [
|
|
411
|
-
e.mode === "confirm" ? (
|
|
411
|
+
e.mode === "confirm" ? (b(), W(ne, { key: 0 }, [
|
|
412
412
|
I(r(x), {
|
|
413
413
|
text: e.confirmAsText,
|
|
414
414
|
class: "vc-popup-base__confirm",
|
|
415
|
-
onClick: (d) =>
|
|
415
|
+
onClick: (d) => n(l)
|
|
416
416
|
}, {
|
|
417
417
|
default: A(() => [
|
|
418
418
|
k(y(e.confirmLabel), 1)
|
|
@@ -425,7 +425,7 @@ const As = {
|
|
|
425
425
|
]),
|
|
426
426
|
_: 1
|
|
427
427
|
}, 8, ["onClick"])
|
|
428
|
-
], 64)) : (
|
|
428
|
+
], 64)) : (b(), D(r(x), {
|
|
429
429
|
key: 1,
|
|
430
430
|
class: "vc-popup-base__single",
|
|
431
431
|
onClick: l
|
|
@@ -449,22 +449,22 @@ const As = {
|
|
|
449
449
|
} : void 0
|
|
450
450
|
]), 1032, ["variant", "is-mobile-fullscreen", "title", "closable"]));
|
|
451
451
|
}
|
|
452
|
-
}),
|
|
452
|
+
}), hn = /* @__PURE__ */ H({
|
|
453
453
|
__name: "vc-popup-warning",
|
|
454
454
|
props: {
|
|
455
455
|
title: {}
|
|
456
456
|
},
|
|
457
457
|
emits: ["close", "confirm"],
|
|
458
458
|
setup(e) {
|
|
459
|
-
return (t, a) => (
|
|
459
|
+
return (t, a) => (b(), D(ut, {
|
|
460
460
|
variant: "warning",
|
|
461
461
|
mode: "confirm",
|
|
462
462
|
"confirm-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.CONFIRM"),
|
|
463
463
|
"cancel-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.CANCEL"),
|
|
464
464
|
"confirm-as-text": "",
|
|
465
465
|
title: e.title,
|
|
466
|
-
onClose: a[0] || (a[0] = (
|
|
467
|
-
onConfirm: a[1] || (a[1] = (
|
|
466
|
+
onClose: a[0] || (a[0] = (s) => t.$emit("close")),
|
|
467
|
+
onConfirm: a[1] || (a[1] = (s) => t.$emit("confirm"))
|
|
468
468
|
}, Oe({
|
|
469
469
|
default: A(() => [
|
|
470
470
|
j(t.$slots, "default")
|
|
@@ -480,19 +480,19 @@ const As = {
|
|
|
480
480
|
} : void 0
|
|
481
481
|
]), 1032, ["confirm-label", "cancel-label", "title"]));
|
|
482
482
|
}
|
|
483
|
-
}),
|
|
483
|
+
}), Tn = /* @__PURE__ */ H({
|
|
484
484
|
__name: "vc-popup-error",
|
|
485
485
|
props: {
|
|
486
486
|
title: {}
|
|
487
487
|
},
|
|
488
488
|
emits: ["close"],
|
|
489
489
|
setup(e) {
|
|
490
|
-
return (t, a) => (
|
|
490
|
+
return (t, a) => (b(), D(ut, {
|
|
491
491
|
variant: "error",
|
|
492
492
|
mode: "acknowledge",
|
|
493
493
|
"action-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.OK"),
|
|
494
494
|
title: e.title,
|
|
495
|
-
onClose: a[0] || (a[0] = (
|
|
495
|
+
onClose: a[0] || (a[0] = (s) => t.$emit("close"))
|
|
496
496
|
}, Oe({
|
|
497
497
|
default: A(() => [
|
|
498
498
|
j(t.$slots, "default")
|
|
@@ -508,19 +508,19 @@ const As = {
|
|
|
508
508
|
} : void 0
|
|
509
509
|
]), 1032, ["action-label", "title"]));
|
|
510
510
|
}
|
|
511
|
-
}),
|
|
511
|
+
}), Ln = /* @__PURE__ */ H({
|
|
512
512
|
__name: "vc-popup-info",
|
|
513
513
|
props: {
|
|
514
514
|
title: {}
|
|
515
515
|
},
|
|
516
516
|
emits: ["close"],
|
|
517
517
|
setup(e) {
|
|
518
|
-
return (t, a) => (
|
|
518
|
+
return (t, a) => (b(), D(ut, {
|
|
519
519
|
variant: "info",
|
|
520
520
|
mode: "acknowledge",
|
|
521
521
|
"action-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.OK"),
|
|
522
522
|
title: e.title,
|
|
523
|
-
onClose: a[0] || (a[0] = (
|
|
523
|
+
onClose: a[0] || (a[0] = (s) => t.$emit("close"))
|
|
524
524
|
}, Oe({
|
|
525
525
|
default: A(() => [
|
|
526
526
|
j(t.$slots, "default")
|
|
@@ -537,17 +537,17 @@ const As = {
|
|
|
537
537
|
]), 1032, ["action-label", "title"]));
|
|
538
538
|
}
|
|
539
539
|
});
|
|
540
|
-
function
|
|
541
|
-
He("warning",
|
|
540
|
+
function On() {
|
|
541
|
+
He("warning", hn), He("error", Tn), He("info", Ln);
|
|
542
542
|
}
|
|
543
|
-
const
|
|
543
|
+
const vn = {
|
|
544
544
|
install(e) {
|
|
545
545
|
const a = {
|
|
546
546
|
popups: Ka([])
|
|
547
547
|
};
|
|
548
|
-
e.config.globalProperties.$popupPlugin = a, e.provide(
|
|
548
|
+
e.config.globalProperties.$popupPlugin = a, e.provide(rs, a), is(a), On();
|
|
549
549
|
}
|
|
550
|
-
},
|
|
550
|
+
}, In = {
|
|
551
551
|
input: {
|
|
552
552
|
maxlength: 1024,
|
|
553
553
|
debounce: 0,
|
|
@@ -598,21 +598,21 @@ const vs = {
|
|
|
598
598
|
}
|
|
599
599
|
};
|
|
600
600
|
function El(e) {
|
|
601
|
-
return
|
|
601
|
+
return In[e];
|
|
602
602
|
}
|
|
603
|
-
function
|
|
603
|
+
function Rn(e, t) {
|
|
604
604
|
let a = null;
|
|
605
|
-
return function(...
|
|
605
|
+
return function(...s) {
|
|
606
606
|
a && clearTimeout(a), a = window.setTimeout(() => {
|
|
607
|
-
a = null, e(...
|
|
607
|
+
a = null, e(...s);
|
|
608
608
|
}, t);
|
|
609
609
|
};
|
|
610
610
|
}
|
|
611
|
-
function
|
|
611
|
+
function wn(e, t = 0) {
|
|
612
612
|
setTimeout(e, t);
|
|
613
613
|
}
|
|
614
614
|
const xe = /* @__PURE__ */ new WeakMap();
|
|
615
|
-
function
|
|
615
|
+
function _n(e) {
|
|
616
616
|
return function(...t) {
|
|
617
617
|
if (!xe.has(e)) {
|
|
618
618
|
const a = e(...t);
|
|
@@ -621,55 +621,55 @@ function bs(e) {
|
|
|
621
621
|
return xe.get(e);
|
|
622
622
|
};
|
|
623
623
|
}
|
|
624
|
-
function
|
|
624
|
+
function bn(e, t) {
|
|
625
625
|
let a = !1;
|
|
626
|
-
return function(...
|
|
627
|
-
a || (e(...
|
|
626
|
+
return function(...s) {
|
|
627
|
+
a || (e(...s), a = !0, setTimeout(() => {
|
|
628
628
|
a = !1;
|
|
629
629
|
}, t));
|
|
630
630
|
};
|
|
631
631
|
}
|
|
632
632
|
function ml() {
|
|
633
633
|
return {
|
|
634
|
-
debounce:
|
|
635
|
-
delay:
|
|
636
|
-
once:
|
|
637
|
-
throttle:
|
|
634
|
+
debounce: Rn,
|
|
635
|
+
delay: wn,
|
|
636
|
+
once: _n,
|
|
637
|
+
throttle: bn
|
|
638
638
|
};
|
|
639
639
|
}
|
|
640
640
|
function gl(e) {
|
|
641
641
|
const t = me(), a = e ? Array.isArray(e) ? e : [e] : [];
|
|
642
|
-
let
|
|
643
|
-
a.length && (
|
|
642
|
+
let s, n;
|
|
643
|
+
a.length && (n = t.subscribe({
|
|
644
644
|
types: a,
|
|
645
|
-
handler: (i) =>
|
|
646
|
-
}), Pt() && Nt(() =>
|
|
647
|
-
const o =
|
|
645
|
+
handler: (i) => s?.(i)
|
|
646
|
+
}), Pt() && Nt(() => n?.()));
|
|
647
|
+
const o = _(() => a.length ? t.realtime.value.filter(
|
|
648
648
|
(i) => i.isNew && i.notifyType != null && a.includes(i.notifyType)
|
|
649
649
|
) : []);
|
|
650
650
|
return {
|
|
651
|
-
notifications:
|
|
651
|
+
notifications: _(() => en(t.history.value, ["created"], ["desc"])),
|
|
652
652
|
moduleNotifications: o,
|
|
653
653
|
loadFromHistory: t.loadHistory,
|
|
654
654
|
addNotification: t.ingest,
|
|
655
655
|
markAsRead: t.markAsRead,
|
|
656
656
|
markAllAsRead: t.markAllAsRead,
|
|
657
657
|
setNotificationHandler: (i) => {
|
|
658
|
-
|
|
658
|
+
s = i;
|
|
659
659
|
}
|
|
660
660
|
};
|
|
661
661
|
}
|
|
662
662
|
let ze;
|
|
663
|
-
const
|
|
663
|
+
const Cn = U("use-async");
|
|
664
664
|
function Yt(e, t) {
|
|
665
|
-
const a = C(!1),
|
|
665
|
+
const a = C(!1), s = C(null), n = t?.notify !== !1, o = t?.notifyTimeout ?? 8e3;
|
|
666
666
|
async function i(l, ...d) {
|
|
667
|
-
a.value = !0,
|
|
667
|
+
a.value = !0, s.value = null;
|
|
668
668
|
try {
|
|
669
669
|
return await e(l, ...d);
|
|
670
670
|
} catch (u) {
|
|
671
671
|
const f = Ce(u);
|
|
672
|
-
if (
|
|
672
|
+
if (s.value = f, Cn.error("Async action failed:", u), n && u && typeof u == "object") {
|
|
673
673
|
const g = `async-error-${f.message.slice(0, 80)}`, E = setTimeout(async () => {
|
|
674
674
|
ze || (ze = (await import("./chunks/VcTableAdapter.vue_vue_type_style_index_0_lang-CtkZR5a1.js").then((S) => S.aG)).notification), ze.error(f.message, {
|
|
675
675
|
timeout: o,
|
|
@@ -685,11 +685,11 @@ function Yt(e, t) {
|
|
|
685
685
|
}
|
|
686
686
|
return {
|
|
687
687
|
loading: Qe(a),
|
|
688
|
-
error: Qe(
|
|
688
|
+
error: Qe(s),
|
|
689
689
|
action: i
|
|
690
690
|
};
|
|
691
691
|
}
|
|
692
|
-
function
|
|
692
|
+
function Pn(e) {
|
|
693
693
|
async function t() {
|
|
694
694
|
return new e();
|
|
695
695
|
}
|
|
@@ -698,11 +698,11 @@ function Ps(e) {
|
|
|
698
698
|
};
|
|
699
699
|
}
|
|
700
700
|
function Zt(...e) {
|
|
701
|
-
return
|
|
701
|
+
return _(() => e.some((t) => t.value));
|
|
702
702
|
}
|
|
703
|
-
const
|
|
704
|
-
function
|
|
705
|
-
const e = C(), t = C(!1), { getApiClient: a } =
|
|
703
|
+
const Nn = U("use-settings");
|
|
704
|
+
function _e() {
|
|
705
|
+
const e = C(), t = C(!1), { getApiClient: a } = Pn(hs), { loading: s, action: n } = Yt(async () => {
|
|
706
706
|
if (t.value) return;
|
|
707
707
|
const i = await (await a()).getUICustomizationSetting();
|
|
708
708
|
let l = null;
|
|
@@ -710,7 +710,7 @@ function be() {
|
|
|
710
710
|
try {
|
|
711
711
|
l = JSON.parse(i.defaultValue);
|
|
712
712
|
} catch (d) {
|
|
713
|
-
|
|
713
|
+
Nn.warn("Failed to parse UI customization settings JSON; ignoring.", d);
|
|
714
714
|
}
|
|
715
715
|
l && !e.value && (e.value = {
|
|
716
716
|
contrast_logo: l.contrast_logo,
|
|
@@ -728,45 +728,45 @@ function be() {
|
|
|
728
728
|
};
|
|
729
729
|
}
|
|
730
730
|
return ve(async () => {
|
|
731
|
-
!e.value && !t.value && await
|
|
731
|
+
!e.value && !t.value && await n();
|
|
732
732
|
}), {
|
|
733
|
-
uiSettings:
|
|
733
|
+
uiSettings: _(() => e.value ?? {}),
|
|
734
734
|
applySettings: o,
|
|
735
|
-
loading: Zt(
|
|
735
|
+
loading: Zt(s)
|
|
736
736
|
};
|
|
737
737
|
}
|
|
738
|
-
const Et = U("use-assets"),
|
|
739
|
-
async function
|
|
740
|
-
const
|
|
741
|
-
|
|
738
|
+
const Et = U("use-assets"), Dn = 4;
|
|
739
|
+
async function yn(e, t, a, s) {
|
|
740
|
+
const n = new FormData();
|
|
741
|
+
n.append("file", e);
|
|
742
742
|
const i = await (await fetch(`/api/assets?folderUrl=/${t}`, {
|
|
743
743
|
method: "POST",
|
|
744
|
-
body:
|
|
744
|
+
body: n
|
|
745
745
|
})).json();
|
|
746
746
|
if (i?.length) {
|
|
747
747
|
const l = i[0];
|
|
748
|
-
return l.createdDate = /* @__PURE__ */ new Date(), l.sortOrder =
|
|
748
|
+
return l.createdDate = /* @__PURE__ */ new Date(), l.sortOrder = s !== void 0 && s >= 0 ? s + a + 1 : 0, l.url = l.url ? decodeURI(l.url) : "", "size" in l && (l.size = e.size), l;
|
|
749
749
|
}
|
|
750
750
|
return null;
|
|
751
751
|
}
|
|
752
|
-
async function
|
|
753
|
-
const
|
|
754
|
-
for (let
|
|
755
|
-
const o = e.slice(
|
|
756
|
-
|
|
752
|
+
async function Bn(e, t, a) {
|
|
753
|
+
const s = [];
|
|
754
|
+
for (let n = 0; n < e.length; n += a) {
|
|
755
|
+
const o = e.slice(n, n + a), i = await Promise.all(o.map((l, d) => t(l, n + d)));
|
|
756
|
+
s.push(...i);
|
|
757
757
|
}
|
|
758
|
-
return
|
|
758
|
+
return s;
|
|
759
759
|
}
|
|
760
760
|
function Sl() {
|
|
761
761
|
const e = C(!1);
|
|
762
|
-
async function t(
|
|
762
|
+
async function t(n, o, i) {
|
|
763
763
|
try {
|
|
764
764
|
e.value = !0;
|
|
765
|
-
const l = Array.from(
|
|
766
|
-
return (await
|
|
765
|
+
const l = Array.from(n);
|
|
766
|
+
return (await Bn(
|
|
767
767
|
l,
|
|
768
|
-
(u, f) =>
|
|
769
|
-
|
|
768
|
+
(u, f) => yn(u, o, f, i),
|
|
769
|
+
Dn
|
|
770
770
|
)).filter((u) => u !== null);
|
|
771
771
|
} catch (l) {
|
|
772
772
|
throw Et.error("Upload failed:", l), l;
|
|
@@ -774,22 +774,22 @@ function Sl() {
|
|
|
774
774
|
e.value = !1;
|
|
775
775
|
}
|
|
776
776
|
}
|
|
777
|
-
function a(
|
|
777
|
+
function a(n, o, i = "url") {
|
|
778
778
|
try {
|
|
779
779
|
e.value = !0;
|
|
780
|
-
let l =
|
|
781
|
-
return l && l.length &&
|
|
780
|
+
let l = Q(o) || [];
|
|
781
|
+
return l && l.length && n.length > 0 && (l = tn(l, n, (d, u) => d[i] === u[i])), l;
|
|
782
782
|
} catch (l) {
|
|
783
783
|
throw Et.error("Remove failed:", l), l;
|
|
784
784
|
} finally {
|
|
785
785
|
e.value = !1;
|
|
786
786
|
}
|
|
787
787
|
}
|
|
788
|
-
function n
|
|
789
|
-
if (
|
|
790
|
-
return
|
|
791
|
-
const i =
|
|
792
|
-
return i && i.length &&
|
|
788
|
+
function s(n, o) {
|
|
789
|
+
if (n.length === o.length)
|
|
790
|
+
return n.map((l) => ({ ...l }));
|
|
791
|
+
const i = Q(o) || [];
|
|
792
|
+
return i && i.length && n.forEach((l) => {
|
|
793
793
|
const d = i.findIndex((u) => u.url === l.url);
|
|
794
794
|
d !== -1 && (i[d] = { ...i[d], ...l });
|
|
795
795
|
}), i;
|
|
@@ -797,62 +797,62 @@ function Sl() {
|
|
|
797
797
|
return {
|
|
798
798
|
upload: t,
|
|
799
799
|
remove: a,
|
|
800
|
-
edit:
|
|
801
|
-
loading:
|
|
800
|
+
edit: s,
|
|
801
|
+
loading: _(() => e.value)
|
|
802
802
|
};
|
|
803
803
|
}
|
|
804
|
-
const
|
|
805
|
-
async function
|
|
806
|
-
const
|
|
807
|
-
|
|
804
|
+
const Mn = U("use-assets-manager"), kn = 4;
|
|
805
|
+
async function Vn(e, t, a, s) {
|
|
806
|
+
const n = new FormData();
|
|
807
|
+
n.append("file", e);
|
|
808
808
|
const o = t.startsWith("/") ? t.slice(1) : t, l = await (await fetch(`/api/assets?folderUrl=/${o}`, {
|
|
809
809
|
method: "POST",
|
|
810
|
-
body:
|
|
810
|
+
body: n
|
|
811
811
|
})).json();
|
|
812
812
|
if (l?.length) {
|
|
813
813
|
const d = l[0];
|
|
814
|
-
return d.createdDate = /* @__PURE__ */ new Date(), d.sortOrder =
|
|
814
|
+
return d.createdDate = /* @__PURE__ */ new Date(), d.sortOrder = s !== void 0 && s >= 0 ? s + a + 1 : 0, d.url = d.url ? decodeURI(d.url) : "", "size" in d && (d.size = e.size), d;
|
|
815
815
|
}
|
|
816
816
|
return null;
|
|
817
817
|
}
|
|
818
|
-
async function
|
|
819
|
-
const
|
|
820
|
-
for (let
|
|
821
|
-
const o = e.slice(
|
|
822
|
-
|
|
818
|
+
async function Un(e, t, a) {
|
|
819
|
+
const s = [];
|
|
820
|
+
for (let n = 0; n < e.length; n += a) {
|
|
821
|
+
const o = e.slice(n, n + a), i = await Promise.all(o.map((l, d) => t(l, n + d)));
|
|
822
|
+
s.push(...i);
|
|
823
823
|
}
|
|
824
|
-
return
|
|
824
|
+
return s;
|
|
825
825
|
}
|
|
826
826
|
function mt(e) {
|
|
827
827
|
return e.map((t, a) => ({ item: t, index: a })).sort((t, a) => {
|
|
828
|
-
const
|
|
829
|
-
return
|
|
828
|
+
const s = t.item.sortOrder ?? Number.MAX_SAFE_INTEGER, n = a.item.sortOrder ?? Number.MAX_SAFE_INTEGER;
|
|
829
|
+
return s === n ? t.index - a.index : s - n;
|
|
830
830
|
}).map(({ item: t }, a) => ({ ...t, sortOrder: a }));
|
|
831
831
|
}
|
|
832
832
|
function pl(e, t) {
|
|
833
|
-
const a = C(!1),
|
|
834
|
-
|
|
833
|
+
const a = C(!1), s = C(mt(e.value ?? []));
|
|
834
|
+
se(
|
|
835
835
|
() => e.value,
|
|
836
836
|
(S) => {
|
|
837
|
-
|
|
837
|
+
s.value = mt(S ?? []);
|
|
838
838
|
},
|
|
839
839
|
{ deep: !0, immediate: !0 }
|
|
840
840
|
);
|
|
841
|
-
function
|
|
842
|
-
e.value =
|
|
841
|
+
function n() {
|
|
842
|
+
e.value = s.value;
|
|
843
843
|
}
|
|
844
|
-
const o =
|
|
844
|
+
const o = s, i = _(() => a.value), l = t.concurrency ?? kn, d = t.assetKey ?? "url";
|
|
845
845
|
async function u(S, L) {
|
|
846
846
|
try {
|
|
847
847
|
a.value = !0;
|
|
848
|
-
const h = Array.from(S),
|
|
848
|
+
const h = Array.from(S), R = t.uploadPath(), O = (await Un(
|
|
849
849
|
h,
|
|
850
|
-
(T, N) =>
|
|
850
|
+
(T, N) => Vn(T, R, N, L),
|
|
851
851
|
l
|
|
852
852
|
)).filter((T) => T !== null);
|
|
853
|
-
|
|
853
|
+
s.value = [...s.value, ...O], n();
|
|
854
854
|
} catch (h) {
|
|
855
|
-
throw
|
|
855
|
+
throw Mn.error("Upload failed:", h), h;
|
|
856
856
|
} finally {
|
|
857
857
|
a.value = !1;
|
|
858
858
|
}
|
|
@@ -864,16 +864,16 @@ function pl(e, t) {
|
|
|
864
864
|
if (t.confirmRemove && !await t.confirmRemove())
|
|
865
865
|
return;
|
|
866
866
|
const L = new Set(S.map((h) => h[d]));
|
|
867
|
-
|
|
867
|
+
s.value = s.value.filter((h) => !L.has(h[d])), n();
|
|
868
868
|
}
|
|
869
869
|
function E(S) {
|
|
870
|
-
|
|
870
|
+
s.value = S.map((L) => ({ ...L })), n();
|
|
871
871
|
}
|
|
872
872
|
function c(S) {
|
|
873
|
-
const L =
|
|
873
|
+
const L = s.value.findIndex((h) => h[d] === S[d]);
|
|
874
874
|
if (L !== -1) {
|
|
875
|
-
const h = [...
|
|
876
|
-
h[L] = { ...
|
|
875
|
+
const h = [...s.value];
|
|
876
|
+
h[L] = { ...s.value[L], ...S }, s.value = h, n();
|
|
877
877
|
}
|
|
878
878
|
}
|
|
879
879
|
return {
|
|
@@ -886,7 +886,7 @@ function pl(e, t) {
|
|
|
886
886
|
loading: i
|
|
887
887
|
};
|
|
888
888
|
}
|
|
889
|
-
const
|
|
889
|
+
const Fn = (e) => {
|
|
890
890
|
qa(() => {
|
|
891
891
|
window.addEventListener("beforeunload", t);
|
|
892
892
|
}), ja(() => {
|
|
@@ -911,10 +911,10 @@ function Le(e) {
|
|
|
911
911
|
function gt(e) {
|
|
912
912
|
return !!e.dictionary;
|
|
913
913
|
}
|
|
914
|
-
function
|
|
914
|
+
function Gn(e) {
|
|
915
915
|
return e.valueType === "Measure";
|
|
916
916
|
}
|
|
917
|
-
function
|
|
917
|
+
function Wn(e) {
|
|
918
918
|
return e.valueType === "Color";
|
|
919
919
|
}
|
|
920
920
|
function G(e) {
|
|
@@ -923,9 +923,9 @@ function G(e) {
|
|
|
923
923
|
function Fe(e, t) {
|
|
924
924
|
e.values && (Ee(e) && t ? e.values = e.values.filter((a) => a.languageCode !== t) : e.values = [], e.values.length > 0 && e.values.every((a) => Se(a.value)) && (e.values = []));
|
|
925
925
|
}
|
|
926
|
-
const
|
|
926
|
+
const Hn = {
|
|
927
927
|
get(e, t) {
|
|
928
|
-
return Ee(e) ? Le(e) ? e.values?.filter((
|
|
928
|
+
return Ee(e) ? Le(e) ? e.values?.filter((s) => s.languageCode === t) ?? [] : (e.values?.find((s) => s.languageCode === t) ?? e.values?.find((s) => !s.languageCode))?.value ?? "" : Le(e) ? e.values ?? [] : e.values?.[0]?.value ?? "";
|
|
929
929
|
},
|
|
930
930
|
set(e, t, a) {
|
|
931
931
|
if (!Array.isArray(t) && Se(t)) {
|
|
@@ -934,129 +934,129 @@ const Hs = {
|
|
|
934
934
|
}
|
|
935
935
|
if (Ee(e)) {
|
|
936
936
|
if (Array.isArray(t)) {
|
|
937
|
-
const
|
|
937
|
+
const s = e.values?.filter((o) => o.languageCode !== a.locale) ?? [], n = t.map(
|
|
938
938
|
(o) => G({ ...o, languageCode: a.locale })
|
|
939
939
|
);
|
|
940
|
-
e.values = [...
|
|
940
|
+
e.values = [...s, ...n];
|
|
941
941
|
} else {
|
|
942
|
-
const
|
|
943
|
-
|
|
942
|
+
const s = e.values?.find((n) => n.languageCode === a.locale);
|
|
943
|
+
s ? s.value = t : (e.values || (e.values = []), e.values.push(G({ value: t, languageCode: a.locale })));
|
|
944
944
|
}
|
|
945
945
|
return;
|
|
946
946
|
}
|
|
947
947
|
if (Array.isArray(t)) {
|
|
948
|
-
e.values = t.map((
|
|
948
|
+
e.values = t.map((s) => G(s));
|
|
949
949
|
return;
|
|
950
950
|
}
|
|
951
951
|
e.values?.[0] ? Object.assign(e.values[0], { value: t }) : e.values = [G({ value: t })];
|
|
952
952
|
}
|
|
953
|
-
}, $
|
|
953
|
+
}, $n = {
|
|
954
954
|
get(e, t) {
|
|
955
|
-
return Ee(e) ? (e.values?.find((
|
|
955
|
+
return Ee(e) ? (e.values?.find((s) => s.languageCode === t) ?? e.values?.find((s) => !s.languageCode))?.value ?? !1 : e.values?.[0]?.value ?? !1;
|
|
956
956
|
},
|
|
957
957
|
set(e, t, a) {
|
|
958
958
|
e.values?.[0] ? Object.assign(e.values[0], { value: t }) : e.values = [G({ value: t })];
|
|
959
959
|
}
|
|
960
|
-
},
|
|
960
|
+
}, xn = {
|
|
961
961
|
get(e, t) {
|
|
962
|
-
return Ee(e) ? Le(e) ? e.values?.filter((
|
|
962
|
+
return Ee(e) ? Le(e) ? e.values?.filter((s) => s.languageCode === t) ?? [] : (e.values?.find((s) => s.languageCode === t) ?? e.values?.find((s) => !s.languageCode))?.valueId ?? "" : Le(e) ? e.values ?? [] : e.values?.[0]?.valueId ?? "";
|
|
963
963
|
},
|
|
964
964
|
set(e, t, a) {
|
|
965
|
-
const { dictionary:
|
|
965
|
+
const { dictionary: s, locale: n } = a;
|
|
966
966
|
if (!Array.isArray(t) && Se(t)) {
|
|
967
|
-
Fe(e,
|
|
967
|
+
Fe(e, n);
|
|
968
968
|
return;
|
|
969
969
|
}
|
|
970
|
-
|
|
970
|
+
s?.length && (Ee(e) ? zn(e, t, s, n) : jn(e, t, s));
|
|
971
971
|
}
|
|
972
972
|
};
|
|
973
|
-
function
|
|
974
|
-
Array.isArray(t) ?
|
|
973
|
+
function zn(e, t, a, s) {
|
|
974
|
+
Array.isArray(t) ? Kn(
|
|
975
975
|
e,
|
|
976
976
|
t,
|
|
977
977
|
a
|
|
978
|
-
) :
|
|
978
|
+
) : qn(e, t, a, s);
|
|
979
979
|
}
|
|
980
|
-
function
|
|
981
|
-
e.values = t.flatMap((
|
|
982
|
-
const
|
|
983
|
-
(o) => o.id ===
|
|
980
|
+
function Kn(e, t, a) {
|
|
981
|
+
e.values = t.flatMap((s) => {
|
|
982
|
+
const n = a.find(
|
|
983
|
+
(o) => o.id === s.valueId || o.id === s.id
|
|
984
984
|
);
|
|
985
|
-
return
|
|
985
|
+
return n?.localizedValues?.length ? n.localizedValues.map(
|
|
986
986
|
(o) => G({
|
|
987
|
-
propertyId:
|
|
988
|
-
alias:
|
|
987
|
+
propertyId: n.propertyId,
|
|
988
|
+
alias: n.alias,
|
|
989
989
|
languageCode: o.languageCode,
|
|
990
|
-
value: o.value ??
|
|
991
|
-
valueId:
|
|
992
|
-
colorCode:
|
|
990
|
+
value: o.value ?? n.alias,
|
|
991
|
+
valueId: n.id,
|
|
992
|
+
colorCode: n.colorCode
|
|
993
993
|
})
|
|
994
|
-
) : G(
|
|
994
|
+
) : G(s);
|
|
995
995
|
});
|
|
996
996
|
}
|
|
997
|
-
function
|
|
998
|
-
const
|
|
999
|
-
if (!
|
|
997
|
+
function qn(e, t, a, s) {
|
|
998
|
+
const n = a.find((o) => o.id === t);
|
|
999
|
+
if (!n) {
|
|
1000
1000
|
e.values = [];
|
|
1001
1001
|
return;
|
|
1002
1002
|
}
|
|
1003
|
-
if (
|
|
1004
|
-
e.values =
|
|
1003
|
+
if (n.localizedValues?.length)
|
|
1004
|
+
e.values = n.localizedValues.map(
|
|
1005
1005
|
(o) => G({
|
|
1006
|
-
propertyId:
|
|
1007
|
-
alias:
|
|
1006
|
+
propertyId: n.propertyId,
|
|
1007
|
+
alias: n.alias,
|
|
1008
1008
|
languageCode: o.languageCode,
|
|
1009
|
-
value: o.value ??
|
|
1010
|
-
valueId:
|
|
1011
|
-
colorCode:
|
|
1009
|
+
value: o.value ?? n.alias,
|
|
1010
|
+
valueId: n.id,
|
|
1011
|
+
colorCode: n.colorCode
|
|
1012
1012
|
})
|
|
1013
1013
|
);
|
|
1014
1014
|
else {
|
|
1015
|
-
const o = [...new Set((e.values ?? []).map((l) => l.languageCode).filter(Boolean))], i = o.length > 0 ? o :
|
|
1015
|
+
const o = [...new Set((e.values ?? []).map((l) => l.languageCode).filter(Boolean))], i = o.length > 0 ? o : s ? [s] : [];
|
|
1016
1016
|
e.values = i.map(
|
|
1017
1017
|
(l) => G({
|
|
1018
|
-
propertyId:
|
|
1019
|
-
alias:
|
|
1018
|
+
propertyId: n.propertyId,
|
|
1019
|
+
alias: n.alias,
|
|
1020
1020
|
languageCode: l,
|
|
1021
|
-
value:
|
|
1022
|
-
valueId:
|
|
1023
|
-
colorCode:
|
|
1021
|
+
value: n.alias,
|
|
1022
|
+
valueId: n.id,
|
|
1023
|
+
colorCode: n.colorCode
|
|
1024
1024
|
})
|
|
1025
1025
|
);
|
|
1026
1026
|
}
|
|
1027
1027
|
}
|
|
1028
|
-
function
|
|
1028
|
+
function jn(e, t, a) {
|
|
1029
1029
|
if (Array.isArray(t))
|
|
1030
|
-
e.values = t.flatMap((
|
|
1031
|
-
const
|
|
1032
|
-
(o) => o.id ===
|
|
1030
|
+
e.values = t.flatMap((s) => {
|
|
1031
|
+
const n = a.find(
|
|
1032
|
+
(o) => o.id === s.valueId || o.id === s.id
|
|
1033
1033
|
);
|
|
1034
|
-
return G(
|
|
1035
|
-
propertyId:
|
|
1036
|
-
alias:
|
|
1037
|
-
value:
|
|
1038
|
-
valueId:
|
|
1039
|
-
colorCode:
|
|
1040
|
-
} :
|
|
1034
|
+
return G(n ? {
|
|
1035
|
+
propertyId: n.propertyId,
|
|
1036
|
+
alias: n.alias,
|
|
1037
|
+
value: s.value ?? n.alias,
|
|
1038
|
+
valueId: n.id,
|
|
1039
|
+
colorCode: n.colorCode
|
|
1040
|
+
} : s);
|
|
1041
1041
|
});
|
|
1042
1042
|
else {
|
|
1043
1043
|
if (Se(t)) {
|
|
1044
1044
|
e.values = [];
|
|
1045
1045
|
return;
|
|
1046
1046
|
}
|
|
1047
|
-
const
|
|
1047
|
+
const s = a.find((n) => n.id === t);
|
|
1048
1048
|
e.values = [
|
|
1049
1049
|
G({
|
|
1050
|
-
propertyId:
|
|
1051
|
-
alias:
|
|
1052
|
-
value:
|
|
1050
|
+
propertyId: s?.propertyId,
|
|
1051
|
+
alias: s?.alias,
|
|
1052
|
+
value: s?.value ?? s?.alias,
|
|
1053
1053
|
valueId: t,
|
|
1054
|
-
colorCode:
|
|
1054
|
+
colorCode: s?.colorCode
|
|
1055
1055
|
})
|
|
1056
1056
|
];
|
|
1057
1057
|
}
|
|
1058
1058
|
}
|
|
1059
|
-
const
|
|
1059
|
+
const Yn = {
|
|
1060
1060
|
get(e, t) {
|
|
1061
1061
|
return e.values?.[0]?.value ?? "";
|
|
1062
1062
|
},
|
|
@@ -1067,7 +1067,7 @@ const Ys = {
|
|
|
1067
1067
|
}
|
|
1068
1068
|
e.values = [G({ value: t, unitOfMeasureId: a.unitOfMeasureId })];
|
|
1069
1069
|
}
|
|
1070
|
-
},
|
|
1070
|
+
}, Zn = {
|
|
1071
1071
|
get(e, t) {
|
|
1072
1072
|
return Le(e) ? e.values ?? [] : e.values?.[0]?.value ?? "";
|
|
1073
1073
|
},
|
|
@@ -1077,21 +1077,21 @@ const Ys = {
|
|
|
1077
1077
|
return;
|
|
1078
1078
|
}
|
|
1079
1079
|
Array.isArray(t) ? e.values = t.map(
|
|
1080
|
-
(
|
|
1080
|
+
(s) => G({ ...s, value: s.value, colorCode: s.colorCode })
|
|
1081
1081
|
) : e.values = [G({ value: t, colorCode: a.colorCode })];
|
|
1082
1082
|
}
|
|
1083
1083
|
};
|
|
1084
1084
|
function St(e) {
|
|
1085
|
-
return
|
|
1085
|
+
return Gn(e) ? Yn : Wn(e) && !gt(e) ? Zn : e.valueType === "Boolean" ? $n : gt(e) ? xn : Hn;
|
|
1086
1086
|
}
|
|
1087
1087
|
function Al(e) {
|
|
1088
|
-
const { searchDictionary: t, searchMeasurements: a } = e, { loading:
|
|
1088
|
+
const { searchDictionary: t, searchMeasurements: a } = e, { loading: s, action: n } = Yt(async (u) => {
|
|
1089
1089
|
if (u)
|
|
1090
1090
|
return await t(u);
|
|
1091
1091
|
});
|
|
1092
1092
|
async function o(u, f, g) {
|
|
1093
1093
|
if (!u) return;
|
|
1094
|
-
const E = await
|
|
1094
|
+
const E = await n({
|
|
1095
1095
|
propertyIds: [u],
|
|
1096
1096
|
keyword: f,
|
|
1097
1097
|
skip: 0
|
|
@@ -1117,58 +1117,58 @@ function Al(e) {
|
|
|
1117
1117
|
setPropertyValue: d,
|
|
1118
1118
|
loadDictionaries: o,
|
|
1119
1119
|
loadMeasurements: i,
|
|
1120
|
-
loading: Zt(
|
|
1120
|
+
loading: Zt(s)
|
|
1121
1121
|
};
|
|
1122
1122
|
}
|
|
1123
1123
|
function hl(e) {
|
|
1124
|
-
const t = (
|
|
1125
|
-
}, a = (
|
|
1124
|
+
const t = (s) => {
|
|
1125
|
+
}, a = (s) => {
|
|
1126
1126
|
(e ?? t)({
|
|
1127
|
-
name:
|
|
1128
|
-
value:
|
|
1129
|
-
rating:
|
|
1127
|
+
name: s.name,
|
|
1128
|
+
value: s.value,
|
|
1129
|
+
rating: s.rating
|
|
1130
1130
|
});
|
|
1131
1131
|
};
|
|
1132
|
-
|
|
1132
|
+
sn(a), nn(a), on(a), rn(a), ln(a);
|
|
1133
1133
|
}
|
|
1134
1134
|
const Xt = U("use-blade-widgets");
|
|
1135
1135
|
function Tl(e) {
|
|
1136
1136
|
const t = J(Gt);
|
|
1137
1137
|
if (!t)
|
|
1138
1138
|
throw new Ct("WidgetService");
|
|
1139
|
-
const a = t,
|
|
1140
|
-
if (!
|
|
1139
|
+
const a = t, s = J(Wt, void 0);
|
|
1140
|
+
if (!s)
|
|
1141
1141
|
throw new Error(
|
|
1142
1142
|
"[vc-shell] useBladeWidgets() requires blade context (BladeDescriptorKey). It must be called inside a blade component rendered by VcBladeSlot."
|
|
1143
1143
|
);
|
|
1144
|
-
const
|
|
1144
|
+
const n = s.value.id;
|
|
1145
1145
|
ve(() => {
|
|
1146
1146
|
for (const l of e)
|
|
1147
|
-
a.registerWidget(
|
|
1147
|
+
a.registerWidget(Xn(l), n);
|
|
1148
1148
|
}), Ya(() => {
|
|
1149
1149
|
for (const l of e)
|
|
1150
|
-
a.unregisterWidget(l.id,
|
|
1150
|
+
a.unregisterWidget(l.id, n);
|
|
1151
1151
|
});
|
|
1152
1152
|
function o(l) {
|
|
1153
|
-
const u = a.getWidgets(
|
|
1153
|
+
const u = a.getWidgets(n).find((f) => f.id === l);
|
|
1154
1154
|
u?.trigger?.onRefresh ? u.trigger.onRefresh() : Xt.warn(`Widget '${l}' has no trigger.onRefresh registered.`);
|
|
1155
1155
|
}
|
|
1156
1156
|
function i() {
|
|
1157
|
-
const l = a.getWidgets(
|
|
1157
|
+
const l = a.getWidgets(n);
|
|
1158
1158
|
for (const d of l)
|
|
1159
1159
|
d.trigger?.onRefresh && d.trigger.onRefresh();
|
|
1160
1160
|
}
|
|
1161
1161
|
return { refresh: o, refreshAll: i };
|
|
1162
1162
|
}
|
|
1163
1163
|
function Ll(e) {
|
|
1164
|
-
const t = J(
|
|
1164
|
+
const t = J(Ts);
|
|
1165
1165
|
if (!t) {
|
|
1166
1166
|
Xt.warn("useWidgetTrigger() called outside WidgetContainer scope — trigger will not be registered.");
|
|
1167
1167
|
return;
|
|
1168
1168
|
}
|
|
1169
1169
|
t.setTrigger(e);
|
|
1170
1170
|
}
|
|
1171
|
-
function
|
|
1171
|
+
function Xn(e) {
|
|
1172
1172
|
const t = {
|
|
1173
1173
|
icon: e.icon,
|
|
1174
1174
|
badge: e.badge,
|
|
@@ -1185,18 +1185,18 @@ function Xs(e) {
|
|
|
1185
1185
|
trigger: e.onRefresh ? { onRefresh: e.onRefresh } : void 0
|
|
1186
1186
|
};
|
|
1187
1187
|
}
|
|
1188
|
-
function
|
|
1188
|
+
function Qn(e) {
|
|
1189
1189
|
const t = {};
|
|
1190
1190
|
for (const a of Object.keys(e)) {
|
|
1191
|
-
const
|
|
1192
|
-
t[a] = Bt(
|
|
1191
|
+
const s = e[a];
|
|
1192
|
+
t[a] = Bt(s) ? s.value : s;
|
|
1193
1193
|
}
|
|
1194
1194
|
return t;
|
|
1195
1195
|
}
|
|
1196
1196
|
function Ol(e) {
|
|
1197
1197
|
Dt(
|
|
1198
1198
|
Ht,
|
|
1199
|
-
|
|
1199
|
+
_(() => Qn(yt(e)))
|
|
1200
1200
|
);
|
|
1201
1201
|
}
|
|
1202
1202
|
function vl() {
|
|
@@ -1209,47 +1209,47 @@ function pt(e) {
|
|
|
1209
1209
|
return e == null || e === "";
|
|
1210
1210
|
}
|
|
1211
1211
|
function At(e, t) {
|
|
1212
|
-
return
|
|
1213
|
-
if (pt(a) && pt(
|
|
1212
|
+
return an(e, t, (a, s) => {
|
|
1213
|
+
if (pt(a) && pt(s)) return !0;
|
|
1214
1214
|
});
|
|
1215
1215
|
}
|
|
1216
1216
|
function Il(e) {
|
|
1217
|
-
const t = (i) =>
|
|
1218
|
-
Bt(e) &&
|
|
1217
|
+
const t = (i) => Q(r(i)), a = C(t(e)), s = C(t(e)), n = C(!1);
|
|
1218
|
+
Bt(e) && se(
|
|
1219
1219
|
e,
|
|
1220
1220
|
(i) => {
|
|
1221
|
-
const l = !At(
|
|
1222
|
-
a.value =
|
|
1221
|
+
const l = !At(s.value, a.value);
|
|
1222
|
+
a.value = Q(i), l || (s.value = Q(i));
|
|
1223
1223
|
},
|
|
1224
1224
|
{ deep: !0 }
|
|
1225
1225
|
// Deep tracking, if initialValueProp is a Ref to an object/array
|
|
1226
|
-
),
|
|
1227
|
-
[
|
|
1226
|
+
), se(
|
|
1227
|
+
[s, a],
|
|
1228
1228
|
// Track changes in currentValue or pristineValue
|
|
1229
1229
|
([i, l]) => {
|
|
1230
|
-
|
|
1230
|
+
n.value = !At(i, l);
|
|
1231
1231
|
},
|
|
1232
1232
|
{ deep: !0 }
|
|
1233
1233
|
);
|
|
1234
1234
|
const o = (i) => {
|
|
1235
1235
|
if (i !== void 0) {
|
|
1236
1236
|
const l = t(i);
|
|
1237
|
-
a.value = l,
|
|
1237
|
+
a.value = l, s.value = Q(l);
|
|
1238
1238
|
} else
|
|
1239
|
-
a.value =
|
|
1240
|
-
|
|
1239
|
+
a.value = Q(s.value);
|
|
1240
|
+
n.value = !1;
|
|
1241
1241
|
};
|
|
1242
1242
|
return {
|
|
1243
|
-
currentValue:
|
|
1243
|
+
currentValue: s,
|
|
1244
1244
|
pristineValue: a,
|
|
1245
|
-
isModified:
|
|
1245
|
+
isModified: _(() => n.value),
|
|
1246
1246
|
resetModificationState: o
|
|
1247
1247
|
};
|
|
1248
1248
|
}
|
|
1249
|
-
const
|
|
1249
|
+
const Jn = { class: "tw-flex tw-grow-1 tw-border-t tw-border-solid tw-border-t-[--assets-details-border]" }, eo = { class: "assets-details__content tw-grow tw-basis-0 tw-w-full tw-overflow-hidden" }, to = { class: "tw-p-4" }, ao = { class: "assets-details__header" }, so = {
|
|
1250
1250
|
key: 1,
|
|
1251
1251
|
class: "assets-details__file-preview tw-shrink-0"
|
|
1252
|
-
},
|
|
1252
|
+
}, no = { class: "assets-details__meta" };
|
|
1253
1253
|
Vt("AssetsDetails", {});
|
|
1254
1254
|
const oo = /* @__PURE__ */ H({
|
|
1255
1255
|
name: "AssetsDetails",
|
|
@@ -1257,7 +1257,7 @@ const oo = /* @__PURE__ */ H({
|
|
|
1257
1257
|
setup(e) {
|
|
1258
1258
|
const { options: t, closeSelf: a } = ot();
|
|
1259
1259
|
de({ validateOnMount: !1 });
|
|
1260
|
-
const
|
|
1260
|
+
const s = Re(), n = rt(), { t: o } = ue({ useScope: "global" }), i = C({ ...t.value?.asset }), l = _(() => t.value?.disabled), d = _({
|
|
1261
1261
|
get() {
|
|
1262
1262
|
const E = i.value.name;
|
|
1263
1263
|
if (!E) return "";
|
|
@@ -1270,7 +1270,7 @@ const oo = /* @__PURE__ */ H({
|
|
|
1270
1270
|
const S = c.lastIndexOf("."), L = S > 0 ? c.slice(S) : "";
|
|
1271
1271
|
i.value.name = E ? E + L : "";
|
|
1272
1272
|
}
|
|
1273
|
-
}), u =
|
|
1273
|
+
}), u = _(() => !n.value || !s.value), f = C([
|
|
1274
1274
|
{
|
|
1275
1275
|
id: "save",
|
|
1276
1276
|
title: o("ASSETS.PAGES.DETAILS.TOOLBAR.SAVE"),
|
|
@@ -1278,7 +1278,7 @@ const oo = /* @__PURE__ */ H({
|
|
|
1278
1278
|
async clickHandler() {
|
|
1279
1279
|
t.value?.assetEditHandler && typeof t.value?.assetEditHandler == "function" && (await t.value?.assetEditHandler(i.value), a());
|
|
1280
1280
|
},
|
|
1281
|
-
disabled:
|
|
1281
|
+
disabled: _(() => u.value || l.value)
|
|
1282
1282
|
},
|
|
1283
1283
|
{
|
|
1284
1284
|
id: "delete",
|
|
@@ -1287,36 +1287,36 @@ const oo = /* @__PURE__ */ H({
|
|
|
1287
1287
|
async clickHandler() {
|
|
1288
1288
|
t.value?.assetRemoveHandler && typeof t.value?.assetRemoveHandler == "function" && (await t.value?.assetRemoveHandler(i.value), a());
|
|
1289
1289
|
},
|
|
1290
|
-
disabled:
|
|
1290
|
+
disabled: _(() => l.value)
|
|
1291
1291
|
}
|
|
1292
|
-
]), g =
|
|
1293
|
-
return (E, c) => (
|
|
1292
|
+
]), g = _(() => i.value?.typeId);
|
|
1293
|
+
return (E, c) => (b(), D(r(Ut), {
|
|
1294
1294
|
title: r(t)?.asset?.name,
|
|
1295
1295
|
subtitle: r(o)("ASSETS.PAGES.DETAILS.SUBTITLE"),
|
|
1296
1296
|
"toolbar-items": f.value
|
|
1297
1297
|
}, {
|
|
1298
1298
|
default: A(() => [
|
|
1299
|
-
V("div",
|
|
1299
|
+
V("div", Jn, [
|
|
1300
1300
|
V("div", eo, [
|
|
1301
|
-
I(r(
|
|
1301
|
+
I(r(ls), { "no-padding": !0 }, {
|
|
1302
1302
|
default: A(() => [
|
|
1303
1303
|
V("div", to, [
|
|
1304
1304
|
I(r(ge), null, {
|
|
1305
1305
|
default: A(() => [
|
|
1306
1306
|
V("div", ao, [
|
|
1307
|
-
r(xt)(i.value.name) ? (
|
|
1307
|
+
r(xt)(i.value.name) ? (b(), D(r(nt), {
|
|
1308
1308
|
key: 0,
|
|
1309
1309
|
src: i.value.url,
|
|
1310
1310
|
size: "xl",
|
|
1311
1311
|
bordered: !0,
|
|
1312
1312
|
class: "tw-shrink-0"
|
|
1313
|
-
}, null, 8, ["src"])) : (
|
|
1313
|
+
}, null, 8, ["src"])) : (b(), W("div", so, [
|
|
1314
1314
|
V("div", {
|
|
1315
1315
|
class: "assets-details__file-badge",
|
|
1316
1316
|
style: Mt({ backgroundColor: r(Kt)(i.value.name) })
|
|
1317
1317
|
}, y(r(qt)(i.value.name)), 5)
|
|
1318
1318
|
])),
|
|
1319
|
-
V("div",
|
|
1319
|
+
V("div", no, [
|
|
1320
1320
|
I(r($e), {
|
|
1321
1321
|
label: r(o)("ASSETS.PAGES.DETAILS.FIELDS.SIZE"),
|
|
1322
1322
|
"model-value": r(zt)(i.value.size)
|
|
@@ -1335,7 +1335,7 @@ const oo = /* @__PURE__ */ H({
|
|
|
1335
1335
|
}, null, 8, ["label", "model-value", "display-value"])
|
|
1336
1336
|
])
|
|
1337
1337
|
]),
|
|
1338
|
-
r(t)?.hiddenFields?.includes("name") ? K("", !0) : (
|
|
1338
|
+
r(t)?.hiddenFields?.includes("name") ? K("", !0) : (b(), D(r(Z), {
|
|
1339
1339
|
key: 0,
|
|
1340
1340
|
label: r(o)("ASSETS.PAGES.DETAILS.FIELDS.NAME.TITLE"),
|
|
1341
1341
|
name: "asset_name",
|
|
@@ -1346,7 +1346,7 @@ const oo = /* @__PURE__ */ H({
|
|
|
1346
1346
|
I(r(z), {
|
|
1347
1347
|
modelValue: d.value,
|
|
1348
1348
|
"onUpdate:modelValue": [
|
|
1349
|
-
c[0] || (c[0] = (
|
|
1349
|
+
c[0] || (c[0] = (R) => d.value = R),
|
|
1350
1350
|
L
|
|
1351
1351
|
],
|
|
1352
1352
|
class: "tw-mb-4",
|
|
@@ -1361,7 +1361,7 @@ const oo = /* @__PURE__ */ H({
|
|
|
1361
1361
|
]),
|
|
1362
1362
|
_: 1
|
|
1363
1363
|
}, 8, ["label", "model-value"])),
|
|
1364
|
-
g.value === "Image" && !r(t)?.hiddenFields?.includes("altText") ? (
|
|
1364
|
+
g.value === "Image" && !r(t)?.hiddenFields?.includes("altText") ? (b(), D(r(z), {
|
|
1365
1365
|
key: 1,
|
|
1366
1366
|
modelValue: i.value.altText,
|
|
1367
1367
|
"onUpdate:modelValue": c[1] || (c[1] = (S) => i.value.altText = S),
|
|
@@ -1372,7 +1372,7 @@ const oo = /* @__PURE__ */ H({
|
|
|
1372
1372
|
tooltip: r(o)("ASSETS.PAGES.DETAILS.FIELDS.ALT.TOOLTIP"),
|
|
1373
1373
|
disabled: l.value
|
|
1374
1374
|
}, null, 8, ["modelValue", "label", "placeholder", "tooltip", "disabled"])) : K("", !0),
|
|
1375
|
-
r(t)?.hiddenFields?.includes("description") ? K("", !0) : (
|
|
1375
|
+
r(t)?.hiddenFields?.includes("description") ? K("", !0) : (b(), D(r(us), {
|
|
1376
1376
|
key: 2,
|
|
1377
1377
|
modelValue: i.value.description,
|
|
1378
1378
|
"onUpdate:modelValue": c[2] || (c[2] = (S) => i.value.description = S),
|
|
@@ -1403,26 +1403,26 @@ const co = /* @__PURE__ */ H({
|
|
|
1403
1403
|
name: "AssetsManager",
|
|
1404
1404
|
__name: "assets-manager",
|
|
1405
1405
|
setup(e) {
|
|
1406
|
-
const t = U("assets-manager"), { options: a, openBlade:
|
|
1406
|
+
const t = U("assets-manager"), { options: a, openBlade: s } = ot(), { t: n } = ue({ useScope: "global" }), o = _(() => a.value.manager), i = _(() => o.value.items.value ?? []), l = _(() => o.value.loading.value), d = _(() => a.value?.title || n("ASSETS_MANAGER.TITLE")), u = C(!1), f = C(), g = C([]), E = _(() => a.value?.disabled), c = C([
|
|
1407
1407
|
{
|
|
1408
1408
|
id: "add",
|
|
1409
|
-
title:
|
|
1409
|
+
title: _(() => n("ASSETS_MANAGER.TOOLBAR.ADD")),
|
|
1410
1410
|
icon: "lucide-plus",
|
|
1411
1411
|
clickHandler() {
|
|
1412
|
-
|
|
1412
|
+
w();
|
|
1413
1413
|
},
|
|
1414
|
-
disabled:
|
|
1415
|
-
isVisible:
|
|
1414
|
+
disabled: _(() => E.value),
|
|
1415
|
+
isVisible: _(() => !E.value)
|
|
1416
1416
|
},
|
|
1417
1417
|
{
|
|
1418
1418
|
id: "delete",
|
|
1419
|
-
title:
|
|
1419
|
+
title: _(() => n("ASSETS_MANAGER.TOOLBAR.DELETE")),
|
|
1420
1420
|
icon: "lucide-trash-2",
|
|
1421
1421
|
async clickHandler() {
|
|
1422
1422
|
await o.value.removeMany(g.value);
|
|
1423
1423
|
},
|
|
1424
|
-
disabled:
|
|
1425
|
-
isVisible:
|
|
1424
|
+
disabled: _(() => !g.value.length || E.value),
|
|
1425
|
+
isVisible: _(() => !E.value)
|
|
1426
1426
|
}
|
|
1427
1427
|
]);
|
|
1428
1428
|
async function S(m) {
|
|
@@ -1437,7 +1437,7 @@ const co = /* @__PURE__ */ H({
|
|
|
1437
1437
|
function h() {
|
|
1438
1438
|
E.value || (u.value = !1);
|
|
1439
1439
|
}
|
|
1440
|
-
async function
|
|
1440
|
+
async function R(m) {
|
|
1441
1441
|
if (!E.value) {
|
|
1442
1442
|
const p = m.dataTransfer?.files;
|
|
1443
1443
|
if (p && p.length)
|
|
@@ -1449,7 +1449,7 @@ const co = /* @__PURE__ */ H({
|
|
|
1449
1449
|
u.value = !1;
|
|
1450
1450
|
}
|
|
1451
1451
|
}
|
|
1452
|
-
function
|
|
1452
|
+
function w() {
|
|
1453
1453
|
f.value.value = "", f.value.click();
|
|
1454
1454
|
}
|
|
1455
1455
|
async function O(m) {
|
|
@@ -1482,7 +1482,7 @@ const co = /* @__PURE__ */ H({
|
|
|
1482
1482
|
}
|
|
1483
1483
|
}
|
|
1484
1484
|
function N(m) {
|
|
1485
|
-
|
|
1485
|
+
s({
|
|
1486
1486
|
name: "AssetsDetails",
|
|
1487
1487
|
options: {
|
|
1488
1488
|
asset: r(m),
|
|
@@ -1502,26 +1502,26 @@ const co = /* @__PURE__ */ H({
|
|
|
1502
1502
|
const B = () => [
|
|
1503
1503
|
{
|
|
1504
1504
|
icon: "lucide-trash-2",
|
|
1505
|
-
title:
|
|
1505
|
+
title: _(() => n("ASSETS_MANAGER.TABLE.ACTIONS.DELETE")),
|
|
1506
1506
|
type: "danger",
|
|
1507
1507
|
async clickHandler(m) {
|
|
1508
1508
|
await o.value.remove(m), g.value = [];
|
|
1509
1509
|
}
|
|
1510
1510
|
}
|
|
1511
1511
|
];
|
|
1512
|
-
return (m, p) => (
|
|
1512
|
+
return (m, p) => (b(), D(r(Ut), {
|
|
1513
1513
|
title: d.value,
|
|
1514
1514
|
"toolbar-items": c.value,
|
|
1515
1515
|
width: "70%"
|
|
1516
1516
|
}, {
|
|
1517
1517
|
default: A(() => [
|
|
1518
|
-
Za((
|
|
1518
|
+
Za((b(), W("div", {
|
|
1519
1519
|
class: "tw-relative tw-h-full tw-flex-1",
|
|
1520
1520
|
onDragover: Ge(L, ["prevent", "stop"]),
|
|
1521
1521
|
onDragleave: Ge(h, ["prevent"]),
|
|
1522
|
-
onDrop: Ge(
|
|
1522
|
+
onDrop: Ge(R, ["prevent", "stop"])
|
|
1523
1523
|
}, [
|
|
1524
|
-
I(r(
|
|
1524
|
+
I(r(ds), {
|
|
1525
1525
|
selection: g.value,
|
|
1526
1526
|
"onUpdate:selection": p[0] || (p[0] = (v) => g.value = v),
|
|
1527
1527
|
items: i.value,
|
|
@@ -1533,7 +1533,7 @@ const co = /* @__PURE__ */ H({
|
|
|
1533
1533
|
icon: "lucide-cloud-upload",
|
|
1534
1534
|
title: m.$t("ASSETS_MANAGER.EMPTY.UPLOAD_ASSETS"),
|
|
1535
1535
|
actionLabel: m.$t("ASSETS_MANAGER.EMPTY.UPLOAD"),
|
|
1536
|
-
actionHandler:
|
|
1536
|
+
actionHandler: w
|
|
1537
1537
|
},
|
|
1538
1538
|
class: "tw-h-full tw-w-full",
|
|
1539
1539
|
onRowClick: p[1] || (p[1] = ({ data: v }) => N(v)),
|
|
@@ -1542,21 +1542,21 @@ const co = /* @__PURE__ */ H({
|
|
|
1542
1542
|
default: A(() => [
|
|
1543
1543
|
I(r(Ae), {
|
|
1544
1544
|
id: "url",
|
|
1545
|
-
title: r(
|
|
1545
|
+
title: r(n)("ASSETS_MANAGER.TABLE.HEADER.IMAGE"),
|
|
1546
1546
|
width: "10%",
|
|
1547
1547
|
"always-visible": "",
|
|
1548
1548
|
type: "image"
|
|
1549
1549
|
}, {
|
|
1550
1550
|
body: A(({ data: v }) => [
|
|
1551
1551
|
V("div", uo, [
|
|
1552
|
-
r(xt)(v.name ?? "") ? (
|
|
1552
|
+
r(xt)(v.name ?? "") ? (b(), D(r(nt), {
|
|
1553
1553
|
key: 0,
|
|
1554
1554
|
bordered: !0,
|
|
1555
1555
|
size: "s",
|
|
1556
1556
|
aspect: "1x1",
|
|
1557
1557
|
src: v.url,
|
|
1558
1558
|
background: "contain"
|
|
1559
|
-
}, null, 8, ["src"])) : (
|
|
1559
|
+
}, null, 8, ["src"])) : (b(), W("div", {
|
|
1560
1560
|
key: 1,
|
|
1561
1561
|
class: "assets-manager__file-badge",
|
|
1562
1562
|
style: Mt({ backgroundColor: r(Kt)(v.name ?? "") })
|
|
@@ -1567,13 +1567,13 @@ const co = /* @__PURE__ */ H({
|
|
|
1567
1567
|
}, 8, ["title"]),
|
|
1568
1568
|
I(r(Ae), {
|
|
1569
1569
|
id: "name",
|
|
1570
|
-
title: r(
|
|
1570
|
+
title: r(n)("ASSETS_MANAGER.TABLE.HEADER.NAME"),
|
|
1571
1571
|
width: "20%",
|
|
1572
1572
|
"always-visible": ""
|
|
1573
1573
|
}, null, 8, ["title"]),
|
|
1574
1574
|
I(r(Ae), {
|
|
1575
1575
|
id: "size",
|
|
1576
|
-
title: r(
|
|
1576
|
+
title: r(n)("ASSETS_MANAGER.TABLE.HEADER.SIZE"),
|
|
1577
1577
|
width: "20%",
|
|
1578
1578
|
"always-visible": ""
|
|
1579
1579
|
}, {
|
|
@@ -1584,7 +1584,7 @@ const co = /* @__PURE__ */ H({
|
|
|
1584
1584
|
}, 8, ["title"]),
|
|
1585
1585
|
I(r(Ae), {
|
|
1586
1586
|
id: "sortOrder",
|
|
1587
|
-
title: r(
|
|
1587
|
+
title: r(n)("ASSETS_MANAGER.TABLE.HEADER.SORT_ORDER"),
|
|
1588
1588
|
width: "25%",
|
|
1589
1589
|
"always-visible": ""
|
|
1590
1590
|
}, {
|
|
@@ -1595,7 +1595,7 @@ const co = /* @__PURE__ */ H({
|
|
|
1595
1595
|
}, 8, ["title"]),
|
|
1596
1596
|
I(r(Ae), {
|
|
1597
1597
|
id: "createdDate",
|
|
1598
|
-
title: r(
|
|
1598
|
+
title: r(n)("ASSETS_MANAGER.TABLE.HEADER.CREATED_DATE"),
|
|
1599
1599
|
width: "25%",
|
|
1600
1600
|
type: "date-ago",
|
|
1601
1601
|
"always-visible": ""
|
|
@@ -1627,7 +1627,7 @@ function Qt() {
|
|
|
1627
1627
|
if (!Lt.value && typeof window < "u") {
|
|
1628
1628
|
Lt.value = !0;
|
|
1629
1629
|
const { isOnline: e } = Ca();
|
|
1630
|
-
|
|
1630
|
+
se(
|
|
1631
1631
|
e,
|
|
1632
1632
|
(t) => {
|
|
1633
1633
|
Ot.value = t, t ? (ht.info("Network connection restored"), q.remove(Tt), document.documentElement.classList.remove("vc-offline")) : (ht.warn("Network connection lost"), q.warning("You are currently offline. Some features may be unavailable.", {
|
|
@@ -1655,7 +1655,7 @@ function vt() {
|
|
|
1655
1655
|
function It() {
|
|
1656
1656
|
q.remove(Jt);
|
|
1657
1657
|
}
|
|
1658
|
-
const
|
|
1658
|
+
const Rt = C(!1), Me = C(0), Je = C(!1), ke = /* @__PURE__ */ new Map(), et = /* @__PURE__ */ new Set(), je = _(() => Me.value > 0 || Je.value);
|
|
1659
1659
|
function ho(e) {
|
|
1660
1660
|
const t = setTimeout(() => {
|
|
1661
1661
|
Me.value++, ke.delete(e), et.add(e);
|
|
@@ -1667,19 +1667,19 @@ function To(e) {
|
|
|
1667
1667
|
t != null ? (clearTimeout(t), ke.delete(e)) : et.has(e) && (Me.value = Math.max(0, Me.value - 1), et.delete(e));
|
|
1668
1668
|
}
|
|
1669
1669
|
function ea() {
|
|
1670
|
-
if (!
|
|
1671
|
-
|
|
1670
|
+
if (!Rt.value && typeof window < "u") {
|
|
1671
|
+
Rt.value = !0;
|
|
1672
1672
|
const e = navigator.connection;
|
|
1673
1673
|
e && (qe = () => {
|
|
1674
1674
|
const a = So.includes(e.effectiveType);
|
|
1675
1675
|
a !== Je.value && Ke.info(`Connection type: ${e.effectiveType} → ${a ? "slow" : "normal"}`), Je.value = a;
|
|
1676
1676
|
}, e.addEventListener("change", qe), qe());
|
|
1677
1677
|
const { isOnline: t } = Qt();
|
|
1678
|
-
|
|
1678
|
+
se(je, (a) => {
|
|
1679
1679
|
a ? (ae != null && (clearTimeout(ae), ae = null), t.value && (Ke.info("Slow network detected — showing notification"), vt())) : ae = setTimeout(() => {
|
|
1680
1680
|
Ke.info("Network recovered — hiding notification"), It(), ae = null;
|
|
1681
1681
|
}, po);
|
|
1682
|
-
}),
|
|
1682
|
+
}), se(t, (a) => {
|
|
1683
1683
|
a ? je.value && vt() : (ae != null && (clearTimeout(ae), ae = null), It());
|
|
1684
1684
|
});
|
|
1685
1685
|
}
|
|
@@ -1693,7 +1693,7 @@ const he = U("interceptors");
|
|
|
1693
1693
|
function Lo(e) {
|
|
1694
1694
|
if (window.fetch.__vcInterceptorsInstalled__)
|
|
1695
1695
|
return he.warn("registerInterceptors called twice — ignoring second install"), window.fetch;
|
|
1696
|
-
const { fetch: a } = window, { signOut:
|
|
1696
|
+
const { fetch: a } = window, { signOut: s, isAuthenticated: n } = oe(), { trackRequest: o, untrackRequest: i } = ea();
|
|
1697
1697
|
let l = 0;
|
|
1698
1698
|
const d = (async (...u) => {
|
|
1699
1699
|
if (window.__DEMO_MODE__)
|
|
@@ -1736,14 +1736,14 @@ function Lo(e) {
|
|
|
1736
1736
|
let L = !1;
|
|
1737
1737
|
const h = setTimeout(() => {
|
|
1738
1738
|
L = !0, S.abort();
|
|
1739
|
-
}, 3e4),
|
|
1740
|
-
|
|
1739
|
+
}, 3e4), R = E?.signal, w = () => S.abort();
|
|
1740
|
+
R?.aborted ? w() : R && R.addEventListener("abort", w, { once: !0 });
|
|
1741
1741
|
try {
|
|
1742
1742
|
const O = await a(g, {
|
|
1743
1743
|
...E || {},
|
|
1744
1744
|
signal: S.signal
|
|
1745
1745
|
});
|
|
1746
|
-
return O.status === 401 &&
|
|
1746
|
+
return O.status === 401 && n.value && s().catch((T) => {
|
|
1747
1747
|
he.error("signOut failed after 401:", T);
|
|
1748
1748
|
}).finally(() => {
|
|
1749
1749
|
Oo(e), q.error(
|
|
@@ -1754,7 +1754,7 @@ Please log in again or contact the administrator for assistance.`
|
|
|
1754
1754
|
} catch (O) {
|
|
1755
1755
|
throw L ? new Error("Request timed out. Please try again.") : O;
|
|
1756
1756
|
} finally {
|
|
1757
|
-
i(c), clearTimeout(h),
|
|
1757
|
+
i(c), clearTimeout(h), R && R.removeEventListener("abort", w);
|
|
1758
1758
|
}
|
|
1759
1759
|
}
|
|
1760
1760
|
});
|
|
@@ -1763,11 +1763,11 @@ Please log in again or contact the administrator for assistance.`
|
|
|
1763
1763
|
function Oo(e) {
|
|
1764
1764
|
e && e.getRoutes().some((t) => t.path === "/login" || t.name === "Login") ? e.currentRoute.value.path !== "/login" && e.push("/login") : window.location.href = window.location.origin + "/";
|
|
1765
1765
|
}
|
|
1766
|
-
const ta = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_ALL: "Clear all" } }, aa = { NAVIGATION_ARIA_LABEL: "Primary navigation", USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Settings", CHANGE_PASSWORD: "Change password", PROFILE: "Profile", LOGOUT: "Log Out" } }, na = { CONTROLS: { CLEAR: "Clear", CLEAR_ALL: "Clear all", CLOSE: "Close", TOGGLE_DROPDOWN: "Toggle dropdown", SEARCH_OPTIONS: "Search options", SELECT_OPTION: "Select option", CLEAR_SELECTION: "Clear selection", COPY_TO_CLIPBOARD: "Copy to clipboard", DELETE_ITEM: "Delete item" }, ATOMS: { VC_BANNER: { SHOW_MORE: "Show more", SHOW_LESS: "Show less" }, VC_SCROLLABLE_CONTAINER: { LABEL: "Scrollable content" }, VC_VIDEO: { NO_SOURCE: "No video source" } }, MOLECULES: { VC_SELECT: { CLICK_TO_SELECT: "Click to select...", LOADING: "Loading...", LOADING_MORE: "Loading more...", NO_OPTIONS: "No options" }, VC_FILE_UPLOAD: { DRAG_HERE: "Drag and drop file here or", BROWSE: "browse your files", TAP_TO_UPLOAD: "Tap to select files", UPLOADING: "Uploading..." }, VC_INPUT: { DATE_PLACEHOLDER: "Select date", DATE_TIME_PLACEHOLDER: "Select date and time" }, VC_PAGINATION: { JUMP: "Jump to page:", LABEL: "Pagination", FIRST: "First page", PREVIOUS: "Previous page", NEXT: "Next page", LAST: "Last page", PAGE: "Page {page}" }, VC_MULTIVALUE: { ADD: "Add" }, VC_BREADCRUMBS: { LABEL: "Breadcrumb", SHOW_MORE: "Show more breadcrumbs" }, VC_COLOR_INPUT: { CLEAR: "Clear color" }, VC_DATE_PICKER: { CLEAR: "Clear date" }, VC_SLIDER: { PREVIOUS: "Previous slide", NEXT: "Next slide" }, VC_TOAST: { DISMISS: "Dismiss notification" }, VC_EDITOR: { TOOLBAR: { LABEL: "Text formatting", BOLD: "Bold", ITALIC: "Italic", UNDERLINE: "Underline", STRIKETHROUGH: "Strikethrough", HEADING_1: "Heading 1", HEADING_2: "Heading 2", HEADING_3: "Heading 3", BULLET_LIST: "Bullet list", NUMBERED_LIST: "Numbered list", BLOCKQUOTE: "Blockquote", INSERT_LINK: "Insert link", INSERT_IMAGE: "Insert image", INSERT_TABLE: "Insert table", DELETE_TABLE: "Delete table", ADD_COLUMN_BEFORE: "Add column before", ADD_COLUMN_AFTER: "Add column after", ADD_ROW_BEFORE: "Add row before", ADD_ROW_AFTER: "Add row after", DELETE_COLUMN: "Delete column", DELETE_ROW: "Delete row" }, FONT_SIZE: "Font size", VIEW: { PREVIEW: "Preview", SPLIT: "Side-by-side view", SOURCE: "Source code" } } }, ORGANISMS: { VC_DYNAMIC_PROPERTY: { ADD: "Add value", VALUE_TYPE: { COLOR: { PLACEHOLDER: "Color code", NAME: "Color name" } } }, VC_GALLERY: { INTERNAL: { VC_GALLERY_ITEM: { FULLSCREEN: "Fullscreen", EDIT: "Edit", DELETE: "Delete" }, VC_GALLERY_PREVIEW: { COPY_IMAGE_LINK: "copy image link" }, VC_GALLERY_FILMSTRIP: { PREVIOUS: "Previous images", NEXT: "Next images" } }, GALLERY_IS_EMPTY: "Gallery is empty", DROP_TO_UPLOAD: "Drop to upload", DRAG_IMAGES_HERE: "Drag images here or", BROWSE_IMAGES: "browse your files", UPLOAD: "Upload", OR_DROP_HERE: "or drop here", SHOW_ALL: "Expand ({count})", COLLAPSE: "Collapse" }, VC_APP: { NOTIFICATIONS: "Notifications", INTERNAL: { VC_APP_BAR: { BACK: "Back" }, MOBILE_LAYOUT: { TAB_MENU: "Menu", TAB_HUB: "Hub" }, APP_HUB: { SEARCH_PLACEHOLDER: "Search applications and widgets", APPLICATIONS: "Applications", WIDGETS: "Widgets", NO_APPLICATIONS: "No applications found", NO_WIDGETS: "No widgets found", LIST_VIEW: "List view", TILE_VIEW: "Tile view" } } }, BLADE_NAVIGATION: { ARIA_LABEL: "Blade navigation" }, VC_BLADE: { SEE_DETAILS: "See details", UNSAVED_CHANGES: "Has unsaved changes", ERROR_POPUP: { TITLE: "Error details", COPY_ERROR: "copy content", CLOSE: "dismiss" }, MORE: "More", TOOLBAR: "Toolbar actions", CLOSE_MENU: "Close menu", PANEL: "Panel" }, VC_BLADE_HEADER: { UNSAVED_CHANGES: "Has unsaved changes", NO_CHANGES: "No unsaved changes" }, VC_TABLE: { SELECT_ROW: "Select row", SELECT_ALL_ROWS: "Select all rows", CURRENT_PAGE_SELECTED: "All items in this page are selected.", SELECT_ALL: "Select all items", ALL_SELECTED: "All items are selected.", ALL_SELECTED_COUNT: "All {count} items selected", SELECT_ALL_COUNT: "Select all {count} items", CANCEL: "Clear selection", ALL_ACTIONS: "All actions", MORE: "More", ALL_FILTERS: "Filters", SEARCH: "Search...", EMPTY: "List is empty.", EMPTY_TITLE: "No data", EMPTY_DESCRIPTION: "No items to display", NOT_FOUND: "Nothing found.", NOT_FOUND_TITLE: "No results found", NOT_FOUND_DESCRIPTION: "Try adjusting your search or filters", TOTALS: "Totals:", ACTIONS: "Actions", NOT_SET: "Not set", SELECTED: "Selected", SELECT_ALL_TRUNCATED: "Select all", PULL_TO_REFRESH: "Pull to refresh", RELEASE_TO_REFRESH: "Release to refresh", REFRESHING: "Refreshing...", ADD_ROW: "Add row", LOADING: "Loading...", PAGE_INFO: "Page {current} of {total}", COLUMN_FILTER: { APPLY: "Apply", CLEAR: "Clear", FROM: "From", TO: "To", TITLE: "Filter column" }, GLOBAL_FILTERS: { BUTTON: "Filters", TITLE: "Filters" }, COLUMN_SWITCHER: { BUTTON: "Columns", TITLE: "Show/Hide Columns", SHOW_ALL: "Show All", RESET: "Reset" }, OF: "of", PAGE: "Page" }, VC_POPUP: { OK: "OK", CONFIRM: "Confirm", CANCEL: "Cancel", CLOSE: "Close", TITLE: { CONFIRMATION: "Confirmation", ERROR: "Error", INFO: "Info" } } }, THEME_SELECTOR: { THEME_CHANGED: " theme", THEME_SELECTOR: "Theme" }, CHANGE_PASSWORD: { TITLE: "Change password", TITLE_FORCED: "Password expired", SUBTITLE_FORCED: "Please set a new password", FORCED: { LABEL: "Your password has expired. You must change the password to continue using the manager." }, CURRENT_PASSWORD: { LABEL: "Current password", PLACEHOLDER: "Enter password" }, NEW_PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" }, CANCEL: "Cancel", SAVE: "Update", ERRORS: { "Repeat-password": "Passwords are not same", "Equal-passwords": "The new password must not match the old one", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", "Incorrect password.": "You entered an incorrect password", "You have used this password in the past. Choose another one.": "You have used this password in the past. Choose another one." } }, APP_HUB: { TITLE: "Applications" }, NOTIFICATION_DROPDOWN: { TITLE: "Notifications", EMPTY: "No notifications yet" }, LANGUAGE_SELECTOR: { TITLE: "Language" }, FILTERS: { APPLY: "Apply filters", RESET: "Reset" } }, sa = { TITLE: "You're invited!", SUBTITLE: "Set a password for your account", FIELDS: { EMAIL: { LABEL: "Email" }, PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" } }, ACCEPT_INVITATION: "Activate", ERRORS: { "Repeat-password": "Passwords are not same", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", recentPasswordUsed: "You have used this password in the past. Choose another one." } }, oa = { TITLE: "Welcome back", SUBTITLE: "Sign in to your account to continue", FIELDS: { LOGIN: { LABEL: "Email", PLACEHOLDER: "Enter your email" }, PASSWORD: { LABEL: "Password", PLACEHOLDER: "Enter your password" }, FORGOT_PASSWORD: { TITLE: "Forgot password", LABEL: "Email", PLACEHOLDER: "Please enter your email" } }, FORGOT_PASSWORD_BUTTON: "Forgot password?", BUTTON: "Sign in", OR: "or", FORGOT_BUTTON: "Submit", BACK_BUTTON: "Back", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "We will send you an email with instructions on how to reset your password.", RESET_EMAIL_SENT: "Email with instructions has been sent to you.", SSO_NO_PROVIDERS_ERROR: "SSO authentication is not configured. Please contact your administrator.", ERRORS: { INVALID_CREDENTIALS: "The login or password is incorrect.", AUTH_WITH_CODE: "Authentication error (code: {code}).", AUTH_GENERIC: "Authentication error: {detail}" } }, ra = { TITLE: "Reset your password", SUBTITLE: "Enter your email and we'll send you a reset link", FIELDS: { EMAIL: { LABEL: "Email", PLACEHOLDER: "Enter your email address" } }, SEND_BUTTON: "Send reset link", BACK_TO_LOGIN: "Back to sign in", SUCCESS_TITLE: "Check your email", SUCCESS_TEXT: "We sent a reset link to {email}" }, ia = { TITLE: "Set new password", SUBTITLE: "Enter your new password below", FIELDS: { PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" } }, SAVE_PASSWORD: "Save", ERRORS: { "Repeat-password": "Passwords are not same", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", recentPasswordUsed: "You have used this password in the past. Choose another one." } }, la = { TITLE: "Assets", TOOLBAR: { SAVE: "Save", REFRESH: "Refresh", ADD: "Add", DELETE: "Delete selected" }, EMPTY: { NO_ASSETS: "No assets", UPLOAD_ASSETS: "Drag & drop assets here or click 'Upload' button", UPLOAD: "Upload" }, TABLE: { HEADER: { IMAGE: "Img", NAME: "Name", SIZE: "Size", SORT_ORDER: "Sort order", CREATED_DATE: "Created date" }, ACTIONS: { DELETE: "Delete", EDIT: "Edit" } } }, ua = { PAGES: { DETAILS: { SUBTITLE: "Asset edit", TOOLBAR: { SAVE: "Save", DELETE: "Delete" }, FIELDS: { SIZE: "Size", CREATED_DATE: "Created date", URL: "Url", COPY: "Copy link", NAME: { TITLE: "Asset name", PLACEHOLDER: "Enter asset name" }, ALT: { TITLE: "Image alternative text", PLACEHOLDER: "Enter image alt text", TOOLTIP: "This text will be displayed in case of disabled/unloaded image on the page" }, DESCRIPTION: { TITLE: "Meta description", PLACEHOLDER: "Enter meta description" } } } } }, da = { _default: "The {field} is not valid", alpha: "The {field} field may only contain alphabetic characters", alpha_num: "The {field} field may only contain alpha-numeric characters", alpha_dash: "The {field} field may contain alpha-numeric characters as well as dashes and underscores", alpha_spaces: "The {field} field may only contain alphabetic characters as well as spaces", between: "The {field} field must be between 0:{min} and 1:{max}", confirmed: "The {field} field confirmation does not match", digits: "The {field} field must be numeric and exactly contain 0:{length} digits", dimensions: "The {field} field must be 0:{width} pixels by 1:{height} pixels", email: "The {field} field must be a valid email", not_one_of: "The {field} field is not a valid value", ext: "The {field} field is not a valid file", image: "The {field} field must be an image", integer: "The {field} field must be an integer", length: "The {field} field must be 0:{length} long", max_value: "The {field} field must be 0:{max} or less", max: "The {field} field may not be greater than 0:{length} characters", mimes: "The {field} field must have a valid file type", min_value: "The {field} field must be 0:{min} or more", min: "The {field} field must be at least 0:{length} characters", numeric: "The {field} field may only contain numeric characters", one_of: "The {field} field is not a valid value", regex: "The {field} field format is invalid", required_if: "The {field} field is required", required: "The {field} field is required", size: "The {field} field size must be less than 0:{size}KB", url: "The {field} field is not a valid URL", min_dimensions: { error: "Image dimensions must be greater than {height}*{width}", not_image_error: "Not image file" }, file_weight: "File size must be maximum {size} kb", before: "End date must be earlier than start date", after: "End date must be later than start date", bigint: "Unsupported number" }, ca = { ACCESS_RESTRICTED: "Access restricted" }, fa = { LOADING: "Loading Virto OZ..." }, Ea = { no_options: "No options" }, vo = {
|
|
1766
|
+
const ta = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_ALL: "Clear all" } }, aa = { NAVIGATION_ARIA_LABEL: "Primary navigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Search keyword" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Settings", CHANGE_PASSWORD: "Change password", PROFILE: "Profile", LOGOUT: "Log Out" } }, sa = { CONTROLS: { CLEAR: "Clear", CLEAR_ALL: "Clear all", CLOSE: "Close", TOGGLE_DROPDOWN: "Toggle dropdown", SEARCH_OPTIONS: "Search options", SELECT_OPTION: "Select option", CLEAR_SELECTION: "Clear selection", COPY_TO_CLIPBOARD: "Copy to clipboard", DELETE_ITEM: "Delete item" }, ATOMS: { VC_BANNER: { SHOW_MORE: "Show more", SHOW_LESS: "Show less" }, VC_SCROLLABLE_CONTAINER: { LABEL: "Scrollable content" }, VC_VIDEO: { NO_SOURCE: "No video source" } }, MOLECULES: { VC_SELECT: { CLICK_TO_SELECT: "Click to select...", LOADING: "Loading...", LOADING_MORE: "Loading more...", NO_OPTIONS: "No options" }, VC_FILE_UPLOAD: { DRAG_HERE: "Drag and drop file here or", BROWSE: "browse your files", TAP_TO_UPLOAD: "Tap to select files", UPLOADING: "Uploading..." }, VC_INPUT: { DATE_PLACEHOLDER: "Select date", DATE_TIME_PLACEHOLDER: "Select date and time" }, VC_PAGINATION: { JUMP: "Jump to page:", LABEL: "Pagination", FIRST: "First page", PREVIOUS: "Previous page", NEXT: "Next page", LAST: "Last page", PAGE: "Page {page}" }, VC_MULTIVALUE: { ADD: "Add" }, VC_BREADCRUMBS: { LABEL: "Breadcrumb", SHOW_MORE: "Show more breadcrumbs" }, VC_COLOR_INPUT: { CLEAR: "Clear color" }, VC_DATE_PICKER: { CLEAR: "Clear date" }, VC_SLIDER: { PREVIOUS: "Previous slide", NEXT: "Next slide" }, VC_TOAST: { DISMISS: "Dismiss notification" }, VC_EDITOR: { TOOLBAR: { LABEL: "Text formatting", BOLD: "Bold", ITALIC: "Italic", UNDERLINE: "Underline", STRIKETHROUGH: "Strikethrough", HEADING_1: "Heading 1", HEADING_2: "Heading 2", HEADING_3: "Heading 3", BULLET_LIST: "Bullet list", NUMBERED_LIST: "Numbered list", BLOCKQUOTE: "Blockquote", INSERT_LINK: "Insert link", INSERT_IMAGE: "Insert image", INSERT_TABLE: "Insert table", DELETE_TABLE: "Delete table", ADD_COLUMN_BEFORE: "Add column before", ADD_COLUMN_AFTER: "Add column after", ADD_ROW_BEFORE: "Add row before", ADD_ROW_AFTER: "Add row after", DELETE_COLUMN: "Delete column", DELETE_ROW: "Delete row" }, FONT_SIZE: "Font size", VIEW: { PREVIEW: "Preview", SPLIT: "Side-by-side view", SOURCE: "Source code" } } }, ORGANISMS: { VC_DYNAMIC_PROPERTY: { ADD: "Add value", VALUE_TYPE: { COLOR: { PLACEHOLDER: "Color code", NAME: "Color name" } } }, VC_GALLERY: { INTERNAL: { VC_GALLERY_ITEM: { FULLSCREEN: "Fullscreen", EDIT: "Edit", DELETE: "Delete" }, VC_GALLERY_PREVIEW: { COPY_IMAGE_LINK: "copy image link" }, VC_GALLERY_FILMSTRIP: { PREVIOUS: "Previous images", NEXT: "Next images" } }, GALLERY_IS_EMPTY: "Gallery is empty", DROP_TO_UPLOAD: "Drop to upload", DRAG_IMAGES_HERE: "Drag images here or", BROWSE_IMAGES: "browse your files", UPLOAD: "Upload", OR_DROP_HERE: "or drop here", SHOW_ALL: "Expand ({count})", COLLAPSE: "Collapse" }, VC_APP: { NOTIFICATIONS: "Notifications", INTERNAL: { VC_APP_BAR: { BACK: "Back" }, MOBILE_LAYOUT: { TAB_MENU: "Menu", TAB_HUB: "Hub" }, APP_HUB: { SEARCH_PLACEHOLDER: "Search applications and widgets", APPLICATIONS: "Applications", WIDGETS: "Widgets", NO_APPLICATIONS: "No applications found", NO_WIDGETS: "No widgets found", LIST_VIEW: "List view", TILE_VIEW: "Tile view" } } }, BLADE_NAVIGATION: { ARIA_LABEL: "Blade navigation" }, VC_BLADE: { SEE_DETAILS: "See details", UNSAVED_CHANGES: "Has unsaved changes", ERROR_POPUP: { TITLE: "Error details", COPY_ERROR: "copy content", CLOSE: "dismiss" }, MORE: "More", TOOLBAR: "Toolbar actions", CLOSE_MENU: "Close menu", PANEL: "Panel" }, VC_BLADE_HEADER: { UNSAVED_CHANGES: "Has unsaved changes", NO_CHANGES: "No unsaved changes" }, VC_TABLE: { SELECT_ROW: "Select row", SELECT_ALL_ROWS: "Select all rows", CURRENT_PAGE_SELECTED: "All items in this page are selected.", SELECT_ALL: "Select all items", ALL_SELECTED: "All items are selected.", ALL_SELECTED_COUNT: "All {count} items selected", SELECT_ALL_COUNT: "Select all {count} items", CANCEL: "Clear selection", ALL_ACTIONS: "All actions", MORE: "More", ALL_FILTERS: "Filters", SEARCH: "Search...", EMPTY: "List is empty.", EMPTY_TITLE: "No data", EMPTY_DESCRIPTION: "No items to display", NOT_FOUND: "Nothing found.", NOT_FOUND_TITLE: "No results found", NOT_FOUND_DESCRIPTION: "Try adjusting your search or filters", TOTALS: "Totals:", ACTIONS: "Actions", NOT_SET: "Not set", SELECTED: "Selected", SELECT_ALL_TRUNCATED: "Select all", PULL_TO_REFRESH: "Pull to refresh", RELEASE_TO_REFRESH: "Release to refresh", REFRESHING: "Refreshing...", ADD_ROW: "Add row", LOADING: "Loading...", PAGE_INFO: "Page {current} of {total}", COLUMN_FILTER: { APPLY: "Apply", CLEAR: "Clear", FROM: "From", TO: "To", TITLE: "Filter column" }, GLOBAL_FILTERS: { BUTTON: "Filters", TITLE: "Filters" }, COLUMN_SWITCHER: { BUTTON: "Columns", TITLE: "Show/Hide Columns", SHOW_ALL: "Show All", RESET: "Reset" }, OF: "of", PAGE: "Page" }, VC_POPUP: { OK: "OK", CONFIRM: "Confirm", CANCEL: "Cancel", CLOSE: "Close", TITLE: { CONFIRMATION: "Confirmation", ERROR: "Error", INFO: "Info" } } }, THEME_SELECTOR: { THEME_CHANGED: " theme", THEME_SELECTOR: "Theme" }, CHANGE_PASSWORD: { TITLE: "Change password", TITLE_FORCED: "Password expired", SUBTITLE_FORCED: "Please set a new password", FORCED: { LABEL: "Your password has expired. You must change the password to continue using the manager." }, CURRENT_PASSWORD: { LABEL: "Current password", PLACEHOLDER: "Enter password" }, NEW_PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" }, CANCEL: "Cancel", SAVE: "Update", ERRORS: { "Repeat-password": "Passwords are not same", "Equal-passwords": "The new password must not match the old one", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", "Incorrect password.": "You entered an incorrect password", "You have used this password in the past. Choose another one.": "You have used this password in the past. Choose another one." } }, APP_HUB: { TITLE: "Applications" }, NOTIFICATION_DROPDOWN: { TITLE: "Notifications", EMPTY: "No notifications yet" }, LANGUAGE_SELECTOR: { TITLE: "Language" }, FILTERS: { APPLY: "Apply filters", RESET: "Reset" } }, na = { TITLE: "You're invited!", SUBTITLE: "Set a password for your account", FIELDS: { EMAIL: { LABEL: "Email" }, PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" } }, ACCEPT_INVITATION: "Activate", ERRORS: { "Repeat-password": "Passwords are not same", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", recentPasswordUsed: "You have used this password in the past. Choose another one." } }, oa = { TITLE: "Welcome back", SUBTITLE: "Sign in to your account to continue", FIELDS: { LOGIN: { LABEL: "Email", PLACEHOLDER: "Enter your email" }, PASSWORD: { LABEL: "Password", PLACEHOLDER: "Enter your password" }, FORGOT_PASSWORD: { TITLE: "Forgot password", LABEL: "Email", PLACEHOLDER: "Please enter your email" } }, FORGOT_PASSWORD_BUTTON: "Forgot password?", BUTTON: "Sign in", OR: "or", FORGOT_BUTTON: "Submit", BACK_BUTTON: "Back", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "We will send you an email with instructions on how to reset your password.", RESET_EMAIL_SENT: "Email with instructions has been sent to you.", SSO_NO_PROVIDERS_ERROR: "SSO authentication is not configured. Please contact your administrator.", ERRORS: { INVALID_CREDENTIALS: "The login or password is incorrect.", AUTH_WITH_CODE: "Authentication error (code: {code}).", AUTH_GENERIC: "Authentication error: {detail}" } }, ra = { TITLE: "Reset your password", SUBTITLE: "Enter your email and we'll send you a reset link", FIELDS: { EMAIL: { LABEL: "Email", PLACEHOLDER: "Enter your email address" } }, SEND_BUTTON: "Send reset link", BACK_TO_LOGIN: "Back to sign in", SUCCESS_TITLE: "Check your email", SUCCESS_TEXT: "We sent a reset link to {email}" }, ia = { TITLE: "Set new password", SUBTITLE: "Enter your new password below", FIELDS: { PASSWORD: { LABEL: "New password", PLACEHOLDER: "Enter password" }, CONFIRM_PASSWORD: { LABEL: "Confirm password", PLACEHOLDER: "Confirm password" } }, SAVE_PASSWORD: "Save", ERRORS: { "Repeat-password": "Passwords are not same", "Invalid-token": "Token is invalid or expired", "Password-too-weak": "New password does not comply one or more password security policies:", PasswordTooShort: "Passwords too short", PasswordRequiresUniqueChars: "Passwords must use different characters", PasswordRequiresLower: "Passwords must have at least one lowercase ('a'-'z')", PasswordRequiresUpper: "Passwords must have at least one uppercase ('A'-'Z')", PasswordRequiresDigit: "Passwords must have at least one digit ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwords must have at least one non alphanumeric character", recentPasswordUsed: "You have used this password in the past. Choose another one." } }, la = { TITLE: "Assets", TOOLBAR: { SAVE: "Save", REFRESH: "Refresh", ADD: "Add", DELETE: "Delete selected" }, EMPTY: { NO_ASSETS: "No assets", UPLOAD_ASSETS: "Drag & drop assets here or click 'Upload' button", UPLOAD: "Upload" }, TABLE: { HEADER: { IMAGE: "Img", NAME: "Name", SIZE: "Size", SORT_ORDER: "Sort order", CREATED_DATE: "Created date" }, ACTIONS: { DELETE: "Delete", EDIT: "Edit" } } }, ua = { PAGES: { DETAILS: { SUBTITLE: "Asset edit", TOOLBAR: { SAVE: "Save", DELETE: "Delete" }, FIELDS: { SIZE: "Size", CREATED_DATE: "Created date", URL: "Url", COPY: "Copy link", NAME: { TITLE: "Asset name", PLACEHOLDER: "Enter asset name" }, ALT: { TITLE: "Image alternative text", PLACEHOLDER: "Enter image alt text", TOOLTIP: "This text will be displayed in case of disabled/unloaded image on the page" }, DESCRIPTION: { TITLE: "Meta description", PLACEHOLDER: "Enter meta description" } } } } }, da = { _default: "The {field} is not valid", alpha: "The {field} field may only contain alphabetic characters", alpha_num: "The {field} field may only contain alpha-numeric characters", alpha_dash: "The {field} field may contain alpha-numeric characters as well as dashes and underscores", alpha_spaces: "The {field} field may only contain alphabetic characters as well as spaces", between: "The {field} field must be between 0:{min} and 1:{max}", confirmed: "The {field} field confirmation does not match", digits: "The {field} field must be numeric and exactly contain 0:{length} digits", dimensions: "The {field} field must be 0:{width} pixels by 1:{height} pixels", email: "The {field} field must be a valid email", not_one_of: "The {field} field is not a valid value", ext: "The {field} field is not a valid file", image: "The {field} field must be an image", integer: "The {field} field must be an integer", length: "The {field} field must be 0:{length} long", max_value: "The {field} field must be 0:{max} or less", max: "The {field} field may not be greater than 0:{length} characters", mimes: "The {field} field must have a valid file type", min_value: "The {field} field must be 0:{min} or more", min: "The {field} field must be at least 0:{length} characters", numeric: "The {field} field may only contain numeric characters", one_of: "The {field} field is not a valid value", regex: "The {field} field format is invalid", required_if: "The {field} field is required", required: "The {field} field is required", size: "The {field} field size must be less than 0:{size}KB", url: "The {field} field is not a valid URL", min_dimensions: { error: "Image dimensions must be greater than {height}*{width}", not_image_error: "Not image file" }, file_weight: "File size must be maximum {size} kb", before: "End date must be earlier than start date", after: "End date must be later than start date", bigint: "Unsupported number" }, ca = { ACCESS_RESTRICTED: "Access restricted" }, fa = { LOADING: "Loading Virto OZ..." }, Ea = { no_options: "No options" }, vo = {
|
|
1767
1767
|
CORE: ta,
|
|
1768
1768
|
SHELL: aa,
|
|
1769
|
-
COMPONENTS:
|
|
1770
|
-
INVITATION:
|
|
1769
|
+
COMPONENTS: sa,
|
|
1770
|
+
INVITATION: na,
|
|
1771
1771
|
LOGIN: oa,
|
|
1772
1772
|
FORGOT_PASSWORD: ra,
|
|
1773
1773
|
PASSWORDRESET: ia,
|
|
@@ -1782,10 +1782,10 @@ const ta = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_AL
|
|
|
1782
1782
|
AI_AGENT: fa,
|
|
1783
1783
|
ASSETS: ua,
|
|
1784
1784
|
ASSETS_MANAGER: la,
|
|
1785
|
-
COMPONENTS:
|
|
1785
|
+
COMPONENTS: sa,
|
|
1786
1786
|
CORE: ta,
|
|
1787
1787
|
FORGOT_PASSWORD: ra,
|
|
1788
|
-
INVITATION:
|
|
1788
|
+
INVITATION: na,
|
|
1789
1789
|
LOGIN: oa,
|
|
1790
1790
|
PASSWORDRESET: ia,
|
|
1791
1791
|
PERMISSION_MESSAGES: ca,
|
|
@@ -1793,7 +1793,7 @@ const ta = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_AL
|
|
|
1793
1793
|
common: Ea,
|
|
1794
1794
|
default: vo,
|
|
1795
1795
|
messages: da
|
|
1796
|
-
}, Symbol.toStringTag, { value: "Module" })), ma = { THEMES: { LIGHT: "Hell", DARK: "Dunkel" }, NOTIFICATIONS: { CLEAR_ALL: "Alle löschen" } }, ga = { NAVIGATION_ARIA_LABEL: "Hauptnavigation", USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Einstellungen", CHANGE_PASSWORD: "Passwort ändern", PROFILE: "Profil", LOGOUT: "Abmelden" } }, Sa = { CONTROLS: { CLEAR: "Löschen", CLEAR_ALL: "Alle löschen", CLOSE: "Schließen", TOGGLE_DROPDOWN: "Dropdown umschalten", SEARCH_OPTIONS: "Optionen suchen", SELECT_OPTION: "Option auswählen", CLEAR_SELECTION: "Auswahl aufheben", COPY_TO_CLIPBOARD: "In die Zwischenablage kopieren", DELETE_ITEM: "Element löschen" }, ATOMS: { VC_BANNER: { SHOW_MORE: "Mehr anzeigen", SHOW_LESS: "Weniger anzeigen" }, VC_SCROLLABLE_CONTAINER: { LABEL: "Scrollbarer Inhalt" }, VC_VIDEO: { NO_SOURCE: "Keine Videoquelle" } }, MOLECULES: { VC_SELECT: { CLICK_TO_SELECT: "Zum Auswählen klicken...", LOADING: "Wird geladen...", LOADING_MORE: "Mehr laden...", NO_OPTIONS: "Keine Optionen" }, VC_FILE_UPLOAD: { DRAG_HERE: "Datei hier ablegen oder", BROWSE: "Dateien durchsuchen", TAP_TO_UPLOAD: "Tippen, um Dateien auszuwählen", UPLOADING: "Wird hochgeladen..." }, VC_INPUT: { DATE_PLACEHOLDER: "Datum auswählen", DATE_TIME_PLACEHOLDER: "Datum und Uhrzeit auswählen" }, VC_PAGINATION: { JUMP: "Zur Seite springen:", LABEL: "Seitennummerierung", FIRST: "Erste Seite", PREVIOUS: "Vorherige Seite", NEXT: "Nächste Seite", LAST: "Letzte Seite", PAGE: "Seite {page}" }, VC_MULTIVALUE: { ADD: "Hinzufügen" }, VC_BREADCRUMBS: { LABEL: "Brotkrümelnavigation", SHOW_MORE: "Weitere Brotkrümel anzeigen" }, VC_COLOR_INPUT: { CLEAR: "Farbe löschen" }, VC_DATE_PICKER: { CLEAR: "Datum löschen" }, VC_SLIDER: { PREVIOUS: "Vorherige Folie", NEXT: "Nächste Folie" }, VC_TOAST: { DISMISS: "Benachrichtigung schließen" }, VC_EDITOR: { TOOLBAR: { LABEL: "Textformatierung", BOLD: "Fett", ITALIC: "Kursiv", UNDERLINE: "Unterstrichen", STRIKETHROUGH: "Durchgestrichen", HEADING_1: "Überschrift 1", HEADING_2: "Überschrift 2", HEADING_3: "Überschrift 3", BULLET_LIST: "Aufzählungsliste", NUMBERED_LIST: "Nummerierte Liste", BLOCKQUOTE: "Blockzitat", INSERT_LINK: "Link einfügen", INSERT_IMAGE: "Bild einfügen", INSERT_TABLE: "Tabelle einfügen", DELETE_TABLE: "Tabelle löschen", ADD_COLUMN_BEFORE: "Spalte davor einfügen", ADD_COLUMN_AFTER: "Spalte danach einfügen", ADD_ROW_BEFORE: "Zeile davor einfügen", ADD_ROW_AFTER: "Zeile danach einfügen", DELETE_COLUMN: "Spalte löschen", DELETE_ROW: "Zeile löschen" }, FONT_SIZE: "Schriftgröße", VIEW: { PREVIEW: "Vorschau", SPLIT: "Nebeneinander-Ansicht", SOURCE: "Quellcode" } } }, ORGANISMS: { VC_DYNAMIC_PROPERTY: { ADD: "Wert hinzufügen", VALUE_TYPE: { COLOR: { PLACEHOLDER: "Farbcode", NAME: "Farbname" } } }, VC_GALLERY: { INTERNAL: { VC_GALLERY_ITEM: { FULLSCREEN: "Vollbild", EDIT: "Bearbeiten", DELETE: "Löschen" }, VC_GALLERY_PREVIEW: { COPY_IMAGE_LINK: "Bildlink kopieren" }, VC_GALLERY_FILMSTRIP: { PREVIOUS: "Vorherige Bilder", NEXT: "Nächste Bilder" } }, GALLERY_IS_EMPTY: "Galerie ist leer", DROP_TO_UPLOAD: "Zum Hochladen ablegen", DRAG_IMAGES_HERE: "Bilder hierher ziehen oder", BROWSE_IMAGES: "Dateien durchsuchen", UPLOAD: "Hochladen", OR_DROP_HERE: "oder hierher ziehen", SHOW_ALL: "Erweitern ({count})", COLLAPSE: "Einklappen" }, VC_APP: { NOTIFICATIONS: "Benachrichtigungen", INTERNAL: { VC_APP_BAR: { BACK: "Zurück" }, MOBILE_LAYOUT: { TAB_MENU: "Menü", TAB_HUB: "Hub" }, APP_HUB: { SEARCH_PLACEHOLDER: "Anwendungen und Widgets suchen", APPLICATIONS: "Anwendungen", WIDGETS: "Widgets", NO_APPLICATIONS: "Keine Anwendungen gefunden", NO_WIDGETS: "Keine Widgets gefunden", LIST_VIEW: "Listenansicht", TILE_VIEW: "Kachelansicht" } } }, BLADE_NAVIGATION: { ARIA_LABEL: "Blade-Navigation" }, VC_BLADE: { SEE_DETAILS: "Details anzeigen", UNSAVED_CHANGES: "Hat ungespeicherte Änderungen", ERROR_POPUP: { TITLE: "Fehlerdetails", COPY_ERROR: "Inhalt kopieren", CLOSE: "schließen" }, MORE: "Mehr", TOOLBAR: "Toolbar-Aktionen", CLOSE_MENU: "Menü schließen", PANEL: "Panel" }, VC_BLADE_HEADER: { UNSAVED_CHANGES: "Hat ungespeicherte Änderungen", NO_CHANGES: "Keine ungespeicherten Änderungen" }, VC_TABLE: { SELECT_ROW: "Zeile auswählen", SELECT_ALL_ROWS: "Alle Zeilen auswählen", CURRENT_PAGE_SELECTED: "Alle Elemente auf dieser Seite sind ausgewählt.", SELECT_ALL: "Alle Elemente auswählen", ALL_SELECTED: "Alle Elemente sind ausgewählt.", ALL_SELECTED_COUNT: "Alle {count} Elemente ausgewählt", SELECT_ALL_COUNT: "Alle {count} Elemente auswählen", CANCEL: "Auswahl aufheben", ALL_ACTIONS: "Alle Aktionen", MORE: "Mehr", ALL_FILTERS: "Filter", SEARCH: "Suchen...", EMPTY: "Liste ist leer.", EMPTY_TITLE: "Keine Daten", EMPTY_DESCRIPTION: "Keine Elemente zum Anzeigen", NOT_FOUND: "Nichts gefunden.", NOT_FOUND_TITLE: "Keine Ergebnisse gefunden", NOT_FOUND_DESCRIPTION: "Passen Sie Ihre Suche oder Filter an", TOTALS: "Gesamt:", ACTIONS: "Aktionen", NOT_SET: "Nicht festgelegt", SELECTED: "Ausgewählt", SELECT_ALL_TRUNCATED: "Alle auswählen", PULL_TO_REFRESH: "Zum Aktualisieren ziehen", RELEASE_TO_REFRESH: "Zum Aktualisieren loslassen", REFRESHING: "Wird aktualisiert...", ADD_ROW: "Zeile hinzufügen", LOADING: "Wird geladen...", PAGE_INFO: "Seite {current} von {total}", COLUMN_FILTER: { APPLY: "Anwenden", CLEAR: "Löschen", FROM: "Von", TO: "Bis", TITLE: "Spalte filtern" }, GLOBAL_FILTERS: { BUTTON: "Filter", TITLE: "Filter" }, COLUMN_SWITCHER: { BUTTON: "Spalten", TITLE: "Spalten ein-/ausblenden", SHOW_ALL: "Alle anzeigen", RESET: "Zurücksetzen" }, OF: "von", PAGE: "Seite" }, VC_POPUP: { OK: "OK", CONFIRM: "Bestätigen", CANCEL: "Abbrechen", CLOSE: "Schließen", TITLE: { CONFIRMATION: "Bestätigung", ERROR: "Fehler", INFO: "Info" } } }, THEME_SELECTOR: { THEME_CHANGED: " Thema", THEME_SELECTOR: "Themen" }, CHANGE_PASSWORD: { TITLE: "Passwort ändern", TITLE_FORCED: "Passwort abgelaufen", SUBTITLE_FORCED: "Bitte legen Sie ein neues Passwort fest", FORCED: { LABEL: "Ihr Passwort ist abgelaufen. Sie müssen das Passwort ändern, um den Manager weiter zu nutzen." }, CURRENT_PASSWORD: { LABEL: "Aktuelles Passwort", PLACEHOLDER: "Passwort eingeben" }, NEW_PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" }, CANCEL: "Abbrechen", SAVE: "Aktualisieren", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Equal-passwords": "Das neue Passwort darf nicht mit dem alten übereinstimmen", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", "Incorrect password.": "Sie haben ein falsches Passwort eingegeben", "You have used this password in the past. Choose another one.": "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, APP_HUB: { TITLE: "Anwendungen" }, NOTIFICATION_DROPDOWN: { TITLE: "Benachrichtigungen", EMPTY: "Noch keine Benachrichtigungen" }, LANGUAGE_SELECTOR: { TITLE: "Sprache" }, FILTERS: { APPLY: "Filter anwenden", RESET: "Zurücksetzen" } }, pa = { TITLE: "Sie sind eingeladen!", SUBTITLE: "Legen Sie ein Passwort für Ihr Konto fest", FIELDS: { EMAIL: { LABEL: "E-Mail" }, PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" } }, ACCEPT_INVITATION: "Aktivieren", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", recentPasswordUsed: "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, Aa = { TITLE: "Willkommen zurück", SUBTITLE: "Melden Sie sich bei Ihrem Konto an, um fortzufahren", FIELDS: { LOGIN: { LABEL: "E-Mail", PLACEHOLDER: "Geben Sie Ihre E-Mail-Adresse ein" }, PASSWORD: { LABEL: "Passwort", PLACEHOLDER: "Geben Sie Ihr Passwort ein" }, FORGOT_PASSWORD: { TITLE: "Passwort vergessen", LABEL: "E-Mail", PLACEHOLDER: "Bitte geben Sie Ihre E-Mail-Adresse ein" } }, FORGOT_PASSWORD_BUTTON: "Passwort vergessen?", BUTTON: "Anmelden", OR: "oder", FORGOT_BUTTON: "Absenden", BACK_BUTTON: "Zurück", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "Wir senden Ihnen eine E-Mail mit Anweisungen zum Zurücksetzen Ihres Passworts.", RESET_EMAIL_SENT: "Eine E-Mail mit Anweisungen wurde an Sie gesendet.", SSO_NO_PROVIDERS_ERROR: "SSO-Authentifizierung ist nicht konfiguriert. Bitte wenden Sie sich an Ihren Administrator.", ERRORS: { INVALID_CREDENTIALS: "Anmeldename oder Passwort ist falsch.", AUTH_WITH_CODE: "Authentifizierungsfehler (Code: {code}).", AUTH_GENERIC: "Authentifizierungsfehler: {detail}" } }, ha = { TITLE: "Passwort zurücksetzen", SUBTITLE: "Geben Sie Ihre E-Mail-Adresse ein und wir senden Ihnen einen Link zum Zurücksetzen", FIELDS: { EMAIL: { LABEL: "E-Mail", PLACEHOLDER: "Geben Sie Ihre E-Mail-Adresse ein" } }, SEND_BUTTON: "Link zum Zurücksetzen senden", BACK_TO_LOGIN: "Zurück zur Anmeldung", SUCCESS_TITLE: "Überprüfen Sie Ihre E-Mail", SUCCESS_TEXT: "Wir haben einen Link zum Zurücksetzen an {email} gesendet" }, Ta = { TITLE: "Neues Passwort festlegen", SUBTITLE: "Geben Sie unten Ihr neues Passwort ein", FIELDS: { PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" } }, SAVE_PASSWORD: "Speichern", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", recentPasswordUsed: "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, La = { TITLE: "Assets", TOOLBAR: { SAVE: "Speichern", REFRESH: "Aktualisieren", ADD: "Hinzufügen", DELETE: "Ausgewählte löschen" }, EMPTY: { NO_ASSETS: "Keine Assets", UPLOAD_ASSETS: "Assets hier ablegen oder auf 'Hochladen' klicken", UPLOAD: "Hochladen" }, TABLE: { HEADER: { IMAGE: "Bild", NAME: "Name", SIZE: "Größe", SORT_ORDER: "Sortierreihenfolge", CREATED_DATE: "Erstellungsdatum" }, ACTIONS: { DELETE: "Löschen", EDIT: "Bearbeiten" } } }, Oa = { PAGES: { DETAILS: { SUBTITLE: "Asset bearbeiten", TOOLBAR: { SAVE: "Speichern", DELETE: "Löschen" }, FIELDS: { SIZE: "Größe", CREATED_DATE: "Erstellungsdatum", URL: "URL", COPY: "Link kopieren", NAME: { TITLE: "Asset-Name", PLACEHOLDER: "Asset-Namen eingeben" }, ALT: { TITLE: "Alternativer Bildtext", PLACEHOLDER: "Alternativen Bildtext eingeben", TOOLTIP: "Dieser Text wird angezeigt, wenn das Bild auf der Seite deaktiviert oder nicht geladen ist" }, DESCRIPTION: { TITLE: "Meta-Beschreibung", PLACEHOLDER: "Meta-Beschreibung eingeben" } } } } }, va = { _default: "Das Feld {field} ist ungültig", alpha: "Das Feld {field} darf nur alphabetische Zeichen enthalten", alpha_num: "Das Feld {field} darf nur alphanumerische Zeichen enthalten", alpha_dash: "Das Feld {field} darf alphanumerische Zeichen sowie Bindestriche und Unterstriche enthalten", alpha_spaces: "Das Feld {field} darf nur alphabetische Zeichen und Leerzeichen enthalten", between: "Das Feld {field} muss zwischen 0:{min} und 1:{max} liegen", confirmed: "Die Bestätigung des Feldes {field} stimmt nicht überein", digits: "Das Feld {field} muss numerisch sein und genau 0:{length} Ziffern enthalten", dimensions: "Das Feld {field} muss 0:{width} Pixel breit und 1:{height} Pixel hoch sein", email: "Das Feld {field} muss eine gültige E-Mail-Adresse sein", not_one_of: "Das Feld {field} hat keinen gültigen Wert", ext: "Das Feld {field} ist keine gültige Datei", image: "Das Feld {field} muss ein Bild sein", integer: "Das Feld {field} muss eine ganze Zahl sein", length: "Das Feld {field} muss 0:{length} lang sein", max_value: "Das Feld {field} muss 0:{max} oder weniger sein", max: "Das Feld {field} darf nicht länger als 0:{length} Zeichen sein", mimes: "Das Feld {field} muss einen gültigen Dateityp haben", min_value: "Das Feld {field} muss 0:{min} oder mehr sein", min: "Das Feld {field} muss mindestens 0:{length} Zeichen lang sein", numeric: "Das Feld {field} darf nur numerische Zeichen enthalten", one_of: "Das Feld {field} hat keinen gültigen Wert", regex: "Das Format des Feldes {field} ist ungültig", required_if: "Das Feld {field} ist erforderlich", required: "Das Feld {field} ist erforderlich", size: "Die Größe des Feldes {field} muss kleiner als 0:{size}KB sein", url: "Das Feld {field} ist keine gültige URL", min_dimensions: { error: "Die Bildabmessungen müssen größer als {height}*{width} sein", not_image_error: "Keine Bilddatei" }, file_weight: "Die Dateigröße darf maximal {size} kb betragen", before: "Das Enddatum muss früher als das Startdatum sein", after: "Das Enddatum muss später als das Startdatum sein", bigint: "Nicht unterstützte Zahl" }, Ia = { ACCESS_RESTRICTED: "Zugriff eingeschränkt" }, wa = { LOADING: "Virto OZ wird geladen..." }, Ra = { no_options: "Keine Optionen" }, wo = {
|
|
1796
|
+
}, Symbol.toStringTag, { value: "Module" })), ma = { THEMES: { LIGHT: "Hell", DARK: "Dunkel" }, NOTIFICATIONS: { CLEAR_ALL: "Alle löschen" } }, ga = { NAVIGATION_ARIA_LABEL: "Hauptnavigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Suchbegriff" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Einstellungen", CHANGE_PASSWORD: "Passwort ändern", PROFILE: "Profil", LOGOUT: "Abmelden" } }, Sa = { CONTROLS: { CLEAR: "Löschen", CLEAR_ALL: "Alle löschen", CLOSE: "Schließen", TOGGLE_DROPDOWN: "Dropdown umschalten", SEARCH_OPTIONS: "Optionen suchen", SELECT_OPTION: "Option auswählen", CLEAR_SELECTION: "Auswahl aufheben", COPY_TO_CLIPBOARD: "In die Zwischenablage kopieren", DELETE_ITEM: "Element löschen" }, ATOMS: { VC_BANNER: { SHOW_MORE: "Mehr anzeigen", SHOW_LESS: "Weniger anzeigen" }, VC_SCROLLABLE_CONTAINER: { LABEL: "Scrollbarer Inhalt" }, VC_VIDEO: { NO_SOURCE: "Keine Videoquelle" } }, MOLECULES: { VC_SELECT: { CLICK_TO_SELECT: "Zum Auswählen klicken...", LOADING: "Wird geladen...", LOADING_MORE: "Mehr laden...", NO_OPTIONS: "Keine Optionen" }, VC_FILE_UPLOAD: { DRAG_HERE: "Datei hier ablegen oder", BROWSE: "Dateien durchsuchen", TAP_TO_UPLOAD: "Tippen, um Dateien auszuwählen", UPLOADING: "Wird hochgeladen..." }, VC_INPUT: { DATE_PLACEHOLDER: "Datum auswählen", DATE_TIME_PLACEHOLDER: "Datum und Uhrzeit auswählen" }, VC_PAGINATION: { JUMP: "Zur Seite springen:", LABEL: "Seitennummerierung", FIRST: "Erste Seite", PREVIOUS: "Vorherige Seite", NEXT: "Nächste Seite", LAST: "Letzte Seite", PAGE: "Seite {page}" }, VC_MULTIVALUE: { ADD: "Hinzufügen" }, VC_BREADCRUMBS: { LABEL: "Brotkrümelnavigation", SHOW_MORE: "Weitere Brotkrümel anzeigen" }, VC_COLOR_INPUT: { CLEAR: "Farbe löschen" }, VC_DATE_PICKER: { CLEAR: "Datum löschen" }, VC_SLIDER: { PREVIOUS: "Vorherige Folie", NEXT: "Nächste Folie" }, VC_TOAST: { DISMISS: "Benachrichtigung schließen" }, VC_EDITOR: { TOOLBAR: { LABEL: "Textformatierung", BOLD: "Fett", ITALIC: "Kursiv", UNDERLINE: "Unterstrichen", STRIKETHROUGH: "Durchgestrichen", HEADING_1: "Überschrift 1", HEADING_2: "Überschrift 2", HEADING_3: "Überschrift 3", BULLET_LIST: "Aufzählungsliste", NUMBERED_LIST: "Nummerierte Liste", BLOCKQUOTE: "Blockzitat", INSERT_LINK: "Link einfügen", INSERT_IMAGE: "Bild einfügen", INSERT_TABLE: "Tabelle einfügen", DELETE_TABLE: "Tabelle löschen", ADD_COLUMN_BEFORE: "Spalte davor einfügen", ADD_COLUMN_AFTER: "Spalte danach einfügen", ADD_ROW_BEFORE: "Zeile davor einfügen", ADD_ROW_AFTER: "Zeile danach einfügen", DELETE_COLUMN: "Spalte löschen", DELETE_ROW: "Zeile löschen" }, FONT_SIZE: "Schriftgröße", VIEW: { PREVIEW: "Vorschau", SPLIT: "Nebeneinander-Ansicht", SOURCE: "Quellcode" } } }, ORGANISMS: { VC_DYNAMIC_PROPERTY: { ADD: "Wert hinzufügen", VALUE_TYPE: { COLOR: { PLACEHOLDER: "Farbcode", NAME: "Farbname" } } }, VC_GALLERY: { INTERNAL: { VC_GALLERY_ITEM: { FULLSCREEN: "Vollbild", EDIT: "Bearbeiten", DELETE: "Löschen" }, VC_GALLERY_PREVIEW: { COPY_IMAGE_LINK: "Bildlink kopieren" }, VC_GALLERY_FILMSTRIP: { PREVIOUS: "Vorherige Bilder", NEXT: "Nächste Bilder" } }, GALLERY_IS_EMPTY: "Galerie ist leer", DROP_TO_UPLOAD: "Zum Hochladen ablegen", DRAG_IMAGES_HERE: "Bilder hierher ziehen oder", BROWSE_IMAGES: "Dateien durchsuchen", UPLOAD: "Hochladen", OR_DROP_HERE: "oder hierher ziehen", SHOW_ALL: "Erweitern ({count})", COLLAPSE: "Einklappen" }, VC_APP: { NOTIFICATIONS: "Benachrichtigungen", INTERNAL: { VC_APP_BAR: { BACK: "Zurück" }, MOBILE_LAYOUT: { TAB_MENU: "Menü", TAB_HUB: "Hub" }, APP_HUB: { SEARCH_PLACEHOLDER: "Anwendungen und Widgets suchen", APPLICATIONS: "Anwendungen", WIDGETS: "Widgets", NO_APPLICATIONS: "Keine Anwendungen gefunden", NO_WIDGETS: "Keine Widgets gefunden", LIST_VIEW: "Listenansicht", TILE_VIEW: "Kachelansicht" } } }, BLADE_NAVIGATION: { ARIA_LABEL: "Blade-Navigation" }, VC_BLADE: { SEE_DETAILS: "Details anzeigen", UNSAVED_CHANGES: "Hat ungespeicherte Änderungen", ERROR_POPUP: { TITLE: "Fehlerdetails", COPY_ERROR: "Inhalt kopieren", CLOSE: "schließen" }, MORE: "Mehr", TOOLBAR: "Toolbar-Aktionen", CLOSE_MENU: "Menü schließen", PANEL: "Panel" }, VC_BLADE_HEADER: { UNSAVED_CHANGES: "Hat ungespeicherte Änderungen", NO_CHANGES: "Keine ungespeicherten Änderungen" }, VC_TABLE: { SELECT_ROW: "Zeile auswählen", SELECT_ALL_ROWS: "Alle Zeilen auswählen", CURRENT_PAGE_SELECTED: "Alle Elemente auf dieser Seite sind ausgewählt.", SELECT_ALL: "Alle Elemente auswählen", ALL_SELECTED: "Alle Elemente sind ausgewählt.", ALL_SELECTED_COUNT: "Alle {count} Elemente ausgewählt", SELECT_ALL_COUNT: "Alle {count} Elemente auswählen", CANCEL: "Auswahl aufheben", ALL_ACTIONS: "Alle Aktionen", MORE: "Mehr", ALL_FILTERS: "Filter", SEARCH: "Suchen...", EMPTY: "Liste ist leer.", EMPTY_TITLE: "Keine Daten", EMPTY_DESCRIPTION: "Keine Elemente zum Anzeigen", NOT_FOUND: "Nichts gefunden.", NOT_FOUND_TITLE: "Keine Ergebnisse gefunden", NOT_FOUND_DESCRIPTION: "Passen Sie Ihre Suche oder Filter an", TOTALS: "Gesamt:", ACTIONS: "Aktionen", NOT_SET: "Nicht festgelegt", SELECTED: "Ausgewählt", SELECT_ALL_TRUNCATED: "Alle auswählen", PULL_TO_REFRESH: "Zum Aktualisieren ziehen", RELEASE_TO_REFRESH: "Zum Aktualisieren loslassen", REFRESHING: "Wird aktualisiert...", ADD_ROW: "Zeile hinzufügen", LOADING: "Wird geladen...", PAGE_INFO: "Seite {current} von {total}", COLUMN_FILTER: { APPLY: "Anwenden", CLEAR: "Löschen", FROM: "Von", TO: "Bis", TITLE: "Spalte filtern" }, GLOBAL_FILTERS: { BUTTON: "Filter", TITLE: "Filter" }, COLUMN_SWITCHER: { BUTTON: "Spalten", TITLE: "Spalten ein-/ausblenden", SHOW_ALL: "Alle anzeigen", RESET: "Zurücksetzen" }, OF: "von", PAGE: "Seite" }, VC_POPUP: { OK: "OK", CONFIRM: "Bestätigen", CANCEL: "Abbrechen", CLOSE: "Schließen", TITLE: { CONFIRMATION: "Bestätigung", ERROR: "Fehler", INFO: "Info" } } }, THEME_SELECTOR: { THEME_CHANGED: " Thema", THEME_SELECTOR: "Themen" }, CHANGE_PASSWORD: { TITLE: "Passwort ändern", TITLE_FORCED: "Passwort abgelaufen", SUBTITLE_FORCED: "Bitte legen Sie ein neues Passwort fest", FORCED: { LABEL: "Ihr Passwort ist abgelaufen. Sie müssen das Passwort ändern, um den Manager weiter zu nutzen." }, CURRENT_PASSWORD: { LABEL: "Aktuelles Passwort", PLACEHOLDER: "Passwort eingeben" }, NEW_PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" }, CANCEL: "Abbrechen", SAVE: "Aktualisieren", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Equal-passwords": "Das neue Passwort darf nicht mit dem alten übereinstimmen", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", "Incorrect password.": "Sie haben ein falsches Passwort eingegeben", "You have used this password in the past. Choose another one.": "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, APP_HUB: { TITLE: "Anwendungen" }, NOTIFICATION_DROPDOWN: { TITLE: "Benachrichtigungen", EMPTY: "Noch keine Benachrichtigungen" }, LANGUAGE_SELECTOR: { TITLE: "Sprache" }, FILTERS: { APPLY: "Filter anwenden", RESET: "Zurücksetzen" } }, pa = { TITLE: "Sie sind eingeladen!", SUBTITLE: "Legen Sie ein Passwort für Ihr Konto fest", FIELDS: { EMAIL: { LABEL: "E-Mail" }, PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" } }, ACCEPT_INVITATION: "Aktivieren", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", recentPasswordUsed: "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, Aa = { TITLE: "Willkommen zurück", SUBTITLE: "Melden Sie sich bei Ihrem Konto an, um fortzufahren", FIELDS: { LOGIN: { LABEL: "E-Mail", PLACEHOLDER: "Geben Sie Ihre E-Mail-Adresse ein" }, PASSWORD: { LABEL: "Passwort", PLACEHOLDER: "Geben Sie Ihr Passwort ein" }, FORGOT_PASSWORD: { TITLE: "Passwort vergessen", LABEL: "E-Mail", PLACEHOLDER: "Bitte geben Sie Ihre E-Mail-Adresse ein" } }, FORGOT_PASSWORD_BUTTON: "Passwort vergessen?", BUTTON: "Anmelden", OR: "oder", FORGOT_BUTTON: "Absenden", BACK_BUTTON: "Zurück", BUTTON_OK: "Ok", RESET_EMAIL_TEXT: "Wir senden Ihnen eine E-Mail mit Anweisungen zum Zurücksetzen Ihres Passworts.", RESET_EMAIL_SENT: "Eine E-Mail mit Anweisungen wurde an Sie gesendet.", SSO_NO_PROVIDERS_ERROR: "SSO-Authentifizierung ist nicht konfiguriert. Bitte wenden Sie sich an Ihren Administrator.", ERRORS: { INVALID_CREDENTIALS: "Anmeldename oder Passwort ist falsch.", AUTH_WITH_CODE: "Authentifizierungsfehler (Code: {code}).", AUTH_GENERIC: "Authentifizierungsfehler: {detail}" } }, ha = { TITLE: "Passwort zurücksetzen", SUBTITLE: "Geben Sie Ihre E-Mail-Adresse ein und wir senden Ihnen einen Link zum Zurücksetzen", FIELDS: { EMAIL: { LABEL: "E-Mail", PLACEHOLDER: "Geben Sie Ihre E-Mail-Adresse ein" } }, SEND_BUTTON: "Link zum Zurücksetzen senden", BACK_TO_LOGIN: "Zurück zur Anmeldung", SUCCESS_TITLE: "Überprüfen Sie Ihre E-Mail", SUCCESS_TEXT: "Wir haben einen Link zum Zurücksetzen an {email} gesendet" }, Ta = { TITLE: "Neues Passwort festlegen", SUBTITLE: "Geben Sie unten Ihr neues Passwort ein", FIELDS: { PASSWORD: { LABEL: "Neues Passwort", PLACEHOLDER: "Passwort eingeben" }, CONFIRM_PASSWORD: { LABEL: "Passwort bestätigen", PLACEHOLDER: "Passwort bestätigen" } }, SAVE_PASSWORD: "Speichern", ERRORS: { "Repeat-password": "Passwörter stimmen nicht überein", "Invalid-token": "Token ist ungültig oder abgelaufen", "Password-too-weak": "Neues Passwort erfüllt eine oder mehrere Passwort-Sicherheitsrichtlinien nicht:", PasswordTooShort: "Passwort zu kurz", PasswordRequiresUniqueChars: "Passwörter müssen unterschiedliche Zeichen verwenden", PasswordRequiresLower: "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", PasswordRequiresUpper: "Passwörter müssen mindestens einen Großbuchstaben enthalten ('A'-'Z')", PasswordRequiresDigit: "Passwörter müssen mindestens eine Ziffer enthalten ('0'-'9')", PasswordRequiresNonAlphanumeric: "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", recentPasswordUsed: "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes." } }, La = { TITLE: "Assets", TOOLBAR: { SAVE: "Speichern", REFRESH: "Aktualisieren", ADD: "Hinzufügen", DELETE: "Ausgewählte löschen" }, EMPTY: { NO_ASSETS: "Keine Assets", UPLOAD_ASSETS: "Assets hier ablegen oder auf 'Hochladen' klicken", UPLOAD: "Hochladen" }, TABLE: { HEADER: { IMAGE: "Bild", NAME: "Name", SIZE: "Größe", SORT_ORDER: "Sortierreihenfolge", CREATED_DATE: "Erstellungsdatum" }, ACTIONS: { DELETE: "Löschen", EDIT: "Bearbeiten" } } }, Oa = { PAGES: { DETAILS: { SUBTITLE: "Asset bearbeiten", TOOLBAR: { SAVE: "Speichern", DELETE: "Löschen" }, FIELDS: { SIZE: "Größe", CREATED_DATE: "Erstellungsdatum", URL: "URL", COPY: "Link kopieren", NAME: { TITLE: "Asset-Name", PLACEHOLDER: "Asset-Namen eingeben" }, ALT: { TITLE: "Alternativer Bildtext", PLACEHOLDER: "Alternativen Bildtext eingeben", TOOLTIP: "Dieser Text wird angezeigt, wenn das Bild auf der Seite deaktiviert oder nicht geladen ist" }, DESCRIPTION: { TITLE: "Meta-Beschreibung", PLACEHOLDER: "Meta-Beschreibung eingeben" } } } } }, va = { _default: "Das Feld {field} ist ungültig", alpha: "Das Feld {field} darf nur alphabetische Zeichen enthalten", alpha_num: "Das Feld {field} darf nur alphanumerische Zeichen enthalten", alpha_dash: "Das Feld {field} darf alphanumerische Zeichen sowie Bindestriche und Unterstriche enthalten", alpha_spaces: "Das Feld {field} darf nur alphabetische Zeichen und Leerzeichen enthalten", between: "Das Feld {field} muss zwischen 0:{min} und 1:{max} liegen", confirmed: "Die Bestätigung des Feldes {field} stimmt nicht überein", digits: "Das Feld {field} muss numerisch sein und genau 0:{length} Ziffern enthalten", dimensions: "Das Feld {field} muss 0:{width} Pixel breit und 1:{height} Pixel hoch sein", email: "Das Feld {field} muss eine gültige E-Mail-Adresse sein", not_one_of: "Das Feld {field} hat keinen gültigen Wert", ext: "Das Feld {field} ist keine gültige Datei", image: "Das Feld {field} muss ein Bild sein", integer: "Das Feld {field} muss eine ganze Zahl sein", length: "Das Feld {field} muss 0:{length} lang sein", max_value: "Das Feld {field} muss 0:{max} oder weniger sein", max: "Das Feld {field} darf nicht länger als 0:{length} Zeichen sein", mimes: "Das Feld {field} muss einen gültigen Dateityp haben", min_value: "Das Feld {field} muss 0:{min} oder mehr sein", min: "Das Feld {field} muss mindestens 0:{length} Zeichen lang sein", numeric: "Das Feld {field} darf nur numerische Zeichen enthalten", one_of: "Das Feld {field} hat keinen gültigen Wert", regex: "Das Format des Feldes {field} ist ungültig", required_if: "Das Feld {field} ist erforderlich", required: "Das Feld {field} ist erforderlich", size: "Die Größe des Feldes {field} muss kleiner als 0:{size}KB sein", url: "Das Feld {field} ist keine gültige URL", min_dimensions: { error: "Die Bildabmessungen müssen größer als {height}*{width} sein", not_image_error: "Keine Bilddatei" }, file_weight: "Die Dateigröße darf maximal {size} kb betragen", before: "Das Enddatum muss früher als das Startdatum sein", after: "Das Enddatum muss später als das Startdatum sein", bigint: "Nicht unterstützte Zahl" }, Ia = { ACCESS_RESTRICTED: "Zugriff eingeschränkt" }, Ra = { LOADING: "Virto OZ wird geladen..." }, wa = { no_options: "Keine Optionen" }, Ro = {
|
|
1797
1797
|
CORE: ma,
|
|
1798
1798
|
SHELL: ga,
|
|
1799
1799
|
COMPONENTS: Sa,
|
|
@@ -1805,11 +1805,11 @@ const ta = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_AL
|
|
|
1805
1805
|
ASSETS: Oa,
|
|
1806
1806
|
messages: va,
|
|
1807
1807
|
PERMISSION_MESSAGES: Ia,
|
|
1808
|
-
AI_AGENT:
|
|
1809
|
-
common:
|
|
1810
|
-
},
|
|
1808
|
+
AI_AGENT: Ra,
|
|
1809
|
+
common: wa
|
|
1810
|
+
}, wo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1811
1811
|
__proto__: null,
|
|
1812
|
-
AI_AGENT:
|
|
1812
|
+
AI_AGENT: Ra,
|
|
1813
1813
|
ASSETS: Oa,
|
|
1814
1814
|
ASSETS_MANAGER: La,
|
|
1815
1815
|
COMPONENTS: Sa,
|
|
@@ -1820,27 +1820,27 @@ const ta = { THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_AL
|
|
|
1820
1820
|
PASSWORDRESET: Ta,
|
|
1821
1821
|
PERMISSION_MESSAGES: Ia,
|
|
1822
1822
|
SHELL: ga,
|
|
1823
|
-
common:
|
|
1824
|
-
default:
|
|
1823
|
+
common: wa,
|
|
1824
|
+
default: Ro,
|
|
1825
1825
|
messages: va
|
|
1826
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1826
|
+
}, Symbol.toStringTag, { value: "Module" })), _o = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1827
1827
|
__proto__: null,
|
|
1828
|
-
de:
|
|
1828
|
+
de: wo,
|
|
1829
1829
|
en: Io
|
|
1830
1830
|
}, Symbol.toStringTag, { value: "Module" })), Ye = U("global-error-handler");
|
|
1831
1831
|
function Ne(e) {
|
|
1832
1832
|
return e instanceof Error ? `${e.name}:${e.message}` : String(e);
|
|
1833
1833
|
}
|
|
1834
|
-
const Te = /* @__PURE__ */ new Map(),
|
|
1834
|
+
const Te = /* @__PURE__ */ new Map(), wt = 3e3;
|
|
1835
1835
|
function Ze(e) {
|
|
1836
|
-
const t = Ne(e), a = Date.now(),
|
|
1837
|
-
if (
|
|
1836
|
+
const t = Ne(e), a = Date.now(), s = Te.get(t);
|
|
1837
|
+
if (s && a - s < wt) return !0;
|
|
1838
1838
|
if (Te.set(t, a), Te.size > 50)
|
|
1839
|
-
for (const [
|
|
1840
|
-
a - o >
|
|
1839
|
+
for (const [n, o] of Te)
|
|
1840
|
+
a - o > wt && Te.delete(n);
|
|
1841
1841
|
return !1;
|
|
1842
1842
|
}
|
|
1843
|
-
function
|
|
1843
|
+
function bo(e) {
|
|
1844
1844
|
const t = e.config.errorHandler;
|
|
1845
1845
|
if (e.config.errorHandler = (o, i, l) => {
|
|
1846
1846
|
if (Ye.error("Unhandled Vue error:", o, `
|
|
@@ -1856,7 +1856,7 @@ Info:`, l), !Ze(o)) {
|
|
|
1856
1856
|
const a = window;
|
|
1857
1857
|
if (a.__VC_GLOBAL_ERROR_HANDLERS_INSTALLED__) return;
|
|
1858
1858
|
a.__VC_GLOBAL_ERROR_HANDLERS_INSTALLED__ = !0;
|
|
1859
|
-
const
|
|
1859
|
+
const s = (o) => {
|
|
1860
1860
|
if (Ye.error("Unhandled rejection:", o.reason), !Ze(o.reason)) {
|
|
1861
1861
|
const i = Ce(o.reason);
|
|
1862
1862
|
q.error(i.message, {
|
|
@@ -1865,8 +1865,8 @@ Info:`, l), !Ze(o)) {
|
|
|
1865
1865
|
});
|
|
1866
1866
|
}
|
|
1867
1867
|
};
|
|
1868
|
-
window.addEventListener("unhandledrejection",
|
|
1869
|
-
const
|
|
1868
|
+
window.addEventListener("unhandledrejection", s);
|
|
1869
|
+
const n = (o) => {
|
|
1870
1870
|
if (o.error && (Ye.error("Uncaught error:", o.error), !Ze(o.error))) {
|
|
1871
1871
|
const i = Ce(o.error);
|
|
1872
1872
|
q.error(i.message, {
|
|
@@ -1875,7 +1875,7 @@ Info:`, l), !Ze(o)) {
|
|
|
1875
1875
|
});
|
|
1876
1876
|
}
|
|
1877
1877
|
};
|
|
1878
|
-
window.addEventListener("error",
|
|
1878
|
+
window.addEventListener("error", n);
|
|
1879
1879
|
}
|
|
1880
1880
|
const Co = U("notification-instance"), Y = {
|
|
1881
1881
|
"top-center": void 0,
|
|
@@ -1886,12 +1886,12 @@ const Co = U("notification-instance"), Y = {
|
|
|
1886
1886
|
"bottom-left": void 0
|
|
1887
1887
|
};
|
|
1888
1888
|
function Po() {
|
|
1889
|
-
function e(
|
|
1890
|
-
document.getElementById(o) && (Y[i] =
|
|
1889
|
+
function e(n, o, i) {
|
|
1890
|
+
document.getElementById(o) && (Y[i] = n);
|
|
1891
1891
|
}
|
|
1892
|
-
function t(
|
|
1892
|
+
function t(n) {
|
|
1893
1893
|
try {
|
|
1894
|
-
|
|
1894
|
+
n ? Y[n] && (Y[n]?.unmount(), document.getElementById(`notification-${n}`)?.remove(), Y[n] = void 0) : (Object.keys(Y).forEach((i) => {
|
|
1895
1895
|
const l = i;
|
|
1896
1896
|
Y[l]?.unmount(), document.getElementById(`notification-${l}`)?.remove(), Y[l] = void 0;
|
|
1897
1897
|
}), Object.values(Y).some((i) => i !== void 0) || document.querySelector(".notification")?.remove());
|
|
@@ -1900,18 +1900,18 @@ function Po() {
|
|
|
1900
1900
|
}
|
|
1901
1901
|
}
|
|
1902
1902
|
function a() {
|
|
1903
|
-
Object.keys(Y).forEach((
|
|
1904
|
-
Y[
|
|
1903
|
+
Object.keys(Y).forEach((n) => {
|
|
1904
|
+
Y[n] && t(n);
|
|
1905
1905
|
});
|
|
1906
1906
|
}
|
|
1907
|
-
function n
|
|
1908
|
-
return Y[
|
|
1907
|
+
function s(n) {
|
|
1908
|
+
return Y[n];
|
|
1909
1909
|
}
|
|
1910
1910
|
return {
|
|
1911
1911
|
saveInstance: e,
|
|
1912
1912
|
unmountComponent: t,
|
|
1913
1913
|
clearContainer: a,
|
|
1914
|
-
getInstanceByPosition:
|
|
1914
|
+
getInstanceByPosition: s
|
|
1915
1915
|
};
|
|
1916
1916
|
}
|
|
1917
1917
|
const ce = U("notification-container"), $ = {
|
|
@@ -1921,7 +1921,7 @@ const ce = U("notification-container"), $ = {
|
|
|
1921
1921
|
"bottom-center": C([]),
|
|
1922
1922
|
"bottom-right": C([]),
|
|
1923
1923
|
"bottom-left": C([])
|
|
1924
|
-
}, { clearContainer: No, unmountComponent: Do, saveInstance: yo, getInstanceByPosition:
|
|
1924
|
+
}, { clearContainer: No, unmountComponent: Do, saveInstance: yo, getInstanceByPosition: _t } = Po();
|
|
1925
1925
|
function Bo() {
|
|
1926
1926
|
const e = le({
|
|
1927
1927
|
timeout: 3e3,
|
|
@@ -1934,10 +1934,10 @@ function Bo() {
|
|
|
1934
1934
|
function a(u) {
|
|
1935
1935
|
return $[u].value;
|
|
1936
1936
|
}
|
|
1937
|
-
function
|
|
1937
|
+
function s(u) {
|
|
1938
1938
|
return t().find((f) => f.notificationId === u);
|
|
1939
1939
|
}
|
|
1940
|
-
function
|
|
1940
|
+
function n(u) {
|
|
1941
1941
|
const f = document.querySelector(".notification"), g = f || document.createElement("div"), E = `.notification__container[data-position="${u}"]`;
|
|
1942
1942
|
let c = document.querySelector(E);
|
|
1943
1943
|
return c || (c = document.createElement("div"), c.className = "notification__container", c.id = `notification-${u}`, c.setAttribute("data-position", u), f || (g.className = "notification", document.body.appendChild(g)), g.appendChild(c)), c;
|
|
@@ -1945,13 +1945,13 @@ function Bo() {
|
|
|
1945
1945
|
const o = /* @__PURE__ */ new Map();
|
|
1946
1946
|
async function i(u) {
|
|
1947
1947
|
const f = u.position || e.position, g = o.get(f);
|
|
1948
|
-
if (g && await g, !
|
|
1948
|
+
if (g && await g, !_t(f)) {
|
|
1949
1949
|
const E = (async () => {
|
|
1950
|
-
const c =
|
|
1950
|
+
const c = n(f), { default: S } = await Promise.resolve().then(() => dr), L = Xa(S, {
|
|
1951
1951
|
...u,
|
|
1952
1952
|
position: f
|
|
1953
1953
|
});
|
|
1954
|
-
L.provide(jt, { notificationContainers: $, actions: d }), L.mount(c), yo(L, c.id, f);
|
|
1954
|
+
L.use(X), L.provide(jt, { notificationContainers: $, actions: d }), L.mount(c), yo(L, c.id, f);
|
|
1955
1955
|
})();
|
|
1956
1956
|
o.set(f, E), await E, o.delete(f);
|
|
1957
1957
|
}
|
|
@@ -2009,7 +2009,7 @@ function Bo() {
|
|
|
2009
2009
|
...f,
|
|
2010
2010
|
...u
|
|
2011
2011
|
}, S = u.position;
|
|
2012
|
-
|
|
2012
|
+
_t(S) ? (ce.debug(`Adding to existing container for position ${S}`), $[S].value.push(c)) : (ce.debug(`Creating new container for position ${S}`), i(c));
|
|
2013
2013
|
} else
|
|
2014
2014
|
ce.debug("Standard update of notification properties"), Object.keys(u).forEach((c) => {
|
|
2015
2015
|
if (c !== "updateId" && c !== "notificationId") {
|
|
@@ -2034,7 +2034,7 @@ function Bo() {
|
|
|
2034
2034
|
getAllNotifications: t,
|
|
2035
2035
|
getNotificationsByPosition: a,
|
|
2036
2036
|
appendInstance: i,
|
|
2037
|
-
getNotification:
|
|
2037
|
+
getNotification: s,
|
|
2038
2038
|
generateNotificationId: ya,
|
|
2039
2039
|
hasNotification: l
|
|
2040
2040
|
};
|
|
@@ -2050,12 +2050,12 @@ function Mo() {
|
|
|
2050
2050
|
hasNotification: (t) => e.hasNotification(t)
|
|
2051
2051
|
});
|
|
2052
2052
|
}
|
|
2053
|
-
const ko = "2.1.0-pr255.
|
|
2053
|
+
const ko = "2.1.0-pr255.87acc71";
|
|
2054
2054
|
function Vo() {
|
|
2055
2055
|
return {
|
|
2056
2056
|
version: ko,
|
|
2057
|
-
buildDate: "2026-07-
|
|
2058
|
-
gitHash: "
|
|
2057
|
+
buildDate: "2026-07-17T09:17:04.166Z",
|
|
2058
|
+
gitHash: "87acc7131"
|
|
2059
2059
|
};
|
|
2060
2060
|
}
|
|
2061
2061
|
function Uo(e = Vo()) {
|
|
@@ -2076,11 +2076,11 @@ const Fo = /* @__PURE__ */ H({
|
|
|
2076
2076
|
},
|
|
2077
2077
|
emits: ["close"],
|
|
2078
2078
|
setup(e, { emit: t }) {
|
|
2079
|
-
const a = e,
|
|
2079
|
+
const a = e, s = t, { isMobile: n, isDesktop: o } = Ma(), i = _(() => a.render === "always" ? !0 : a.render === "mobile" ? n.value : o.value), l = _(() => a.isExpanded && i.value);
|
|
2080
2080
|
function d(u) {
|
|
2081
|
-
u ||
|
|
2081
|
+
u || s("close");
|
|
2082
2082
|
}
|
|
2083
|
-
return (u, f) => l.value ? (
|
|
2083
|
+
return (u, f) => l.value ? (b(), D(r(cs), {
|
|
2084
2084
|
key: 0,
|
|
2085
2085
|
"model-value": !0,
|
|
2086
2086
|
position: e.position,
|
|
@@ -2103,7 +2103,7 @@ const Fo = /* @__PURE__ */ H({
|
|
|
2103
2103
|
} : void 0
|
|
2104
2104
|
]), 1032, ["position", "title", "close-button", "teleport"])) : j(u.$slots, "content", { key: 1 });
|
|
2105
2105
|
}
|
|
2106
|
-
}),
|
|
2106
|
+
}), Rl = Fo, Go = { class: "tw-flex tw-flex-row tw-items-center tw-gap-2" }, Wo = /* @__PURE__ */ H({
|
|
2107
2107
|
__name: "external-provider",
|
|
2108
2108
|
props: {
|
|
2109
2109
|
logo: {},
|
|
@@ -2112,15 +2112,15 @@ const Fo = /* @__PURE__ */ H({
|
|
|
2112
2112
|
},
|
|
2113
2113
|
emits: ["signIn"],
|
|
2114
2114
|
setup(e) {
|
|
2115
|
-
const t = e, a =
|
|
2116
|
-
return (
|
|
2115
|
+
const t = e, a = _(() => t.logo && !t.logo.startsWith("data:image") && !t.logo.startsWith("http") ? new URL(t.logo, window.location.origin).toString() : t.logo);
|
|
2116
|
+
return (s, n) => (b(), D(r(x), {
|
|
2117
2117
|
variant: "secondary",
|
|
2118
2118
|
class: "vc-external-provider",
|
|
2119
|
-
onClick:
|
|
2119
|
+
onClick: n[0] || (n[0] = (o) => s.$emit("signIn"))
|
|
2120
2120
|
}, {
|
|
2121
2121
|
default: A(() => [
|
|
2122
2122
|
V("div", Go, [
|
|
2123
|
-
I(r(
|
|
2123
|
+
I(r(nt), {
|
|
2124
2124
|
src: a.value,
|
|
2125
2125
|
class: "vc-external-provider__icon",
|
|
2126
2126
|
size: "xxs"
|
|
@@ -2138,13 +2138,13 @@ const Fo = /* @__PURE__ */ H({
|
|
|
2138
2138
|
},
|
|
2139
2139
|
setup(e) {
|
|
2140
2140
|
const { signIn: t } = $t();
|
|
2141
|
-
return (a,
|
|
2142
|
-
(
|
|
2143
|
-
key:
|
|
2144
|
-
logo:
|
|
2145
|
-
"display-name":
|
|
2146
|
-
"authentication-type":
|
|
2147
|
-
onSignIn: (o) => r(t)(
|
|
2141
|
+
return (a, s) => (b(), W("div", Ho, [
|
|
2142
|
+
(b(!0), W(ne, null, Ue(e.providers, (n) => (b(), D(Wo, {
|
|
2143
|
+
key: n.authenticationType,
|
|
2144
|
+
logo: n.logoUrl,
|
|
2145
|
+
"display-name": n.displayName,
|
|
2146
|
+
"authentication-type": n.authenticationType,
|
|
2147
|
+
onSignIn: (o) => r(t)(n.authenticationType)
|
|
2148
2148
|
}, null, 8, ["logo", "display-name", "authentication-type", "onSignIn"]))), 128))
|
|
2149
2149
|
]));
|
|
2150
2150
|
}
|
|
@@ -2177,32 +2177,32 @@ const qo = {
|
|
|
2177
2177
|
ssoOnly: { type: Boolean }
|
|
2178
2178
|
},
|
|
2179
2179
|
setup(e) {
|
|
2180
|
-
const t = U("login-page"), a = e, { t:
|
|
2180
|
+
const t = U("login-page"), a = e, { t: s } = ue({ useScope: "global" }), n = we(), { validateField: o } = de({ validateOnMount: !1 }), { uiSettings: i, loading: l } = _e(), d = C({ succeeded: !0 }), { signIn: u, loading: f, user: g } = oe(), { getProviders: E } = $t(), c = Re(), S = C(), L = C(!1);
|
|
2181
2181
|
ve(async () => {
|
|
2182
2182
|
S.value = await E(), L.value = !0;
|
|
2183
2183
|
});
|
|
2184
|
-
const h =
|
|
2184
|
+
const h = _(() => ({
|
|
2185
2185
|
logo: l.value ? "" : i.value?.logo || a.logo
|
|
2186
|
-
})),
|
|
2186
|
+
})), R = le({
|
|
2187
2187
|
username: "",
|
|
2188
2188
|
password: ""
|
|
2189
|
-
}),
|
|
2189
|
+
}), w = async () => {
|
|
2190
2190
|
if (c.value) {
|
|
2191
|
-
if (d.value.error = "", d.value = await u(
|
|
2192
|
-
await
|
|
2191
|
+
if (d.value.error = "", d.value = await u(R.username, R.password), d.value.succeeded && g.value?.passwordExpired) {
|
|
2192
|
+
await n.push({ name: "ChangePassword" });
|
|
2193
2193
|
return;
|
|
2194
2194
|
}
|
|
2195
2195
|
if (d.value.succeeded) {
|
|
2196
2196
|
const T = xo(localStorage.getItem("redirectAfterLogin"));
|
|
2197
|
-
localStorage.removeItem("redirectAfterLogin"), await
|
|
2197
|
+
localStorage.removeItem("redirectAfterLogin"), await n.push(T);
|
|
2198
2198
|
return;
|
|
2199
2199
|
}
|
|
2200
|
-
d.value.error = zo(d.value,
|
|
2200
|
+
d.value.error = zo(d.value, s), R.password = "", o("password");
|
|
2201
2201
|
}
|
|
2202
2202
|
}, O = () => {
|
|
2203
|
-
|
|
2203
|
+
n.push({ name: "ForgotPassword" });
|
|
2204
2204
|
};
|
|
2205
|
-
return t.debug("Init login-page"), (T, N) => (
|
|
2205
|
+
return t.debug("Init login-page"), (T, N) => (b(), D(r(Ie), {
|
|
2206
2206
|
logo: h.value.logo,
|
|
2207
2207
|
background: e.background,
|
|
2208
2208
|
title: e.title || T.$t("LOGIN.TITLE"),
|
|
@@ -2210,11 +2210,11 @@ const qo = {
|
|
|
2210
2210
|
class: "vc-login-page"
|
|
2211
2211
|
}, {
|
|
2212
2212
|
default: A(() => [
|
|
2213
|
-
S.value && S.value.length ? (
|
|
2213
|
+
S.value && S.value.length ? (b(), W("div", qo, [
|
|
2214
2214
|
I($o, { providers: S.value }, null, 8, ["providers"]),
|
|
2215
|
-
e.ssoOnly ? K("", !0) : (
|
|
2215
|
+
e.ssoOnly ? K("", !0) : (b(), W("div", jo, y(T.$t("LOGIN.OR")), 1))
|
|
2216
2216
|
])) : K("", !0),
|
|
2217
|
-
e.ssoOnly && L.value && !S.value?.length ? (
|
|
2217
|
+
e.ssoOnly && L.value && !S.value?.length ? (b(), D(r(fe), {
|
|
2218
2218
|
key: 1,
|
|
2219
2219
|
class: "tw-mt-4 tw-text-danger-500"
|
|
2220
2220
|
}, {
|
|
@@ -2223,24 +2223,24 @@ const qo = {
|
|
|
2223
2223
|
]),
|
|
2224
2224
|
_: 1
|
|
2225
2225
|
})) : K("", !0),
|
|
2226
|
-
e.ssoOnly ? K("", !0) : (
|
|
2226
|
+
e.ssoOnly ? K("", !0) : (b(), W(ne, { key: 2 }, [
|
|
2227
2227
|
I(r(ge), {
|
|
2228
2228
|
class: "tw-gap-5",
|
|
2229
|
-
onSubmit:
|
|
2229
|
+
onSubmit: w
|
|
2230
2230
|
}, {
|
|
2231
2231
|
default: A(() => [
|
|
2232
2232
|
I(r(Z), {
|
|
2233
2233
|
label: T.$t("LOGIN.FIELDS.LOGIN.LABEL"),
|
|
2234
2234
|
name: "username",
|
|
2235
|
-
"model-value":
|
|
2235
|
+
"model-value": R.username,
|
|
2236
2236
|
rules: "required"
|
|
2237
2237
|
}, {
|
|
2238
2238
|
default: A(({ errorMessage: B, handleChange: m, errors: p }) => [
|
|
2239
2239
|
I(r(z), {
|
|
2240
2240
|
ref: "loginField",
|
|
2241
|
-
modelValue:
|
|
2241
|
+
modelValue: R.username,
|
|
2242
2242
|
"onUpdate:modelValue": [
|
|
2243
|
-
N[0] || (N[0] = (v) =>
|
|
2243
|
+
N[0] || (N[0] = (v) => R.username = v),
|
|
2244
2244
|
m
|
|
2245
2245
|
],
|
|
2246
2246
|
label: T.$t("LOGIN.FIELDS.LOGIN.LABEL"),
|
|
@@ -2255,15 +2255,15 @@ const qo = {
|
|
|
2255
2255
|
I(r(Z), {
|
|
2256
2256
|
label: T.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
|
|
2257
2257
|
name: "password",
|
|
2258
|
-
"model-value":
|
|
2258
|
+
"model-value": R.password,
|
|
2259
2259
|
rules: "required"
|
|
2260
2260
|
}, {
|
|
2261
2261
|
default: A(({ errorMessage: B, handleChange: m, errors: p }) => [
|
|
2262
2262
|
I(r(z), {
|
|
2263
2263
|
ref: "passwordField",
|
|
2264
|
-
modelValue:
|
|
2264
|
+
modelValue: R.password,
|
|
2265
2265
|
"onUpdate:modelValue": [
|
|
2266
|
-
N[1] || (N[1] = (v) =>
|
|
2266
|
+
N[1] || (N[1] = (v) => R.password = v),
|
|
2267
2267
|
m
|
|
2268
2268
|
],
|
|
2269
2269
|
label: T.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
|
|
@@ -2272,7 +2272,7 @@ const qo = {
|
|
|
2272
2272
|
required: "",
|
|
2273
2273
|
error: !!p.length,
|
|
2274
2274
|
"error-message": B,
|
|
2275
|
-
onKeyup:
|
|
2275
|
+
onKeyup: st(w, ["enter"])
|
|
2276
2276
|
}, null, 8, ["modelValue", "label", "placeholder", "error", "error-message", "onUpdate:modelValue"])
|
|
2277
2277
|
]),
|
|
2278
2278
|
_: 1
|
|
@@ -2283,7 +2283,7 @@ const qo = {
|
|
|
2283
2283
|
icon: "lucide-log-in",
|
|
2284
2284
|
disabled: !r(c),
|
|
2285
2285
|
loading: r(f),
|
|
2286
|
-
onClick:
|
|
2286
|
+
onClick: w
|
|
2287
2287
|
}, {
|
|
2288
2288
|
default: A(() => [
|
|
2289
2289
|
k(y(T.$t("LOGIN.BUTTON")), 1)
|
|
@@ -2304,13 +2304,13 @@ const qo = {
|
|
|
2304
2304
|
]),
|
|
2305
2305
|
_: 1
|
|
2306
2306
|
}),
|
|
2307
|
-
I(r(
|
|
2307
|
+
I(r(un), {
|
|
2308
2308
|
name: "auth:after-form",
|
|
2309
2309
|
separator: "",
|
|
2310
2310
|
"separator-class": "tw-border-t tw-border-[color:var(--login-separator)] tw-border-solid tw-pb-5",
|
|
2311
2311
|
"wrapper-class": "vc-login-page__separator"
|
|
2312
2312
|
}),
|
|
2313
|
-
d.value.succeeded ? K("", !0) : (
|
|
2313
|
+
d.value.succeeded ? K("", !0) : (b(), D(r(fe), {
|
|
2314
2314
|
key: 0,
|
|
2315
2315
|
class: "tw-mt-4 tw-text-danger-500"
|
|
2316
2316
|
}, {
|
|
@@ -2324,7 +2324,7 @@ const qo = {
|
|
|
2324
2324
|
_: 1
|
|
2325
2325
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2326
2326
|
}
|
|
2327
|
-
}),
|
|
2327
|
+
}), wl = Yo, Zo = { class: "tw-text-center" }, Xo = { class: "tw-text-center tw-mb-6" }, Qo = { class: "tw-text-sm tw-text-neutrals-600" }, Jo = /* @__PURE__ */ H({
|
|
2328
2328
|
__name: "ForgotPassword",
|
|
2329
2329
|
props: {
|
|
2330
2330
|
logo: {},
|
|
@@ -2332,9 +2332,9 @@ const qo = {
|
|
|
2332
2332
|
composable: { type: Function }
|
|
2333
2333
|
},
|
|
2334
2334
|
setup(e) {
|
|
2335
|
-
const t = e, a =
|
|
2335
|
+
const t = e, a = we(), { t: s } = ue({ useScope: "global" });
|
|
2336
2336
|
de({ validateOnMount: !1 });
|
|
2337
|
-
const
|
|
2337
|
+
const n = Re(), { uiSettings: o, loading: i } = _e(), l = C(!1), d = C(""), u = C(!1), f = le({
|
|
2338
2338
|
loginOrEmail: ""
|
|
2339
2339
|
});
|
|
2340
2340
|
let g;
|
|
@@ -2342,17 +2342,17 @@ const qo = {
|
|
|
2342
2342
|
g = t.composable().forgotPassword;
|
|
2343
2343
|
else {
|
|
2344
2344
|
const { requestPasswordReset: h } = oe();
|
|
2345
|
-
g = async (
|
|
2346
|
-
await h(
|
|
2345
|
+
g = async (R) => {
|
|
2346
|
+
await h(R.loginOrEmail);
|
|
2347
2347
|
};
|
|
2348
2348
|
}
|
|
2349
|
-
const E =
|
|
2349
|
+
const E = _(() => ({
|
|
2350
2350
|
logo: i.value ? "" : o.value?.logo || t.logo
|
|
2351
|
-
})), c =
|
|
2352
|
-
const h = f.loginOrEmail, [
|
|
2353
|
-
return !
|
|
2351
|
+
})), c = _(() => {
|
|
2352
|
+
const h = f.loginOrEmail, [R, w] = h.split("@");
|
|
2353
|
+
return !R || !w ? h : `${R.length > 2 ? R[0] + "***" + R[R.length - 1] : R[0] + "***"}@${w}`;
|
|
2354
2354
|
}), S = async () => {
|
|
2355
|
-
if (!(!
|
|
2355
|
+
if (!(!n.value || !g))
|
|
2356
2356
|
try {
|
|
2357
2357
|
l.value = !0, d.value = "", await g({ loginOrEmail: f.loginOrEmail }), u.value = !0;
|
|
2358
2358
|
} catch (h) {
|
|
@@ -2363,16 +2363,16 @@ const qo = {
|
|
|
2363
2363
|
}, L = () => {
|
|
2364
2364
|
a.push({ name: "Login" });
|
|
2365
2365
|
};
|
|
2366
|
-
return (h,
|
|
2366
|
+
return (h, R) => (b(), D(r(Ie), {
|
|
2367
2367
|
logo: E.value.logo,
|
|
2368
2368
|
background: e.background,
|
|
2369
|
-
title: u.value ? r(
|
|
2370
|
-
subtitle: u.value ? void 0 : r(
|
|
2369
|
+
title: u.value ? r(s)("FORGOT_PASSWORD.SUCCESS_TITLE") : r(s)("FORGOT_PASSWORD.TITLE"),
|
|
2370
|
+
subtitle: u.value ? void 0 : r(s)("FORGOT_PASSWORD.SUBTITLE")
|
|
2371
2371
|
}, {
|
|
2372
2372
|
default: A(() => [
|
|
2373
|
-
u.value ? (
|
|
2373
|
+
u.value ? (b(), W(ne, { key: 1 }, [
|
|
2374
2374
|
V("div", Xo, [
|
|
2375
|
-
V("p", Qo, y(r(
|
|
2375
|
+
V("p", Qo, y(r(s)("FORGOT_PASSWORD.SUCCESS_TEXT", { email: c.value })), 1)
|
|
2376
2376
|
]),
|
|
2377
2377
|
I(r(x), {
|
|
2378
2378
|
variant: "primary",
|
|
@@ -2380,33 +2380,33 @@ const qo = {
|
|
|
2380
2380
|
onClick: L
|
|
2381
2381
|
}, {
|
|
2382
2382
|
default: A(() => [
|
|
2383
|
-
k(y(r(
|
|
2383
|
+
k(y(r(s)("FORGOT_PASSWORD.BACK_TO_LOGIN")), 1)
|
|
2384
2384
|
]),
|
|
2385
2385
|
_: 1
|
|
2386
2386
|
})
|
|
2387
|
-
], 64)) : (
|
|
2387
|
+
], 64)) : (b(), W(ne, { key: 0 }, [
|
|
2388
2388
|
I(r(ge), { onSubmit: S }, {
|
|
2389
2389
|
default: A(() => [
|
|
2390
2390
|
I(r(Z), {
|
|
2391
|
-
label: r(
|
|
2391
|
+
label: r(s)("FORGOT_PASSWORD.FIELDS.EMAIL.LABEL"),
|
|
2392
2392
|
name: "loginOrEmail",
|
|
2393
2393
|
"model-value": f.loginOrEmail,
|
|
2394
2394
|
rules: "required|email"
|
|
2395
2395
|
}, {
|
|
2396
|
-
default: A(({ errorMessage:
|
|
2396
|
+
default: A(({ errorMessage: w, handleChange: O, errors: T }) => [
|
|
2397
2397
|
I(r(z), {
|
|
2398
2398
|
ref: "emailField",
|
|
2399
2399
|
modelValue: f.loginOrEmail,
|
|
2400
2400
|
"onUpdate:modelValue": [
|
|
2401
|
-
|
|
2401
|
+
R[0] || (R[0] = (N) => f.loginOrEmail = N),
|
|
2402
2402
|
O
|
|
2403
2403
|
],
|
|
2404
2404
|
class: "tw-mb-6",
|
|
2405
|
-
label: r(
|
|
2406
|
-
placeholder: r(
|
|
2405
|
+
label: r(s)("FORGOT_PASSWORD.FIELDS.EMAIL.LABEL"),
|
|
2406
|
+
placeholder: r(s)("FORGOT_PASSWORD.FIELDS.EMAIL.PLACEHOLDER"),
|
|
2407
2407
|
required: "",
|
|
2408
2408
|
error: !!T.length,
|
|
2409
|
-
"error-message":
|
|
2409
|
+
"error-message": w
|
|
2410
2410
|
}, null, 8, ["modelValue", "label", "placeholder", "error", "error-message", "onUpdate:modelValue"])
|
|
2411
2411
|
]),
|
|
2412
2412
|
_: 1
|
|
@@ -2414,12 +2414,12 @@ const qo = {
|
|
|
2414
2414
|
I(r(x), {
|
|
2415
2415
|
variant: "primary",
|
|
2416
2416
|
class: "tw-w-full tw-mb-4",
|
|
2417
|
-
disabled: !r(
|
|
2417
|
+
disabled: !r(n) || l.value,
|
|
2418
2418
|
loading: l.value,
|
|
2419
2419
|
onClick: S
|
|
2420
2420
|
}, {
|
|
2421
2421
|
default: A(() => [
|
|
2422
|
-
k(y(r(
|
|
2422
|
+
k(y(r(s)("FORGOT_PASSWORD.SEND_BUTTON")), 1)
|
|
2423
2423
|
]),
|
|
2424
2424
|
_: 1
|
|
2425
2425
|
}, 8, ["disabled", "loading"]),
|
|
@@ -2432,7 +2432,7 @@ const qo = {
|
|
|
2432
2432
|
onClick: L
|
|
2433
2433
|
}, {
|
|
2434
2434
|
default: A(() => [
|
|
2435
|
-
k(y(r(
|
|
2435
|
+
k(y(r(s)("FORGOT_PASSWORD.BACK_TO_LOGIN")), 1)
|
|
2436
2436
|
]),
|
|
2437
2437
|
_: 1
|
|
2438
2438
|
})
|
|
@@ -2440,7 +2440,7 @@ const qo = {
|
|
|
2440
2440
|
]),
|
|
2441
2441
|
_: 1
|
|
2442
2442
|
}),
|
|
2443
|
-
d.value ? (
|
|
2443
|
+
d.value ? (b(), D(r(fe), {
|
|
2444
2444
|
key: 0,
|
|
2445
2445
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2446
2446
|
}, {
|
|
@@ -2454,7 +2454,7 @@ const qo = {
|
|
|
2454
2454
|
_: 1
|
|
2455
2455
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2456
2456
|
}
|
|
2457
|
-
}),
|
|
2457
|
+
}), _l = Jo, er = /* @__PURE__ */ H({
|
|
2458
2458
|
__name: "ResetPassword",
|
|
2459
2459
|
props: {
|
|
2460
2460
|
userId: {},
|
|
@@ -2464,7 +2464,7 @@ const qo = {
|
|
|
2464
2464
|
background: { default: "/assets/background.jpg" }
|
|
2465
2465
|
},
|
|
2466
2466
|
setup(e) {
|
|
2467
|
-
const t = e, { validateToken: a, validatePassword:
|
|
2467
|
+
const t = e, { validateToken: a, validatePassword: s, resetPasswordByToken: n, signIn: o, loading: i } = oe(), l = we(), { t: d } = ue({ useScope: "global" }), { validate: u } = de({ validateOnMount: !1 }), { uiSettings: f, loading: g } = _e(), E = le({
|
|
2468
2468
|
isValid: !1,
|
|
2469
2469
|
tokenIsValid: !1,
|
|
2470
2470
|
errors: [],
|
|
@@ -2474,32 +2474,32 @@ const qo = {
|
|
|
2474
2474
|
ve(async () => {
|
|
2475
2475
|
E.tokenIsValid = await a(t.userId, t.token), E.tokenIsValid || E.errors.push("Invalid-token");
|
|
2476
2476
|
});
|
|
2477
|
-
const c =
|
|
2477
|
+
const c = _(() => i.value || !E.password || !E.confirmPassword || !E.isValid && E.tokenIsValid), S = async () => {
|
|
2478
2478
|
if (E.tokenIsValid) {
|
|
2479
|
-
const
|
|
2480
|
-
E.errors =
|
|
2479
|
+
const R = (await s(E.password)).errors;
|
|
2480
|
+
E.errors = R?.map((w) => w.code), E.confirmPassword !== E.password && E.errors.push("Repeat-password"), E.isValid = E.errors.length == 0;
|
|
2481
2481
|
}
|
|
2482
2482
|
}, L = async () => {
|
|
2483
|
-
const { valid:
|
|
2484
|
-
if (
|
|
2485
|
-
const
|
|
2486
|
-
if (
|
|
2483
|
+
const { valid: R } = await u();
|
|
2484
|
+
if (R) {
|
|
2485
|
+
const w = await n(t.userId, E.password, t.token);
|
|
2486
|
+
if (w.succeeded) {
|
|
2487
2487
|
const O = await o(t.userName, E.password);
|
|
2488
2488
|
O.succeeded ? l.push("/") : E.errors = "error" in O && [O.error] || [];
|
|
2489
2489
|
} else
|
|
2490
|
-
E.errors =
|
|
2490
|
+
E.errors = w.errors;
|
|
2491
2491
|
}
|
|
2492
|
-
}, h =
|
|
2492
|
+
}, h = _(() => ({
|
|
2493
2493
|
logo: g.value ? "" : f.value?.logo || t.logo
|
|
2494
2494
|
}));
|
|
2495
|
-
return (
|
|
2495
|
+
return (R, w) => (b(), D(r(Ie), {
|
|
2496
2496
|
logo: h.value.logo,
|
|
2497
2497
|
background: e.background,
|
|
2498
2498
|
title: r(d)("PASSWORDRESET.TITLE"),
|
|
2499
2499
|
subtitle: r(d)("PASSWORDRESET.SUBTITLE")
|
|
2500
2500
|
}, {
|
|
2501
2501
|
default: A(() => [
|
|
2502
|
-
r(i) ? (
|
|
2502
|
+
r(i) ? (b(), D(r(Ft), {
|
|
2503
2503
|
key: 0,
|
|
2504
2504
|
active: ""
|
|
2505
2505
|
})) : K("", !0),
|
|
@@ -2516,7 +2516,7 @@ const qo = {
|
|
|
2516
2516
|
ref: "passwordField",
|
|
2517
2517
|
modelValue: E.password,
|
|
2518
2518
|
"onUpdate:modelValue": [
|
|
2519
|
-
|
|
2519
|
+
w[0] || (w[0] = (m) => E.password = m),
|
|
2520
2520
|
(m) => {
|
|
2521
2521
|
N(m), S();
|
|
2522
2522
|
}
|
|
@@ -2544,7 +2544,7 @@ const qo = {
|
|
|
2544
2544
|
ref: "confirmPasswordField",
|
|
2545
2545
|
modelValue: E.confirmPassword,
|
|
2546
2546
|
"onUpdate:modelValue": [
|
|
2547
|
-
|
|
2547
|
+
w[1] || (w[1] = (m) => E.confirmPassword = m),
|
|
2548
2548
|
(m) => {
|
|
2549
2549
|
N(m), S();
|
|
2550
2550
|
}
|
|
@@ -2557,7 +2557,7 @@ const qo = {
|
|
|
2557
2557
|
required: "",
|
|
2558
2558
|
error: !!B.length,
|
|
2559
2559
|
"error-message": T,
|
|
2560
|
-
onKeyup:
|
|
2560
|
+
onKeyup: st(L, ["enter"])
|
|
2561
2561
|
}), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
|
|
2562
2562
|
]),
|
|
2563
2563
|
_: 1
|
|
@@ -2574,7 +2574,7 @@ const qo = {
|
|
|
2574
2574
|
]),
|
|
2575
2575
|
_: 1
|
|
2576
2576
|
}, 8, ["disabled", "loading"]),
|
|
2577
|
-
(
|
|
2577
|
+
(b(!0), W(ne, null, Ue(E.errors, (O) => (b(), D(r(fe), {
|
|
2578
2578
|
key: O,
|
|
2579
2579
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2580
2580
|
}, {
|
|
@@ -2590,7 +2590,7 @@ const qo = {
|
|
|
2590
2590
|
_: 1
|
|
2591
2591
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2592
2592
|
}
|
|
2593
|
-
}),
|
|
2593
|
+
}), bl = er, tr = /* @__PURE__ */ H({
|
|
2594
2594
|
__name: "Invite",
|
|
2595
2595
|
props: {
|
|
2596
2596
|
userId: {},
|
|
@@ -2601,35 +2601,35 @@ const qo = {
|
|
|
2601
2601
|
},
|
|
2602
2602
|
setup(e) {
|
|
2603
2603
|
de({ validateOnMount: !1 });
|
|
2604
|
-
const t = e, { validateToken: a, validatePassword:
|
|
2604
|
+
const t = e, { validateToken: a, validatePassword: s, resetPasswordByToken: n, signIn: o, loading: i } = oe(), l = we(), { t: d } = ue({ useScope: "global" }), u = Re(), f = rt(), { uiSettings: g, loading: E } = _e(), c = le({
|
|
2605
2605
|
isValid: !1,
|
|
2606
2606
|
tokenIsValid: !1,
|
|
2607
2607
|
errors: [],
|
|
2608
2608
|
password: "",
|
|
2609
2609
|
confirmPassword: ""
|
|
2610
|
-
}), S =
|
|
2610
|
+
}), S = _(() => !f.value || !u.value);
|
|
2611
2611
|
ve(async () => {
|
|
2612
2612
|
c.tokenIsValid = await a(t.userId, t.token), c.tokenIsValid || c.errors.push("Invalid-token");
|
|
2613
2613
|
});
|
|
2614
2614
|
const L = async () => {
|
|
2615
2615
|
if (c.tokenIsValid) {
|
|
2616
|
-
const
|
|
2617
|
-
c.errors =
|
|
2616
|
+
const w = (await s(c.password)).errors;
|
|
2617
|
+
c.errors = w?.map((O) => O.code), c.confirmPassword && c.confirmPassword !== c.password && c.errors.push("Repeat-password"), c.isValid = c.errors.length == 0 && !S.value;
|
|
2618
2618
|
}
|
|
2619
2619
|
}, h = async () => {
|
|
2620
|
-
const
|
|
2621
|
-
|
|
2622
|
-
},
|
|
2620
|
+
const w = await n(t.userId, c.password, t.token);
|
|
2621
|
+
w.succeeded ? (await o(t.userName, c.password)).succeeded && l.push("/") : c.errors = w.errors;
|
|
2622
|
+
}, R = _(() => ({
|
|
2623
2623
|
logo: E.value ? "" : g.value?.logo || t.logo
|
|
2624
2624
|
}));
|
|
2625
|
-
return (
|
|
2626
|
-
logo:
|
|
2625
|
+
return (w, O) => (b(), D(r(Ie), {
|
|
2626
|
+
logo: R.value.logo,
|
|
2627
2627
|
background: e.background,
|
|
2628
2628
|
title: r(d)("INVITATION.TITLE"),
|
|
2629
2629
|
subtitle: r(d)("INVITATION.SUBTITLE")
|
|
2630
2630
|
}, {
|
|
2631
2631
|
default: A(() => [
|
|
2632
|
-
r(i) ? (
|
|
2632
|
+
r(i) ? (b(), D(r(Ft), {
|
|
2633
2633
|
key: 0,
|
|
2634
2634
|
active: ""
|
|
2635
2635
|
})) : K("", !0),
|
|
@@ -2694,7 +2694,7 @@ const qo = {
|
|
|
2694
2694
|
error: !!m.length,
|
|
2695
2695
|
"error-message": N,
|
|
2696
2696
|
required: "",
|
|
2697
|
-
onKeyup:
|
|
2697
|
+
onKeyup: st(h, ["enter"])
|
|
2698
2698
|
}), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
|
|
2699
2699
|
]),
|
|
2700
2700
|
_: 1
|
|
@@ -2711,7 +2711,7 @@ const qo = {
|
|
|
2711
2711
|
]),
|
|
2712
2712
|
_: 1
|
|
2713
2713
|
}, 8, ["disabled", "loading"]),
|
|
2714
|
-
(
|
|
2714
|
+
(b(!0), W(ne, null, Ue(c.errors, (T) => (b(), D(r(fe), {
|
|
2715
2715
|
key: T,
|
|
2716
2716
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2717
2717
|
}, {
|
|
@@ -2730,7 +2730,7 @@ const qo = {
|
|
|
2730
2730
|
}), Cl = tr, ar = {
|
|
2731
2731
|
key: 0,
|
|
2732
2732
|
class: "tw-mb-4"
|
|
2733
|
-
},
|
|
2733
|
+
}, sr = { class: "tw-flex tw-gap-3" }, nr = /* @__PURE__ */ H({
|
|
2734
2734
|
__name: "ChangePassword",
|
|
2735
2735
|
props: {
|
|
2736
2736
|
forced: { type: Boolean },
|
|
@@ -2738,45 +2738,45 @@ const qo = {
|
|
|
2738
2738
|
background: {}
|
|
2739
2739
|
},
|
|
2740
2740
|
setup(e) {
|
|
2741
|
-
const t = e, { t: a } = ue({ useScope: "global" }), { changeUserPassword:
|
|
2741
|
+
const t = e, { t: a } = ue({ useScope: "global" }), { changeUserPassword: s, loading: n, validatePassword: o, signOut: i } = oe(), { uiSettings: l, loading: d } = _e(), u = _(() => ({
|
|
2742
2742
|
logo: d.value ? "" : l.value?.logo || t.logo
|
|
2743
2743
|
}));
|
|
2744
2744
|
de({ validateOnMount: !1 });
|
|
2745
|
-
const f =
|
|
2745
|
+
const f = Re(), g = rt(), E = we(), c = le({
|
|
2746
2746
|
isValid: !1,
|
|
2747
2747
|
errors: [],
|
|
2748
2748
|
currentPassword: "",
|
|
2749
2749
|
password: "",
|
|
2750
2750
|
confirmPassword: ""
|
|
2751
|
-
}), S =
|
|
2751
|
+
}), S = _(() => !g.value || !f.value);
|
|
2752
2752
|
async function L() {
|
|
2753
2753
|
await i(), await E.push("/login");
|
|
2754
2754
|
}
|
|
2755
2755
|
async function h() {
|
|
2756
|
-
const
|
|
2757
|
-
|
|
2756
|
+
const w = await s(c.currentPassword, c.password);
|
|
2757
|
+
w?.succeeded ? await E.push("/") : w?.errors && (c.errors = w?.errors, c.isValid = c.errors.length == 0);
|
|
2758
2758
|
}
|
|
2759
|
-
function
|
|
2759
|
+
function R() {
|
|
2760
2760
|
Pe(async () => {
|
|
2761
2761
|
if (c.password || c.confirmPassword) {
|
|
2762
|
-
const
|
|
2762
|
+
const w = (await o(c.password)).errors ?? [], O = Ko({
|
|
2763
2763
|
password: c.password,
|
|
2764
2764
|
confirmPassword: c.confirmPassword,
|
|
2765
2765
|
currentPassword: c.currentPassword
|
|
2766
2766
|
});
|
|
2767
|
-
c.errors = [...
|
|
2767
|
+
c.errors = [...w, ...O], c.isValid = c.errors.length == 0;
|
|
2768
2768
|
}
|
|
2769
2769
|
});
|
|
2770
2770
|
}
|
|
2771
|
-
return (
|
|
2771
|
+
return (w, O) => (b(), D(r(Ie), {
|
|
2772
2772
|
logo: u.value.logo,
|
|
2773
2773
|
background: e.background,
|
|
2774
2774
|
title: e.forced ? r(a)("COMPONENTS.CHANGE_PASSWORD.TITLE_FORCED") : r(a)("COMPONENTS.CHANGE_PASSWORD.TITLE"),
|
|
2775
2775
|
subtitle: e.forced ? r(a)("COMPONENTS.CHANGE_PASSWORD.SUBTITLE_FORCED") : void 0
|
|
2776
2776
|
}, {
|
|
2777
2777
|
default: A(() => [
|
|
2778
|
-
e.forced ? (
|
|
2779
|
-
I(r(
|
|
2778
|
+
e.forced ? (b(), W("div", ar, [
|
|
2779
|
+
I(r(fs), {
|
|
2780
2780
|
variant: "info",
|
|
2781
2781
|
icon: "lucide-lightbulb",
|
|
2782
2782
|
"icon-size": "l"
|
|
@@ -2801,7 +2801,7 @@ const qo = {
|
|
|
2801
2801
|
modelValue: c.currentPassword,
|
|
2802
2802
|
"onUpdate:modelValue": [
|
|
2803
2803
|
O[0] || (O[0] = (m) => c.currentPassword = m),
|
|
2804
|
-
|
|
2804
|
+
R
|
|
2805
2805
|
],
|
|
2806
2806
|
class: "tw-mb-4",
|
|
2807
2807
|
label: r(a)("COMPONENTS.CHANGE_PASSWORD.CURRENT_PASSWORD.LABEL"),
|
|
@@ -2826,7 +2826,7 @@ const qo = {
|
|
|
2826
2826
|
modelValue: c.password,
|
|
2827
2827
|
"onUpdate:modelValue": [
|
|
2828
2828
|
O[1] || (O[1] = (m) => c.password = m),
|
|
2829
|
-
|
|
2829
|
+
R
|
|
2830
2830
|
],
|
|
2831
2831
|
class: "tw-mb-4",
|
|
2832
2832
|
label: r(a)("COMPONENTS.CHANGE_PASSWORD.NEW_PASSWORD.LABEL"),
|
|
@@ -2851,7 +2851,7 @@ const qo = {
|
|
|
2851
2851
|
modelValue: c.confirmPassword,
|
|
2852
2852
|
"onUpdate:modelValue": [
|
|
2853
2853
|
O[2] || (O[2] = (m) => c.confirmPassword = m),
|
|
2854
|
-
|
|
2854
|
+
R
|
|
2855
2855
|
],
|
|
2856
2856
|
class: "tw-mb-6",
|
|
2857
2857
|
label: r(a)("COMPONENTS.CHANGE_PASSWORD.CONFIRM_PASSWORD.LABEL"),
|
|
@@ -2864,7 +2864,7 @@ const qo = {
|
|
|
2864
2864
|
]),
|
|
2865
2865
|
_: 1
|
|
2866
2866
|
}, 8, ["label", "model-value"]),
|
|
2867
|
-
V("div",
|
|
2867
|
+
V("div", sr, [
|
|
2868
2868
|
I(r(x), {
|
|
2869
2869
|
variant: "secondary",
|
|
2870
2870
|
class: "tw-flex-1",
|
|
@@ -2878,8 +2878,8 @@ const qo = {
|
|
|
2878
2878
|
I(r(x), {
|
|
2879
2879
|
variant: "primary",
|
|
2880
2880
|
class: "tw-flex-1",
|
|
2881
|
-
disabled: r(
|
|
2882
|
-
loading: r(
|
|
2881
|
+
disabled: r(n) || !c.isValid || S.value,
|
|
2882
|
+
loading: r(n),
|
|
2883
2883
|
onClick: h
|
|
2884
2884
|
}, {
|
|
2885
2885
|
default: A(() => [
|
|
@@ -2888,7 +2888,7 @@ const qo = {
|
|
|
2888
2888
|
_: 1
|
|
2889
2889
|
}, 8, ["disabled", "loading"])
|
|
2890
2890
|
]),
|
|
2891
|
-
(
|
|
2891
|
+
(b(!0), W(ne, null, Ue(c.errors, (T, N) => (b(), D(r(fe), {
|
|
2892
2892
|
key: N,
|
|
2893
2893
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2894
2894
|
}, {
|
|
@@ -2904,14 +2904,14 @@ const qo = {
|
|
|
2904
2904
|
_: 1
|
|
2905
2905
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2906
2906
|
}
|
|
2907
|
-
}), Pl =
|
|
2907
|
+
}), Pl = nr, Xe = U("use-blade-navigation-adapter"), tt = /* @__PURE__ */ new Set();
|
|
2908
2908
|
function re(e, t) {
|
|
2909
2909
|
if (tt.has(e)) return;
|
|
2910
2910
|
tt.add(e);
|
|
2911
2911
|
const a = `[useBladeNavigation] "${e}" is deprecated.`;
|
|
2912
2912
|
console.warn(t ? `${a} Use ${t} instead.` : a);
|
|
2913
2913
|
}
|
|
2914
|
-
function
|
|
2914
|
+
function bt(e, t, a) {
|
|
2915
2915
|
return {
|
|
2916
2916
|
props: {
|
|
2917
2917
|
navigation: {
|
|
@@ -2933,26 +2933,26 @@ function Nl() {
|
|
|
2933
2933
|
De = void 0, ye = void 0, tt.clear();
|
|
2934
2934
|
}
|
|
2935
2935
|
function or() {
|
|
2936
|
-
const e =
|
|
2936
|
+
const e = Ks, t = js, a = qs;
|
|
2937
2937
|
if (!e || !t)
|
|
2938
2938
|
throw new Error(
|
|
2939
2939
|
"[useBladeNavigation adapter] BladeStack or BladeMessaging not available. Ensure plugin-v2 is installed before calling useBladeNavigation()."
|
|
2940
2940
|
);
|
|
2941
|
-
const
|
|
2942
|
-
if (!
|
|
2941
|
+
const s = zs?.router;
|
|
2942
|
+
if (!s)
|
|
2943
2943
|
throw new Error("[@vc-shell/framework#useBladeNavigation] Vue Router instance is not available.");
|
|
2944
|
-
return De || (De =
|
|
2945
|
-
const
|
|
2946
|
-
return e.blades.value.map((o, i) =>
|
|
2947
|
-
})), ye || (ye =
|
|
2948
|
-
const
|
|
2949
|
-
if (
|
|
2950
|
-
return
|
|
2944
|
+
return De || (De = _(() => {
|
|
2945
|
+
const n = e.activeBlade.value?.id;
|
|
2946
|
+
return e.blades.value.map((o, i) => bt(o, i, n));
|
|
2947
|
+
})), ye || (ye = _(() => {
|
|
2948
|
+
const n = e.workspace.value;
|
|
2949
|
+
if (n)
|
|
2950
|
+
return bt(n, 0, e.activeBlade.value?.id);
|
|
2951
2951
|
})), {
|
|
2952
2952
|
bladeStack: e,
|
|
2953
2953
|
messaging: t,
|
|
2954
2954
|
bladeRegistry: a,
|
|
2955
|
-
router:
|
|
2955
|
+
router: s,
|
|
2956
2956
|
blades: De,
|
|
2957
2957
|
activeWorkspace: ye
|
|
2958
2958
|
};
|
|
@@ -2966,7 +2966,7 @@ function rr(e) {
|
|
|
2966
2966
|
return t.name || t.__name || "UnknownBlade";
|
|
2967
2967
|
}
|
|
2968
2968
|
function Dl() {
|
|
2969
|
-
const { bladeStack: e, messaging: t, bladeRegistry: a, router:
|
|
2969
|
+
const { bladeStack: e, messaging: t, bladeRegistry: a, router: s, blades: n, activeWorkspace: o } = or(), i = Qa() ? J(Wt, void 0) : void 0, { syncUrlPush: l, syncUrlReplace: d } = Zs(s, e);
|
|
2970
2970
|
function u() {
|
|
2971
2971
|
return i ? i.value.id : e.activeBlade.value?.id;
|
|
2972
2972
|
}
|
|
@@ -3004,13 +3004,13 @@ function Dl() {
|
|
|
3004
3004
|
}
|
|
3005
3005
|
function c() {
|
|
3006
3006
|
re("goToRoot()");
|
|
3007
|
-
const m =
|
|
3007
|
+
const m = s.getRoutes(), p = m.find((M) => M.meta?.root), v = m.find((M) => M.aliasOf?.path === p?.path) || p;
|
|
3008
3008
|
if (v?.name)
|
|
3009
3009
|
return {
|
|
3010
3010
|
name: v.name,
|
|
3011
|
-
params:
|
|
3011
|
+
params: s.currentRoute.value.params
|
|
3012
3012
|
};
|
|
3013
|
-
const P =
|
|
3013
|
+
const P = Ys(s);
|
|
3014
3014
|
return { path: P ? `/${P}` : "/" };
|
|
3015
3015
|
}
|
|
3016
3016
|
async function S(m, p) {
|
|
@@ -3039,17 +3039,17 @@ function Dl() {
|
|
|
3039
3039
|
function h(m) {
|
|
3040
3040
|
return a.getBladeComponent(m);
|
|
3041
3041
|
}
|
|
3042
|
-
function
|
|
3042
|
+
function R(m) {
|
|
3043
3043
|
re("routeResolver", "plugin-v2 handles URL resolution automatically");
|
|
3044
3044
|
}
|
|
3045
|
-
function
|
|
3045
|
+
function w(m) {
|
|
3046
3046
|
re("setNavigationQuery");
|
|
3047
3047
|
const p = e.workspace.value;
|
|
3048
3048
|
if (!p) return;
|
|
3049
3049
|
const v = p.name.toLowerCase(), P = {};
|
|
3050
3050
|
for (const [M, F] of Object.entries(m))
|
|
3051
3051
|
F != null && (P[`${v}_${M}`] = String(F));
|
|
3052
|
-
|
|
3052
|
+
s.options.history.replace(
|
|
3053
3053
|
decodeURIComponent(
|
|
3054
3054
|
`${window.location.hash.substring(1).split("?")[0]}?${new URLSearchParams(P).toString()}`
|
|
3055
3055
|
)
|
|
@@ -3075,7 +3075,7 @@ function Dl() {
|
|
|
3075
3075
|
const p = f(m);
|
|
3076
3076
|
p && e.clearBladeError(p);
|
|
3077
3077
|
}
|
|
3078
|
-
const B =
|
|
3078
|
+
const B = _(() => {
|
|
3079
3079
|
if (!i) return;
|
|
3080
3080
|
const m = i.value;
|
|
3081
3081
|
return {
|
|
@@ -3086,7 +3086,7 @@ function Dl() {
|
|
|
3086
3086
|
};
|
|
3087
3087
|
});
|
|
3088
3088
|
return {
|
|
3089
|
-
blades:
|
|
3089
|
+
blades: n,
|
|
3090
3090
|
activeWorkspace: o,
|
|
3091
3091
|
openBlade: g,
|
|
3092
3092
|
closeBlade: E,
|
|
@@ -3094,112 +3094,112 @@ function Dl() {
|
|
|
3094
3094
|
onParentCall: S,
|
|
3095
3095
|
onBeforeClose: L,
|
|
3096
3096
|
resolveBladeByName: h,
|
|
3097
|
-
routeResolver:
|
|
3098
|
-
setNavigationQuery:
|
|
3097
|
+
routeResolver: R,
|
|
3098
|
+
setNavigationQuery: w,
|
|
3099
3099
|
getNavigationQuery: O,
|
|
3100
3100
|
setBladeError: T,
|
|
3101
3101
|
clearBladeError: N,
|
|
3102
3102
|
currentBladeNavigationData: B
|
|
3103
3103
|
};
|
|
3104
3104
|
}
|
|
3105
|
-
function
|
|
3105
|
+
function be(e) {
|
|
3106
3106
|
return e == null || e === "";
|
|
3107
3107
|
}
|
|
3108
3108
|
function Ve(e, t) {
|
|
3109
|
-
if (
|
|
3109
|
+
if (be(e) && be(t) || be(e) && Array.isArray(t) && t.length === 0 || Array.isArray(e) && e.length === 0 && be(t) || e === t) return !0;
|
|
3110
3110
|
if (typeof e != typeof t || typeof e != "object" || e === null || t === null) return !1;
|
|
3111
3111
|
if (Array.isArray(e) || Array.isArray(t))
|
|
3112
3112
|
return !Array.isArray(e) || !Array.isArray(t) || e.length !== t.length ? !1 : e.every((o, i) => Ve(o, t[i]));
|
|
3113
|
-
const a = e,
|
|
3114
|
-
for (const o of
|
|
3115
|
-
if (!Ve(a[o],
|
|
3113
|
+
const a = e, s = t, n = /* @__PURE__ */ new Set([...Object.keys(a), ...Object.keys(s)]);
|
|
3114
|
+
for (const o of n)
|
|
3115
|
+
if (!Ve(a[o], s[o])) return !1;
|
|
3116
3116
|
return !0;
|
|
3117
3117
|
}
|
|
3118
3118
|
function yl(e) {
|
|
3119
3119
|
const {
|
|
3120
3120
|
data: t,
|
|
3121
3121
|
canSaveOverride: a,
|
|
3122
|
-
autoBeforeClose:
|
|
3123
|
-
autoBeforeUnload:
|
|
3122
|
+
autoBeforeClose: s = !0,
|
|
3123
|
+
autoBeforeUnload: n = !0,
|
|
3124
3124
|
closeConfirmMessage: o,
|
|
3125
3125
|
onRevert: i
|
|
3126
|
-
} = e, { meta: l, setFieldError: d, errorBag: u } = de({ validateOnMount: !1 }), f = C(
|
|
3127
|
-
|
|
3126
|
+
} = e, { meta: l, setFieldError: d, errorBag: u } = de({ validateOnMount: !1 }), f = C(Q(t.value)), g = C(!1);
|
|
3127
|
+
se(
|
|
3128
3128
|
t,
|
|
3129
|
-
(
|
|
3130
|
-
E.value && (g.value = !Ve(
|
|
3129
|
+
(w) => {
|
|
3130
|
+
E.value && (g.value = !Ve(w, f.value));
|
|
3131
3131
|
},
|
|
3132
3132
|
{ deep: !0 }
|
|
3133
3133
|
);
|
|
3134
|
-
const E = C(!1), c =
|
|
3134
|
+
const E = C(!1), c = _(() => E.value && g.value), S = _(() => !(!E.value || !l.value.valid || !g.value || a && !a.value));
|
|
3135
3135
|
function L() {
|
|
3136
|
-
f.value =
|
|
3136
|
+
f.value = Q(t.value), g.value = !1, E.value = !0;
|
|
3137
3137
|
}
|
|
3138
3138
|
function h() {
|
|
3139
3139
|
E.value = !0, g.value = !Ve(t.value, f.value);
|
|
3140
3140
|
}
|
|
3141
|
-
function
|
|
3141
|
+
function R() {
|
|
3142
3142
|
if (i)
|
|
3143
3143
|
return i();
|
|
3144
|
-
t.value =
|
|
3144
|
+
t.value = Q(f.value);
|
|
3145
3145
|
}
|
|
3146
|
-
if (
|
|
3147
|
-
const { onBeforeClose:
|
|
3148
|
-
|
|
3146
|
+
if (n && Fn(c), s !== !1) {
|
|
3147
|
+
const { onBeforeClose: w } = ot(), { showConfirmation: O } = Es();
|
|
3148
|
+
w(async () => {
|
|
3149
3149
|
let T;
|
|
3150
|
-
if (typeof
|
|
3150
|
+
if (typeof s == "object" ? T = s.value && c.value : T = c.value, T) {
|
|
3151
3151
|
const N = o ? yt(o) : "You have unsaved changes. Are you sure you want to leave?";
|
|
3152
3152
|
return !await O(N);
|
|
3153
3153
|
}
|
|
3154
3154
|
return !1;
|
|
3155
3155
|
});
|
|
3156
3156
|
}
|
|
3157
|
-
return Dt(
|
|
3157
|
+
return Dt(Ls, { isModified: c, canSave: S }), {
|
|
3158
3158
|
setBaseline: L,
|
|
3159
3159
|
markReady: h,
|
|
3160
|
-
revert:
|
|
3160
|
+
revert: R,
|
|
3161
3161
|
canSave: S,
|
|
3162
3162
|
isModified: c,
|
|
3163
|
-
isReady:
|
|
3163
|
+
isReady: _(() => E.value),
|
|
3164
3164
|
formMeta: l,
|
|
3165
3165
|
setFieldError: d,
|
|
3166
3166
|
errorBag: u
|
|
3167
3167
|
};
|
|
3168
3168
|
}
|
|
3169
|
-
const Be = 14,
|
|
3169
|
+
const Be = 14, _a = 3;
|
|
3170
3170
|
function ir(e, t, a) {
|
|
3171
|
-
const
|
|
3172
|
-
const g =
|
|
3171
|
+
const s = e.length, n = (u) => u !== void 0 && t.get(u) || 0, o = s > 0 ? e[s - 1] : void 0, i = n(o), l = e.map((u, f) => {
|
|
3172
|
+
const g = s - 1 - f;
|
|
3173
3173
|
let E = 0;
|
|
3174
|
-
for (let S = f + 1; S <
|
|
3175
|
-
E +=
|
|
3174
|
+
for (let S = f + 1; S < s; S++)
|
|
3175
|
+
E += n(e[S]);
|
|
3176
3176
|
const c = g * Be + E;
|
|
3177
3177
|
return {
|
|
3178
3178
|
sonnerIndex: g,
|
|
3179
|
-
zIndex:
|
|
3179
|
+
zIndex: s - g,
|
|
3180
3180
|
offset: c,
|
|
3181
|
-
initialHeight:
|
|
3181
|
+
initialHeight: n(u)
|
|
3182
3182
|
};
|
|
3183
3183
|
});
|
|
3184
3184
|
let d;
|
|
3185
|
-
if (a &&
|
|
3186
|
-
const u =
|
|
3185
|
+
if (a && s > 1) {
|
|
3186
|
+
const u = s - 1;
|
|
3187
3187
|
let f = 0;
|
|
3188
|
-
for (let c = 1; c <
|
|
3189
|
-
f +=
|
|
3190
|
-
const g = u * Be + f, E =
|
|
3188
|
+
for (let c = 1; c < s; c++)
|
|
3189
|
+
f += n(e[c]);
|
|
3190
|
+
const g = u * Be + f, E = n(e[0]);
|
|
3191
3191
|
d = g + E;
|
|
3192
3192
|
} else
|
|
3193
|
-
d = i + Math.min(
|
|
3193
|
+
d = i + Math.min(s - 1, _a - 1) * Be;
|
|
3194
3194
|
return { toasts: l, frontHeight: i, groupHeight: d };
|
|
3195
3195
|
}
|
|
3196
3196
|
function lr() {
|
|
3197
3197
|
const e = C(!1), t = C(!1);
|
|
3198
3198
|
let a = null;
|
|
3199
|
-
function
|
|
3199
|
+
function s() {
|
|
3200
3200
|
a && (clearTimeout(a), a = null), e.value = !0;
|
|
3201
3201
|
}
|
|
3202
|
-
function
|
|
3202
|
+
function n() {
|
|
3203
3203
|
t.value || (a = setTimeout(() => {
|
|
3204
3204
|
e.value = !1, a = null;
|
|
3205
3205
|
}, 200));
|
|
@@ -3222,8 +3222,8 @@ function lr() {
|
|
|
3222
3222
|
expanded: e,
|
|
3223
3223
|
interacting: t,
|
|
3224
3224
|
heightsMap: o,
|
|
3225
|
-
expandStack:
|
|
3226
|
-
collapseStack:
|
|
3225
|
+
expandStack: s,
|
|
3226
|
+
collapseStack: n,
|
|
3227
3227
|
reportHeight: i,
|
|
3228
3228
|
forgetHeight: l,
|
|
3229
3229
|
clearHeights: d,
|
|
@@ -3286,8 +3286,8 @@ const ur = H({
|
|
|
3286
3286
|
}
|
|
3287
3287
|
},
|
|
3288
3288
|
setup(e) {
|
|
3289
|
-
const { notificationContainers: t, actions: a } = J(jt),
|
|
3290
|
-
expanded:
|
|
3289
|
+
const { notificationContainers: t, actions: a } = J(jt), s = _(() => t[e.position].value || []), {
|
|
3290
|
+
expanded: n,
|
|
3291
3291
|
heightsMap: o,
|
|
3292
3292
|
expandStack: i,
|
|
3293
3293
|
collapseStack: l,
|
|
@@ -3305,12 +3305,12 @@ const ur = H({
|
|
|
3305
3305
|
function S() {
|
|
3306
3306
|
a.clear(), f();
|
|
3307
3307
|
}
|
|
3308
|
-
const L =
|
|
3308
|
+
const L = _(() => (e.position || "top-center").startsWith("top"));
|
|
3309
3309
|
return () => {
|
|
3310
|
-
const h =
|
|
3310
|
+
const h = s.value, R = h.length, w = n.value || R <= 1, O = R > 1, T = ir(
|
|
3311
3311
|
h.map((m) => m.notificationId),
|
|
3312
3312
|
o,
|
|
3313
|
-
|
|
3313
|
+
w
|
|
3314
3314
|
), N = h.map((m, p) => {
|
|
3315
3315
|
const { sonnerIndex: v, zIndex: P, offset: M, initialHeight: F } = T.toasts[p], pe = {
|
|
3316
3316
|
"--toasts-before": v,
|
|
@@ -3322,12 +3322,12 @@ const ur = H({
|
|
|
3322
3322
|
onClose: c,
|
|
3323
3323
|
onReportHeight: d,
|
|
3324
3324
|
toastIndex: v,
|
|
3325
|
-
toastsCount:
|
|
3326
|
-
expanded:
|
|
3327
|
-
visibleToasts:
|
|
3325
|
+
toastsCount: R,
|
|
3326
|
+
expanded: w,
|
|
3327
|
+
visibleToasts: _a,
|
|
3328
3328
|
style: pe
|
|
3329
|
-
},
|
|
3330
|
-
return te("li", { key: m.notificationId, style: { display: "contents" } }, [
|
|
3329
|
+
}, ba = m.content && E(m.content) ? te(dt, { ...ee, content: te(es(m.content)) }) : te(dt, ee);
|
|
3330
|
+
return te("li", { key: m.notificationId, style: { display: "contents" } }, [ba]);
|
|
3331
3331
|
});
|
|
3332
3332
|
let B = null;
|
|
3333
3333
|
return O && (B = te(
|
|
@@ -3340,8 +3340,8 @@ const ur = H({
|
|
|
3340
3340
|
left: "var(--width, 356px)",
|
|
3341
3341
|
"margin-left": "8px",
|
|
3342
3342
|
"list-style": "none",
|
|
3343
|
-
opacity:
|
|
3344
|
-
"pointer-events":
|
|
3343
|
+
opacity: w ? "1" : "0",
|
|
3344
|
+
"pointer-events": w ? "auto" : "none",
|
|
3345
3345
|
transition: "opacity 200ms ease"
|
|
3346
3346
|
}
|
|
3347
3347
|
},
|
|
@@ -3353,8 +3353,8 @@ const ur = H({
|
|
|
3353
3353
|
onClick: S
|
|
3354
3354
|
},
|
|
3355
3355
|
[
|
|
3356
|
-
te(
|
|
3357
|
-
|
|
3356
|
+
te(Os, { icon: "lucide-x", size: "xs", "aria-hidden": "true" }),
|
|
3357
|
+
X.global.t("CORE.NOTIFICATIONS.CLEAR_ALL")
|
|
3358
3358
|
]
|
|
3359
3359
|
)
|
|
3360
3360
|
]
|
|
@@ -3362,7 +3362,7 @@ const ur = H({
|
|
|
3362
3362
|
"ol",
|
|
3363
3363
|
{
|
|
3364
3364
|
class: "notification__toast-group",
|
|
3365
|
-
"data-expanded": String(
|
|
3365
|
+
"data-expanded": String(w),
|
|
3366
3366
|
"data-position": e.position || "top-center",
|
|
3367
3367
|
"data-y-position": L.value ? "top" : "bottom",
|
|
3368
3368
|
style: {
|
|
@@ -3389,14 +3389,14 @@ const ur = H({
|
|
|
3389
3389
|
default: ur
|
|
3390
3390
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
3391
3391
|
function cr(e, t) {
|
|
3392
|
-
t.i18n?.locale && (
|
|
3393
|
-
const a =
|
|
3394
|
-
e.provide(
|
|
3395
|
-
const { resolveCamelCaseLocale:
|
|
3396
|
-
e.config.globalProperties.$mergeLocaleMessage = (
|
|
3397
|
-
|
|
3398
|
-
}, Object.entries(
|
|
3399
|
-
|
|
3392
|
+
t.i18n?.locale && (X.global.locale.value = t.i18n.locale), t.i18n?.fallbackLocale && (X.global.fallbackLocale.value = t.i18n.fallbackLocale), e.use(X);
|
|
3393
|
+
const a = ms();
|
|
3394
|
+
e.provide(vs, a);
|
|
3395
|
+
const { resolveCamelCaseLocale: s } = a;
|
|
3396
|
+
e.config.globalProperties.$mergeLocaleMessage = (n, o) => {
|
|
3397
|
+
X.global.mergeLocaleMessage(s(n), o);
|
|
3398
|
+
}, Object.entries(_o).forEach(([n, o]) => {
|
|
3399
|
+
X.global.mergeLocaleMessage(s(n), o);
|
|
3400
3400
|
});
|
|
3401
3401
|
}
|
|
3402
3402
|
function fr(e) {
|
|
@@ -3404,18 +3404,18 @@ function fr(e) {
|
|
|
3404
3404
|
phone: 480,
|
|
3405
3405
|
desktop: 1024
|
|
3406
3406
|
});
|
|
3407
|
-
e.config.globalProperties.$isPhone = t.smaller("phone"), e.config.globalProperties.$isTablet = t.between("phone", "desktop"), e.config.globalProperties.$isMobile = t.smaller("desktop"), e.config.globalProperties.$isDesktop = t.greater("desktop"), e.config.globalProperties.$isTouch = "ontouchstart" in window || navigator.maxTouchPoints > 0, e.provide(
|
|
3407
|
+
e.config.globalProperties.$isPhone = t.smaller("phone"), e.config.globalProperties.$isTablet = t.between("phone", "desktop"), e.config.globalProperties.$isMobile = t.smaller("desktop"), e.config.globalProperties.$isDesktop = t.greater("desktop"), e.config.globalProperties.$isTouch = "ontouchstart" in window || navigator.maxTouchPoints > 0, e.provide(Is, e.config.globalProperties.$isPhone), e.provide(Rs, e.config.globalProperties.$isTablet), e.provide(ws, e.config.globalProperties.$isMobile), e.provide(_s, e.config.globalProperties.$isDesktop), e.provide(bs, e.config.globalProperties.$isTouch);
|
|
3408
3408
|
}
|
|
3409
3409
|
function Er(e) {
|
|
3410
|
-
e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(
|
|
3410
|
+
e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(Cs, e.config.globalProperties.bladeRoutes);
|
|
3411
3411
|
}
|
|
3412
3412
|
function mr(e) {
|
|
3413
|
-
e.provide(Gt, Va()), e.provide(
|
|
3414
|
-
const t =
|
|
3413
|
+
e.provide(Gt, Va()), e.provide(Ps, Ua()), e.provide(Ns, Fa()), e.provide(Ds, Ga()), e.provide(ys, Wa()), e.provide(Bs, me());
|
|
3414
|
+
const t = gs(e);
|
|
3415
3415
|
e.provide(kt, t);
|
|
3416
3416
|
}
|
|
3417
3417
|
function gr(e, t) {
|
|
3418
|
-
Mo(), e.use(
|
|
3418
|
+
Mo(), e.use(An, { router: t.router }), e.use(vn), e.use(lo), e.use(mo), e.use(mn), e.use(En), e.use(Xs), e.use(Vs, t.aiAgent);
|
|
3419
3419
|
}
|
|
3420
3420
|
function Sr(e, t) {
|
|
3421
3421
|
if (!t.applicationInsights?.instrumentationKey) return;
|
|
@@ -3445,48 +3445,48 @@ function pr(e, t) {
|
|
|
3445
3445
|
cloudRole: t.applicationInsights?.cloudRole,
|
|
3446
3446
|
cloudRoleInstance: t.applicationInsights?.cloudRoleInstance
|
|
3447
3447
|
};
|
|
3448
|
-
e.use(
|
|
3449
|
-
const
|
|
3450
|
-
e.provide($a,
|
|
3451
|
-
const { setupPageTracking:
|
|
3448
|
+
e.use(Qs, a);
|
|
3449
|
+
const s = e.runWithContext(() => Js());
|
|
3450
|
+
e.provide($a, s), e.runWithContext(() => {
|
|
3451
|
+
const { setupPageTracking: n } = xa();
|
|
3452
3452
|
t.router.beforeEach((o) => {
|
|
3453
|
-
|
|
3453
|
+
n.beforeEach({ name: o.name });
|
|
3454
3454
|
}), t.router.afterEach((o) => {
|
|
3455
|
-
|
|
3455
|
+
n.afterEach({ name: o.name, fullPath: o.fullPath });
|
|
3456
3456
|
});
|
|
3457
3457
|
});
|
|
3458
3458
|
}
|
|
3459
3459
|
function Ar(e) {
|
|
3460
3460
|
const t = (a) => {
|
|
3461
|
-
let
|
|
3462
|
-
return Object.keys(a.params).length > 0 && (
|
|
3461
|
+
let s = {};
|
|
3462
|
+
return Object.keys(a.params).length > 0 && (s = Object.fromEntries(Object.entries(a.params).filter(([n]) => n !== "pathMatch"))), s;
|
|
3463
3463
|
};
|
|
3464
3464
|
e.beforeEach(async (a) => {
|
|
3465
|
-
const { isAuthenticated:
|
|
3465
|
+
const { isAuthenticated: s } = oe();
|
|
3466
3466
|
if (a.meta.root === !0)
|
|
3467
3467
|
try {
|
|
3468
|
-
if (!
|
|
3468
|
+
if (!s.value)
|
|
3469
3469
|
return localStorage.setItem("redirectAfterLogin", a.fullPath), { name: "Login" };
|
|
3470
3470
|
} catch {
|
|
3471
3471
|
return localStorage.setItem("redirectAfterLogin", a.fullPath), { name: "Login" };
|
|
3472
3472
|
}
|
|
3473
|
-
}), e.beforeEach((a,
|
|
3474
|
-
const { hasAccess:
|
|
3473
|
+
}), e.beforeEach((a, s) => {
|
|
3474
|
+
const { hasAccess: n } = at();
|
|
3475
3475
|
if (a.meta.permissions) {
|
|
3476
|
-
if (
|
|
3476
|
+
if (n(a.meta.permissions)) return !0;
|
|
3477
3477
|
{
|
|
3478
|
-
q.error(
|
|
3478
|
+
q.error(X.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), {
|
|
3479
3479
|
timeout: 3e3
|
|
3480
3480
|
});
|
|
3481
3481
|
const o = t(a);
|
|
3482
|
-
return Object.keys(o)[0] ? `/${Object.values(o)[0]}` +
|
|
3482
|
+
return Object.keys(o)[0] ? `/${Object.values(o)[0]}` + s.path : s.path;
|
|
3483
3483
|
}
|
|
3484
3484
|
} else return !0;
|
|
3485
3485
|
});
|
|
3486
3486
|
}
|
|
3487
3487
|
const Bl = {
|
|
3488
3488
|
install(e, t) {
|
|
3489
|
-
Uo(), ka().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = Lo(t.router), cr(e, t), fr(e), Er(e), mr(e), gr(e, t), Sr(e, t),
|
|
3489
|
+
Uo(), ka().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = Lo(t.router), cr(e, t), fr(e), Er(e), mr(e), gr(e, t), Sr(e, t), bo(e), typeof window < "u" && (e.runWithContext(() => Qt()), e.runWithContext(() => ea())), Ar(t.router), setTimeout(() => {
|
|
3490
3490
|
performance.mark("vc:deferred-plugins-start"), pr(e, t), performance.mark("vc:deferred-plugins-done");
|
|
3491
3491
|
}, 0);
|
|
3492
3492
|
}
|
|
@@ -3496,7 +3496,7 @@ export {
|
|
|
3496
3496
|
Cf as AiAgentServiceKey,
|
|
3497
3497
|
Pf as ApiException,
|
|
3498
3498
|
Nf as AppBarMobileButtonsServiceKey,
|
|
3499
|
-
|
|
3499
|
+
Ns as AppBarWidgetServiceKey,
|
|
3500
3500
|
$a as AppInsightsInstanceKey,
|
|
3501
3501
|
Ha as AppInsightsOptionsKey,
|
|
3502
3502
|
Df as AppManifestClient,
|
|
@@ -3514,15 +3514,15 @@ export {
|
|
|
3514
3514
|
Gf as BladeDataKey,
|
|
3515
3515
|
Wt as BladeDescriptorKey,
|
|
3516
3516
|
Vl as BladeError,
|
|
3517
|
-
|
|
3517
|
+
Ls as BladeFormKey,
|
|
3518
3518
|
Wf as BladeLoadingKey,
|
|
3519
3519
|
Hf as BladeMaximizedKey,
|
|
3520
|
-
|
|
3520
|
+
As as BladeMessagingKey,
|
|
3521
3521
|
$f as BladeRenderingStateKey,
|
|
3522
|
-
|
|
3523
|
-
|
|
3522
|
+
Cs as BladeRoutesKey,
|
|
3523
|
+
ps as BladeStackKey,
|
|
3524
3524
|
Ul as ButtonGroupKey,
|
|
3525
|
-
|
|
3525
|
+
In as COMPONENT_DEFAULTS,
|
|
3526
3526
|
Hu as CellDate,
|
|
3527
3527
|
$u as CellDateAgo,
|
|
3528
3528
|
xu as CellDefault,
|
|
@@ -3543,7 +3543,7 @@ export {
|
|
|
3543
3543
|
YE as ChartTooltip,
|
|
3544
3544
|
zf as CloseSettingsMenuKey,
|
|
3545
3545
|
td as ColumnCollector,
|
|
3546
|
-
|
|
3546
|
+
RE as DEFAULT_AI_AGENT_CONFIG,
|
|
3547
3547
|
ZE as DashboardBarChart,
|
|
3548
3548
|
XE as DashboardDonutChart,
|
|
3549
3549
|
yE as DashboardFeedList,
|
|
@@ -3559,60 +3559,60 @@ export {
|
|
|
3559
3559
|
Yf as DynamicModulesKey,
|
|
3560
3560
|
Zf as DynamicPropertiesClient,
|
|
3561
3561
|
Xf as DynamicPropertyValueType,
|
|
3562
|
-
|
|
3562
|
+
wE as EMBEDDED_TO_HOST_MESSAGE_TYPES,
|
|
3563
3563
|
Qf as EmbeddedModeKey,
|
|
3564
3564
|
Jf as EntryState,
|
|
3565
3565
|
ad as ErrorInterceptor,
|
|
3566
|
-
|
|
3566
|
+
un as ExtensionPoint,
|
|
3567
3567
|
em as ExtensionPoints,
|
|
3568
3568
|
$o as ExternalProviders,
|
|
3569
3569
|
eE as ExternalSignInClient,
|
|
3570
3570
|
Gl as FALLBACK_BLADE_ID,
|
|
3571
|
-
|
|
3571
|
+
_l as ForgotPassword,
|
|
3572
3572
|
Wl as FrameworkError,
|
|
3573
|
-
|
|
3573
|
+
_E as HOST_TO_EMBEDDED_MESSAGE_TYPES,
|
|
3574
3574
|
Ct as InjectionError,
|
|
3575
3575
|
tE as InternalRoutesKey,
|
|
3576
3576
|
Cl as Invite,
|
|
3577
|
-
|
|
3578
|
-
|
|
3579
|
-
|
|
3580
|
-
|
|
3581
|
-
|
|
3577
|
+
_s as IsDesktopKey,
|
|
3578
|
+
ws as IsMobileKey,
|
|
3579
|
+
Is as IsPhoneKey,
|
|
3580
|
+
Rs as IsTabletKey,
|
|
3581
|
+
bs as IsTouchKey,
|
|
3582
3582
|
aE as JobsClient,
|
|
3583
|
-
|
|
3583
|
+
sE as JsonValueKind,
|
|
3584
3584
|
UE as LAYOUT_STORAGE_KEY,
|
|
3585
|
-
|
|
3586
|
-
|
|
3587
|
-
|
|
3588
|
-
|
|
3589
|
-
|
|
3585
|
+
sd as LanguageSelector,
|
|
3586
|
+
vs as LanguageServiceKey,
|
|
3587
|
+
nE as LocalizableSettingsClient,
|
|
3588
|
+
wl as Login,
|
|
3589
|
+
nd as LogoutButton,
|
|
3590
3590
|
od as MenuBurgerIcon,
|
|
3591
|
-
|
|
3591
|
+
Ds as MenuServiceKey,
|
|
3592
3592
|
Hl as ModuleLoadError,
|
|
3593
3593
|
oE as ModulesClient,
|
|
3594
3594
|
rE as ModulesLoadErrorKey,
|
|
3595
3595
|
iE as ModulesReadyKey,
|
|
3596
3596
|
ur as NotificationContainer,
|
|
3597
|
-
|
|
3597
|
+
ts as NotificationContextKey,
|
|
3598
3598
|
rd as NotificationDropdown,
|
|
3599
|
-
|
|
3599
|
+
Bs as NotificationStoreKey,
|
|
3600
3600
|
id as NotificationTemplate,
|
|
3601
3601
|
lE as OAuthAppsClient,
|
|
3602
3602
|
uE as ProgressMessageLevel,
|
|
3603
3603
|
dE as PushNotificationClient,
|
|
3604
3604
|
$l as RegistrationError,
|
|
3605
|
-
|
|
3605
|
+
bl as ResetPassword,
|
|
3606
3606
|
cE as SecurityClient,
|
|
3607
3607
|
xl as ServiceError,
|
|
3608
|
-
|
|
3608
|
+
hs as SettingClient,
|
|
3609
3609
|
fE as SettingValueType,
|
|
3610
3610
|
ld as SettingsMenu,
|
|
3611
3611
|
ud as SettingsMenuItem,
|
|
3612
|
-
|
|
3612
|
+
ys as SettingsMenuServiceKey,
|
|
3613
3613
|
EE as SettingsV2Client,
|
|
3614
3614
|
mE as ShellIndicatorsKey,
|
|
3615
|
-
|
|
3615
|
+
Rl as Sidebar,
|
|
3616
3616
|
gE as SortDirection,
|
|
3617
3617
|
dd as Table,
|
|
3618
3618
|
cd as TableBody,
|
|
@@ -3629,13 +3629,13 @@ export {
|
|
|
3629
3629
|
Od as TableSearchHeader,
|
|
3630
3630
|
vd as TableSelectAllBar,
|
|
3631
3631
|
Id as ThemeSelector,
|
|
3632
|
-
|
|
3633
|
-
|
|
3632
|
+
Ps as ToolbarServiceKey,
|
|
3633
|
+
Rd as UserDropdownButton,
|
|
3634
3634
|
zl as ValidationError,
|
|
3635
|
-
|
|
3636
|
-
|
|
3637
|
-
|
|
3638
|
-
|
|
3635
|
+
wd as VcAccordion,
|
|
3636
|
+
_d as VcAccordionItem,
|
|
3637
|
+
bE as VcAiAgentPanel,
|
|
3638
|
+
bd as VcApp,
|
|
3639
3639
|
Cd as VcAppBarMobileActions,
|
|
3640
3640
|
Pd as VcAppBarOverlay,
|
|
3641
3641
|
Nd as VcAppBarWidgetContent,
|
|
@@ -3650,10 +3650,10 @@ export {
|
|
|
3650
3650
|
Gd as VcAppSidebarHeader,
|
|
3651
3651
|
Ie as VcAuthLayout,
|
|
3652
3652
|
Wd as VcBadge,
|
|
3653
|
-
|
|
3653
|
+
fs as VcBanner,
|
|
3654
3654
|
Ut as VcBlade,
|
|
3655
3655
|
Hd as VcBladeNavigation,
|
|
3656
|
-
|
|
3656
|
+
An as VcBladeNavigationComponent,
|
|
3657
3657
|
$d as VcBladeNavigationV2,
|
|
3658
3658
|
xd as VcBladeSlot,
|
|
3659
3659
|
zd as VcBreadcrumbs,
|
|
@@ -3665,8 +3665,8 @@ export {
|
|
|
3665
3665
|
Zd as VcCol,
|
|
3666
3666
|
Kl as VcColorInput,
|
|
3667
3667
|
Ae as VcColumn,
|
|
3668
|
-
|
|
3669
|
-
|
|
3668
|
+
ls as VcContainer,
|
|
3669
|
+
ds as VcDataTable,
|
|
3670
3670
|
ql as VcDatePicker,
|
|
3671
3671
|
Xd as VcDropdown,
|
|
3672
3672
|
Qd as VcDropdownItem,
|
|
@@ -3675,12 +3675,12 @@ export {
|
|
|
3675
3675
|
tc as VcEditor,
|
|
3676
3676
|
ac as VcEnvironmentBanner,
|
|
3677
3677
|
$e as VcField,
|
|
3678
|
-
|
|
3678
|
+
sc as VcFileUpload,
|
|
3679
3679
|
ge as VcForm,
|
|
3680
|
-
|
|
3680
|
+
nc as VcGallery,
|
|
3681
3681
|
fe as VcHint,
|
|
3682
|
-
|
|
3683
|
-
|
|
3682
|
+
Os as VcIcon,
|
|
3683
|
+
nt as VcImage,
|
|
3684
3684
|
oc as VcImageTile,
|
|
3685
3685
|
rc as VcImageUpload,
|
|
3686
3686
|
z as VcInput,
|
|
@@ -3697,7 +3697,7 @@ export {
|
|
|
3697
3697
|
Ec as VcMenuItem,
|
|
3698
3698
|
mc as VcMultivalue,
|
|
3699
3699
|
gc as VcPagination,
|
|
3700
|
-
|
|
3700
|
+
os as VcPopup,
|
|
3701
3701
|
Sc as VcProgress,
|
|
3702
3702
|
pc as VcRadioButton,
|
|
3703
3703
|
Ac as VcRadioGroup,
|
|
@@ -3705,30 +3705,30 @@ export {
|
|
|
3705
3705
|
Tc as VcRow,
|
|
3706
3706
|
Xl as VcScrollableContainer,
|
|
3707
3707
|
Ql as VcSelect,
|
|
3708
|
-
|
|
3708
|
+
cs as VcSidebar,
|
|
3709
3709
|
Jl as VcSkeleton,
|
|
3710
3710
|
Lc as VcSlider,
|
|
3711
3711
|
Oc as VcStatus,
|
|
3712
3712
|
vc as VcStatusIcon,
|
|
3713
3713
|
Ic as VcSwitch,
|
|
3714
|
-
|
|
3715
|
-
|
|
3714
|
+
Rc as VcTable,
|
|
3715
|
+
us as VcTextarea,
|
|
3716
3716
|
dt as VcToast,
|
|
3717
3717
|
eu as VcTooltip,
|
|
3718
|
-
|
|
3719
|
-
|
|
3720
|
-
|
|
3718
|
+
wc as VcVideo,
|
|
3719
|
+
_c as VcWidget,
|
|
3720
|
+
Ts as WidgetScopeKey,
|
|
3721
3721
|
Gt as WidgetServiceKey,
|
|
3722
3722
|
Vt as __registerBladeConfig,
|
|
3723
|
-
|
|
3723
|
+
bc as _createEnvironmentNameLogic,
|
|
3724
3724
|
SE as _createInternalUserLogic,
|
|
3725
3725
|
Nl as _resetAdapterState,
|
|
3726
3726
|
pE as _sharedInternalUserLogic,
|
|
3727
3727
|
tu as addAppBarWidget,
|
|
3728
3728
|
au as addMenuItem,
|
|
3729
|
-
|
|
3730
|
-
|
|
3731
|
-
|
|
3729
|
+
su as addSettingsMenuItem,
|
|
3730
|
+
nu as after,
|
|
3731
|
+
Vs as aiAgentPlugin,
|
|
3732
3732
|
Cc as autofocus,
|
|
3733
3733
|
ou as before,
|
|
3734
3734
|
ru as bigInt,
|
|
@@ -3762,12 +3762,12 @@ export {
|
|
|
3762
3762
|
cu as getMenuBadge,
|
|
3763
3763
|
fu as getMenuBadges,
|
|
3764
3764
|
Uc as getThumbnailUrl,
|
|
3765
|
-
|
|
3765
|
+
X as i18n,
|
|
3766
3766
|
vl as injectBladeContext,
|
|
3767
3767
|
Eu as isFrameworkError,
|
|
3768
3768
|
xt as isImage,
|
|
3769
3769
|
mu as isValidHexColor,
|
|
3770
|
-
|
|
3770
|
+
dn as kebabToCamel,
|
|
3771
3771
|
rl as kebabToPascal,
|
|
3772
3772
|
Fc as languageToCountryMap,
|
|
3773
3773
|
WE as loadLayoutFromStorage,
|
|
@@ -3779,7 +3779,7 @@ export {
|
|
|
3779
3779
|
Su as normalizeHexColor,
|
|
3780
3780
|
q as notification,
|
|
3781
3781
|
Ce as parseError,
|
|
3782
|
-
|
|
3782
|
+
En as permissions,
|
|
3783
3783
|
pu as provideAppBarState,
|
|
3784
3784
|
Gc as provideAppBarWidget,
|
|
3785
3785
|
Au as provideDashboardService,
|
|
@@ -3792,21 +3792,21 @@ export {
|
|
|
3792
3792
|
Ou as registerDashboardWidget,
|
|
3793
3793
|
vu as registerExternalWidget,
|
|
3794
3794
|
Iu as registerToolbarItem,
|
|
3795
|
-
|
|
3796
|
-
|
|
3797
|
-
|
|
3795
|
+
Ru as registerWidget,
|
|
3796
|
+
wu as removeMenuBadge,
|
|
3797
|
+
_u as removeRegisteredMenuItem,
|
|
3798
3798
|
$c as resolveEnvironment,
|
|
3799
3799
|
xc as resolveLocale,
|
|
3800
3800
|
zc as resolveLocaleSync,
|
|
3801
3801
|
$E as saveLayoutToStorage,
|
|
3802
|
-
|
|
3803
|
-
|
|
3802
|
+
bu as setMenuBadge,
|
|
3803
|
+
mn as signalR,
|
|
3804
3804
|
Kc as stripTenantPrefix,
|
|
3805
3805
|
xE as toGridstackWidget,
|
|
3806
3806
|
qc as useAdaptiveItems,
|
|
3807
3807
|
PE as useAiAgent,
|
|
3808
3808
|
OE as useAiAgentContext,
|
|
3809
|
-
|
|
3809
|
+
Pn as useApiClient,
|
|
3810
3810
|
jc as useAppBarMobileActions,
|
|
3811
3811
|
Cu as useAppBarState,
|
|
3812
3812
|
Yc as useAppBarWidget,
|
|
@@ -3816,7 +3816,7 @@ export {
|
|
|
3816
3816
|
pl as useAssetsManager,
|
|
3817
3817
|
Yt as useAsync,
|
|
3818
3818
|
Xc as useBadge,
|
|
3819
|
-
|
|
3819
|
+
Fn as useBeforeUnload,
|
|
3820
3820
|
ot as useBlade,
|
|
3821
3821
|
yl as useBladeForm,
|
|
3822
3822
|
Pu as useBladeLoading,
|
|
@@ -3832,9 +3832,9 @@ export {
|
|
|
3832
3832
|
Bo as useContainer,
|
|
3833
3833
|
Nu as useDashboard,
|
|
3834
3834
|
af as useDataTablePagination,
|
|
3835
|
-
|
|
3835
|
+
sf as useDataTableSort,
|
|
3836
3836
|
Al as useDynamicProperties,
|
|
3837
|
-
|
|
3837
|
+
nf as useEnvironmentName,
|
|
3838
3838
|
Du as useErrorHandler,
|
|
3839
3839
|
am as useExtensionPoint,
|
|
3840
3840
|
of as useFilterState,
|
|
@@ -3855,10 +3855,10 @@ export {
|
|
|
3855
3855
|
me as useNotificationStore,
|
|
3856
3856
|
gl as useNotifications,
|
|
3857
3857
|
at as usePermissions,
|
|
3858
|
-
|
|
3858
|
+
Es as usePopup,
|
|
3859
3859
|
Ma as useResponsive,
|
|
3860
3860
|
ku as useScrollArrows,
|
|
3861
|
-
|
|
3861
|
+
_e as useSettings,
|
|
3862
3862
|
Vu as useSettingsMenu,
|
|
3863
3863
|
ff as useShellBootstrap,
|
|
3864
3864
|
Ef as useShellLifecycle,
|
|
@@ -3876,13 +3876,13 @@ export {
|
|
|
3876
3876
|
If as useTableSort,
|
|
3877
3877
|
Uu as useTeleportTarget,
|
|
3878
3878
|
ka as useTheme,
|
|
3879
|
-
|
|
3879
|
+
Rf as useToggleableContent,
|
|
3880
3880
|
Fu as useToolbar,
|
|
3881
3881
|
TE as useUser,
|
|
3882
|
-
|
|
3882
|
+
wf as useVirtualScroll,
|
|
3883
3883
|
hl as useWebVitals,
|
|
3884
3884
|
Ll as useWidgetTrigger,
|
|
3885
|
-
|
|
3885
|
+
_f as vAutofocus,
|
|
3886
3886
|
Da as vLoading,
|
|
3887
3887
|
Gu as wrapError
|
|
3888
3888
|
};
|