@vc-shell/framework 2.6.3-rc.0-pr379.dc63cf1 → 2.6.3-rc.0-pr381.a79c6d3
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/ai-agent/index.js +3 -3
- package/dist/chunks/{VcAiAgentPanel.vue_vue_type_script_setup_true_lang-dCG9R7uD.js → VcAiAgentPanel.vue_vue_type_script_setup_true_lang-CG-hIfAg.js} +1 -1
- package/dist/chunks/{VcAiAgentPanel.vue_vue_type_script_setup_true_lang-dCG9R7uD.js.map → VcAiAgentPanel.vue_vue_type_script_setup_true_lang-CG-hIfAg.js.map} +1 -1
- package/dist/chunks/{VcAiAgentPanel.vue_vue_type_style_index_0_lang-DzDHuxUZ.js → VcAiAgentPanel.vue_vue_type_style_index_0_lang-BO4n-ICh.js} +353 -347
- package/dist/chunks/{VcAiAgentPanel.vue_vue_type_style_index_0_lang-DzDHuxUZ.js.map → VcAiAgentPanel.vue_vue_type_style_index_0_lang-BO4n-ICh.js.map} +1 -1
- package/dist/chunks/{VcScheduler.vue_vue_type_script_setup_true_lang-BZl7ykH4.js → VcScheduler.vue_vue_type_script_setup_true_lang-DcUWlle2.js} +3 -3
- package/dist/chunks/{VcScheduler.vue_vue_type_script_setup_true_lang-BZl7ykH4.js.map → VcScheduler.vue_vue_type_script_setup_true_lang-DcUWlle2.js.map} +1 -1
- package/dist/chunks/{VcScheduler.vue_vue_type_style_index_0_lang-CLKJLw-Z.js → VcScheduler.vue_vue_type_style_index_0_lang-osk-b3-5.js} +112 -111
- package/dist/chunks/VcScheduler.vue_vue_type_style_index_0_lang-osk-b3-5.js.map +1 -0
- package/dist/chunks/{dashboard-feed-row.vue_vue_type_script_setup_true_lang-FF0FHTmO.js → dashboard-feed-row.vue_vue_type_script_setup_true_lang-aW4RDDS1.js} +2 -2
- package/dist/chunks/{dashboard-feed-row.vue_vue_type_script_setup_true_lang-FF0FHTmO.js.map → dashboard-feed-row.vue_vue_type_script_setup_true_lang-aW4RDDS1.js.map} +1 -1
- package/dist/chunks/{index-DBK33mvh.js → index-YzlvSxVT.js} +2 -2
- package/dist/chunks/{index-DBK33mvh.js.map → index-YzlvSxVT.js.map} +1 -1
- package/dist/core/composables/useUser/index.d.ts +16 -1
- package/dist/core/composables/useUser/index.d.ts.map +1 -1
- package/dist/core/composables/useUserManagement/index.d.ts +5 -1
- package/dist/core/composables/useUserManagement/index.d.ts.map +1 -1
- package/dist/core/utilities/authGuard.d.ts +28 -0
- package/dist/core/utilities/authGuard.d.ts.map +1 -0
- package/dist/dashboard/index.js +1 -1
- package/dist/framework.js +1083 -1061
- package/dist/framework.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/locales/de.js +5 -1
- package/dist/locales/en.js +5 -1
- package/dist/locales/en.json +5 -1
- package/dist/locales/types.d.ts +4 -0
- package/dist/shell/auth/LoginPage/components/login/Login.vue.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/index.js +3 -3
- package/package.json +4 -4
- package/dist/chunks/VcScheduler.vue_vue_type_style_index_0_lang-CLKJLw-Z.js.map +0 -1
package/dist/framework.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { b as Ma, c as ka } from "./chunks/vendor-vueuse-core-BwXFv1rx.js";
|
|
2
|
-
import { O as st, P as se, Q as
|
|
3
|
-
import { B as
|
|
4
|
-
import { getCurrentScope as rt, onScopeDispose as it, computed as
|
|
5
|
-
import { aS as fe, aT as un, aU as
|
|
6
|
-
import { bh as
|
|
7
|
-
import { _ as
|
|
8
|
-
import { c as k, b as
|
|
9
|
-
import { A as
|
|
10
|
-
import { H as
|
|
11
|
-
import { a as
|
|
12
|
-
import { u as
|
|
13
|
-
import { a as
|
|
14
|
-
import { A as
|
|
2
|
+
import { O as st, P as se, Q as j, R as x, l as $, S as be, T as Va, U as yt, p as ot, q as K, n as Se, C as Ua, W as Fa, X as Wa, Y as Ha, V as Ee, Z as Ga, $ as xa, a0 as $a, a1 as Ka, a2 as za, a3 as qa, a4 as Ya, a5 as Za, a6 as ja } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-osk-b3-5.js";
|
|
3
|
+
import { B as Ql, a7 as eu, a as tu, _ as au, b as nu, c as su, d as ou, e as ru, f as iu, g as lu, h as uu, i as du, j as cu, k as Eu, a8 as fu, a9 as mu, aa as gu, ab as Su, ac as Au, ad as pu, ae as Tu, m as hu, o as Lu, r as Ou, s as Ru, t as _u, u as Iu, v as vu, w as wu, x as Cu, y as bu, z as Pu, af as Nu, ag as Du, ah as yu, ai as Bu, aj as Mu, ak as ku, al as Vu, am as Uu, an as Fu, ao as Wu, ap as Hu, aq as Gu, ar as xu, as as $u, at as Ku, au as zu, av as qu, aw as Yu, A as Zu, ax as ju, ay as Xu, az as Ju, D as Qu, aA as ed, aB as td, aC as ad, aD as nd, E as sd, aE as od, aF as rd, aG as id, aH as ld, aI as ud, aJ as dd, aK as cd, aL as Ed, aM as fd, F as md, G as gd, H as Sd, M as Ad, aN as pd, I as Td, J as hd, aO as Ld, K as Od, aP as Rd, aQ as _d, aR as Id } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-osk-b3-5.js";
|
|
4
|
+
import { getCurrentScope as rt, onScopeDispose as it, computed as v, inject as Q, watch as ae, defineComponent as H, openBlock as b, createBlock as D, createSlots as Le, withCtx as T, renderSlot as Y, createElementVNode as U, normalizeClass as Xa, createElementBlock as W, Fragment as ne, createVNode as R, unref as i, createTextVNode as M, toDisplayString as y, shallowReactive as Ja, ref as P, readonly as ke, onMounted as Oe, onBeforeMount as Qa, onBeforeUnmount as en, shallowRef as tn, onUnmounted as an, provide as Bt, toValue as Mt, isRef as kt, normalizeStyle as Vt, createCommentVNode as q, withDirectives as nn, withModifiers as Ge, reactive as ie, createApp as sn, nextTick as Pe, renderList as We, withKeys as lt, mergeProps as re, getCurrentInstance as on, warn as rn, h as ee, toRaw as ln } from "vue";
|
|
5
|
+
import { aS as fe, aT as un, aU as dn, aV as Ut, aW as xe, aX as cn, aY as En, aZ as fn, a_ as mn, a$ as gn, ab as Sn, b0 as $e, b1 as An, b2 as pn, b3 as Re, b4 as He, b5 as Te, b6 as F, b7 as he, b8 as Tn, b9 as hn, ba as mt, bb as Ft, F as Wt, M as Ln, Y as me, W as Ke, am as On, N as Rn, ai as _n, B as _e, J as In, a3 as Ht, E as vn, bc as wn, bd as Cn, be as bn, an as gt, bf as Pn, bg as Nn } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-DcUWlle2.js";
|
|
6
|
+
import { bh as wd, bi as Cd, C as bd, bj as Pd, bk as Nd, bl as Dd, _ as yd, bm as Bd, bn as Md, S as kd, bo as Vd, bp as Ud, a as Fd, b as Wd, c as Hd, d as Gd, e as xd, f as $d, T as Kd, g as zd, h as qd, i as Yd, j as Zd, k as jd, l as Xd, m as Jd, bq as Qd, br as ec, V as tc, n as ac, o as nc, p as sc, q as oc, r as rc, s as ic, t as lc, u as uc, v as dc, w as cc, x as Ec, y as fc, z as mc, A as gc, D as Sc, bs as Ac, bs as pc, bt as Tc, G as hc, H as Lc, I as Oc, K as Rc, L as _c, O as Ic, P as vc, Q as wc, R as Cc, U as bc, X as Pc, Z as Nc, $ as Dc, a0 as yc, a1 as Bc, a2 as Mc, a4 as kc, a5 as Vc, a6 as Uc, a7 as Fc, a8 as Wc, a9 as Hc, aa as Gc, ac as xc, ad as $c, ae as Kc, af as zc, ag as qc, ah as Yc, aj as Zc, ak as jc, al as Xc, ao as Jc, ap as Qc, bu as eE, aq as tE, bv as aE, bw as nE, bx as sE, by as oE, bz as rE, bA as iE, bB as lE, bC as uE, bD as dE, bE as cE, bF as EE, bG as fE, ar as mE, as as gE, at as SE, bH as AE, au as pE, av as TE, bI as hE, aw as LE, ax as OE, ay as RE, az as _E, bJ as IE, aA as vE, aB as wE, aC as CE, bK as bE, aD as PE, aE as NE, aF as DE, aG as yE, bL as BE, aH as ME, aI as kE, aJ as VE, aK as UE, aL as FE, aM as WE, aN as HE, aO as GE, aP as xE, aQ as $E, aR as KE, aq as zE } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-DcUWlle2.js";
|
|
7
|
+
import { _ as Dn } from "./chunks/vendor-cypress-signalr-mock-itnm2wpA.js";
|
|
8
|
+
import { c as k, b as yn, d as Bn, i as Ne, S as Mn, W as Gt, B as xt, h as kn, j as $t, k as Vn, l as Un, m as Fn, n as Wn, o as Kt, p as Hn, _ as Gn, L as xn, I as $n, q as Kn, r as zn, s as qn, t as Yn, v as Zn, T as jn, w as Xn, x as Jn, y as Qn, z as es } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-BO4n-ICh.js";
|
|
9
|
+
import { A as YE, C as ZE, D as jE, F as XE, G as JE, H as QE, J as ef, K as tf, O as af, e as nf, f as sf, P as of, Q as rf, R as lf, U as uf, V as df, X as cf, Y as Ef, Z as ff, $ as mf, a0 as gf, a1 as Sf, E as Af, a2 as pf, a3 as Tf, a4 as hf, a5 as Lf, a6 as Of, a7 as Rf, a8 as _f, a9 as If, M as vf, N as wf, aa as Cf, ab as bf, ac as Pf, ad as Nf, ae as Df, af as yf, ag as Bf, a as Mf, ah as kf, ai as Vf, aj as Uf, ak as Ff, al as Wf, u as Hf, g as Gf } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-BO4n-ICh.js";
|
|
10
|
+
import { H as ts, L as as } from "./chunks/vendor-microsoft-signalr-Bgpbb4fW.js";
|
|
11
|
+
import { a as ns } from "./chunks/index-YzlvSxVT.js";
|
|
12
|
+
import { u as $f } from "./chunks/index-YzlvSxVT.js";
|
|
13
|
+
import { a as ss, s as os, b as rs, d as is, e as ls, f as ut, g as us, h as ds, i as cs, j as Es } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-CG-hIfAg.js";
|
|
14
|
+
import { A as zf, D as qf, E as Yf, H as Zf, _ as jf, c as Xf, k as Jf, l as Qf, m as em, n as tm, o as am, p as nm, u as sm, q as om, r as rm, t as im } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-CG-hIfAg.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 le } from "./chunks/vendor-vue-i18n-LO-EJStU.js";
|
|
18
|
-
import { useForm as ue, useIsFormValid as Ie, useIsFormDirty as
|
|
18
|
+
import { useForm as ue, useIsFormValid as Ie, useIsFormDirty as dt, Field as X } from "vee-validate";
|
|
19
19
|
import { useRouter as ve } from "vue-router";
|
|
20
20
|
import "./chunks/vendor-tiptap-starter-kit-ny-AoaO_.js";
|
|
21
21
|
import "./chunks/vendor-tiptap-extension-underline-Bo1pXXDN.js";
|
|
@@ -91,43 +91,43 @@ 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 fs } from "./chunks/vendor-vue3-touch-events-DqysuuWh.js";
|
|
95
95
|
import "./chunks/vendor-gridstack-Beau2jQ7.js";
|
|
96
|
-
import { _ as
|
|
97
|
-
import { _ as
|
|
98
|
-
import { A as
|
|
99
|
-
import { o as
|
|
100
|
-
import { T as
|
|
101
|
-
import { _ as
|
|
102
|
-
import { E as
|
|
103
|
-
function
|
|
96
|
+
import { _ as um, a as dm, b as cm, c as Em, d as fm, L as mm, e as gm, f as Sm, l as Am, m as pm, s as Tm, t as hm, u as Lm } from "./chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-aW4RDDS1.js";
|
|
97
|
+
import { _ as Rm, a as _m, b as Im, c as vm, d as wm, e as Cm } from "./chunks/DashboardDonutChart.vue_vue_type_script_setup_true_lang-hTcM33bM.js";
|
|
98
|
+
import { A as ms, u as gs } from "./chunks/vendor-vue3-application-insights-CAgbt8pk.js";
|
|
99
|
+
import { o as Ss, c as J, d as As, i as ps } from "./chunks/vendor-lodash-es-D2n90GJy.js";
|
|
100
|
+
import { T as Ts, x as hs, b as Ls, S as Os, $ as Rs } from "./chunks/vendor-web-vitals-ByFgAM-8.js";
|
|
101
|
+
import { _ as _s } from "./chunks/index-BuTo_Lx8.js";
|
|
102
|
+
import { E as Pm, d as Nm, u as Dm } from "./chunks/index-BuTo_Lx8.js";
|
|
103
|
+
function Tl(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
|
|
109
|
-
function
|
|
110
|
-
const t =
|
|
108
|
+
const Is = (e) => e.replace(/-./g, (t) => t[1].toUpperCase());
|
|
109
|
+
function hl(e) {
|
|
110
|
+
const t = Is(e);
|
|
111
111
|
return t[0].toUpperCase() + t.substring(1);
|
|
112
112
|
}
|
|
113
|
-
function
|
|
113
|
+
function Ll(e) {
|
|
114
114
|
return e.replace(/\W+(.)/g, function(t, a) {
|
|
115
115
|
return a.toUpperCase();
|
|
116
116
|
});
|
|
117
117
|
}
|
|
118
|
-
const
|
|
119
|
-
function
|
|
118
|
+
const vs = /* @__PURE__ */ new Set(["png", "jpg", "jpeg", "svg", "gif"]);
|
|
119
|
+
function ct(e) {
|
|
120
120
|
return e.split(".").pop()?.toLowerCase();
|
|
121
121
|
}
|
|
122
122
|
function zt(e) {
|
|
123
|
-
return e ?
|
|
123
|
+
return e ? vs.has(ct(e) ?? "") : !1;
|
|
124
124
|
}
|
|
125
125
|
function qt(e, t = 2) {
|
|
126
126
|
if (!e) return "0 Bytes";
|
|
127
127
|
const a = 1024, n = t < 0 ? 0 : t, s = ["Bytes", "KB", "MB", "GB"], o = Math.floor(Math.log(e) / Math.log(a));
|
|
128
128
|
return `${parseFloat((e / Math.pow(a, o)).toFixed(n))} ${s[o]}`;
|
|
129
129
|
}
|
|
130
|
-
const
|
|
130
|
+
const ws = {
|
|
131
131
|
pdf: "#e74c3c",
|
|
132
132
|
doc: "#2b579a",
|
|
133
133
|
docx: "#2b579a",
|
|
@@ -144,28 +144,28 @@ const vs = {
|
|
|
144
144
|
};
|
|
145
145
|
function Yt(e) {
|
|
146
146
|
if (!e) return "var(--neutrals-400)";
|
|
147
|
-
const t =
|
|
148
|
-
return
|
|
147
|
+
const t = ct(e) ?? "";
|
|
148
|
+
return ws[t] ?? "var(--neutrals-400)";
|
|
149
149
|
}
|
|
150
150
|
function Zt(e) {
|
|
151
|
-
return e ? (
|
|
151
|
+
return e ? (ct(e) ?? "FILE").toUpperCase() : "FILE";
|
|
152
152
|
}
|
|
153
|
-
const
|
|
153
|
+
const Cs = {
|
|
154
154
|
install(e) {
|
|
155
155
|
const { hasAccess: t } = st();
|
|
156
156
|
e.config.globalProperties.$hasAccess = t;
|
|
157
157
|
}
|
|
158
158
|
};
|
|
159
|
-
function
|
|
159
|
+
function Ol(e) {
|
|
160
160
|
const t = fe(), a = t.subscribe({
|
|
161
161
|
types: e.types,
|
|
162
162
|
filter: e.filter,
|
|
163
163
|
handler: e.onMessage
|
|
164
164
|
});
|
|
165
165
|
rt() && it(a);
|
|
166
|
-
const n =
|
|
166
|
+
const n = v(
|
|
167
167
|
() => t.realtime.value.filter((r) => !(!r.notifyType || !e.types.includes(r.notifyType) || !r.isNew || e.filter && !e.filter(r)))
|
|
168
|
-
), s =
|
|
168
|
+
), s = v(() => n.value.length);
|
|
169
169
|
function o(r) {
|
|
170
170
|
t.markAsRead(r);
|
|
171
171
|
}
|
|
@@ -175,25 +175,25 @@ function hl(e) {
|
|
|
175
175
|
markAsRead: o
|
|
176
176
|
};
|
|
177
177
|
}
|
|
178
|
-
function
|
|
178
|
+
function Rl() {
|
|
179
179
|
const e = Q(un);
|
|
180
180
|
if (!e)
|
|
181
181
|
throw new Error("useNotificationContext() must be used inside a notification template");
|
|
182
182
|
return e;
|
|
183
183
|
}
|
|
184
|
-
function
|
|
184
|
+
function _l() {
|
|
185
185
|
const e = fe();
|
|
186
186
|
return {
|
|
187
187
|
setBroadcastFilter: e.setBroadcastFilter,
|
|
188
188
|
clearBroadcastFilter: e.clearBroadcastFilter
|
|
189
189
|
};
|
|
190
190
|
}
|
|
191
|
-
const jt = Symbol("NotificationContainerState"), ze = k("signalR"),
|
|
191
|
+
const jt = Symbol("NotificationContainerState"), ze = k("signalR"), bs = {
|
|
192
192
|
install(e) {
|
|
193
193
|
const t = fe(), { isAuthenticated: a } = se();
|
|
194
194
|
let n = !1;
|
|
195
|
-
const s =
|
|
196
|
-
let l = 0,
|
|
195
|
+
const s = Dn("pushNotificationHub", { enableForVitest: !0 }) ?? new ts().withUrl("/pushNotificationHub").withAutomaticReconnect().configureLogging(as.Information).build(), o = 5e3, r = 6e4;
|
|
196
|
+
let l = 0, d;
|
|
197
197
|
function u(E) {
|
|
198
198
|
return E instanceof Error && /\b401\b/.test(E.message);
|
|
199
199
|
}
|
|
@@ -205,12 +205,12 @@ const jt = Symbol("NotificationContainerState"), ze = k("signalR"), Cs = {
|
|
|
205
205
|
ze.warn("Not authenticated — stopping reconnect attempts until sign-in.");
|
|
206
206
|
return;
|
|
207
207
|
}
|
|
208
|
-
const
|
|
209
|
-
l++,
|
|
208
|
+
const c = Math.min(o * 2 ** l, r);
|
|
209
|
+
l++, d = setTimeout(() => f(), c);
|
|
210
210
|
});
|
|
211
211
|
};
|
|
212
212
|
async function m() {
|
|
213
|
-
clearTimeout(
|
|
213
|
+
clearTimeout(d), d = void 0, await s.stop();
|
|
214
214
|
}
|
|
215
215
|
s.onclose(() => {
|
|
216
216
|
n && f();
|
|
@@ -227,8 +227,8 @@ const jt = Symbol("NotificationContainerState"), ze = k("signalR"), Cs = {
|
|
|
227
227
|
);
|
|
228
228
|
}
|
|
229
229
|
};
|
|
230
|
-
function
|
|
231
|
-
const t = Q(
|
|
230
|
+
function Il(e) {
|
|
231
|
+
const t = Q(dn, void 0);
|
|
232
232
|
return {
|
|
233
233
|
read: () => t ? t.read(e) : {}
|
|
234
234
|
};
|
|
@@ -244,8 +244,8 @@ function Et(e) {
|
|
|
244
244
|
if (!l?._registerBladeFn)
|
|
245
245
|
Ps.error("defineAppModule: BladeRegistry not found. Blade registration will be skipped.");
|
|
246
246
|
else
|
|
247
|
-
for (const [
|
|
248
|
-
const f = u.name ||
|
|
247
|
+
for (const [d, u] of Object.entries(t)) {
|
|
248
|
+
const f = u.name || d;
|
|
249
249
|
o.runWithContext(() => {
|
|
250
250
|
l._registerBladeFn(f, {
|
|
251
251
|
component: u,
|
|
@@ -258,12 +258,12 @@ function Et(e) {
|
|
|
258
258
|
}
|
|
259
259
|
}
|
|
260
260
|
if (s)
|
|
261
|
-
for (const [l,
|
|
262
|
-
r.registerType(l,
|
|
261
|
+
for (const [l, d] of Object.entries(s))
|
|
262
|
+
r.registerType(l, d);
|
|
263
263
|
if (!s && n)
|
|
264
264
|
for (const l of Object.values(n)) {
|
|
265
|
-
const
|
|
266
|
-
|
|
265
|
+
const d = l.notifyType;
|
|
266
|
+
d && r.registerType(d, {
|
|
267
267
|
template: l,
|
|
268
268
|
toast: { mode: "auto" }
|
|
269
269
|
});
|
|
@@ -271,11 +271,11 @@ function Et(e) {
|
|
|
271
271
|
if (t) {
|
|
272
272
|
for (const l of Object.values(t))
|
|
273
273
|
if (l.notifyType) {
|
|
274
|
-
const
|
|
275
|
-
|
|
276
|
-
types:
|
|
274
|
+
const d = Array.isArray(l.notifyType) ? l.notifyType : [l.notifyType];
|
|
275
|
+
d.filter((f) => !r.registry.has(f)).length > 0 && r.subscribe({
|
|
276
|
+
types: d,
|
|
277
277
|
handler: (f) => {
|
|
278
|
-
f.title &&
|
|
278
|
+
f.title && j(f.title, {
|
|
279
279
|
onClose() {
|
|
280
280
|
r.markAsRead(f);
|
|
281
281
|
}
|
|
@@ -285,19 +285,19 @@ function Et(e) {
|
|
|
285
285
|
}
|
|
286
286
|
}
|
|
287
287
|
if (a)
|
|
288
|
-
for (const [l,
|
|
289
|
-
|
|
288
|
+
for (const [l, d] of Object.entries(a))
|
|
289
|
+
x.global.mergeLocaleMessage(l, d);
|
|
290
290
|
}
|
|
291
291
|
};
|
|
292
292
|
}
|
|
293
|
-
function
|
|
293
|
+
function vl(e, t, a, n) {
|
|
294
294
|
return Et({
|
|
295
295
|
blades: e,
|
|
296
296
|
locales: t,
|
|
297
297
|
notificationTemplates: a
|
|
298
298
|
});
|
|
299
299
|
}
|
|
300
|
-
async function
|
|
300
|
+
async function Ns(e, t, a, n, s, o) {
|
|
301
301
|
if (!a.workspaceUrl) return !1;
|
|
302
302
|
const r = t.getBladeByRoute(a.workspaceUrl);
|
|
303
303
|
if (!r)
|
|
@@ -307,16 +307,16 @@ async function bs(e, t, a, n, s, o) {
|
|
|
307
307
|
`[restoreFromUrl] Blade '${r.name}' matched URL '${a.workspaceUrl}' but is not a workspace`
|
|
308
308
|
), s && xe(s, o), !1;
|
|
309
309
|
if (n && r.data.permissions && !n(r.data.permissions))
|
|
310
|
-
return console.warn(`[restoreFromUrl] Access denied to workspace '${r.name}'`),
|
|
310
|
+
return console.warn(`[restoreFromUrl] Access denied to workspace '${r.name}'`), j.error(x.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), { timeout: 3e3 }), s && xe(s, o), !1;
|
|
311
311
|
if (e.workspace.value?.name !== r.name && await e.openWorkspace({ name: r.name }), a.bladeUrl) {
|
|
312
|
-
const
|
|
313
|
-
if (
|
|
314
|
-
if (e.blades.value.find((f) => f.name ===
|
|
312
|
+
const d = t.getBladeByRoute(a.bladeUrl);
|
|
313
|
+
if (d) {
|
|
314
|
+
if (e.blades.value.find((f) => f.name === d.name && f.param === a.param))
|
|
315
315
|
return !1;
|
|
316
|
-
if (
|
|
316
|
+
if (d.data.routable === !1)
|
|
317
317
|
return !0;
|
|
318
318
|
await e.openBlade({
|
|
319
|
-
name:
|
|
319
|
+
name: d.name,
|
|
320
320
|
param: a.param
|
|
321
321
|
// options not available from URL — blade must handle gracefully
|
|
322
322
|
});
|
|
@@ -333,25 +333,25 @@ async function St(e) {
|
|
|
333
333
|
}
|
|
334
334
|
return e.blades.value.length > 0 && e._restoreStack([]), !0;
|
|
335
335
|
}
|
|
336
|
-
async function
|
|
336
|
+
async function Ds(e, t, a, n, s) {
|
|
337
337
|
if (!e.matched.some((f) => f.meta?.root)) return;
|
|
338
338
|
if (!e.matched.some((f) => f.meta?.bladeCatchAll))
|
|
339
339
|
return t.blades.value.length > 0 && !await St(t) ? !1 : void 0;
|
|
340
|
-
const r = Object.values(e.params)?.[0] || "", l =
|
|
340
|
+
const r = Object.values(e.params)?.[0] || "", l = cn(e.path, r);
|
|
341
341
|
if (!l.workspaceUrl)
|
|
342
342
|
return t.blades.value.length > 0 && !await St(t) ? !1 : void 0;
|
|
343
|
-
const
|
|
344
|
-
if (await
|
|
343
|
+
const d = Object.fromEntries(Object.entries(e.params).filter(([, f]) => typeof f == "string"));
|
|
344
|
+
if (await Ns(t, a, l, n, s, d)) {
|
|
345
345
|
const { path: f, query: m } = En(r, t.blades.value);
|
|
346
346
|
return { path: f, query: m, replace: !0 };
|
|
347
347
|
}
|
|
348
348
|
}
|
|
349
|
-
const
|
|
349
|
+
const ys = {
|
|
350
350
|
install(e, t) {
|
|
351
351
|
const { router: a } = t, n = {
|
|
352
352
|
router: t.router
|
|
353
353
|
};
|
|
354
|
-
|
|
354
|
+
is(n);
|
|
355
355
|
const s = e.runWithContext(() => {
|
|
356
356
|
try {
|
|
357
357
|
return fn();
|
|
@@ -366,20 +366,20 @@ const Ds = {
|
|
|
366
366
|
console.error("[BladeNavigationPlugin] BladeRegistry is required but not found.");
|
|
367
367
|
return;
|
|
368
368
|
}
|
|
369
|
-
const { hasAccess: o } = e.runWithContext(() => st()), r = {}, l = gn(a, () => r.current),
|
|
370
|
-
r.current =
|
|
371
|
-
const u = mn(
|
|
372
|
-
e.provide(
|
|
369
|
+
const { hasAccess: o } = e.runWithContext(() => st()), r = {}, l = gn(a, () => r.current), d = ss(s, o, l);
|
|
370
|
+
r.current = d, e.provide(yn, d), os(d);
|
|
371
|
+
const u = mn(d);
|
|
372
|
+
e.provide(Bn, u), rs(u), ls(s);
|
|
373
373
|
const f = a.getRoutes().find((m) => m.meta?.root);
|
|
374
374
|
f && a.addRoute(f.name, {
|
|
375
375
|
path: ":pathMatch(.*)*",
|
|
376
376
|
component: { render: () => null },
|
|
377
377
|
meta: { bladeCatchAll: !0 }
|
|
378
378
|
}), a.beforeEach(
|
|
379
|
-
(m) => l.suppressWhile(() =>
|
|
379
|
+
(m) => l.suppressWhile(() => Ds(m, d, s, o, a))
|
|
380
380
|
);
|
|
381
381
|
}
|
|
382
|
-
},
|
|
382
|
+
}, Bs = {
|
|
383
383
|
input: {
|
|
384
384
|
maxlength: 1024,
|
|
385
385
|
debounce: 0,
|
|
@@ -429,8 +429,8 @@ const Ds = {
|
|
|
429
429
|
gap: 20
|
|
430
430
|
}
|
|
431
431
|
};
|
|
432
|
-
function
|
|
433
|
-
return
|
|
432
|
+
function wl(e) {
|
|
433
|
+
return Bs[e];
|
|
434
434
|
}
|
|
435
435
|
const ft = /* @__PURE__ */ H({
|
|
436
436
|
__name: "vc-popup-base",
|
|
@@ -452,7 +452,7 @@ const ft = /* @__PURE__ */ H({
|
|
|
452
452
|
function s(o) {
|
|
453
453
|
n("confirm"), a.closeOnConfirm && o();
|
|
454
454
|
}
|
|
455
|
-
return (o, r) => (
|
|
455
|
+
return (o, r) => (b(), D(Sn, {
|
|
456
456
|
variant: e.variant,
|
|
457
457
|
"is-mobile-fullscreen": e.isMobileFullscreen,
|
|
458
458
|
title: e.title,
|
|
@@ -473,24 +473,24 @@ const ft = /* @__PURE__ */ H({
|
|
|
473
473
|
"vc-popup-base__actions--single": e.mode === "acknowledge"
|
|
474
474
|
}])
|
|
475
475
|
}, [
|
|
476
|
-
e.mode === "confirm" ? (
|
|
477
|
-
R(i(
|
|
476
|
+
e.mode === "confirm" ? (b(), W(ne, { key: 0 }, [
|
|
477
|
+
R(i($), {
|
|
478
478
|
text: e.confirmAsText,
|
|
479
479
|
class: "vc-popup-base__confirm",
|
|
480
|
-
onClick: (
|
|
480
|
+
onClick: (d) => s(l)
|
|
481
481
|
}, {
|
|
482
482
|
default: T(() => [
|
|
483
483
|
M(y(e.confirmLabel), 1)
|
|
484
484
|
]),
|
|
485
485
|
_: 1
|
|
486
486
|
}, 8, ["text", "onClick"]),
|
|
487
|
-
R(i(
|
|
487
|
+
R(i($), { onClick: l }, {
|
|
488
488
|
default: T(() => [
|
|
489
489
|
M(y(e.cancelLabel), 1)
|
|
490
490
|
]),
|
|
491
491
|
_: 1
|
|
492
492
|
}, 8, ["onClick"])
|
|
493
|
-
], 64)) : (
|
|
493
|
+
], 64)) : (b(), D(i($), {
|
|
494
494
|
key: 1,
|
|
495
495
|
class: "vc-popup-base__single",
|
|
496
496
|
onClick: l
|
|
@@ -514,14 +514,14 @@ const ft = /* @__PURE__ */ H({
|
|
|
514
514
|
} : void 0
|
|
515
515
|
]), 1032, ["variant", "is-mobile-fullscreen", "title", "closable"]));
|
|
516
516
|
}
|
|
517
|
-
}),
|
|
517
|
+
}), Ms = /* @__PURE__ */ H({
|
|
518
518
|
__name: "vc-popup-warning",
|
|
519
519
|
props: {
|
|
520
520
|
title: {}
|
|
521
521
|
},
|
|
522
522
|
emits: ["close", "confirm"],
|
|
523
523
|
setup(e) {
|
|
524
|
-
return (t, a) => (
|
|
524
|
+
return (t, a) => (b(), D(ft, {
|
|
525
525
|
variant: "warning",
|
|
526
526
|
mode: "confirm",
|
|
527
527
|
"confirm-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.CONFIRM"),
|
|
@@ -545,14 +545,14 @@ const ft = /* @__PURE__ */ H({
|
|
|
545
545
|
} : void 0
|
|
546
546
|
]), 1032, ["confirm-label", "cancel-label", "title"]));
|
|
547
547
|
}
|
|
548
|
-
}),
|
|
548
|
+
}), ks = /* @__PURE__ */ H({
|
|
549
549
|
__name: "vc-popup-error",
|
|
550
550
|
props: {
|
|
551
551
|
title: {}
|
|
552
552
|
},
|
|
553
553
|
emits: ["close"],
|
|
554
554
|
setup(e) {
|
|
555
|
-
return (t, a) => (
|
|
555
|
+
return (t, a) => (b(), D(ft, {
|
|
556
556
|
variant: "error",
|
|
557
557
|
mode: "acknowledge",
|
|
558
558
|
"action-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.OK"),
|
|
@@ -573,14 +573,14 @@ const ft = /* @__PURE__ */ H({
|
|
|
573
573
|
} : void 0
|
|
574
574
|
]), 1032, ["action-label", "title"]));
|
|
575
575
|
}
|
|
576
|
-
}),
|
|
576
|
+
}), Vs = /* @__PURE__ */ H({
|
|
577
577
|
__name: "vc-popup-info",
|
|
578
578
|
props: {
|
|
579
579
|
title: {}
|
|
580
580
|
},
|
|
581
581
|
emits: ["close"],
|
|
582
582
|
setup(e) {
|
|
583
|
-
return (t, a) => (
|
|
583
|
+
return (t, a) => (b(), D(ft, {
|
|
584
584
|
variant: "info",
|
|
585
585
|
mode: "acknowledge",
|
|
586
586
|
"action-label": t.$t("COMPONENTS.ORGANISMS.VC_POPUP.OK"),
|
|
@@ -602,18 +602,18 @@ const ft = /* @__PURE__ */ H({
|
|
|
602
602
|
]), 1032, ["action-label", "title"]));
|
|
603
603
|
}
|
|
604
604
|
});
|
|
605
|
-
function
|
|
606
|
-
$e("warning",
|
|
605
|
+
function Us() {
|
|
606
|
+
$e("warning", Ms), $e("error", ks), $e("info", Vs);
|
|
607
607
|
}
|
|
608
|
-
const
|
|
608
|
+
const Fs = {
|
|
609
609
|
install(e) {
|
|
610
610
|
const a = {
|
|
611
611
|
popups: Ja([])
|
|
612
612
|
};
|
|
613
|
-
e.config.globalProperties.$popupPlugin = a, e.provide(An, a), pn(a),
|
|
613
|
+
e.config.globalProperties.$popupPlugin = a, e.provide(An, a), pn(a), Us();
|
|
614
614
|
}
|
|
615
615
|
};
|
|
616
|
-
function
|
|
616
|
+
function Ws(e, t) {
|
|
617
617
|
let a = null;
|
|
618
618
|
return function(...n) {
|
|
619
619
|
a && clearTimeout(a), a = window.setTimeout(() => {
|
|
@@ -621,11 +621,11 @@ function Fs(e, t) {
|
|
|
621
621
|
}, t);
|
|
622
622
|
};
|
|
623
623
|
}
|
|
624
|
-
function
|
|
624
|
+
function Hs(e, t = 0) {
|
|
625
625
|
setTimeout(e, t);
|
|
626
626
|
}
|
|
627
627
|
const qe = /* @__PURE__ */ new WeakMap();
|
|
628
|
-
function
|
|
628
|
+
function Gs(e) {
|
|
629
629
|
return function(...t) {
|
|
630
630
|
if (!qe.has(e)) {
|
|
631
631
|
const a = e(...t);
|
|
@@ -634,7 +634,7 @@ function Hs(e) {
|
|
|
634
634
|
return qe.get(e);
|
|
635
635
|
};
|
|
636
636
|
}
|
|
637
|
-
function
|
|
637
|
+
function xs(e, t) {
|
|
638
638
|
let a = !1;
|
|
639
639
|
return function(...n) {
|
|
640
640
|
a || (e(...n), a = !0, setTimeout(() => {
|
|
@@ -642,26 +642,26 @@ function Gs(e, t) {
|
|
|
642
642
|
}, t));
|
|
643
643
|
};
|
|
644
644
|
}
|
|
645
|
-
function
|
|
645
|
+
function Cl() {
|
|
646
646
|
return {
|
|
647
|
-
debounce:
|
|
648
|
-
delay:
|
|
649
|
-
once:
|
|
650
|
-
throttle:
|
|
647
|
+
debounce: Ws,
|
|
648
|
+
delay: Hs,
|
|
649
|
+
once: Gs,
|
|
650
|
+
throttle: xs
|
|
651
651
|
};
|
|
652
652
|
}
|
|
653
|
-
function
|
|
653
|
+
function bl(e) {
|
|
654
654
|
const t = fe(), a = e ? Array.isArray(e) ? e : [e] : [];
|
|
655
655
|
let n, s;
|
|
656
656
|
a.length && (s = t.subscribe({
|
|
657
657
|
types: a,
|
|
658
658
|
handler: (r) => n?.(r)
|
|
659
659
|
}), rt() && it(() => s?.()));
|
|
660
|
-
const o =
|
|
660
|
+
const o = v(() => a.length ? t.realtime.value.filter(
|
|
661
661
|
(r) => r.isNew && r.notifyType != null && a.includes(r.notifyType)
|
|
662
662
|
) : []);
|
|
663
663
|
return {
|
|
664
|
-
notifications:
|
|
664
|
+
notifications: v(() => Ss(t.history.value, ["created"], ["desc"])),
|
|
665
665
|
moduleNotifications: o,
|
|
666
666
|
loadFromHistory: t.loadHistory,
|
|
667
667
|
addNotification: t.ingest,
|
|
@@ -673,18 +673,18 @@ function wl(e) {
|
|
|
673
673
|
};
|
|
674
674
|
}
|
|
675
675
|
let Ye;
|
|
676
|
-
const
|
|
676
|
+
const $s = k("use-async");
|
|
677
677
|
function Xt(e, t) {
|
|
678
|
-
const a =
|
|
679
|
-
async function r(l, ...
|
|
678
|
+
const a = P(!1), n = P(null), s = t?.notify !== !1, o = t?.notifyTimeout ?? 8e3;
|
|
679
|
+
async function r(l, ...d) {
|
|
680
680
|
a.value = !0, n.value = null;
|
|
681
681
|
try {
|
|
682
|
-
return await e(l, ...
|
|
682
|
+
return await e(l, ...d);
|
|
683
683
|
} catch (u) {
|
|
684
|
-
const f =
|
|
685
|
-
if (n.value = f,
|
|
684
|
+
const f = be(u);
|
|
685
|
+
if (n.value = f, $s.error("Async action failed:", u), s && !Ne() && u && typeof u == "object") {
|
|
686
686
|
const m = `async-error-${f.message.slice(0, 80)}`, E = setTimeout(async () => {
|
|
687
|
-
Ye || (Ye = (await import("./chunks/VcScheduler.vue_vue_type_style_index_0_lang-
|
|
687
|
+
Ye || (Ye = (await import("./chunks/VcScheduler.vue_vue_type_style_index_0_lang-osk-b3-5.js").then((S) => S.b2)).notification), Ye.error(f.message, {
|
|
688
688
|
timeout: o,
|
|
689
689
|
notificationId: m
|
|
690
690
|
});
|
|
@@ -702,7 +702,7 @@ function Xt(e, t) {
|
|
|
702
702
|
action: r
|
|
703
703
|
};
|
|
704
704
|
}
|
|
705
|
-
function
|
|
705
|
+
function Ks(e) {
|
|
706
706
|
async function t() {
|
|
707
707
|
return new e();
|
|
708
708
|
}
|
|
@@ -711,19 +711,19 @@ function $s(e) {
|
|
|
711
711
|
};
|
|
712
712
|
}
|
|
713
713
|
function Jt(...e) {
|
|
714
|
-
return
|
|
714
|
+
return v(() => e.some((t) => t.value));
|
|
715
715
|
}
|
|
716
|
-
const
|
|
716
|
+
const zs = k("use-settings");
|
|
717
717
|
function we() {
|
|
718
|
-
const e =
|
|
718
|
+
const e = P(), t = P(!1), { getApiClient: a } = Ks(Mn), { loading: n, action: s } = Xt(async () => {
|
|
719
719
|
if (t.value) return;
|
|
720
720
|
const r = await (await a()).getUICustomizationSetting();
|
|
721
721
|
let l = null;
|
|
722
722
|
if (r.defaultValue)
|
|
723
723
|
try {
|
|
724
724
|
l = JSON.parse(r.defaultValue);
|
|
725
|
-
} catch (
|
|
726
|
-
|
|
725
|
+
} catch (d) {
|
|
726
|
+
zs.warn("Failed to parse UI customization settings JSON; ignoring.", d);
|
|
727
727
|
}
|
|
728
728
|
l && !e.value && (e.value = {
|
|
729
729
|
contrast_logo: l.contrast_logo,
|
|
@@ -743,31 +743,31 @@ function we() {
|
|
|
743
743
|
return Oe(async () => {
|
|
744
744
|
!e.value && !t.value && await s();
|
|
745
745
|
}), {
|
|
746
|
-
uiSettings:
|
|
746
|
+
uiSettings: v(() => e.value ?? {}),
|
|
747
747
|
applySettings: o,
|
|
748
748
|
loading: Jt(n)
|
|
749
749
|
};
|
|
750
750
|
}
|
|
751
|
-
function
|
|
752
|
-
const e =
|
|
751
|
+
function Pl() {
|
|
752
|
+
const e = P(!1);
|
|
753
753
|
let t = 0, a = !1;
|
|
754
754
|
function n() {
|
|
755
755
|
const l = ++t;
|
|
756
|
-
let
|
|
756
|
+
let d = !1;
|
|
757
757
|
return a || (e.value = !0), {
|
|
758
758
|
isCurrent: () => !a && l === t,
|
|
759
759
|
complete: () => {
|
|
760
|
-
|
|
760
|
+
d || (d = !0, !a && l === t && (e.value = !1));
|
|
761
761
|
}
|
|
762
762
|
};
|
|
763
763
|
}
|
|
764
764
|
async function s(l) {
|
|
765
|
-
const
|
|
765
|
+
const d = n();
|
|
766
766
|
try {
|
|
767
767
|
const u = await l;
|
|
768
|
-
return
|
|
768
|
+
return d.isCurrent() ? u : void 0;
|
|
769
769
|
} finally {
|
|
770
|
-
|
|
770
|
+
d.complete();
|
|
771
771
|
}
|
|
772
772
|
}
|
|
773
773
|
function o() {
|
|
@@ -785,7 +785,7 @@ function Cl() {
|
|
|
785
785
|
};
|
|
786
786
|
}
|
|
787
787
|
const Qt = 4;
|
|
788
|
-
async function
|
|
788
|
+
async function qs(e, t, a, n) {
|
|
789
789
|
const s = new FormData();
|
|
790
790
|
s.append("file", e);
|
|
791
791
|
const o = t.startsWith("/") ? t.slice(1) : t, l = await (await fetch(`/api/assets?folderUrl=/${o}`, {
|
|
@@ -793,22 +793,22 @@ async function zs(e, t, a, n) {
|
|
|
793
793
|
body: s
|
|
794
794
|
})).json();
|
|
795
795
|
if (!l?.length) return null;
|
|
796
|
-
const
|
|
797
|
-
return
|
|
796
|
+
const d = l[0];
|
|
797
|
+
return d.createdDate = /* @__PURE__ */ new Date(), d.sortOrder = n !== void 0 && n >= 0 ? n + a + 1 : 0, d.url = d.url ? decodeURI(d.url) : "", "size" in d && (d.size = e.size), d;
|
|
798
798
|
}
|
|
799
799
|
async function ea(e, { uploadPath: t, startingSortOrder: a, concurrency: n = Qt }) {
|
|
800
800
|
const s = Array.from(e), o = [];
|
|
801
801
|
for (let r = 0; r < s.length; r += n) {
|
|
802
|
-
const l = s.slice(r, r + n),
|
|
803
|
-
l.map((u, f) =>
|
|
802
|
+
const l = s.slice(r, r + n), d = await Promise.all(
|
|
803
|
+
l.map((u, f) => qs(u, t, r + f, a))
|
|
804
804
|
);
|
|
805
|
-
o.push(...
|
|
805
|
+
o.push(...d);
|
|
806
806
|
}
|
|
807
807
|
return o.filter((r) => r !== null);
|
|
808
808
|
}
|
|
809
809
|
const At = k("use-assets");
|
|
810
|
-
function
|
|
811
|
-
const e =
|
|
810
|
+
function Nl() {
|
|
811
|
+
const e = P(!1);
|
|
812
812
|
async function t(s, o, r) {
|
|
813
813
|
try {
|
|
814
814
|
return e.value = !0, await ea(s, { uploadPath: o, startingSortOrder: r });
|
|
@@ -821,8 +821,8 @@ function Pl() {
|
|
|
821
821
|
function a(s, o, r = "url") {
|
|
822
822
|
try {
|
|
823
823
|
e.value = !0;
|
|
824
|
-
let l =
|
|
825
|
-
return l && l.length && s.length > 0 && (l =
|
|
824
|
+
let l = J(o) || [];
|
|
825
|
+
return l && l.length && s.length > 0 && (l = As(l, s, (d, u) => d[r] === u[r])), l;
|
|
826
826
|
} catch (l) {
|
|
827
827
|
throw At.error("Remove failed:", l), l;
|
|
828
828
|
} finally {
|
|
@@ -832,28 +832,28 @@ function Pl() {
|
|
|
832
832
|
function n(s, o) {
|
|
833
833
|
if (s.length === o.length)
|
|
834
834
|
return s.map((l) => ({ ...l }));
|
|
835
|
-
const r =
|
|
835
|
+
const r = J(o) || [];
|
|
836
836
|
return r && r.length && s.forEach((l) => {
|
|
837
|
-
const
|
|
838
|
-
|
|
837
|
+
const d = r.findIndex((u) => u.url === l.url);
|
|
838
|
+
d !== -1 && (r[d] = { ...r[d], ...l });
|
|
839
839
|
}), r;
|
|
840
840
|
}
|
|
841
841
|
return {
|
|
842
842
|
upload: t,
|
|
843
843
|
remove: a,
|
|
844
844
|
edit: n,
|
|
845
|
-
loading:
|
|
845
|
+
loading: v(() => e.value)
|
|
846
846
|
};
|
|
847
847
|
}
|
|
848
|
-
const
|
|
848
|
+
const Ys = k("use-assets-manager");
|
|
849
849
|
function pt(e) {
|
|
850
850
|
return e.map((t, a) => ({ item: t, index: a })).sort((t, a) => {
|
|
851
851
|
const n = t.item.sortOrder ?? Number.MAX_SAFE_INTEGER, s = a.item.sortOrder ?? Number.MAX_SAFE_INTEGER;
|
|
852
852
|
return n === s ? t.index - a.index : n - s;
|
|
853
853
|
}).map(({ item: t }, a) => ({ ...t, sortOrder: a }));
|
|
854
854
|
}
|
|
855
|
-
function
|
|
856
|
-
const a =
|
|
855
|
+
function Dl(e, t) {
|
|
856
|
+
const a = P(!1), n = P(pt(e.value ?? []));
|
|
857
857
|
ae(
|
|
858
858
|
() => e.value,
|
|
859
859
|
(S) => {
|
|
@@ -864,14 +864,14 @@ function bl(e, t) {
|
|
|
864
864
|
function s() {
|
|
865
865
|
e.value = n.value;
|
|
866
866
|
}
|
|
867
|
-
const o = n, r =
|
|
867
|
+
const o = n, r = v(() => a.value), l = t.concurrency ?? Qt, d = t.assetKey ?? "url";
|
|
868
868
|
async function u(S, h) {
|
|
869
869
|
try {
|
|
870
870
|
a.value = !0;
|
|
871
|
-
const L = t.uploadPath(),
|
|
872
|
-
n.value = [...n.value, ...
|
|
871
|
+
const L = t.uploadPath(), _ = await ea(S, { uploadPath: L, startingSortOrder: h, concurrency: l });
|
|
872
|
+
n.value = [...n.value, ..._], s();
|
|
873
873
|
} catch (L) {
|
|
874
|
-
throw
|
|
874
|
+
throw Ys.error("Upload failed:", L), L;
|
|
875
875
|
} finally {
|
|
876
876
|
a.value = !1;
|
|
877
877
|
}
|
|
@@ -882,14 +882,14 @@ function bl(e, t) {
|
|
|
882
882
|
async function m(S) {
|
|
883
883
|
if (t.confirmRemove && !await t.confirmRemove())
|
|
884
884
|
return;
|
|
885
|
-
const h = new Set(S.map((L) => L[
|
|
886
|
-
n.value = n.value.filter((L) => !h.has(L[
|
|
885
|
+
const h = new Set(S.map((L) => L[d]));
|
|
886
|
+
n.value = n.value.filter((L) => !h.has(L[d])), s();
|
|
887
887
|
}
|
|
888
888
|
function E(S) {
|
|
889
889
|
n.value = S.map((h) => ({ ...h })), s();
|
|
890
890
|
}
|
|
891
|
-
function
|
|
892
|
-
const h = n.value.findIndex((L) => L[
|
|
891
|
+
function c(S) {
|
|
892
|
+
const h = n.value.findIndex((L) => L[d] === S[d]);
|
|
893
893
|
if (h !== -1) {
|
|
894
894
|
const L = [...n.value];
|
|
895
895
|
L[h] = { ...n.value[h], ...S }, n.value = L, s();
|
|
@@ -901,11 +901,11 @@ function bl(e, t) {
|
|
|
901
901
|
remove: f,
|
|
902
902
|
removeMany: m,
|
|
903
903
|
reorder: E,
|
|
904
|
-
updateItem:
|
|
904
|
+
updateItem: c,
|
|
905
905
|
loading: r
|
|
906
906
|
};
|
|
907
907
|
}
|
|
908
|
-
const
|
|
908
|
+
const Zs = (e) => {
|
|
909
909
|
Qa(() => {
|
|
910
910
|
window.addEventListener("beforeunload", t);
|
|
911
911
|
}), en(() => {
|
|
@@ -917,8 +917,8 @@ const Ys = (e) => {
|
|
|
917
917
|
return {
|
|
918
918
|
modified: e
|
|
919
919
|
};
|
|
920
|
-
},
|
|
921
|
-
function
|
|
920
|
+
}, js = k("use-breadcrumbs");
|
|
921
|
+
function yl() {
|
|
922
922
|
const e = tn([]);
|
|
923
923
|
function t(s) {
|
|
924
924
|
const o = e.value.findIndex((r) => r.id === s);
|
|
@@ -930,8 +930,8 @@ function Nl() {
|
|
|
930
930
|
clickHandler: s.clickHandler ? async (l) => {
|
|
931
931
|
try {
|
|
932
932
|
await s.clickHandler(l) !== !1 && t(l);
|
|
933
|
-
} catch (
|
|
934
|
-
|
|
933
|
+
} catch (d) {
|
|
934
|
+
js.error("Breadcrumb click handler failed:", d);
|
|
935
935
|
}
|
|
936
936
|
} : void 0
|
|
937
937
|
}, r = e.value.findIndex((l) => l.id === o.id);
|
|
@@ -945,12 +945,12 @@ function Nl() {
|
|
|
945
945
|
e.value = e.value.filter((o) => !s.includes(o.id));
|
|
946
946
|
}
|
|
947
947
|
return {
|
|
948
|
-
breadcrumbs:
|
|
948
|
+
breadcrumbs: v(() => e.value),
|
|
949
949
|
push: a,
|
|
950
950
|
remove: n
|
|
951
951
|
};
|
|
952
952
|
}
|
|
953
|
-
const
|
|
953
|
+
const Xs = {
|
|
954
954
|
get(e, t) {
|
|
955
955
|
return Te(e) ? he(e) ? e.values?.filter((n) => n.languageCode === t) ?? [] : (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.value ?? "" : he(e) ? e.values ?? [] : e.values?.[0]?.value ?? "";
|
|
956
956
|
},
|
|
@@ -977,14 +977,14 @@ const js = {
|
|
|
977
977
|
}
|
|
978
978
|
e.values?.[0] ? Object.assign(e.values[0], { value: t }) : e.values = [F({ value: t })];
|
|
979
979
|
}
|
|
980
|
-
},
|
|
980
|
+
}, Js = {
|
|
981
981
|
get(e, t) {
|
|
982
982
|
return Te(e) ? (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.value ?? !1 : e.values?.[0]?.value ?? !1;
|
|
983
983
|
},
|
|
984
984
|
set(e, t, a) {
|
|
985
985
|
e.values?.[0] ? Object.assign(e.values[0], { value: t }) : e.values = [F({ value: t })];
|
|
986
986
|
}
|
|
987
|
-
},
|
|
987
|
+
}, Qs = {
|
|
988
988
|
get(e, t) {
|
|
989
989
|
return Te(e) ? he(e) ? e.values?.filter((n) => n.languageCode === t) ?? [] : (e.values?.find((n) => n.languageCode === t) ?? e.values?.find((n) => !n.languageCode))?.valueId ?? "" : he(e) ? e.values ?? [] : e.values?.[0]?.valueId ?? "";
|
|
990
990
|
},
|
|
@@ -994,17 +994,17 @@ const js = {
|
|
|
994
994
|
He(e, s);
|
|
995
995
|
return;
|
|
996
996
|
}
|
|
997
|
-
n?.length && (Te(e) ?
|
|
997
|
+
n?.length && (Te(e) ? eo(e, t, n, s) : no(e, t, n));
|
|
998
998
|
}
|
|
999
999
|
};
|
|
1000
|
-
function
|
|
1001
|
-
Array.isArray(t) ?
|
|
1000
|
+
function eo(e, t, a, n) {
|
|
1001
|
+
Array.isArray(t) ? to(
|
|
1002
1002
|
e,
|
|
1003
1003
|
t,
|
|
1004
1004
|
a
|
|
1005
|
-
) :
|
|
1005
|
+
) : ao(e, t, a, n);
|
|
1006
1006
|
}
|
|
1007
|
-
function
|
|
1007
|
+
function to(e, t, a) {
|
|
1008
1008
|
e.values = t.flatMap((n) => {
|
|
1009
1009
|
const s = a.find(
|
|
1010
1010
|
(o) => o.id === n.valueId || o.id === n.id
|
|
@@ -1021,7 +1021,7 @@ function eo(e, t, a) {
|
|
|
1021
1021
|
) : F(n);
|
|
1022
1022
|
});
|
|
1023
1023
|
}
|
|
1024
|
-
function
|
|
1024
|
+
function ao(e, t, a, n) {
|
|
1025
1025
|
const s = a.find((o) => o.id === t);
|
|
1026
1026
|
if (!s) {
|
|
1027
1027
|
e.values = [];
|
|
@@ -1052,7 +1052,7 @@ function to(e, t, a, n) {
|
|
|
1052
1052
|
);
|
|
1053
1053
|
}
|
|
1054
1054
|
}
|
|
1055
|
-
function
|
|
1055
|
+
function no(e, t, a) {
|
|
1056
1056
|
if (Array.isArray(t))
|
|
1057
1057
|
e.values = t.flatMap((n) => {
|
|
1058
1058
|
const s = a.find(
|
|
@@ -1083,7 +1083,7 @@ function ao(e, t, a) {
|
|
|
1083
1083
|
];
|
|
1084
1084
|
}
|
|
1085
1085
|
}
|
|
1086
|
-
const
|
|
1086
|
+
const so = {
|
|
1087
1087
|
get(e, t) {
|
|
1088
1088
|
return e.values?.[0]?.value ?? "";
|
|
1089
1089
|
},
|
|
@@ -1094,7 +1094,7 @@ const no = {
|
|
|
1094
1094
|
}
|
|
1095
1095
|
e.values = [F({ value: t, unitOfMeasureId: a.unitOfMeasureId })];
|
|
1096
1096
|
}
|
|
1097
|
-
},
|
|
1097
|
+
}, oo = {
|
|
1098
1098
|
get(e, t) {
|
|
1099
1099
|
return he(e) ? e.values ?? [] : e.values?.[0]?.value ?? "";
|
|
1100
1100
|
},
|
|
@@ -1109,9 +1109,9 @@ const no = {
|
|
|
1109
1109
|
}
|
|
1110
1110
|
};
|
|
1111
1111
|
function Tt(e) {
|
|
1112
|
-
return Tn(e) ?
|
|
1112
|
+
return Tn(e) ? so : hn(e) && !mt(e) ? oo : e.valueType === "Boolean" ? Js : mt(e) ? Qs : Xs;
|
|
1113
1113
|
}
|
|
1114
|
-
function
|
|
1114
|
+
function Bl(e) {
|
|
1115
1115
|
const { searchDictionary: t, searchMeasurements: a } = e, { loading: n, action: s } = Xt(async (u) => {
|
|
1116
1116
|
if (u)
|
|
1117
1117
|
return await t(u);
|
|
@@ -1123,9 +1123,9 @@ function Dl(e) {
|
|
|
1123
1123
|
keyword: f,
|
|
1124
1124
|
skip: 0
|
|
1125
1125
|
});
|
|
1126
|
-
return !m || !E ? E : E.map((
|
|
1127
|
-
const S =
|
|
1128
|
-
return { ...
|
|
1126
|
+
return !m || !E ? E : E.map((c) => {
|
|
1127
|
+
const S = c.localizedValues?.find((h) => h.languageCode === m)?.value;
|
|
1128
|
+
return { ...c, value: S ?? c.alias };
|
|
1129
1129
|
});
|
|
1130
1130
|
}
|
|
1131
1131
|
async function r(u, f, m) {
|
|
@@ -1135,19 +1135,19 @@ function Dl(e) {
|
|
|
1135
1135
|
function l(u, f) {
|
|
1136
1136
|
return Tt(u).get(u, f);
|
|
1137
1137
|
}
|
|
1138
|
-
function
|
|
1138
|
+
function d(u) {
|
|
1139
1139
|
const { property: f, value: m, ...E } = u;
|
|
1140
1140
|
Tt(f).set(f, m, E);
|
|
1141
1141
|
}
|
|
1142
1142
|
return {
|
|
1143
1143
|
getPropertyValue: l,
|
|
1144
|
-
setPropertyValue:
|
|
1144
|
+
setPropertyValue: d,
|
|
1145
1145
|
loadDictionaries: o,
|
|
1146
1146
|
loadMeasurements: r,
|
|
1147
1147
|
loading: Jt(n)
|
|
1148
1148
|
};
|
|
1149
1149
|
}
|
|
1150
|
-
function
|
|
1150
|
+
function Ml(e) {
|
|
1151
1151
|
const t = (n) => {
|
|
1152
1152
|
}, a = (n) => {
|
|
1153
1153
|
(e ?? t)({
|
|
@@ -1156,10 +1156,10 @@ function yl(e) {
|
|
|
1156
1156
|
rating: n.rating
|
|
1157
1157
|
});
|
|
1158
1158
|
};
|
|
1159
|
-
|
|
1159
|
+
Ts(a), hs(a), Ls(a), Os(a), Rs(a);
|
|
1160
1160
|
}
|
|
1161
1161
|
const ta = k("use-blade-widgets");
|
|
1162
|
-
function
|
|
1162
|
+
function kl(e) {
|
|
1163
1163
|
const t = Q(Gt);
|
|
1164
1164
|
if (!t)
|
|
1165
1165
|
throw new yt("WidgetService");
|
|
@@ -1171,7 +1171,7 @@ function Bl(e) {
|
|
|
1171
1171
|
const s = n.value.id;
|
|
1172
1172
|
Oe(() => {
|
|
1173
1173
|
for (const l of e)
|
|
1174
|
-
a.registerWidget(
|
|
1174
|
+
a.registerWidget(ro(l), s);
|
|
1175
1175
|
}), an(() => {
|
|
1176
1176
|
for (const l of e)
|
|
1177
1177
|
a.unregisterWidget(l.id, s);
|
|
@@ -1182,20 +1182,20 @@ function Bl(e) {
|
|
|
1182
1182
|
}
|
|
1183
1183
|
function r() {
|
|
1184
1184
|
const l = a.getWidgets(s);
|
|
1185
|
-
for (const
|
|
1186
|
-
|
|
1185
|
+
for (const d of l)
|
|
1186
|
+
d.trigger?.onRefresh && d.trigger.onRefresh();
|
|
1187
1187
|
}
|
|
1188
1188
|
return { refresh: o, refreshAll: r };
|
|
1189
1189
|
}
|
|
1190
|
-
function
|
|
1191
|
-
const t = Q(
|
|
1190
|
+
function Vl(e) {
|
|
1191
|
+
const t = Q(kn);
|
|
1192
1192
|
if (!t) {
|
|
1193
1193
|
ta.warn("useWidgetTrigger() called outside WidgetContainer scope — trigger will not be registered.");
|
|
1194
1194
|
return;
|
|
1195
1195
|
}
|
|
1196
1196
|
t.setTrigger(e);
|
|
1197
1197
|
}
|
|
1198
|
-
function
|
|
1198
|
+
function ro(e) {
|
|
1199
1199
|
const t = {
|
|
1200
1200
|
icon: e.icon,
|
|
1201
1201
|
badge: e.badge,
|
|
@@ -1212,7 +1212,7 @@ function oo(e) {
|
|
|
1212
1212
|
trigger: e.onRefresh ? { onRefresh: e.onRefresh } : void 0
|
|
1213
1213
|
};
|
|
1214
1214
|
}
|
|
1215
|
-
function
|
|
1215
|
+
function io(e) {
|
|
1216
1216
|
const t = {};
|
|
1217
1217
|
for (const a of Object.keys(e)) {
|
|
1218
1218
|
const n = e[a];
|
|
@@ -1220,13 +1220,13 @@ function ro(e) {
|
|
|
1220
1220
|
}
|
|
1221
1221
|
return t;
|
|
1222
1222
|
}
|
|
1223
|
-
function
|
|
1223
|
+
function Ul(e) {
|
|
1224
1224
|
Bt(
|
|
1225
1225
|
$t,
|
|
1226
|
-
|
|
1226
|
+
v(() => io(Mt(e)))
|
|
1227
1227
|
);
|
|
1228
1228
|
}
|
|
1229
|
-
function
|
|
1229
|
+
function Fl() {
|
|
1230
1230
|
const e = Q($t);
|
|
1231
1231
|
if (!e)
|
|
1232
1232
|
throw new yt("BladeContext");
|
|
@@ -1236,17 +1236,17 @@ function ht(e) {
|
|
|
1236
1236
|
return e == null || e === "";
|
|
1237
1237
|
}
|
|
1238
1238
|
function Lt(e, t) {
|
|
1239
|
-
return
|
|
1239
|
+
return ps(e, t, (a, n) => {
|
|
1240
1240
|
if (ht(a) && ht(n)) return !0;
|
|
1241
1241
|
});
|
|
1242
1242
|
}
|
|
1243
|
-
function
|
|
1244
|
-
const t = (r) =>
|
|
1243
|
+
function Wl(e) {
|
|
1244
|
+
const t = (r) => J(i(r)), a = P(t(e)), n = P(t(e)), s = P(!1);
|
|
1245
1245
|
kt(e) && ae(
|
|
1246
1246
|
e,
|
|
1247
1247
|
(r) => {
|
|
1248
1248
|
const l = !Lt(n.value, a.value);
|
|
1249
|
-
a.value =
|
|
1249
|
+
a.value = J(r), l || (n.value = J(r));
|
|
1250
1250
|
},
|
|
1251
1251
|
{ deep: !0 }
|
|
1252
1252
|
// Deep tracking, if initialValueProp is a Ref to an object/array
|
|
@@ -1261,43 +1261,43 @@ function Ul(e) {
|
|
|
1261
1261
|
const o = (r) => {
|
|
1262
1262
|
if (r !== void 0) {
|
|
1263
1263
|
const l = t(r);
|
|
1264
|
-
a.value = l, n.value =
|
|
1264
|
+
a.value = l, n.value = J(l);
|
|
1265
1265
|
} else
|
|
1266
|
-
a.value =
|
|
1266
|
+
a.value = J(n.value);
|
|
1267
1267
|
s.value = !1;
|
|
1268
1268
|
};
|
|
1269
1269
|
return {
|
|
1270
1270
|
currentValue: n,
|
|
1271
1271
|
pristineValue: a,
|
|
1272
|
-
isModified:
|
|
1272
|
+
isModified: v(() => s.value),
|
|
1273
1273
|
resetModificationState: o
|
|
1274
1274
|
};
|
|
1275
1275
|
}
|
|
1276
|
-
const
|
|
1276
|
+
const lo = { class: "tw-flex tw-grow-1 tw-border-t tw-border-solid tw-border-t-[--assets-details-border]" }, uo = { class: "assets-details__content tw-grow tw-basis-0 tw-w-full tw-overflow-hidden" }, co = { class: "tw-p-4" }, Eo = { class: "assets-details__header" }, fo = {
|
|
1277
1277
|
key: 1,
|
|
1278
1278
|
class: "assets-details__file-preview tw-shrink-0"
|
|
1279
|
-
},
|
|
1279
|
+
}, mo = { class: "assets-details__meta" };
|
|
1280
1280
|
Ft("AssetsDetails", {});
|
|
1281
|
-
const
|
|
1281
|
+
const go = /* @__PURE__ */ H({
|
|
1282
1282
|
name: "AssetsDetails",
|
|
1283
1283
|
__name: "assets-details",
|
|
1284
1284
|
setup(e) {
|
|
1285
1285
|
const { options: t, closeSelf: a } = ut();
|
|
1286
1286
|
ue({ validateOnMount: !1 });
|
|
1287
|
-
const n = Ie(), s =
|
|
1287
|
+
const n = Ie(), s = dt(), { t: o } = le({ useScope: "global" }), r = P({ ...t.value?.asset }), l = v(() => t.value?.disabled), d = v({
|
|
1288
1288
|
get() {
|
|
1289
1289
|
const E = r.value.name;
|
|
1290
1290
|
if (!E) return "";
|
|
1291
|
-
const
|
|
1292
|
-
return
|
|
1291
|
+
const c = E.lastIndexOf(".");
|
|
1292
|
+
return c > 0 ? E.slice(0, c) : E;
|
|
1293
1293
|
},
|
|
1294
1294
|
set(E) {
|
|
1295
|
-
const
|
|
1296
|
-
if (!
|
|
1297
|
-
const S =
|
|
1295
|
+
const c = r.value.name;
|
|
1296
|
+
if (!c) return;
|
|
1297
|
+
const S = c.lastIndexOf("."), h = S > 0 ? c.slice(S) : "";
|
|
1298
1298
|
r.value.name = E ? E + h : "";
|
|
1299
1299
|
}
|
|
1300
|
-
}), u =
|
|
1300
|
+
}), u = v(() => !s.value || !n.value), f = P([
|
|
1301
1301
|
{
|
|
1302
1302
|
id: "save",
|
|
1303
1303
|
title: o("ASSETS.PAGES.DETAILS.TOOLBAR.SAVE"),
|
|
@@ -1305,7 +1305,7 @@ const mo = /* @__PURE__ */ H({
|
|
|
1305
1305
|
async clickHandler() {
|
|
1306
1306
|
t.value?.assetEditHandler && typeof t.value?.assetEditHandler == "function" && (await t.value?.assetEditHandler(r.value), a());
|
|
1307
1307
|
},
|
|
1308
|
-
disabled:
|
|
1308
|
+
disabled: v(() => u.value || l.value)
|
|
1309
1309
|
},
|
|
1310
1310
|
{
|
|
1311
1311
|
id: "delete",
|
|
@@ -1314,36 +1314,36 @@ const mo = /* @__PURE__ */ H({
|
|
|
1314
1314
|
async clickHandler() {
|
|
1315
1315
|
t.value?.assetRemoveHandler && typeof t.value?.assetRemoveHandler == "function" && (await t.value?.assetRemoveHandler(r.value), a());
|
|
1316
1316
|
},
|
|
1317
|
-
disabled:
|
|
1317
|
+
disabled: v(() => l.value)
|
|
1318
1318
|
}
|
|
1319
|
-
]), m =
|
|
1320
|
-
return (E,
|
|
1319
|
+
]), m = v(() => r.value?.typeId);
|
|
1320
|
+
return (E, c) => (b(), D(i(Wt), {
|
|
1321
1321
|
title: i(t)?.asset?.name,
|
|
1322
1322
|
subtitle: i(o)("ASSETS.PAGES.DETAILS.SUBTITLE"),
|
|
1323
1323
|
"toolbar-items": f.value
|
|
1324
1324
|
}, {
|
|
1325
1325
|
default: T(() => [
|
|
1326
|
-
U("div",
|
|
1327
|
-
U("div",
|
|
1326
|
+
U("div", lo, [
|
|
1327
|
+
U("div", uo, [
|
|
1328
1328
|
R(i(Ln), { "no-padding": !0 }, {
|
|
1329
1329
|
default: T(() => [
|
|
1330
|
-
U("div",
|
|
1330
|
+
U("div", co, [
|
|
1331
1331
|
R(i(me), null, {
|
|
1332
1332
|
default: T(() => [
|
|
1333
|
-
U("div",
|
|
1334
|
-
i(zt)(r.value.name) ? (
|
|
1333
|
+
U("div", Eo, [
|
|
1334
|
+
i(zt)(r.value.name) ? (b(), D(i(ot), {
|
|
1335
1335
|
key: 0,
|
|
1336
1336
|
src: r.value.url,
|
|
1337
1337
|
size: "xl",
|
|
1338
1338
|
bordered: !0,
|
|
1339
1339
|
class: "tw-shrink-0"
|
|
1340
|
-
}, null, 8, ["src"])) : (
|
|
1340
|
+
}, null, 8, ["src"])) : (b(), W("div", fo, [
|
|
1341
1341
|
U("div", {
|
|
1342
1342
|
class: "assets-details__file-badge",
|
|
1343
1343
|
style: Vt({ backgroundColor: i(Yt)(r.value.name) })
|
|
1344
1344
|
}, y(i(Zt)(r.value.name)), 5)
|
|
1345
1345
|
])),
|
|
1346
|
-
U("div",
|
|
1346
|
+
U("div", mo, [
|
|
1347
1347
|
R(i(Ke), {
|
|
1348
1348
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.SIZE"),
|
|
1349
1349
|
"model-value": i(qt)(r.value.size)
|
|
@@ -1362,7 +1362,7 @@ const mo = /* @__PURE__ */ H({
|
|
|
1362
1362
|
}, null, 8, ["label", "model-value", "display-value"])
|
|
1363
1363
|
])
|
|
1364
1364
|
]),
|
|
1365
|
-
i(t)?.hiddenFields?.includes("name") ? q("", !0) : (
|
|
1365
|
+
i(t)?.hiddenFields?.includes("name") ? q("", !0) : (b(), D(i(X), {
|
|
1366
1366
|
key: 0,
|
|
1367
1367
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.NAME.TITLE"),
|
|
1368
1368
|
name: "asset_name",
|
|
@@ -1370,10 +1370,10 @@ const mo = /* @__PURE__ */ H({
|
|
|
1370
1370
|
"model-value": r.value.name
|
|
1371
1371
|
}, {
|
|
1372
1372
|
default: T(({ errorMessage: S, handleChange: h, errors: L }) => [
|
|
1373
|
-
R(i(
|
|
1374
|
-
modelValue:
|
|
1373
|
+
R(i(K), {
|
|
1374
|
+
modelValue: d.value,
|
|
1375
1375
|
"onUpdate:modelValue": [
|
|
1376
|
-
|
|
1376
|
+
c[0] || (c[0] = (_) => d.value = _),
|
|
1377
1377
|
h
|
|
1378
1378
|
],
|
|
1379
1379
|
class: "tw-mb-4",
|
|
@@ -1388,10 +1388,10 @@ const mo = /* @__PURE__ */ H({
|
|
|
1388
1388
|
]),
|
|
1389
1389
|
_: 1
|
|
1390
1390
|
}, 8, ["label", "model-value"])),
|
|
1391
|
-
m.value === "Image" && !i(t)?.hiddenFields?.includes("altText") ? (
|
|
1391
|
+
m.value === "Image" && !i(t)?.hiddenFields?.includes("altText") ? (b(), D(i(K), {
|
|
1392
1392
|
key: 1,
|
|
1393
1393
|
modelValue: r.value.altText,
|
|
1394
|
-
"onUpdate:modelValue":
|
|
1394
|
+
"onUpdate:modelValue": c[1] || (c[1] = (S) => r.value.altText = S),
|
|
1395
1395
|
class: "tw-mb-4",
|
|
1396
1396
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.ALT.TITLE"),
|
|
1397
1397
|
clearable: "",
|
|
@@ -1399,10 +1399,10 @@ const mo = /* @__PURE__ */ H({
|
|
|
1399
1399
|
tooltip: i(o)("ASSETS.PAGES.DETAILS.FIELDS.ALT.TOOLTIP"),
|
|
1400
1400
|
disabled: l.value
|
|
1401
1401
|
}, null, 8, ["modelValue", "label", "placeholder", "tooltip", "disabled"])) : q("", !0),
|
|
1402
|
-
i(t)?.hiddenFields?.includes("description") ? q("", !0) : (
|
|
1402
|
+
i(t)?.hiddenFields?.includes("description") ? q("", !0) : (b(), D(i(On), {
|
|
1403
1403
|
key: 2,
|
|
1404
1404
|
modelValue: r.value.description,
|
|
1405
|
-
"onUpdate:modelValue":
|
|
1405
|
+
"onUpdate:modelValue": c[2] || (c[2] = (S) => r.value.description = S),
|
|
1406
1406
|
class: "tw-mb-4",
|
|
1407
1407
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.DESCRIPTION.TITLE"),
|
|
1408
1408
|
placeholder: i(o)("ASSETS.PAGES.DETAILS.FIELDS.DESCRIPTION.PLACEHOLDER"),
|
|
@@ -1421,41 +1421,41 @@ const mo = /* @__PURE__ */ H({
|
|
|
1421
1421
|
_: 1
|
|
1422
1422
|
}, 8, ["title", "subtitle", "toolbar-items"]));
|
|
1423
1423
|
}
|
|
1424
|
-
}),
|
|
1424
|
+
}), So = go, Ao = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1425
1425
|
__proto__: null,
|
|
1426
|
-
AssetsDetails:
|
|
1427
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1426
|
+
AssetsDetails: So
|
|
1427
|
+
}, Symbol.toStringTag, { value: "Module" })), po = Et({ blades: Ao }), To = { class: "tw-flex tw-items-center tw-justify-center" };
|
|
1428
1428
|
Ft("AssetsManager", {});
|
|
1429
|
-
const
|
|
1429
|
+
const ho = /* @__PURE__ */ H({
|
|
1430
1430
|
name: "AssetsManager",
|
|
1431
1431
|
__name: "assets-manager",
|
|
1432
1432
|
setup(e) {
|
|
1433
|
-
const t = k("assets-manager"), { options: a, openBlade: n } = ut(), { t: s } = le({ useScope: "global" }), o =
|
|
1433
|
+
const t = k("assets-manager"), { options: a, openBlade: n } = ut(), { t: s } = le({ useScope: "global" }), o = v(() => a.value.manager), r = v(() => o.value.items.value ?? []), l = v(() => o.value.loading.value), d = v(() => a.value?.title || s("ASSETS_MANAGER.TITLE")), u = P(!1), f = P(), m = P([]), E = v(() => a.value?.disabled), c = P([
|
|
1434
1434
|
{
|
|
1435
1435
|
id: "add",
|
|
1436
|
-
title:
|
|
1436
|
+
title: v(() => s("ASSETS_MANAGER.TOOLBAR.ADD")),
|
|
1437
1437
|
icon: "lucide-plus",
|
|
1438
1438
|
clickHandler() {
|
|
1439
1439
|
w();
|
|
1440
1440
|
},
|
|
1441
|
-
disabled:
|
|
1442
|
-
isVisible:
|
|
1441
|
+
disabled: v(() => E.value),
|
|
1442
|
+
isVisible: v(() => !E.value)
|
|
1443
1443
|
},
|
|
1444
1444
|
{
|
|
1445
1445
|
id: "delete",
|
|
1446
|
-
title:
|
|
1446
|
+
title: v(() => s("ASSETS_MANAGER.TOOLBAR.DELETE")),
|
|
1447
1447
|
icon: "lucide-trash-2",
|
|
1448
1448
|
async clickHandler() {
|
|
1449
1449
|
await o.value.removeMany(m.value);
|
|
1450
1450
|
},
|
|
1451
|
-
disabled:
|
|
1452
|
-
isVisible:
|
|
1451
|
+
disabled: v(() => !m.value.length || E.value),
|
|
1452
|
+
isVisible: v(() => !E.value)
|
|
1453
1453
|
}
|
|
1454
1454
|
]);
|
|
1455
1455
|
async function S(p) {
|
|
1456
1456
|
if (p.dragIndex !== p.dropIndex) {
|
|
1457
|
-
const
|
|
1458
|
-
o.value.reorder(
|
|
1457
|
+
const I = p.value.map((N, B) => (N.sortOrder = B, N));
|
|
1458
|
+
o.value.reorder(I);
|
|
1459
1459
|
}
|
|
1460
1460
|
}
|
|
1461
1461
|
function h() {
|
|
@@ -1464,12 +1464,12 @@ const To = /* @__PURE__ */ H({
|
|
|
1464
1464
|
function L() {
|
|
1465
1465
|
E.value || (u.value = !1);
|
|
1466
1466
|
}
|
|
1467
|
-
async function
|
|
1467
|
+
async function _(p) {
|
|
1468
1468
|
if (!E.value) {
|
|
1469
|
-
const
|
|
1470
|
-
if (
|
|
1469
|
+
const I = p.dataTransfer?.files;
|
|
1470
|
+
if (I && I.length)
|
|
1471
1471
|
try {
|
|
1472
|
-
await C(
|
|
1472
|
+
await C(I);
|
|
1473
1473
|
} catch (N) {
|
|
1474
1474
|
throw t.error("Failed to upload dropped files:", N), N;
|
|
1475
1475
|
}
|
|
@@ -1481,19 +1481,19 @@ const To = /* @__PURE__ */ H({
|
|
|
1481
1481
|
}
|
|
1482
1482
|
async function C(p) {
|
|
1483
1483
|
if (!p || p.length === 0) return;
|
|
1484
|
-
const
|
|
1484
|
+
const I = new Set((r.value ?? []).map((B) => B.name).filter(Boolean)), N = new DataTransfer();
|
|
1485
1485
|
for (const B of Array.from(p)) {
|
|
1486
1486
|
let V = B.name;
|
|
1487
|
-
if (
|
|
1488
|
-
const
|
|
1487
|
+
if (I.has(V)) {
|
|
1488
|
+
const z = V.includes(".") ? `.${V.split(".").pop()}` : "", de = V.slice(0, V.length - z.length);
|
|
1489
1489
|
let ge = 1;
|
|
1490
|
-
for (;
|
|
1491
|
-
V = `${
|
|
1490
|
+
for (; I.has(V); )
|
|
1491
|
+
V = `${de}_${ge}${z}`, ge++;
|
|
1492
1492
|
}
|
|
1493
|
-
|
|
1493
|
+
I.add(V), N.items.add(new File([B], V, { type: B.type }));
|
|
1494
1494
|
}
|
|
1495
1495
|
try {
|
|
1496
|
-
const B = r.value.reduce((V,
|
|
1496
|
+
const B = r.value.reduce((V, z) => Math.max(V, z.sortOrder ?? 0), -1);
|
|
1497
1497
|
await o.value.upload(N.files, B);
|
|
1498
1498
|
} catch (B) {
|
|
1499
1499
|
throw t.error("Failed to upload assets:", B), B;
|
|
@@ -1515,42 +1515,42 @@ const To = /* @__PURE__ */ H({
|
|
|
1515
1515
|
asset: i(p),
|
|
1516
1516
|
disabled: E.value,
|
|
1517
1517
|
hiddenFields: a.value?.hiddenFields,
|
|
1518
|
-
assetEditHandler: (
|
|
1519
|
-
o.value.updateItem(
|
|
1518
|
+
assetEditHandler: (I) => {
|
|
1519
|
+
o.value.updateItem(I);
|
|
1520
1520
|
},
|
|
1521
|
-
assetRemoveHandler: async (
|
|
1522
|
-
await o.value.remove(
|
|
1521
|
+
assetRemoveHandler: async (I) => {
|
|
1522
|
+
await o.value.remove(I);
|
|
1523
1523
|
}
|
|
1524
1524
|
}
|
|
1525
|
-
}).catch((
|
|
1526
|
-
t.error("Failed to open AssetsDetails blade:",
|
|
1525
|
+
}).catch((I) => {
|
|
1526
|
+
t.error("Failed to open AssetsDetails blade:", I);
|
|
1527
1527
|
});
|
|
1528
1528
|
}
|
|
1529
1529
|
const O = () => [
|
|
1530
1530
|
{
|
|
1531
1531
|
icon: "lucide-trash-2",
|
|
1532
|
-
title:
|
|
1532
|
+
title: v(() => s("ASSETS_MANAGER.TABLE.ACTIONS.DELETE")),
|
|
1533
1533
|
type: "danger",
|
|
1534
1534
|
async clickHandler(p) {
|
|
1535
1535
|
await o.value.remove(p), m.value = [];
|
|
1536
1536
|
}
|
|
1537
1537
|
}
|
|
1538
1538
|
];
|
|
1539
|
-
return (p,
|
|
1540
|
-
title:
|
|
1541
|
-
"toolbar-items":
|
|
1539
|
+
return (p, I) => (b(), D(i(Wt), {
|
|
1540
|
+
title: d.value,
|
|
1541
|
+
"toolbar-items": c.value,
|
|
1542
1542
|
width: "70%"
|
|
1543
1543
|
}, {
|
|
1544
1544
|
default: T(() => [
|
|
1545
|
-
nn((
|
|
1545
|
+
nn((b(), W("div", {
|
|
1546
1546
|
class: "tw-relative tw-h-full tw-flex-1",
|
|
1547
1547
|
onDragover: Ge(h, ["prevent", "stop"]),
|
|
1548
1548
|
onDragleave: Ge(L, ["prevent"]),
|
|
1549
|
-
onDrop: Ge(
|
|
1549
|
+
onDrop: Ge(_, ["prevent", "stop"])
|
|
1550
1550
|
}, [
|
|
1551
1551
|
R(i(Rn), {
|
|
1552
1552
|
selection: m.value,
|
|
1553
|
-
"onUpdate:selection":
|
|
1553
|
+
"onUpdate:selection": I[0] || (I[0] = (N) => m.value = N),
|
|
1554
1554
|
items: r.value,
|
|
1555
1555
|
"state-key": "assets_manager",
|
|
1556
1556
|
"reorderable-rows": !E.value,
|
|
@@ -1563,7 +1563,7 @@ const To = /* @__PURE__ */ H({
|
|
|
1563
1563
|
actionHandler: w
|
|
1564
1564
|
},
|
|
1565
1565
|
class: "tw-h-full tw-w-full",
|
|
1566
|
-
onRowClick:
|
|
1566
|
+
onRowClick: I[1] || (I[1] = ({ data: N }) => g(N)),
|
|
1567
1567
|
onRowReorder: S
|
|
1568
1568
|
}, {
|
|
1569
1569
|
default: T(() => [
|
|
@@ -1575,15 +1575,15 @@ const To = /* @__PURE__ */ H({
|
|
|
1575
1575
|
type: "image"
|
|
1576
1576
|
}, {
|
|
1577
1577
|
body: T(({ data: N }) => [
|
|
1578
|
-
U("div",
|
|
1579
|
-
i(zt)(N.name ?? "") ? (
|
|
1578
|
+
U("div", To, [
|
|
1579
|
+
i(zt)(N.name ?? "") ? (b(), D(i(ot), {
|
|
1580
1580
|
key: 0,
|
|
1581
1581
|
bordered: !0,
|
|
1582
1582
|
size: "s",
|
|
1583
1583
|
aspect: "1x1",
|
|
1584
1584
|
src: N.url,
|
|
1585
1585
|
background: "contain"
|
|
1586
|
-
}, null, 8, ["src"])) : (
|
|
1586
|
+
}, null, 8, ["src"])) : (b(), W("div", {
|
|
1587
1587
|
key: 1,
|
|
1588
1588
|
class: "assets-manager__file-badge",
|
|
1589
1589
|
style: Vt({ backgroundColor: i(Yt)(N.name ?? "") })
|
|
@@ -1646,10 +1646,10 @@ const To = /* @__PURE__ */ H({
|
|
|
1646
1646
|
_: 1
|
|
1647
1647
|
}, 8, ["title", "toolbar-items"]));
|
|
1648
1648
|
}
|
|
1649
|
-
}),
|
|
1649
|
+
}), Lo = ho, Oo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1650
1650
|
__proto__: null,
|
|
1651
|
-
AssetsManager:
|
|
1652
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1651
|
+
AssetsManager: Lo
|
|
1652
|
+
}, Symbol.toStringTag, { value: "Module" })), Ro = Et({ blades: Oo }), Ot = k("connection-status"), Rt = "vc-framework-offline-status", _t = P(!1), It = P(!0);
|
|
1653
1653
|
function aa() {
|
|
1654
1654
|
if (!_t.value && typeof window < "u") {
|
|
1655
1655
|
_t.value = !0;
|
|
@@ -1657,7 +1657,7 @@ function aa() {
|
|
|
1657
1657
|
ae(
|
|
1658
1658
|
e,
|
|
1659
1659
|
(t) => {
|
|
1660
|
-
It.value = t, t ? (Ot.info("Network connection restored"),
|
|
1660
|
+
It.value = t, t ? (Ot.info("Network connection restored"), j.remove(Rt), document.documentElement.classList.remove("vc-offline")) : (Ot.warn("Network connection lost"), j.warning("You are currently offline. Some features may be unavailable.", {
|
|
1661
1661
|
notificationId: Rt,
|
|
1662
1662
|
timeout: !1
|
|
1663
1663
|
}), document.documentElement.classList.add("vc-offline"));
|
|
@@ -1669,9 +1669,9 @@ function aa() {
|
|
|
1669
1669
|
isOnline: ke(It)
|
|
1670
1670
|
};
|
|
1671
1671
|
}
|
|
1672
|
-
const Ze = k("slow-network"),
|
|
1672
|
+
const Ze = k("slow-network"), _o = 1e4, Io = ["slow-2g", "2g"];
|
|
1673
1673
|
let je = null;
|
|
1674
|
-
const na = "vc-slow-network",
|
|
1674
|
+
const na = "vc-slow-network", vo = 3e3;
|
|
1675
1675
|
let te = null;
|
|
1676
1676
|
function vt() {
|
|
1677
1677
|
document.documentElement.classList.add(na);
|
|
@@ -1679,14 +1679,14 @@ function vt() {
|
|
|
1679
1679
|
function wt() {
|
|
1680
1680
|
document.documentElement.classList.remove(na);
|
|
1681
1681
|
}
|
|
1682
|
-
const Ct =
|
|
1683
|
-
function
|
|
1682
|
+
const Ct = P(!1), Ve = P(0), tt = P(!1), Ue = /* @__PURE__ */ new Map(), at = /* @__PURE__ */ new Set(), Xe = v(() => Ve.value > 0 || tt.value);
|
|
1683
|
+
function wo(e) {
|
|
1684
1684
|
const t = setTimeout(() => {
|
|
1685
1685
|
Ve.value++, Ue.delete(e), at.add(e);
|
|
1686
|
-
},
|
|
1686
|
+
}, _o);
|
|
1687
1687
|
Ue.set(e, t);
|
|
1688
1688
|
}
|
|
1689
|
-
function
|
|
1689
|
+
function Co(e) {
|
|
1690
1690
|
const t = Ue.get(e);
|
|
1691
1691
|
t != null ? (clearTimeout(t), Ue.delete(e)) : at.has(e) && (Ve.value = Math.max(0, Ve.value - 1), at.delete(e));
|
|
1692
1692
|
}
|
|
@@ -1695,79 +1695,79 @@ function sa() {
|
|
|
1695
1695
|
Ct.value = !0;
|
|
1696
1696
|
const e = navigator.connection;
|
|
1697
1697
|
e && (je = () => {
|
|
1698
|
-
const a =
|
|
1698
|
+
const a = Io.includes(e.effectiveType);
|
|
1699
1699
|
a !== tt.value && Ze.info(`Connection type: ${e.effectiveType} → ${a ? "slow" : "normal"}`), tt.value = a;
|
|
1700
1700
|
}, e.addEventListener("change", je), je());
|
|
1701
1701
|
const { isOnline: t } = aa();
|
|
1702
1702
|
ae(Xe, (a) => {
|
|
1703
1703
|
a ? (te != null && (clearTimeout(te), te = null), t.value && (Ze.info("Slow network detected"), vt())) : te = setTimeout(() => {
|
|
1704
1704
|
Ze.info("Network recovered"), wt(), te = null;
|
|
1705
|
-
},
|
|
1705
|
+
}, vo);
|
|
1706
1706
|
}), ae(t, (a) => {
|
|
1707
1707
|
a ? Xe.value && vt() : (te != null && (clearTimeout(te), te = null), wt());
|
|
1708
1708
|
});
|
|
1709
1709
|
}
|
|
1710
1710
|
return {
|
|
1711
1711
|
isSlowNetwork: Xe,
|
|
1712
|
-
trackRequest:
|
|
1713
|
-
untrackRequest:
|
|
1712
|
+
trackRequest: wo,
|
|
1713
|
+
untrackRequest: Co
|
|
1714
1714
|
};
|
|
1715
1715
|
}
|
|
1716
|
-
const Ae = k("interceptors"),
|
|
1717
|
-
function
|
|
1716
|
+
const Ae = k("interceptors"), bo = /(^|\/)(login|signin|sign-in|account\/login|connect\/authorize)(\/|$)/i, Po = /* @__PURE__ */ new Set(["GET", "HEAD"]);
|
|
1717
|
+
function No(e, t) {
|
|
1718
1718
|
return (t?.method ?? (e instanceof Request ? e.method : void 0) ?? "GET").toUpperCase();
|
|
1719
1719
|
}
|
|
1720
|
-
function
|
|
1720
|
+
function Do(e) {
|
|
1721
1721
|
let t;
|
|
1722
1722
|
try {
|
|
1723
1723
|
t = new URL(e.url, window.location.origin).pathname;
|
|
1724
1724
|
} catch {
|
|
1725
1725
|
return !1;
|
|
1726
1726
|
}
|
|
1727
|
-
if (
|
|
1727
|
+
if (bo.test(t))
|
|
1728
1728
|
return !0;
|
|
1729
1729
|
const a = e.headers?.get?.("content-type") ?? "";
|
|
1730
1730
|
return e.redirected === !0 && a.includes("text/html");
|
|
1731
1731
|
}
|
|
1732
|
-
function
|
|
1732
|
+
function yo(e) {
|
|
1733
1733
|
if (window.fetch.__vcInterceptorsInstalled__)
|
|
1734
1734
|
return Ae.warn("registerInterceptors called twice — ignoring second install"), window.fetch;
|
|
1735
1735
|
const { fetch: a } = window, { signOut: n, isAuthenticated: s } = se(), { trackRequest: o, untrackRequest: r } = sa();
|
|
1736
1736
|
let l = 0;
|
|
1737
|
-
const
|
|
1737
|
+
const d = new Vn(void 0, { fetch: (E, c) => a(E, c) });
|
|
1738
1738
|
let u = null;
|
|
1739
1739
|
function f() {
|
|
1740
|
-
return u ??=
|
|
1740
|
+
return u ??= d.getCurrentUser().then(
|
|
1741
1741
|
() => !0,
|
|
1742
1742
|
// Only a 401 answers the question. Anything else — an unreachable platform, a 5xx — says
|
|
1743
1743
|
// nothing about the session, and signing out on it would be a guess.
|
|
1744
|
-
(E) => !(
|
|
1744
|
+
(E) => !(Fn.isApiException(E) && E.status === 401)
|
|
1745
1745
|
).finally(() => {
|
|
1746
1746
|
u = null;
|
|
1747
1747
|
}), u;
|
|
1748
1748
|
}
|
|
1749
1749
|
const m = (async (...E) => {
|
|
1750
1750
|
if (window.__DEMO_MODE__)
|
|
1751
|
-
return Ae.warn("CANCELLED FETCH WHILE IN __DEMO_MODE__: ", ...E), Ae.warn("Please logout and add APP_PLATFORM_URL into .env file of your application to enable API calls"), new Promise((
|
|
1752
|
-
E[0] === "/api/platform/security/login" ?
|
|
1751
|
+
return Ae.warn("CANCELLED FETCH WHILE IN __DEMO_MODE__: ", ...E), Ae.warn("Please logout and add APP_PLATFORM_URL into .env file of your application to enable API calls"), new Promise((c) => {
|
|
1752
|
+
E[0] === "/api/platform/security/login" ? c({
|
|
1753
1753
|
status: 200,
|
|
1754
1754
|
text: async () => JSON.stringify({ succeeded: !0 })
|
|
1755
|
-
}) : E[0] === "/api/platform/security/currentuser" ? (
|
|
1755
|
+
}) : E[0] === "/api/platform/security/currentuser" ? (j.warning(
|
|
1756
1756
|
`You are currently in DEMO mode until the first page refresh.
|
|
1757
1757
|
All API calls are disabled. Please add APP_PLATFORM_URL to your application's .env file to enable API calls.`,
|
|
1758
1758
|
{
|
|
1759
1759
|
timeout: 1e4
|
|
1760
1760
|
}
|
|
1761
|
-
),
|
|
1761
|
+
), c({
|
|
1762
1762
|
status: 200,
|
|
1763
1763
|
text: async () => JSON.stringify({ id: "demo_user_id", userName: "DEMO_USER" })
|
|
1764
|
-
})) :
|
|
1764
|
+
})) : c({
|
|
1765
1765
|
status: 200,
|
|
1766
1766
|
text: async () => JSON.stringify({})
|
|
1767
1767
|
});
|
|
1768
1768
|
});
|
|
1769
1769
|
{
|
|
1770
|
-
let
|
|
1770
|
+
let c = function(A) {
|
|
1771
1771
|
const g = typeof A == "string" ? A : A instanceof Request ? A.url : A.toString();
|
|
1772
1772
|
try {
|
|
1773
1773
|
const O = new URL(g, window.location.origin);
|
|
@@ -1784,27 +1784,27 @@ function Do(e) {
|
|
|
1784
1784
|
}
|
|
1785
1785
|
};
|
|
1786
1786
|
const [h, L] = E;
|
|
1787
|
-
async function
|
|
1788
|
-
!A && !g || Ne() || !s.value || !g && await f() || Ne() || (
|
|
1787
|
+
async function _(A, g = !1) {
|
|
1788
|
+
!A && !g || Ne() || !s.value || !g && await f() || Ne() || (Wn(), n().catch((O) => {
|
|
1789
1789
|
Ae.error("signOut failed after session expiry:", O);
|
|
1790
1790
|
}).finally(() => {
|
|
1791
|
-
|
|
1791
|
+
Bo(e), j.error(x.global.t("CORE.ERRORS.SESSION_EXPIRED"));
|
|
1792
1792
|
}));
|
|
1793
1793
|
}
|
|
1794
|
-
if (!
|
|
1794
|
+
if (!c(h)) {
|
|
1795
1795
|
if (!S(h))
|
|
1796
1796
|
return a(...E);
|
|
1797
1797
|
const A = await a(...E);
|
|
1798
|
-
return await
|
|
1798
|
+
return await _(A.status === 401), A;
|
|
1799
1799
|
}
|
|
1800
1800
|
if (!navigator.onLine)
|
|
1801
|
-
return Ae.warn("Request blocked: browser is offline", h), Promise.reject(new Error(
|
|
1802
|
-
const w = String(++l), C = Po.has(
|
|
1801
|
+
return Ae.warn("Request blocked: browser is offline", h), Promise.reject(new Error(x.global.t("CORE.ERRORS.NETWORK_UNAVAILABLE")));
|
|
1802
|
+
const w = String(++l), C = Po.has(No(h, L));
|
|
1803
1803
|
C && o(w);
|
|
1804
1804
|
try {
|
|
1805
|
-
const A = await a(...E), g = A.ok &&
|
|
1806
|
-
if (await
|
|
1807
|
-
throw new
|
|
1805
|
+
const A = await a(...E), g = A.ok && Do(A);
|
|
1806
|
+
if (await _(A.status === 401, g), g && Ne())
|
|
1807
|
+
throw new Un();
|
|
1808
1808
|
return A;
|
|
1809
1809
|
} finally {
|
|
1810
1810
|
C && r(w);
|
|
@@ -1813,18 +1813,28 @@ function Do(e) {
|
|
|
1813
1813
|
});
|
|
1814
1814
|
return m.__vcInterceptorsInstalled__ = !0, window.fetch = m, m;
|
|
1815
1815
|
}
|
|
1816
|
-
function
|
|
1816
|
+
function Bo(e) {
|
|
1817
1817
|
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 + "/";
|
|
1818
1818
|
}
|
|
1819
|
+
async function Mo(e, t) {
|
|
1820
|
+
if (e.meta.root === !0) {
|
|
1821
|
+
if (t.authState.value === "unknown" && await t.loadUser(), t.authState.value === "unknown") {
|
|
1822
|
+
t.onSessionCheckFailed();
|
|
1823
|
+
return;
|
|
1824
|
+
}
|
|
1825
|
+
if (t.authState.value === "anonymous")
|
|
1826
|
+
return localStorage.setItem("redirectAfterLogin", e.fullPath), { name: "Login" };
|
|
1827
|
+
}
|
|
1828
|
+
}
|
|
1819
1829
|
const oa = { ERRORS: { SESSION_EXPIRED: `Access Denied: Your session has expired or you do not have the necessary permissions.
|
|
1820
|
-
Please log in again or contact the administrator for assistance.`, NETWORK_UNAVAILABLE: "Network unavailable. Please check your connection." }, THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_ALL: "Clear all" } }, ra = { 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" } }, ia = { 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", SHOW_PASSWORD: "Show password", HIDE_PASSWORD: "Hide password" }, ATOMS: { VC_IMAGE: { LABEL: "Image" }, 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: { BACK: "Back", 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", OPEN_MENU: "Open menu", CLOSE_MENU: "Close menu", 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", CLOSE: "Close", MAXIMIZE: "Maximize", RESTORE: "Restore" }, VC_TABLE: { SELECT_ROW: "Select row", SELECT_ALL_ROWS: "Select all rows", EXPAND_ROW: "Toggle row details", 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" } }, la = { 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." } }, ua = { 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}" } }, ca = { 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}" }, da = { 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." } }, Ea = { 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" } } }, fa = { 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" } } } } }, ma = { _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" }, ga = { ACCESS_RESTRICTED: "Access restricted" }, Sa = { LOADING: "Loading Virto OZ..." }, Aa = { AGENDA: "Agenda", ALL_DAY: "All day", CANCEL: "Cancel", CLOSE: "Close", COLOR: "Color", COLOR_DEFAULT: "Default color", COLOR_CUSTOM: "Custom color", COLOR_BLUE: "Blue", COLOR_GREEN: "Green", COLOR_AMBER: "Amber", COLOR_RED: "Red", COLOR_PURPLE: "Purple", COLOR_PINK: "Pink", COLOR_TEAL: "Teal", COLOR_SLATE: "Slate", DAY: "Day", DAY_N_OF_M: "Day {n} of {total}", DELETE: "Delete", DELETE_CONFIRM_BODY: `Delete "{title}"? This can't be undone.`, DELETE_CONFIRM_TITLE: "Delete event", EDIT: "Edit", EDIT_EVENT: "Edit event", EMPTY: "No events in this range", EMPTY_HINT: "No events yet. Click a day to add one.", END: "End", LOADING: "Loading events…", MORE: "+{count} more", MORE_EVENTS: "More events", MONTH: "Month", MORE_OPTIONS: "More options", NEW_EVENT: "New event", NEXT: "Next", PREVIOUS: "Previous", RECUR_SCOPE_ALL: "All events", RECUR_SCOPE_BODY_DELETE: "This event is part of a recurring series. Do you want to delete only this event or all events in the series?", RECUR_SCOPE_BODY_EDIT: "This event is part of a recurring series. Do you want to edit only this event or all events in the series?", RECUR_SCOPE_THIS: "This event", RECUR_SCOPE_TITLE: "Recurring event", REPEAT: "Repeat", REPEAT_DAILY: "Daily", REPEAT_END: "Ends", REPEAT_END_COUNT: "After", REPEAT_END_NEVER: "Never", REPEAT_END_UNTIL: "On date", REPEAT_EVERY: "Repeat every", REPEAT_UNIT_DAYS: "day(s)", REPEAT_UNIT_WEEKS: "week(s)", REPEAT_UNIT_MONTHS: "month(s)", REPEAT_UNIT_YEARS: "year(s)", REPEAT_MONTHLY: "Monthly", REPEAT_NONE: "Does not repeat", REPEAT_OCCURRENCES: "occurrence(s)", REPEAT_ON: "Repeat on", REPEAT_WEEKLY: "Weekly", REPEAT_YEARLY: "Yearly", SAVE: "Save", START: "Start", TIMELINE: "Timeline", TIMELINE_DAY: "Timeline Day", TIMELINE_WEEK: "Timeline Week", TITLE: "Title", TODAY: "Today", WEEK: "Week", WORK_WEEK: "Work week", ZOOM_IN: "Zoom in", ZOOM_OUT: "Zoom out", EVENT_DETAILS: "Event details" }, pa = { no_options: "No options" }, Bo = {
|
|
1830
|
+
Please log in again or contact the administrator for assistance.`, NETWORK_UNAVAILABLE: "Network unavailable. Please check your connection.", SESSION_CHECK_FAILED: "Could not verify your session. Please try again." }, THEMES: { LIGHT: "Light", DARK: "Dark" }, NOTIFICATIONS: { CLEAR_ALL: "Clear all" } }, ra = { 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" } }, ia = { 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", SHOW_PASSWORD: "Show password", HIDE_PASSWORD: "Hide password" }, ATOMS: { VC_IMAGE: { LABEL: "Image" }, 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: { BACK: "Back", 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", OPEN_MENU: "Open menu", CLOSE_MENU: "Close menu", 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", CLOSE: "Close", MAXIMIZE: "Maximize", RESTORE: "Restore" }, VC_TABLE: { SELECT_ROW: "Select row", SELECT_ALL_ROWS: "Select all rows", EXPAND_ROW: "Toggle row details", 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" } }, la = { 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." } }, ua = { 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" }, REMEMBER_ME: { LABEL: "Remember me" }, 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}" } }, da = { 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}" }, ca = { 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." } }, Ea = { 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" } } }, fa = { 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" } } } } }, ma = { _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" }, ga = { ACCESS_RESTRICTED: "Access restricted" }, Sa = { LOADING: "Loading Virto OZ..." }, Aa = { AGENDA: "Agenda", ALL_DAY: "All day", CANCEL: "Cancel", CLOSE: "Close", COLOR: "Color", COLOR_DEFAULT: "Default color", COLOR_CUSTOM: "Custom color", COLOR_BLUE: "Blue", COLOR_GREEN: "Green", COLOR_AMBER: "Amber", COLOR_RED: "Red", COLOR_PURPLE: "Purple", COLOR_PINK: "Pink", COLOR_TEAL: "Teal", COLOR_SLATE: "Slate", DAY: "Day", DAY_N_OF_M: "Day {n} of {total}", DELETE: "Delete", DELETE_CONFIRM_BODY: `Delete "{title}"? This can't be undone.`, DELETE_CONFIRM_TITLE: "Delete event", EDIT: "Edit", EDIT_EVENT: "Edit event", EMPTY: "No events in this range", EMPTY_HINT: "No events yet. Click a day to add one.", END: "End", LOADING: "Loading events…", MORE: "+{count} more", MORE_EVENTS: "More events", MONTH: "Month", MORE_OPTIONS: "More options", NEW_EVENT: "New event", NEXT: "Next", PREVIOUS: "Previous", RECUR_SCOPE_ALL: "All events", RECUR_SCOPE_BODY_DELETE: "This event is part of a recurring series. Do you want to delete only this event or all events in the series?", RECUR_SCOPE_BODY_EDIT: "This event is part of a recurring series. Do you want to edit only this event or all events in the series?", RECUR_SCOPE_THIS: "This event", RECUR_SCOPE_TITLE: "Recurring event", REPEAT: "Repeat", REPEAT_DAILY: "Daily", REPEAT_END: "Ends", REPEAT_END_COUNT: "After", REPEAT_END_NEVER: "Never", REPEAT_END_UNTIL: "On date", REPEAT_EVERY: "Repeat every", REPEAT_UNIT_DAYS: "day(s)", REPEAT_UNIT_WEEKS: "week(s)", REPEAT_UNIT_MONTHS: "month(s)", REPEAT_UNIT_YEARS: "year(s)", REPEAT_MONTHLY: "Monthly", REPEAT_NONE: "Does not repeat", REPEAT_OCCURRENCES: "occurrence(s)", REPEAT_ON: "Repeat on", REPEAT_WEEKLY: "Weekly", REPEAT_YEARLY: "Yearly", SAVE: "Save", START: "Start", TIMELINE: "Timeline", TIMELINE_DAY: "Timeline Day", TIMELINE_WEEK: "Timeline Week", TITLE: "Title", TODAY: "Today", WEEK: "Week", WORK_WEEK: "Work week", ZOOM_IN: "Zoom in", ZOOM_OUT: "Zoom out", EVENT_DETAILS: "Event details" }, pa = { no_options: "No options" }, ko = {
|
|
1821
1831
|
CORE: oa,
|
|
1822
1832
|
SHELL: ra,
|
|
1823
1833
|
COMPONENTS: ia,
|
|
1824
1834
|
INVITATION: la,
|
|
1825
1835
|
LOGIN: ua,
|
|
1826
|
-
FORGOT_PASSWORD:
|
|
1827
|
-
PASSWORDRESET:
|
|
1836
|
+
FORGOT_PASSWORD: da,
|
|
1837
|
+
PASSWORDRESET: ca,
|
|
1828
1838
|
ASSETS_MANAGER: Ea,
|
|
1829
1839
|
ASSETS: fa,
|
|
1830
1840
|
messages: ma,
|
|
@@ -1832,25 +1842,25 @@ Please log in again or contact the administrator for assistance.`, NETWORK_UNAVA
|
|
|
1832
1842
|
AI_AGENT: Sa,
|
|
1833
1843
|
VC_SCHEDULER: Aa,
|
|
1834
1844
|
common: pa
|
|
1835
|
-
},
|
|
1845
|
+
}, Vo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1836
1846
|
__proto__: null,
|
|
1837
1847
|
AI_AGENT: Sa,
|
|
1838
1848
|
ASSETS: fa,
|
|
1839
1849
|
ASSETS_MANAGER: Ea,
|
|
1840
1850
|
COMPONENTS: ia,
|
|
1841
1851
|
CORE: oa,
|
|
1842
|
-
FORGOT_PASSWORD:
|
|
1852
|
+
FORGOT_PASSWORD: da,
|
|
1843
1853
|
INVITATION: la,
|
|
1844
1854
|
LOGIN: ua,
|
|
1845
|
-
PASSWORDRESET:
|
|
1855
|
+
PASSWORDRESET: ca,
|
|
1846
1856
|
PERMISSION_MESSAGES: ga,
|
|
1847
1857
|
SHELL: ra,
|
|
1848
1858
|
VC_SCHEDULER: Aa,
|
|
1849
1859
|
common: pa,
|
|
1850
|
-
default:
|
|
1860
|
+
default: ko,
|
|
1851
1861
|
messages: ma
|
|
1852
1862
|
}, Symbol.toStringTag, { value: "Module" })), Ta = { ERRORS: { SESSION_EXPIRED: `Zugriff verweigert: Ihre Sitzung ist abgelaufen oder Sie verfügen nicht über die erforderlichen Berechtigungen.
|
|
1853
|
-
Bitte melden Sie sich erneut an oder wenden Sie sich an den Administrator.`, NETWORK_UNAVAILABLE: "Keine Netzwerkverbindung. Bitte prüfen Sie Ihre Verbindung." }, THEMES: { LIGHT: "Hell", DARK: "Dunkel" }, NOTIFICATIONS: { CLEAR_ALL: "Alle löschen" } }, ha = { NAVIGATION_ARIA_LABEL: "Hauptnavigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Suchbegriff" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Einstellungen", CHANGE_PASSWORD: "Passwort ändern", PROFILE: "Profil", LOGOUT: "Abmelden" } }, La = { 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", SHOW_PASSWORD: "Passwort anzeigen", HIDE_PASSWORD: "Passwort verbergen" }, ATOMS: { VC_IMAGE: { LABEL: "Bild" }, 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: { BACK: "Zurück", 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", OPEN_MENU: "Menü öffnen", CLOSE_MENU: "Menü schließen", 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", CLOSE: "Schließen", MAXIMIZE: "Maximieren", RESTORE: "Wiederherstellen" }, VC_TABLE: { SELECT_ROW: "Zeile auswählen", SELECT_ALL_ROWS: "Alle Zeilen auswählen", EXPAND_ROW: "Zeilendetails umschalten", 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" } }, Oa = { 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." } }, Ra = { 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}" } }, _a = { 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" }, Ia = { 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." } }, va = { 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" } } }, wa = { 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" } } } } }, Ca = { _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" }, Pa = { ACCESS_RESTRICTED: "Zugriff eingeschränkt" }, ba = { LOADING: "Virto OZ wird geladen..." }, Na = { AGENDA: "Ereignisliste", ALL_DAY: "Ganztägig", CANCEL: "Abbrechen", CLOSE: "Schließen", COLOR: "Farbe", COLOR_DEFAULT: "Standardfarbe", COLOR_CUSTOM: "Eigene Farbe", COLOR_BLUE: "Blau", COLOR_GREEN: "Grün", COLOR_AMBER: "Gelb", COLOR_RED: "Rot", COLOR_PURPLE: "Violett", COLOR_PINK: "Rosa", COLOR_TEAL: "Türkis", COLOR_SLATE: "Grau", DAY: "Tag", DAY_N_OF_M: "Tag {n} von {total}", DELETE: "Löschen", DELETE_CONFIRM_BODY: '"{title}" löschen? Dies kann nicht rückgängig gemacht werden.', DELETE_CONFIRM_TITLE: "Ereignis löschen", EDIT: "Bearbeiten", EDIT_EVENT: "Ereignis bearbeiten", EMPTY: "Keine Ereignisse in diesem Zeitraum", EMPTY_HINT: "Noch keine Ereignisse. Klicke auf einen Tag, um eins hinzuzufügen.", END: "Ende", LOADING: "Ereignisse werden geladen…", MORE: "+{count} weitere", MORE_EVENTS: "Weitere Ereignisse", MONTH: "Monat", MORE_OPTIONS: "Weitere Optionen", NEW_EVENT: "Neues Ereignis", NEXT: "Nächster Zeitraum", PREVIOUS: "Vorheriger Zeitraum", RECUR_SCOPE_ALL: "Alle Ereignisse", RECUR_SCOPE_BODY_DELETE: "Dieses Ereignis ist Teil einer wiederkehrenden Serie. Möchten Sie nur dieses Ereignis oder alle Ereignisse der Serie löschen?", RECUR_SCOPE_BODY_EDIT: "Dieses Ereignis ist Teil einer wiederkehrenden Serie. Möchten Sie nur dieses Ereignis oder alle Ereignisse der Serie bearbeiten?", RECUR_SCOPE_THIS: "Dieses Ereignis", RECUR_SCOPE_TITLE: "Wiederkehrendes Ereignis", REPEAT: "Wiederholen", REPEAT_DAILY: "Täglich", REPEAT_END: "Endet", REPEAT_END_COUNT: "Nach", REPEAT_END_NEVER: "Nie", REPEAT_END_UNTIL: "Am Datum", REPEAT_EVERY: "Wiederholen alle", REPEAT_UNIT_DAYS: "Tag(e)", REPEAT_UNIT_WEEKS: "Woche(n)", REPEAT_UNIT_MONTHS: "Monat(e)", REPEAT_UNIT_YEARS: "Jahr(e)", REPEAT_MONTHLY: "Monatlich", REPEAT_NONE: "Keine Wiederholung", REPEAT_OCCURRENCES: "Vorkommen", REPEAT_ON: "Wiederholen am", REPEAT_WEEKLY: "Wöchentlich", REPEAT_YEARLY: "Jährlich", SAVE: "Speichern", START: "Beginn", TIMELINE: "Zeitachse", TIMELINE_DAY: "Zeitachse Tag", TIMELINE_WEEK: "Zeitachse Woche", TITLE: "Titel", TODAY: "Heute", WEEK: "Woche", WORK_WEEK: "Arbeitswoche", ZOOM_IN: "Vergrößern", ZOOM_OUT: "Verkleinern", EVENT_DETAILS: "Termindetails" }, Da = { no_options: "Keine Optionen" }, ko = {
|
|
1863
|
+
Bitte melden Sie sich erneut an oder wenden Sie sich an den Administrator.`, NETWORK_UNAVAILABLE: "Keine Netzwerkverbindung. Bitte prüfen Sie Ihre Verbindung.", SESSION_CHECK_FAILED: "Ihre Sitzung konnte nicht überprüft werden. Bitte versuchen Sie es erneut." }, THEMES: { LIGHT: "Hell", DARK: "Dunkel" }, NOTIFICATIONS: { CLEAR_ALL: "Alle löschen" } }, ha = { NAVIGATION_ARIA_LABEL: "Hauptnavigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Suchbegriff" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Einstellungen", CHANGE_PASSWORD: "Passwort ändern", PROFILE: "Profil", LOGOUT: "Abmelden" } }, La = { 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", SHOW_PASSWORD: "Passwort anzeigen", HIDE_PASSWORD: "Passwort verbergen" }, ATOMS: { VC_IMAGE: { LABEL: "Bild" }, 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: { BACK: "Zurück", 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", OPEN_MENU: "Menü öffnen", CLOSE_MENU: "Menü schließen", 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", CLOSE: "Schließen", MAXIMIZE: "Maximieren", RESTORE: "Wiederherstellen" }, VC_TABLE: { SELECT_ROW: "Zeile auswählen", SELECT_ALL_ROWS: "Alle Zeilen auswählen", EXPAND_ROW: "Zeilendetails umschalten", 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" } }, Oa = { 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." } }, Ra = { 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" }, REMEMBER_ME: { LABEL: "Angemeldet bleiben" }, 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}" } }, _a = { 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" }, Ia = { 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." } }, va = { 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" } } }, wa = { 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" } } } } }, Ca = { _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" }, ba = { ACCESS_RESTRICTED: "Zugriff eingeschränkt" }, Pa = { LOADING: "Virto OZ wird geladen..." }, Na = { AGENDA: "Ereignisliste", ALL_DAY: "Ganztägig", CANCEL: "Abbrechen", CLOSE: "Schließen", COLOR: "Farbe", COLOR_DEFAULT: "Standardfarbe", COLOR_CUSTOM: "Eigene Farbe", COLOR_BLUE: "Blau", COLOR_GREEN: "Grün", COLOR_AMBER: "Gelb", COLOR_RED: "Rot", COLOR_PURPLE: "Violett", COLOR_PINK: "Rosa", COLOR_TEAL: "Türkis", COLOR_SLATE: "Grau", DAY: "Tag", DAY_N_OF_M: "Tag {n} von {total}", DELETE: "Löschen", DELETE_CONFIRM_BODY: '"{title}" löschen? Dies kann nicht rückgängig gemacht werden.', DELETE_CONFIRM_TITLE: "Ereignis löschen", EDIT: "Bearbeiten", EDIT_EVENT: "Ereignis bearbeiten", EMPTY: "Keine Ereignisse in diesem Zeitraum", EMPTY_HINT: "Noch keine Ereignisse. Klicke auf einen Tag, um eins hinzuzufügen.", END: "Ende", LOADING: "Ereignisse werden geladen…", MORE: "+{count} weitere", MORE_EVENTS: "Weitere Ereignisse", MONTH: "Monat", MORE_OPTIONS: "Weitere Optionen", NEW_EVENT: "Neues Ereignis", NEXT: "Nächster Zeitraum", PREVIOUS: "Vorheriger Zeitraum", RECUR_SCOPE_ALL: "Alle Ereignisse", RECUR_SCOPE_BODY_DELETE: "Dieses Ereignis ist Teil einer wiederkehrenden Serie. Möchten Sie nur dieses Ereignis oder alle Ereignisse der Serie löschen?", RECUR_SCOPE_BODY_EDIT: "Dieses Ereignis ist Teil einer wiederkehrenden Serie. Möchten Sie nur dieses Ereignis oder alle Ereignisse der Serie bearbeiten?", RECUR_SCOPE_THIS: "Dieses Ereignis", RECUR_SCOPE_TITLE: "Wiederkehrendes Ereignis", REPEAT: "Wiederholen", REPEAT_DAILY: "Täglich", REPEAT_END: "Endet", REPEAT_END_COUNT: "Nach", REPEAT_END_NEVER: "Nie", REPEAT_END_UNTIL: "Am Datum", REPEAT_EVERY: "Wiederholen alle", REPEAT_UNIT_DAYS: "Tag(e)", REPEAT_UNIT_WEEKS: "Woche(n)", REPEAT_UNIT_MONTHS: "Monat(e)", REPEAT_UNIT_YEARS: "Jahr(e)", REPEAT_MONTHLY: "Monatlich", REPEAT_NONE: "Keine Wiederholung", REPEAT_OCCURRENCES: "Vorkommen", REPEAT_ON: "Wiederholen am", REPEAT_WEEKLY: "Wöchentlich", REPEAT_YEARLY: "Jährlich", SAVE: "Speichern", START: "Beginn", TIMELINE: "Zeitachse", TIMELINE_DAY: "Zeitachse Tag", TIMELINE_WEEK: "Zeitachse Woche", TITLE: "Titel", TODAY: "Heute", WEEK: "Woche", WORK_WEEK: "Arbeitswoche", ZOOM_IN: "Vergrößern", ZOOM_OUT: "Verkleinern", EVENT_DETAILS: "Termindetails" }, Da = { no_options: "Keine Optionen" }, Uo = {
|
|
1854
1864
|
CORE: Ta,
|
|
1855
1865
|
SHELL: ha,
|
|
1856
1866
|
COMPONENTS: La,
|
|
@@ -1861,13 +1871,13 @@ Bitte melden Sie sich erneut an oder wenden Sie sich an den Administrator.`, NET
|
|
|
1861
1871
|
ASSETS_MANAGER: va,
|
|
1862
1872
|
ASSETS: wa,
|
|
1863
1873
|
messages: Ca,
|
|
1864
|
-
PERMISSION_MESSAGES:
|
|
1865
|
-
AI_AGENT:
|
|
1874
|
+
PERMISSION_MESSAGES: ba,
|
|
1875
|
+
AI_AGENT: Pa,
|
|
1866
1876
|
VC_SCHEDULER: Na,
|
|
1867
1877
|
common: Da
|
|
1868
|
-
},
|
|
1878
|
+
}, Fo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1869
1879
|
__proto__: null,
|
|
1870
|
-
AI_AGENT:
|
|
1880
|
+
AI_AGENT: Pa,
|
|
1871
1881
|
ASSETS: wa,
|
|
1872
1882
|
ASSETS_MANAGER: va,
|
|
1873
1883
|
COMPONENTS: La,
|
|
@@ -1876,36 +1886,36 @@ Bitte melden Sie sich erneut an oder wenden Sie sich an den Administrator.`, NET
|
|
|
1876
1886
|
INVITATION: Oa,
|
|
1877
1887
|
LOGIN: Ra,
|
|
1878
1888
|
PASSWORDRESET: Ia,
|
|
1879
|
-
PERMISSION_MESSAGES:
|
|
1889
|
+
PERMISSION_MESSAGES: ba,
|
|
1880
1890
|
SHELL: ha,
|
|
1881
1891
|
VC_SCHEDULER: Na,
|
|
1882
1892
|
common: Da,
|
|
1883
|
-
default:
|
|
1893
|
+
default: Uo,
|
|
1884
1894
|
messages: Ca
|
|
1885
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1895
|
+
}, Symbol.toStringTag, { value: "Module" })), Wo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1886
1896
|
__proto__: null,
|
|
1887
|
-
de:
|
|
1888
|
-
en:
|
|
1897
|
+
de: Fo,
|
|
1898
|
+
en: Vo
|
|
1889
1899
|
}, Symbol.toStringTag, { value: "Module" })), Je = k("global-error-handler");
|
|
1890
1900
|
function De(e) {
|
|
1891
1901
|
return e instanceof Error ? `${e.name}:${e.message}` : String(e);
|
|
1892
1902
|
}
|
|
1893
|
-
const pe = /* @__PURE__ */ new Map(),
|
|
1903
|
+
const pe = /* @__PURE__ */ new Map(), bt = 3e3;
|
|
1894
1904
|
function Qe(e) {
|
|
1895
1905
|
const t = De(e), a = Date.now(), n = pe.get(t);
|
|
1896
|
-
if (n && a - n <
|
|
1906
|
+
if (n && a - n < bt) return !0;
|
|
1897
1907
|
if (pe.set(t, a), pe.size > 50)
|
|
1898
1908
|
for (const [s, o] of pe)
|
|
1899
|
-
a - o >
|
|
1909
|
+
a - o > bt && pe.delete(s);
|
|
1900
1910
|
return !1;
|
|
1901
1911
|
}
|
|
1902
|
-
function
|
|
1912
|
+
function Ho(e) {
|
|
1903
1913
|
const t = e.config.errorHandler;
|
|
1904
1914
|
if (e.config.errorHandler = (o, r, l) => {
|
|
1905
1915
|
if (Je.error("Unhandled Vue error:", o, `
|
|
1906
1916
|
Info:`, l), !Qe(o)) {
|
|
1907
|
-
const
|
|
1908
|
-
|
|
1917
|
+
const d = be(o);
|
|
1918
|
+
j.error(d.message, {
|
|
1909
1919
|
timeout: 8e3,
|
|
1910
1920
|
notificationId: `global-vue-${De(o)}`
|
|
1911
1921
|
});
|
|
@@ -1917,8 +1927,8 @@ Info:`, l), !Qe(o)) {
|
|
|
1917
1927
|
a.__VC_GLOBAL_ERROR_HANDLERS_INSTALLED__ = !0;
|
|
1918
1928
|
const n = (o) => {
|
|
1919
1929
|
if (Je.error("Unhandled rejection:", o.reason), !Qe(o.reason)) {
|
|
1920
|
-
const r =
|
|
1921
|
-
|
|
1930
|
+
const r = be(o.reason);
|
|
1931
|
+
j.error(r.message, {
|
|
1922
1932
|
timeout: 8e3,
|
|
1923
1933
|
notificationId: `global-rejection-${De(o.reason)}`
|
|
1924
1934
|
});
|
|
@@ -1927,8 +1937,8 @@ Info:`, l), !Qe(o)) {
|
|
|
1927
1937
|
window.addEventListener("unhandledrejection", n);
|
|
1928
1938
|
const s = (o) => {
|
|
1929
1939
|
if (o.error && (Je.error("Uncaught error:", o.error), !Qe(o.error))) {
|
|
1930
|
-
const r =
|
|
1931
|
-
|
|
1940
|
+
const r = be(o.error);
|
|
1941
|
+
j.error(r.message, {
|
|
1932
1942
|
timeout: 8e3,
|
|
1933
1943
|
notificationId: `global-error-${De(o.error)}`
|
|
1934
1944
|
});
|
|
@@ -1936,7 +1946,7 @@ Info:`, l), !Qe(o)) {
|
|
|
1936
1946
|
};
|
|
1937
1947
|
window.addEventListener("error", s);
|
|
1938
1948
|
}
|
|
1939
|
-
const
|
|
1949
|
+
const Go = k("notification-instance"), Z = {
|
|
1940
1950
|
"top-center": void 0,
|
|
1941
1951
|
"top-right": void 0,
|
|
1942
1952
|
"top-left": void 0,
|
|
@@ -1944,7 +1954,7 @@ const Wo = k("notification-instance"), Z = {
|
|
|
1944
1954
|
"bottom-right": void 0,
|
|
1945
1955
|
"bottom-left": void 0
|
|
1946
1956
|
};
|
|
1947
|
-
function
|
|
1957
|
+
function xo() {
|
|
1948
1958
|
function e(s, o, r) {
|
|
1949
1959
|
document.getElementById(o) && (Z[r] = s);
|
|
1950
1960
|
}
|
|
@@ -1955,7 +1965,7 @@ function Ho() {
|
|
|
1955
1965
|
Z[l]?.unmount(), document.getElementById(`notification-${l}`)?.remove(), Z[l] = void 0;
|
|
1956
1966
|
}), Object.values(Z).some((r) => r !== void 0) || document.querySelector(".notification")?.remove());
|
|
1957
1967
|
} catch (o) {
|
|
1958
|
-
|
|
1968
|
+
Go.error("Failed to unmount notification component:", o);
|
|
1959
1969
|
}
|
|
1960
1970
|
}
|
|
1961
1971
|
function a() {
|
|
@@ -1973,15 +1983,15 @@ function Ho() {
|
|
|
1973
1983
|
getInstanceByPosition: n
|
|
1974
1984
|
};
|
|
1975
1985
|
}
|
|
1976
|
-
const
|
|
1977
|
-
"top-center":
|
|
1978
|
-
"top-right":
|
|
1979
|
-
"top-left":
|
|
1980
|
-
"bottom-center":
|
|
1981
|
-
"bottom-right":
|
|
1982
|
-
"bottom-left":
|
|
1983
|
-
}, { clearContainer:
|
|
1984
|
-
function
|
|
1986
|
+
const ce = k("notification-container"), G = {
|
|
1987
|
+
"top-center": P([]),
|
|
1988
|
+
"top-right": P([]),
|
|
1989
|
+
"top-left": P([]),
|
|
1990
|
+
"bottom-center": P([]),
|
|
1991
|
+
"bottom-right": P([]),
|
|
1992
|
+
"bottom-left": P([])
|
|
1993
|
+
}, { clearContainer: $o, unmountComponent: Ko, saveInstance: zo, getInstanceByPosition: Pt } = xo();
|
|
1994
|
+
function qo() {
|
|
1985
1995
|
const e = ie({
|
|
1986
1996
|
timeout: 3e3,
|
|
1987
1997
|
pauseOnHover: !0,
|
|
@@ -1998,49 +2008,49 @@ function Ko() {
|
|
|
1998
2008
|
}
|
|
1999
2009
|
function s(u) {
|
|
2000
2010
|
const f = document.querySelector(".notification"), m = f || document.createElement("div"), E = `.notification__container[data-position="${u}"]`;
|
|
2001
|
-
let
|
|
2002
|
-
return
|
|
2011
|
+
let c = document.querySelector(E);
|
|
2012
|
+
return c || (c = document.createElement("div"), c.className = "notification__container", c.id = `notification-${u}`, c.setAttribute("data-position", u), f || (m.className = "notification", document.body.appendChild(m)), m.appendChild(c)), c;
|
|
2003
2013
|
}
|
|
2004
2014
|
const o = /* @__PURE__ */ new Map();
|
|
2005
2015
|
async function r(u) {
|
|
2006
2016
|
const f = u.position || e.position, m = o.get(f);
|
|
2007
|
-
if (m && await m, !
|
|
2017
|
+
if (m && await m, !Pt(f)) {
|
|
2008
2018
|
const E = (async () => {
|
|
2009
|
-
const
|
|
2019
|
+
const c = s(f), { default: S } = await Promise.resolve().then(() => _r), h = sn(S, {
|
|
2010
2020
|
...u,
|
|
2011
2021
|
position: f
|
|
2012
2022
|
});
|
|
2013
|
-
h.use(
|
|
2023
|
+
h.use(x), h.provide(jt, { notificationContainers: G, actions: d }), h.mount(c), zo(h, c.id, f);
|
|
2014
2024
|
})();
|
|
2015
2025
|
o.set(f, E), await E, o.delete(f);
|
|
2016
2026
|
}
|
|
2017
|
-
|
|
2018
|
-
u.updateId ?
|
|
2027
|
+
Pe(() => {
|
|
2028
|
+
u.updateId ? d.update(u) : d.add(u);
|
|
2019
2029
|
});
|
|
2020
2030
|
}
|
|
2021
2031
|
function l(u) {
|
|
2022
2032
|
return t().some((f) => f.notificationId === u);
|
|
2023
2033
|
}
|
|
2024
|
-
const
|
|
2034
|
+
const d = {
|
|
2025
2035
|
add(u) {
|
|
2026
2036
|
const f = u.position || e.position, m = G[f];
|
|
2027
|
-
m.value.find((
|
|
2037
|
+
m.value.find((c) => c.notificationId === u.notificationId) || Pe(() => {
|
|
2028
2038
|
m.value.push(u), u.onOpen && typeof u?.onOpen == "function" && u.onOpen(u.payload);
|
|
2029
2039
|
});
|
|
2030
2040
|
},
|
|
2031
2041
|
remove(u) {
|
|
2032
2042
|
if (u) {
|
|
2033
2043
|
let f, m;
|
|
2034
|
-
Object.entries(G).forEach(([E,
|
|
2035
|
-
const S =
|
|
2044
|
+
Object.entries(G).forEach(([E, c]) => {
|
|
2045
|
+
const S = c.value.find((h) => h.notificationId === u);
|
|
2036
2046
|
S && (f = S, m = E);
|
|
2037
|
-
}), m && (G[m].value = G[m].value.filter((E) => E.notificationId !== u), G[m].value.length === 0 &&
|
|
2047
|
+
}), m && (G[m].value = G[m].value.filter((E) => E.notificationId !== u), G[m].value.length === 0 && Ko(m), Pe(() => {
|
|
2038
2048
|
f?.onClose && typeof f?.onClose == "function" && f.onClose(f.payload);
|
|
2039
2049
|
}));
|
|
2040
2050
|
}
|
|
2041
2051
|
},
|
|
2042
2052
|
clear() {
|
|
2043
|
-
|
|
2053
|
+
$o(), Object.values(G).forEach((u) => {
|
|
2044
2054
|
u.value = [];
|
|
2045
2055
|
});
|
|
2046
2056
|
},
|
|
@@ -2051,34 +2061,34 @@ function Ko() {
|
|
|
2051
2061
|
m.value.forEach((E) => {
|
|
2052
2062
|
E.notificationId === u && (E.dismissing = !0, f = !0);
|
|
2053
2063
|
});
|
|
2054
|
-
}), f ||
|
|
2064
|
+
}), f || ce.debug(`dismiss: notification ${u} not found`);
|
|
2055
2065
|
},
|
|
2056
2066
|
update(u) {
|
|
2057
2067
|
if (u.updateId) {
|
|
2058
2068
|
let f, m, E;
|
|
2059
|
-
if (Object.entries(G).forEach(([
|
|
2069
|
+
if (Object.entries(G).forEach(([c, S]) => {
|
|
2060
2070
|
const h = S.value.find((L) => L.notificationId === u.notificationId);
|
|
2061
|
-
h && (f = h, m = S, E =
|
|
2071
|
+
h && (f = h, m = S, E = c);
|
|
2062
2072
|
}), f && m) {
|
|
2063
|
-
if (
|
|
2073
|
+
if (ce.debug(`Updating notification ${u.notificationId} in position ${E}`), u.position && u.position !== E) {
|
|
2064
2074
|
m.value = m.value.filter(
|
|
2065
2075
|
(h) => h.notificationId !== u.notificationId
|
|
2066
2076
|
);
|
|
2067
|
-
const
|
|
2077
|
+
const c = {
|
|
2068
2078
|
...f,
|
|
2069
2079
|
...u
|
|
2070
2080
|
}, S = u.position;
|
|
2071
|
-
|
|
2081
|
+
Pt(S) ? (ce.debug(`Adding to existing container for position ${S}`), G[S].value.push(c)) : (ce.debug(`Creating new container for position ${S}`), r(c));
|
|
2072
2082
|
} else
|
|
2073
|
-
|
|
2074
|
-
if (
|
|
2075
|
-
const S =
|
|
2083
|
+
ce.debug("Standard update of notification properties"), Object.keys(u).forEach((c) => {
|
|
2084
|
+
if (c !== "updateId" && c !== "notificationId") {
|
|
2085
|
+
const S = c, h = u[S];
|
|
2076
2086
|
f && h !== void 0 && (f[S] = h);
|
|
2077
2087
|
}
|
|
2078
2088
|
});
|
|
2079
2089
|
return !0;
|
|
2080
2090
|
} else
|
|
2081
|
-
return
|
|
2091
|
+
return ce.warn(`Notification with ID ${u.notificationId} not found for update`), !1;
|
|
2082
2092
|
}
|
|
2083
2093
|
return !1;
|
|
2084
2094
|
},
|
|
@@ -2089,7 +2099,7 @@ function Ko() {
|
|
|
2089
2099
|
return {
|
|
2090
2100
|
defaultOptions: e,
|
|
2091
2101
|
notificationContainers: G,
|
|
2092
|
-
actions:
|
|
2102
|
+
actions: d,
|
|
2093
2103
|
getAllNotifications: t,
|
|
2094
2104
|
getNotificationsByPosition: a,
|
|
2095
2105
|
appendInstance: r,
|
|
@@ -2098,8 +2108,8 @@ function Ko() {
|
|
|
2098
2108
|
hasNotification: l
|
|
2099
2109
|
};
|
|
2100
2110
|
}
|
|
2101
|
-
function
|
|
2102
|
-
const e =
|
|
2111
|
+
function Yo() {
|
|
2112
|
+
const e = qo();
|
|
2103
2113
|
Wa({
|
|
2104
2114
|
defaultOptions: e.defaultOptions,
|
|
2105
2115
|
actions: e.actions,
|
|
@@ -2109,22 +2119,22 @@ function zo() {
|
|
|
2109
2119
|
hasNotification: (t) => e.hasNotification(t)
|
|
2110
2120
|
});
|
|
2111
2121
|
}
|
|
2112
|
-
const
|
|
2113
|
-
function
|
|
2122
|
+
const Zo = "2.6.3-rc.0-pr381.a79c6d3";
|
|
2123
|
+
function jo() {
|
|
2114
2124
|
return {
|
|
2115
|
-
version:
|
|
2116
|
-
buildDate: "2026-10-07T09:
|
|
2117
|
-
gitHash: "
|
|
2125
|
+
version: Zo,
|
|
2126
|
+
buildDate: "2026-10-07T09:58:21.166Z",
|
|
2127
|
+
gitHash: "a79c6d3d0"
|
|
2118
2128
|
};
|
|
2119
2129
|
}
|
|
2120
|
-
function
|
|
2130
|
+
function Xo(e = jo()) {
|
|
2121
2131
|
console.warn(
|
|
2122
2132
|
`%c@vc-shell/framework%c v${e.version} · ${e.buildDate} · ${e.gitHash}`,
|
|
2123
2133
|
"font-weight:bold;color:#319ED4",
|
|
2124
2134
|
"color:inherit"
|
|
2125
2135
|
);
|
|
2126
2136
|
}
|
|
2127
|
-
const
|
|
2137
|
+
const Jo = /* @__PURE__ */ H({
|
|
2128
2138
|
__name: "sidebar",
|
|
2129
2139
|
props: {
|
|
2130
2140
|
position: { default: "right" },
|
|
@@ -2135,18 +2145,18 @@ const jo = /* @__PURE__ */ H({
|
|
|
2135
2145
|
},
|
|
2136
2146
|
emits: ["close"],
|
|
2137
2147
|
setup(e, { emit: t }) {
|
|
2138
|
-
const a = e, n = t, { isMobile: s, isDesktop: o } = Ha(), r =
|
|
2139
|
-
function
|
|
2148
|
+
const a = e, n = t, { isMobile: s, isDesktop: o } = Ha(), r = v(() => a.render === "always" ? !0 : a.render === "mobile" ? s.value : o.value), l = v(() => a.isExpanded && r.value);
|
|
2149
|
+
function d(u) {
|
|
2140
2150
|
u || n("close");
|
|
2141
2151
|
}
|
|
2142
|
-
return (u, f) => l.value ? (
|
|
2152
|
+
return (u, f) => l.value ? (b(), D(i(_n), {
|
|
2143
2153
|
key: 0,
|
|
2144
2154
|
"model-value": !0,
|
|
2145
2155
|
position: e.position,
|
|
2146
2156
|
title: e.title,
|
|
2147
2157
|
"close-button": e.closeCross,
|
|
2148
2158
|
teleport: !i(o),
|
|
2149
|
-
"onUpdate:modelValue":
|
|
2159
|
+
"onUpdate:modelValue": d
|
|
2150
2160
|
}, Le({
|
|
2151
2161
|
default: T(() => [
|
|
2152
2162
|
Y(u.$slots, "content")
|
|
@@ -2162,7 +2172,7 @@ const jo = /* @__PURE__ */ H({
|
|
|
2162
2172
|
} : void 0
|
|
2163
2173
|
]), 1032, ["position", "title", "close-button", "teleport"])) : Y(u.$slots, "content", { key: 1 });
|
|
2164
2174
|
}
|
|
2165
|
-
}),
|
|
2175
|
+
}), Hl = Jo, Qo = { class: "tw-flex tw-flex-row tw-items-center tw-gap-2" }, er = /* @__PURE__ */ H({
|
|
2166
2176
|
__name: "external-provider",
|
|
2167
2177
|
props: {
|
|
2168
2178
|
logo: {},
|
|
@@ -2171,14 +2181,14 @@ const jo = /* @__PURE__ */ H({
|
|
|
2171
2181
|
},
|
|
2172
2182
|
emits: ["signIn"],
|
|
2173
2183
|
setup(e) {
|
|
2174
|
-
const t = e, a =
|
|
2175
|
-
return (n, s) => (
|
|
2184
|
+
const t = e, a = v(() => t.logo && !t.logo.startsWith("data:image") && !t.logo.startsWith("http") ? new URL(t.logo, window.location.origin).toString() : t.logo);
|
|
2185
|
+
return (n, s) => (b(), D(i($), {
|
|
2176
2186
|
variant: "secondary",
|
|
2177
2187
|
class: "vc-external-provider",
|
|
2178
2188
|
onClick: s[0] || (s[0] = (o) => n.$emit("signIn"))
|
|
2179
2189
|
}, {
|
|
2180
2190
|
default: T(() => [
|
|
2181
|
-
U("div",
|
|
2191
|
+
U("div", Qo, [
|
|
2182
2192
|
R(i(ot), {
|
|
2183
2193
|
src: a.value,
|
|
2184
2194
|
class: "vc-external-provider__icon",
|
|
@@ -2190,15 +2200,15 @@ const jo = /* @__PURE__ */ H({
|
|
|
2190
2200
|
_: 1
|
|
2191
2201
|
}));
|
|
2192
2202
|
}
|
|
2193
|
-
}),
|
|
2203
|
+
}), tr = { class: "tw-flex tw-justify-center tw-flex-col tw-gap-4" }, ar = /* @__PURE__ */ H({
|
|
2194
2204
|
__name: "external-providers",
|
|
2195
2205
|
props: {
|
|
2196
2206
|
providers: {}
|
|
2197
2207
|
},
|
|
2198
2208
|
setup(e) {
|
|
2199
2209
|
const { signIn: t } = Kt();
|
|
2200
|
-
return (a, n) => (
|
|
2201
|
-
(
|
|
2210
|
+
return (a, n) => (b(), W("div", tr, [
|
|
2211
|
+
(b(!0), W(ne, null, We(e.providers, (s) => (b(), D(er, {
|
|
2202
2212
|
key: s.authenticationType,
|
|
2203
2213
|
logo: s.logoUrl,
|
|
2204
2214
|
"display-name": s.displayName,
|
|
@@ -2208,25 +2218,25 @@ const jo = /* @__PURE__ */ H({
|
|
|
2208
2218
|
]));
|
|
2209
2219
|
}
|
|
2210
2220
|
});
|
|
2211
|
-
function
|
|
2221
|
+
function nr(e) {
|
|
2212
2222
|
if (!e) return "/";
|
|
2213
2223
|
const t = e.trim();
|
|
2214
2224
|
return !t.startsWith("/") || t.startsWith("//") ? "/" : t;
|
|
2215
2225
|
}
|
|
2216
|
-
function
|
|
2226
|
+
function sr(e, t) {
|
|
2217
2227
|
return e.status === 401 ? t("LOGIN.ERRORS.INVALID_CREDENTIALS") : e.status ? t("LOGIN.ERRORS.AUTH_WITH_CODE", { code: e.status }) : e.error ? t("LOGIN.ERRORS.AUTH_GENERIC", { detail: e.error }) : t("LOGIN.ERRORS.INVALID_CREDENTIALS");
|
|
2218
2228
|
}
|
|
2219
|
-
function
|
|
2229
|
+
function or(e) {
|
|
2220
2230
|
const t = [];
|
|
2221
2231
|
return e.confirmPassword !== e.password && t.push({ code: "Repeat-password" }), e.password === e.currentPassword && e.confirmPassword === e.currentPassword && t.push({ code: "Equal-passwords" }), t;
|
|
2222
2232
|
}
|
|
2223
|
-
const
|
|
2233
|
+
const rr = {
|
|
2224
2234
|
key: 0,
|
|
2225
2235
|
class: "vc-login-page__providers"
|
|
2226
|
-
},
|
|
2236
|
+
}, ir = {
|
|
2227
2237
|
key: 0,
|
|
2228
2238
|
class: "vc-login-page__separator-line"
|
|
2229
|
-
},
|
|
2239
|
+
}, lr = /* @__PURE__ */ H({
|
|
2230
2240
|
__name: "Login",
|
|
2231
2241
|
props: {
|
|
2232
2242
|
logo: {},
|
|
@@ -2236,32 +2246,34 @@ const sr = {
|
|
|
2236
2246
|
ssoOnly: { type: Boolean }
|
|
2237
2247
|
},
|
|
2238
2248
|
setup(e) {
|
|
2239
|
-
const t = k("login-page"), a = e, { t: n } = le({ useScope: "global" }), s = ve(), { validateField: o } = ue({ validateOnMount: !1 }), { uiSettings: r, loading: l } = we(),
|
|
2249
|
+
const t = k("login-page"), a = e, { t: n } = le({ useScope: "global" }), s = ve(), { validateField: o } = ue({ validateOnMount: !1 }), { uiSettings: r, loading: l } = we(), d = P({ succeeded: !0 }), { signIn: u, loading: f, user: m } = se(), { getProviders: E } = Kt(), c = Ie(), S = P(), h = P(!1);
|
|
2240
2250
|
Oe(async () => {
|
|
2241
2251
|
S.value = await E(), h.value = !0;
|
|
2242
2252
|
});
|
|
2243
|
-
const L =
|
|
2253
|
+
const L = v(() => ({
|
|
2244
2254
|
logo: l.value ? "" : r.value?.logo || a.logo
|
|
2245
|
-
})),
|
|
2255
|
+
})), _ = ie({
|
|
2246
2256
|
username: "",
|
|
2247
|
-
password: ""
|
|
2257
|
+
password: "",
|
|
2258
|
+
// Off by default, as in the platform admin UI: a session cookie unless the user asks to be remembered.
|
|
2259
|
+
rememberMe: !1
|
|
2248
2260
|
}), w = async () => {
|
|
2249
|
-
if (
|
|
2250
|
-
if (
|
|
2261
|
+
if (c.value) {
|
|
2262
|
+
if (d.value.error = "", d.value = await u(_.username, _.password, _.rememberMe), d.value.succeeded && m.value?.passwordExpired) {
|
|
2251
2263
|
await s.push({ name: "ChangePassword" });
|
|
2252
2264
|
return;
|
|
2253
2265
|
}
|
|
2254
|
-
if (
|
|
2255
|
-
const A =
|
|
2266
|
+
if (d.value.succeeded) {
|
|
2267
|
+
const A = nr(localStorage.getItem("redirectAfterLogin"));
|
|
2256
2268
|
localStorage.removeItem("redirectAfterLogin"), await s.push(A);
|
|
2257
2269
|
return;
|
|
2258
2270
|
}
|
|
2259
|
-
|
|
2271
|
+
d.value.error = sr(d.value, n), _.password = "", o("password");
|
|
2260
2272
|
}
|
|
2261
2273
|
}, C = () => {
|
|
2262
2274
|
s.push({ name: "ForgotPassword" });
|
|
2263
2275
|
};
|
|
2264
|
-
return t.debug("Init login-page"), (A, g) => (
|
|
2276
|
+
return t.debug("Init login-page"), (A, g) => (b(), D(i(_e), {
|
|
2265
2277
|
logo: L.value.logo,
|
|
2266
2278
|
background: e.background,
|
|
2267
2279
|
title: e.title || A.$t("LOGIN.TITLE"),
|
|
@@ -2269,11 +2281,11 @@ const sr = {
|
|
|
2269
2281
|
class: "vc-login-page"
|
|
2270
2282
|
}, {
|
|
2271
2283
|
default: T(() => [
|
|
2272
|
-
S.value && S.value.length ? (
|
|
2273
|
-
R(
|
|
2274
|
-
e.ssoOnly ? q("", !0) : (
|
|
2284
|
+
S.value && S.value.length ? (b(), W("div", rr, [
|
|
2285
|
+
R(ar, { providers: S.value }, null, 8, ["providers"]),
|
|
2286
|
+
e.ssoOnly ? q("", !0) : (b(), W("div", ir, y(A.$t("LOGIN.OR")), 1))
|
|
2275
2287
|
])) : q("", !0),
|
|
2276
|
-
e.ssoOnly && h.value && !S.value?.length ? (
|
|
2288
|
+
e.ssoOnly && h.value && !S.value?.length ? (b(), D(i(Ee), {
|
|
2277
2289
|
key: 1,
|
|
2278
2290
|
class: "tw-mt-4 tw-text-danger-500"
|
|
2279
2291
|
}, {
|
|
@@ -2282,48 +2294,48 @@ const sr = {
|
|
|
2282
2294
|
]),
|
|
2283
2295
|
_: 1
|
|
2284
2296
|
})) : q("", !0),
|
|
2285
|
-
e.ssoOnly ? q("", !0) : (
|
|
2297
|
+
e.ssoOnly ? q("", !0) : (b(), W(ne, { key: 2 }, [
|
|
2286
2298
|
R(i(me), {
|
|
2287
2299
|
class: "tw-gap-5",
|
|
2288
2300
|
onSubmit: w
|
|
2289
2301
|
}, {
|
|
2290
2302
|
default: T(() => [
|
|
2291
|
-
R(i(
|
|
2303
|
+
R(i(X), {
|
|
2292
2304
|
label: A.$t("LOGIN.FIELDS.LOGIN.LABEL"),
|
|
2293
2305
|
name: "username",
|
|
2294
|
-
"model-value":
|
|
2306
|
+
"model-value": _.username,
|
|
2295
2307
|
rules: "required"
|
|
2296
2308
|
}, {
|
|
2297
|
-
default: T(({ errorMessage: O, handleChange: p, errors:
|
|
2298
|
-
R(i(
|
|
2309
|
+
default: T(({ errorMessage: O, handleChange: p, errors: I }) => [
|
|
2310
|
+
R(i(K), {
|
|
2299
2311
|
ref: "loginField",
|
|
2300
|
-
modelValue:
|
|
2312
|
+
modelValue: _.username,
|
|
2301
2313
|
"onUpdate:modelValue": [
|
|
2302
|
-
g[0] || (g[0] = (N) =>
|
|
2314
|
+
g[0] || (g[0] = (N) => _.username = N),
|
|
2303
2315
|
p
|
|
2304
2316
|
],
|
|
2305
2317
|
label: A.$t("LOGIN.FIELDS.LOGIN.LABEL"),
|
|
2306
2318
|
placeholder: A.$t("LOGIN.FIELDS.LOGIN.PLACEHOLDER"),
|
|
2307
2319
|
autocomplete: "username",
|
|
2308
2320
|
required: "",
|
|
2309
|
-
error: !!
|
|
2321
|
+
error: !!I.length,
|
|
2310
2322
|
"error-message": O
|
|
2311
2323
|
}, null, 8, ["modelValue", "label", "placeholder", "error", "error-message", "onUpdate:modelValue"])
|
|
2312
2324
|
]),
|
|
2313
2325
|
_: 1
|
|
2314
2326
|
}, 8, ["label", "model-value"]),
|
|
2315
|
-
R(i(
|
|
2327
|
+
R(i(X), {
|
|
2316
2328
|
label: A.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
|
|
2317
2329
|
name: "password",
|
|
2318
|
-
"model-value":
|
|
2330
|
+
"model-value": _.password,
|
|
2319
2331
|
rules: "required"
|
|
2320
2332
|
}, {
|
|
2321
|
-
default: T(({ errorMessage: O, handleChange: p, errors:
|
|
2322
|
-
R(i(
|
|
2333
|
+
default: T(({ errorMessage: O, handleChange: p, errors: I }) => [
|
|
2334
|
+
R(i(K), {
|
|
2323
2335
|
ref: "passwordField",
|
|
2324
|
-
modelValue:
|
|
2336
|
+
modelValue: _.password,
|
|
2325
2337
|
"onUpdate:modelValue": [
|
|
2326
|
-
g[1] || (g[1] = (N) =>
|
|
2338
|
+
g[1] || (g[1] = (N) => _.password = N),
|
|
2327
2339
|
p
|
|
2328
2340
|
],
|
|
2329
2341
|
label: A.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
|
|
@@ -2331,18 +2343,29 @@ const sr = {
|
|
|
2331
2343
|
type: "password",
|
|
2332
2344
|
autocomplete: "current-password",
|
|
2333
2345
|
required: "",
|
|
2334
|
-
error: !!
|
|
2346
|
+
error: !!I.length,
|
|
2335
2347
|
"error-message": O,
|
|
2336
2348
|
onKeyup: lt(w, ["enter"])
|
|
2337
2349
|
}, null, 8, ["modelValue", "label", "placeholder", "error", "error-message", "onUpdate:modelValue"])
|
|
2338
2350
|
]),
|
|
2339
2351
|
_: 1
|
|
2340
2352
|
}, 8, ["label", "model-value"]),
|
|
2341
|
-
R(i(
|
|
2353
|
+
R(i(In), {
|
|
2354
|
+
modelValue: _.rememberMe,
|
|
2355
|
+
"onUpdate:modelValue": g[2] || (g[2] = (O) => _.rememberMe = O),
|
|
2356
|
+
name: "rememberMe",
|
|
2357
|
+
"data-test-id": "login-remember-me"
|
|
2358
|
+
}, {
|
|
2359
|
+
default: T(() => [
|
|
2360
|
+
M(y(A.$t("LOGIN.FIELDS.REMEMBER_ME.LABEL")), 1)
|
|
2361
|
+
]),
|
|
2362
|
+
_: 1
|
|
2363
|
+
}, 8, ["modelValue"]),
|
|
2364
|
+
R(i($), {
|
|
2342
2365
|
variant: "primary",
|
|
2343
2366
|
class: "tw-w-full",
|
|
2344
2367
|
icon: "lucide-log-in",
|
|
2345
|
-
disabled: !i(
|
|
2368
|
+
disabled: !i(c),
|
|
2346
2369
|
loading: i(f),
|
|
2347
2370
|
onClick: w
|
|
2348
2371
|
}, {
|
|
@@ -2351,7 +2374,7 @@ const sr = {
|
|
|
2351
2374
|
]),
|
|
2352
2375
|
_: 1
|
|
2353
2376
|
}, 8, ["disabled", "loading"]),
|
|
2354
|
-
R(i(
|
|
2377
|
+
R(i($), {
|
|
2355
2378
|
variant: "link",
|
|
2356
2379
|
class: "tw-w-full tw-justify-center",
|
|
2357
2380
|
type: "button",
|
|
@@ -2365,18 +2388,18 @@ const sr = {
|
|
|
2365
2388
|
]),
|
|
2366
2389
|
_: 1
|
|
2367
2390
|
}),
|
|
2368
|
-
R(i(
|
|
2391
|
+
R(i(_s), {
|
|
2369
2392
|
name: "auth:after-form",
|
|
2370
2393
|
separator: "",
|
|
2371
2394
|
"separator-class": "tw-border-t tw-border-[color:var(--login-separator)] tw-border-solid tw-pb-5",
|
|
2372
2395
|
"wrapper-class": "vc-login-page__separator"
|
|
2373
2396
|
}),
|
|
2374
|
-
|
|
2397
|
+
d.value.succeeded ? q("", !0) : (b(), D(i(Ee), {
|
|
2375
2398
|
key: 0,
|
|
2376
2399
|
class: "tw-mt-4 tw-text-danger-500"
|
|
2377
2400
|
}, {
|
|
2378
2401
|
default: T(() => [
|
|
2379
|
-
M(y(
|
|
2402
|
+
M(y(d.value.error), 1)
|
|
2380
2403
|
]),
|
|
2381
2404
|
_: 1
|
|
2382
2405
|
}))
|
|
@@ -2385,7 +2408,7 @@ const sr = {
|
|
|
2385
2408
|
_: 1
|
|
2386
2409
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2387
2410
|
}
|
|
2388
|
-
}),
|
|
2411
|
+
}), Gl = lr, ur = { class: "tw-text-center" }, dr = { class: "tw-text-center tw-mb-6" }, cr = { class: "tw-text-sm tw-text-neutrals-600" }, Er = /* @__PURE__ */ H({
|
|
2389
2412
|
__name: "ForgotPassword",
|
|
2390
2413
|
props: {
|
|
2391
2414
|
logo: {},
|
|
@@ -2395,7 +2418,7 @@ const sr = {
|
|
|
2395
2418
|
setup(e) {
|
|
2396
2419
|
const t = e, a = ve(), { t: n } = le({ useScope: "global" });
|
|
2397
2420
|
ue({ validateOnMount: !1 });
|
|
2398
|
-
const s = Ie(), { uiSettings: o, loading: r } = we(), l =
|
|
2421
|
+
const s = Ie(), { uiSettings: o, loading: r } = we(), l = P(!1), d = P(""), u = P(!1), f = ie({
|
|
2399
2422
|
loginOrEmail: ""
|
|
2400
2423
|
});
|
|
2401
2424
|
let m;
|
|
@@ -2403,39 +2426,39 @@ const sr = {
|
|
|
2403
2426
|
m = t.composable().forgotPassword;
|
|
2404
2427
|
else {
|
|
2405
2428
|
const { requestPasswordReset: L } = se();
|
|
2406
|
-
m = async (
|
|
2407
|
-
await L(
|
|
2429
|
+
m = async (_) => {
|
|
2430
|
+
await L(_.loginOrEmail);
|
|
2408
2431
|
};
|
|
2409
2432
|
}
|
|
2410
|
-
const E =
|
|
2433
|
+
const E = v(() => ({
|
|
2411
2434
|
logo: r.value ? "" : o.value?.logo || t.logo
|
|
2412
|
-
})),
|
|
2413
|
-
const L = f.loginOrEmail, [
|
|
2414
|
-
return !
|
|
2435
|
+
})), c = v(() => {
|
|
2436
|
+
const L = f.loginOrEmail, [_, w] = L.split("@");
|
|
2437
|
+
return !_ || !w ? L : `${_.length > 2 ? _[0] + "***" + _[_.length - 1] : _[0] + "***"}@${w}`;
|
|
2415
2438
|
}), S = async () => {
|
|
2416
2439
|
if (!(!s.value || !m))
|
|
2417
2440
|
try {
|
|
2418
|
-
l.value = !0,
|
|
2441
|
+
l.value = !0, d.value = "", await m({ loginOrEmail: f.loginOrEmail }), u.value = !0;
|
|
2419
2442
|
} catch (L) {
|
|
2420
|
-
|
|
2443
|
+
d.value = L instanceof Error ? L.message : String(L);
|
|
2421
2444
|
} finally {
|
|
2422
2445
|
l.value = !1;
|
|
2423
2446
|
}
|
|
2424
2447
|
}, h = () => {
|
|
2425
2448
|
a.push({ name: "Login" });
|
|
2426
2449
|
};
|
|
2427
|
-
return (L,
|
|
2450
|
+
return (L, _) => (b(), D(i(_e), {
|
|
2428
2451
|
logo: E.value.logo,
|
|
2429
2452
|
background: e.background,
|
|
2430
2453
|
title: u.value ? i(n)("FORGOT_PASSWORD.SUCCESS_TITLE") : i(n)("FORGOT_PASSWORD.TITLE"),
|
|
2431
2454
|
subtitle: u.value ? void 0 : i(n)("FORGOT_PASSWORD.SUBTITLE")
|
|
2432
2455
|
}, {
|
|
2433
2456
|
default: T(() => [
|
|
2434
|
-
u.value ? (
|
|
2435
|
-
U("div",
|
|
2436
|
-
U("p",
|
|
2457
|
+
u.value ? (b(), W(ne, { key: 1 }, [
|
|
2458
|
+
U("div", dr, [
|
|
2459
|
+
U("p", cr, y(i(n)("FORGOT_PASSWORD.SUCCESS_TEXT", { email: c.value })), 1)
|
|
2437
2460
|
]),
|
|
2438
|
-
R(i(
|
|
2461
|
+
R(i($), {
|
|
2439
2462
|
variant: "primary",
|
|
2440
2463
|
class: "tw-w-full",
|
|
2441
2464
|
onClick: h
|
|
@@ -2445,21 +2468,21 @@ const sr = {
|
|
|
2445
2468
|
]),
|
|
2446
2469
|
_: 1
|
|
2447
2470
|
})
|
|
2448
|
-
], 64)) : (
|
|
2471
|
+
], 64)) : (b(), W(ne, { key: 0 }, [
|
|
2449
2472
|
R(i(me), { onSubmit: S }, {
|
|
2450
2473
|
default: T(() => [
|
|
2451
|
-
R(i(
|
|
2474
|
+
R(i(X), {
|
|
2452
2475
|
label: i(n)("FORGOT_PASSWORD.FIELDS.EMAIL.LABEL"),
|
|
2453
2476
|
name: "loginOrEmail",
|
|
2454
2477
|
"model-value": f.loginOrEmail,
|
|
2455
2478
|
rules: "required|email"
|
|
2456
2479
|
}, {
|
|
2457
2480
|
default: T(({ errorMessage: w, handleChange: C, errors: A }) => [
|
|
2458
|
-
R(i(
|
|
2481
|
+
R(i(K), {
|
|
2459
2482
|
ref: "emailField",
|
|
2460
2483
|
modelValue: f.loginOrEmail,
|
|
2461
2484
|
"onUpdate:modelValue": [
|
|
2462
|
-
|
|
2485
|
+
_[0] || (_[0] = (g) => f.loginOrEmail = g),
|
|
2463
2486
|
C
|
|
2464
2487
|
],
|
|
2465
2488
|
class: "tw-mb-6",
|
|
@@ -2472,7 +2495,7 @@ const sr = {
|
|
|
2472
2495
|
]),
|
|
2473
2496
|
_: 1
|
|
2474
2497
|
}, 8, ["label", "model-value"]),
|
|
2475
|
-
R(i(
|
|
2498
|
+
R(i($), {
|
|
2476
2499
|
variant: "primary",
|
|
2477
2500
|
class: "tw-w-full tw-mb-4",
|
|
2478
2501
|
disabled: !i(s) || l.value,
|
|
@@ -2484,8 +2507,8 @@ const sr = {
|
|
|
2484
2507
|
]),
|
|
2485
2508
|
_: 1
|
|
2486
2509
|
}, 8, ["disabled", "loading"]),
|
|
2487
|
-
U("div",
|
|
2488
|
-
R(i(
|
|
2510
|
+
U("div", ur, [
|
|
2511
|
+
R(i($), {
|
|
2489
2512
|
variant: "link",
|
|
2490
2513
|
icon: "lucide-arrow-left",
|
|
2491
2514
|
"icon-size": "xs",
|
|
@@ -2501,12 +2524,12 @@ const sr = {
|
|
|
2501
2524
|
]),
|
|
2502
2525
|
_: 1
|
|
2503
2526
|
}),
|
|
2504
|
-
|
|
2527
|
+
d.value ? (b(), D(i(Ee), {
|
|
2505
2528
|
key: 0,
|
|
2506
2529
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2507
2530
|
}, {
|
|
2508
2531
|
default: T(() => [
|
|
2509
|
-
M(y(
|
|
2532
|
+
M(y(d.value), 1)
|
|
2510
2533
|
]),
|
|
2511
2534
|
_: 1
|
|
2512
2535
|
})) : q("", !0)
|
|
@@ -2515,7 +2538,7 @@ const sr = {
|
|
|
2515
2538
|
_: 1
|
|
2516
2539
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2517
2540
|
}
|
|
2518
|
-
}),
|
|
2541
|
+
}), xl = Er, fr = /* @__PURE__ */ H({
|
|
2519
2542
|
__name: "ResetPassword",
|
|
2520
2543
|
props: {
|
|
2521
2544
|
userId: {},
|
|
@@ -2525,7 +2548,7 @@ const sr = {
|
|
|
2525
2548
|
background: { default: "/assets/background.jpg" }
|
|
2526
2549
|
},
|
|
2527
2550
|
setup(e) {
|
|
2528
|
-
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t:
|
|
2551
|
+
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t: d } = le({ useScope: "global" }), { validate: u } = ue({ validateOnMount: !1 }), { uiSettings: f, loading: m } = we(), E = ie({
|
|
2529
2552
|
isValid: !1,
|
|
2530
2553
|
tokenIsValid: !1,
|
|
2531
2554
|
errors: [],
|
|
@@ -2535,14 +2558,14 @@ const sr = {
|
|
|
2535
2558
|
Oe(async () => {
|
|
2536
2559
|
E.tokenIsValid = await a(t.userId, t.token), E.tokenIsValid || E.errors.push("Invalid-token");
|
|
2537
2560
|
});
|
|
2538
|
-
const
|
|
2561
|
+
const c = v(() => r.value || !E.password || !E.confirmPassword || !E.isValid && E.tokenIsValid), S = async () => {
|
|
2539
2562
|
if (E.tokenIsValid) {
|
|
2540
|
-
const
|
|
2541
|
-
E.errors =
|
|
2563
|
+
const _ = (await n(E.password)).errors;
|
|
2564
|
+
E.errors = _?.map((w) => w.code), E.confirmPassword !== E.password && E.errors.push("Repeat-password"), E.isValid = E.errors.length == 0;
|
|
2542
2565
|
}
|
|
2543
2566
|
}, h = async () => {
|
|
2544
|
-
const { valid:
|
|
2545
|
-
if (
|
|
2567
|
+
const { valid: _ } = await u();
|
|
2568
|
+
if (_) {
|
|
2546
2569
|
const w = await s(t.userId, E.password, t.token);
|
|
2547
2570
|
if (w.succeeded) {
|
|
2548
2571
|
const C = await o(t.userName, E.password);
|
|
@@ -2550,30 +2573,30 @@ const sr = {
|
|
|
2550
2573
|
} else
|
|
2551
2574
|
E.errors = w.errors;
|
|
2552
2575
|
}
|
|
2553
|
-
}, L =
|
|
2576
|
+
}, L = v(() => ({
|
|
2554
2577
|
logo: m.value ? "" : f.value?.logo || t.logo
|
|
2555
2578
|
}));
|
|
2556
|
-
return (
|
|
2579
|
+
return (_, w) => (b(), D(i(_e), {
|
|
2557
2580
|
logo: L.value.logo,
|
|
2558
2581
|
background: e.background,
|
|
2559
|
-
title: i(
|
|
2560
|
-
subtitle: i(
|
|
2582
|
+
title: i(d)("PASSWORDRESET.TITLE"),
|
|
2583
|
+
subtitle: i(d)("PASSWORDRESET.SUBTITLE")
|
|
2561
2584
|
}, {
|
|
2562
2585
|
default: T(() => [
|
|
2563
|
-
i(r) ? (
|
|
2586
|
+
i(r) ? (b(), D(i(Ht), {
|
|
2564
2587
|
key: 0,
|
|
2565
2588
|
active: ""
|
|
2566
2589
|
})) : q("", !0),
|
|
2567
2590
|
R(i(me), null, {
|
|
2568
2591
|
default: T(() => [
|
|
2569
|
-
R(i(
|
|
2570
|
-
label: i(
|
|
2592
|
+
R(i(X), {
|
|
2593
|
+
label: i(d)("PASSWORDRESET.FIELDS.PASSWORD.LABEL"),
|
|
2571
2594
|
name: "password",
|
|
2572
2595
|
"model-value": E.password,
|
|
2573
2596
|
rules: "required"
|
|
2574
2597
|
}, {
|
|
2575
2598
|
default: T(({ field: C, errorMessage: A, handleChange: g, errors: O }) => [
|
|
2576
|
-
R(i(
|
|
2599
|
+
R(i(K), re(C, {
|
|
2577
2600
|
ref: "passwordField",
|
|
2578
2601
|
modelValue: E.password,
|
|
2579
2602
|
"onUpdate:modelValue": [
|
|
@@ -2583,8 +2606,8 @@ const sr = {
|
|
|
2583
2606
|
}
|
|
2584
2607
|
],
|
|
2585
2608
|
class: "tw-mb-4",
|
|
2586
|
-
label: i(
|
|
2587
|
-
placeholder: i(
|
|
2609
|
+
label: i(d)("PASSWORDRESET.FIELDS.PASSWORD.LABEL"),
|
|
2610
|
+
placeholder: i(d)("PASSWORDRESET.FIELDS.PASSWORD.PLACEHOLDER"),
|
|
2588
2611
|
type: "password",
|
|
2589
2612
|
autocomplete: "new-password",
|
|
2590
2613
|
disabled: !E.tokenIsValid,
|
|
@@ -2595,14 +2618,14 @@ const sr = {
|
|
|
2595
2618
|
]),
|
|
2596
2619
|
_: 1
|
|
2597
2620
|
}, 8, ["label", "model-value"]),
|
|
2598
|
-
R(i(
|
|
2599
|
-
label: i(
|
|
2621
|
+
R(i(X), {
|
|
2622
|
+
label: i(d)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2600
2623
|
name: "confirm_password",
|
|
2601
2624
|
"model-value": E.confirmPassword,
|
|
2602
2625
|
rules: "required"
|
|
2603
2626
|
}, {
|
|
2604
2627
|
default: T(({ field: C, errorMessage: A, handleChange: g, errors: O }) => [
|
|
2605
|
-
R(i(
|
|
2628
|
+
R(i(K), re(C, {
|
|
2606
2629
|
ref: "confirmPasswordField",
|
|
2607
2630
|
modelValue: E.confirmPassword,
|
|
2608
2631
|
"onUpdate:modelValue": [
|
|
@@ -2612,8 +2635,8 @@ const sr = {
|
|
|
2612
2635
|
}
|
|
2613
2636
|
],
|
|
2614
2637
|
class: "tw-mb-6",
|
|
2615
|
-
label: i(
|
|
2616
|
-
placeholder: i(
|
|
2638
|
+
label: i(d)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2639
|
+
placeholder: i(d)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.PLACEHOLDER"),
|
|
2617
2640
|
disabled: !E.tokenIsValid,
|
|
2618
2641
|
type: "password",
|
|
2619
2642
|
autocomplete: "new-password",
|
|
@@ -2625,24 +2648,24 @@ const sr = {
|
|
|
2625
2648
|
]),
|
|
2626
2649
|
_: 1
|
|
2627
2650
|
}, 8, ["label", "model-value"]),
|
|
2628
|
-
R(i(
|
|
2651
|
+
R(i($), {
|
|
2629
2652
|
variant: "primary",
|
|
2630
2653
|
class: "tw-w-full",
|
|
2631
|
-
disabled:
|
|
2654
|
+
disabled: c.value,
|
|
2632
2655
|
loading: i(r),
|
|
2633
2656
|
onClick: h
|
|
2634
2657
|
}, {
|
|
2635
2658
|
default: T(() => [
|
|
2636
|
-
M(y(i(
|
|
2659
|
+
M(y(i(d)("PASSWORDRESET.SAVE_PASSWORD")), 1)
|
|
2637
2660
|
]),
|
|
2638
2661
|
_: 1
|
|
2639
2662
|
}, 8, ["disabled", "loading"]),
|
|
2640
|
-
(
|
|
2663
|
+
(b(!0), W(ne, null, We(E.errors, (C) => (b(), D(i(Ee), {
|
|
2641
2664
|
key: C,
|
|
2642
2665
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2643
2666
|
}, {
|
|
2644
2667
|
default: T(() => [
|
|
2645
|
-
M(y(i(
|
|
2668
|
+
M(y(i(d)(`PASSWORDRESET.ERRORS.${C}`)), 1)
|
|
2646
2669
|
]),
|
|
2647
2670
|
_: 2
|
|
2648
2671
|
}, 1024))), 128))
|
|
@@ -2653,7 +2676,7 @@ const sr = {
|
|
|
2653
2676
|
_: 1
|
|
2654
2677
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2655
2678
|
}
|
|
2656
|
-
}),
|
|
2679
|
+
}), $l = fr, mr = /* @__PURE__ */ H({
|
|
2657
2680
|
__name: "Invite",
|
|
2658
2681
|
props: {
|
|
2659
2682
|
userId: {},
|
|
@@ -2664,70 +2687,70 @@ const sr = {
|
|
|
2664
2687
|
},
|
|
2665
2688
|
setup(e) {
|
|
2666
2689
|
ue({ validateOnMount: !1 });
|
|
2667
|
-
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t:
|
|
2690
|
+
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t: d } = le({ useScope: "global" }), u = Ie(), f = dt(), { uiSettings: m, loading: E } = we(), c = ie({
|
|
2668
2691
|
isValid: !1,
|
|
2669
2692
|
tokenIsValid: !1,
|
|
2670
2693
|
errors: [],
|
|
2671
2694
|
password: "",
|
|
2672
2695
|
confirmPassword: ""
|
|
2673
|
-
}), S =
|
|
2696
|
+
}), S = v(() => !f.value || !u.value);
|
|
2674
2697
|
Oe(async () => {
|
|
2675
|
-
|
|
2698
|
+
c.tokenIsValid = await a(t.userId, t.token), c.tokenIsValid || c.errors.push("Invalid-token");
|
|
2676
2699
|
});
|
|
2677
2700
|
const h = async () => {
|
|
2678
|
-
if (
|
|
2679
|
-
const w = (await n(
|
|
2680
|
-
|
|
2701
|
+
if (c.tokenIsValid) {
|
|
2702
|
+
const w = (await n(c.password)).errors;
|
|
2703
|
+
c.errors = w?.map((C) => C.code), c.confirmPassword && c.confirmPassword !== c.password && c.errors.push("Repeat-password"), c.isValid = c.errors.length == 0 && !S.value;
|
|
2681
2704
|
}
|
|
2682
2705
|
}, L = async () => {
|
|
2683
|
-
const w = await s(t.userId,
|
|
2684
|
-
w.succeeded ? (await o(t.userName,
|
|
2685
|
-
},
|
|
2706
|
+
const w = await s(t.userId, c.password, t.token);
|
|
2707
|
+
w.succeeded ? (await o(t.userName, c.password)).succeeded && l.push("/") : c.errors = w.errors;
|
|
2708
|
+
}, _ = v(() => ({
|
|
2686
2709
|
logo: E.value ? "" : m.value?.logo || t.logo
|
|
2687
2710
|
}));
|
|
2688
|
-
return (w, C) => (
|
|
2689
|
-
logo:
|
|
2711
|
+
return (w, C) => (b(), D(i(_e), {
|
|
2712
|
+
logo: _.value.logo,
|
|
2690
2713
|
background: e.background,
|
|
2691
|
-
title: i(
|
|
2692
|
-
subtitle: i(
|
|
2714
|
+
title: i(d)("INVITATION.TITLE"),
|
|
2715
|
+
subtitle: i(d)("INVITATION.SUBTITLE")
|
|
2693
2716
|
}, {
|
|
2694
2717
|
default: T(() => [
|
|
2695
|
-
i(r) ? (
|
|
2718
|
+
i(r) ? (b(), D(i(Ht), {
|
|
2696
2719
|
key: 0,
|
|
2697
2720
|
active: ""
|
|
2698
2721
|
})) : q("", !0),
|
|
2699
2722
|
R(i(me), null, {
|
|
2700
2723
|
default: T(() => [
|
|
2701
|
-
R(i(
|
|
2724
|
+
R(i(K), {
|
|
2702
2725
|
class: "tw-mb-4",
|
|
2703
|
-
label: i(
|
|
2726
|
+
label: i(d)("INVITATION.FIELDS.EMAIL.LABEL"),
|
|
2704
2727
|
"model-value": e.userName,
|
|
2705
2728
|
name: "username",
|
|
2706
2729
|
autocomplete: "username",
|
|
2707
2730
|
disabled: ""
|
|
2708
2731
|
}, null, 8, ["label", "model-value"]),
|
|
2709
|
-
R(i(
|
|
2710
|
-
label: i(
|
|
2711
|
-
"model-value":
|
|
2732
|
+
R(i(X), {
|
|
2733
|
+
label: i(d)("INVITATION.FIELDS.PASSWORD.LABEL"),
|
|
2734
|
+
"model-value": c.password,
|
|
2712
2735
|
rules: "required",
|
|
2713
2736
|
name: "password"
|
|
2714
2737
|
}, {
|
|
2715
2738
|
default: T(({ field: A, errorMessage: g, handleChange: O, errors: p }) => [
|
|
2716
|
-
R(i(
|
|
2739
|
+
R(i(K), re(A, {
|
|
2717
2740
|
ref: "passwordField",
|
|
2718
|
-
modelValue:
|
|
2741
|
+
modelValue: c.password,
|
|
2719
2742
|
"onUpdate:modelValue": [
|
|
2720
|
-
C[0] || (C[0] = (
|
|
2721
|
-
(
|
|
2722
|
-
O(
|
|
2743
|
+
C[0] || (C[0] = (I) => c.password = I),
|
|
2744
|
+
(I) => {
|
|
2745
|
+
O(I), h();
|
|
2723
2746
|
}
|
|
2724
2747
|
],
|
|
2725
2748
|
class: "tw-mb-4",
|
|
2726
|
-
label: i(
|
|
2727
|
-
placeholder: i(
|
|
2749
|
+
label: i(d)("INVITATION.FIELDS.PASSWORD.LABEL"),
|
|
2750
|
+
placeholder: i(d)("INVITATION.FIELDS.PASSWORD.PLACEHOLDER"),
|
|
2728
2751
|
type: "password",
|
|
2729
2752
|
autocomplete: "new-password",
|
|
2730
|
-
disabled: !
|
|
2753
|
+
disabled: !c.tokenIsValid,
|
|
2731
2754
|
error: !!p.length,
|
|
2732
2755
|
"error-message": g,
|
|
2733
2756
|
required: ""
|
|
@@ -2735,26 +2758,26 @@ const sr = {
|
|
|
2735
2758
|
]),
|
|
2736
2759
|
_: 1
|
|
2737
2760
|
}, 8, ["label", "model-value"]),
|
|
2738
|
-
R(i(
|
|
2739
|
-
label: i(
|
|
2740
|
-
"model-value":
|
|
2761
|
+
R(i(X), {
|
|
2762
|
+
label: i(d)("INVITATION.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2763
|
+
"model-value": c.confirmPassword,
|
|
2741
2764
|
rules: "required",
|
|
2742
2765
|
name: "confirm_password"
|
|
2743
2766
|
}, {
|
|
2744
2767
|
default: T(({ field: A, errorMessage: g, handleChange: O, errors: p }) => [
|
|
2745
|
-
R(i(
|
|
2768
|
+
R(i(K), re(A, {
|
|
2746
2769
|
ref: "confirmPasswordField",
|
|
2747
|
-
modelValue:
|
|
2770
|
+
modelValue: c.confirmPassword,
|
|
2748
2771
|
"onUpdate:modelValue": [
|
|
2749
|
-
C[1] || (C[1] = (
|
|
2750
|
-
(
|
|
2751
|
-
O(
|
|
2772
|
+
C[1] || (C[1] = (I) => c.confirmPassword = I),
|
|
2773
|
+
(I) => {
|
|
2774
|
+
O(I), h();
|
|
2752
2775
|
}
|
|
2753
2776
|
],
|
|
2754
2777
|
class: "tw-mb-6",
|
|
2755
|
-
label: i(
|
|
2756
|
-
placeholder: i(
|
|
2757
|
-
disabled: !
|
|
2778
|
+
label: i(d)("INVITATION.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2779
|
+
placeholder: i(d)("INVITATION.FIELDS.CONFIRM_PASSWORD.PLACEHOLDER"),
|
|
2780
|
+
disabled: !c.tokenIsValid,
|
|
2758
2781
|
type: "password",
|
|
2759
2782
|
autocomplete: "new-password",
|
|
2760
2783
|
error: !!p.length,
|
|
@@ -2765,24 +2788,24 @@ const sr = {
|
|
|
2765
2788
|
]),
|
|
2766
2789
|
_: 1
|
|
2767
2790
|
}, 8, ["label", "model-value"]),
|
|
2768
|
-
R(i(
|
|
2791
|
+
R(i($), {
|
|
2769
2792
|
variant: "primary",
|
|
2770
2793
|
class: "tw-w-full",
|
|
2771
|
-
disabled: i(r) || !
|
|
2794
|
+
disabled: i(r) || !c.isValid || !c.tokenIsValid,
|
|
2772
2795
|
loading: i(r),
|
|
2773
2796
|
onClick: L
|
|
2774
2797
|
}, {
|
|
2775
2798
|
default: T(() => [
|
|
2776
|
-
M(y(i(
|
|
2799
|
+
M(y(i(d)("INVITATION.ACCEPT_INVITATION")), 1)
|
|
2777
2800
|
]),
|
|
2778
2801
|
_: 1
|
|
2779
2802
|
}, 8, ["disabled", "loading"]),
|
|
2780
|
-
(
|
|
2803
|
+
(b(!0), W(ne, null, We(c.errors, (A) => (b(), D(i(Ee), {
|
|
2781
2804
|
key: A,
|
|
2782
2805
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2783
2806
|
}, {
|
|
2784
2807
|
default: T(() => [
|
|
2785
|
-
M(y(i(
|
|
2808
|
+
M(y(i(d)(`INVITATION.ERRORS.${A}`)), 1)
|
|
2786
2809
|
]),
|
|
2787
2810
|
_: 2
|
|
2788
2811
|
}, 1024))), 128))
|
|
@@ -2793,10 +2816,10 @@ const sr = {
|
|
|
2793
2816
|
_: 1
|
|
2794
2817
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2795
2818
|
}
|
|
2796
|
-
}),
|
|
2819
|
+
}), Kl = mr, gr = {
|
|
2797
2820
|
key: 0,
|
|
2798
2821
|
class: "tw-mb-4"
|
|
2799
|
-
},
|
|
2822
|
+
}, Sr = { class: "tw-flex tw-gap-3" }, Ar = /* @__PURE__ */ H({
|
|
2800
2823
|
__name: "ChangePassword",
|
|
2801
2824
|
props: {
|
|
2802
2825
|
forced: { type: Boolean },
|
|
@@ -2804,45 +2827,45 @@ const sr = {
|
|
|
2804
2827
|
background: {}
|
|
2805
2828
|
},
|
|
2806
2829
|
setup(e) {
|
|
2807
|
-
const t = e, { t: a } = le({ useScope: "global" }), { changeUserPassword: n, loading: s, validatePassword: o, signOut: r } = se(), { uiSettings: l, loading:
|
|
2808
|
-
logo:
|
|
2830
|
+
const t = e, { t: a } = le({ useScope: "global" }), { changeUserPassword: n, loading: s, validatePassword: o, signOut: r } = se(), { uiSettings: l, loading: d } = we(), u = v(() => ({
|
|
2831
|
+
logo: d.value ? "" : l.value?.logo || t.logo
|
|
2809
2832
|
}));
|
|
2810
2833
|
ue({ validateOnMount: !1 });
|
|
2811
|
-
const f = Ie(), m =
|
|
2834
|
+
const f = Ie(), m = dt(), E = ve(), c = ie({
|
|
2812
2835
|
isValid: !1,
|
|
2813
2836
|
errors: [],
|
|
2814
2837
|
currentPassword: "",
|
|
2815
2838
|
password: "",
|
|
2816
2839
|
confirmPassword: ""
|
|
2817
|
-
}), S =
|
|
2840
|
+
}), S = v(() => !m.value || !f.value);
|
|
2818
2841
|
async function h() {
|
|
2819
2842
|
await r(), await E.push("/login");
|
|
2820
2843
|
}
|
|
2821
2844
|
async function L() {
|
|
2822
|
-
const w = await n(
|
|
2823
|
-
w?.succeeded ? await E.push("/") : w?.errors && (
|
|
2845
|
+
const w = await n(c.currentPassword, c.password);
|
|
2846
|
+
w?.succeeded ? await E.push("/") : w?.errors && (c.errors = w?.errors, c.isValid = c.errors.length == 0);
|
|
2824
2847
|
}
|
|
2825
|
-
function
|
|
2826
|
-
|
|
2827
|
-
if (
|
|
2828
|
-
const w = (await o(
|
|
2829
|
-
password:
|
|
2830
|
-
confirmPassword:
|
|
2831
|
-
currentPassword:
|
|
2848
|
+
function _() {
|
|
2849
|
+
Pe(async () => {
|
|
2850
|
+
if (c.password || c.confirmPassword) {
|
|
2851
|
+
const w = (await o(c.password)).errors ?? [], C = or({
|
|
2852
|
+
password: c.password,
|
|
2853
|
+
confirmPassword: c.confirmPassword,
|
|
2854
|
+
currentPassword: c.currentPassword
|
|
2832
2855
|
});
|
|
2833
|
-
|
|
2856
|
+
c.errors = [...w, ...C], c.isValid = c.errors.length == 0;
|
|
2834
2857
|
}
|
|
2835
2858
|
});
|
|
2836
2859
|
}
|
|
2837
|
-
return (w, C) => (
|
|
2860
|
+
return (w, C) => (b(), D(i(_e), {
|
|
2838
2861
|
logo: u.value.logo,
|
|
2839
2862
|
background: e.background,
|
|
2840
2863
|
title: e.forced ? i(a)("COMPONENTS.CHANGE_PASSWORD.TITLE_FORCED") : i(a)("COMPONENTS.CHANGE_PASSWORD.TITLE"),
|
|
2841
2864
|
subtitle: e.forced ? i(a)("COMPONENTS.CHANGE_PASSWORD.SUBTITLE_FORCED") : void 0
|
|
2842
2865
|
}, {
|
|
2843
2866
|
default: T(() => [
|
|
2844
|
-
e.forced ? (
|
|
2845
|
-
R(i(
|
|
2867
|
+
e.forced ? (b(), W("div", gr, [
|
|
2868
|
+
R(i(vn), {
|
|
2846
2869
|
variant: "info",
|
|
2847
2870
|
icon: "lucide-lightbulb",
|
|
2848
2871
|
"icon-size": "l"
|
|
@@ -2855,19 +2878,19 @@ const sr = {
|
|
|
2855
2878
|
])) : q("", !0),
|
|
2856
2879
|
R(i(me), null, {
|
|
2857
2880
|
default: T(() => [
|
|
2858
|
-
R(i(
|
|
2881
|
+
R(i(X), {
|
|
2859
2882
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.CURRENT_PASSWORD.LABEL"),
|
|
2860
2883
|
name: "current",
|
|
2861
2884
|
rules: "required|min:6",
|
|
2862
|
-
"model-value":
|
|
2885
|
+
"model-value": c.currentPassword
|
|
2863
2886
|
}, {
|
|
2864
2887
|
default: T(({ field: A, errorMessage: g, errors: O }) => [
|
|
2865
|
-
R(i(
|
|
2888
|
+
R(i(K), re(A, {
|
|
2866
2889
|
ref: "passwordField",
|
|
2867
|
-
modelValue:
|
|
2890
|
+
modelValue: c.currentPassword,
|
|
2868
2891
|
"onUpdate:modelValue": [
|
|
2869
|
-
C[0] || (C[0] = (p) =>
|
|
2870
|
-
|
|
2892
|
+
C[0] || (C[0] = (p) => c.currentPassword = p),
|
|
2893
|
+
_
|
|
2871
2894
|
],
|
|
2872
2895
|
class: "tw-mb-4",
|
|
2873
2896
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.CURRENT_PASSWORD.LABEL"),
|
|
@@ -2881,19 +2904,19 @@ const sr = {
|
|
|
2881
2904
|
]),
|
|
2882
2905
|
_: 1
|
|
2883
2906
|
}, 8, ["label", "model-value"]),
|
|
2884
|
-
R(i(
|
|
2907
|
+
R(i(X), {
|
|
2885
2908
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.NEW_PASSWORD.LABEL"),
|
|
2886
2909
|
name: "new_pass",
|
|
2887
2910
|
rules: "required|min:6",
|
|
2888
|
-
"model-value":
|
|
2911
|
+
"model-value": c.password
|
|
2889
2912
|
}, {
|
|
2890
2913
|
default: T(({ field: A, errorMessage: g, errors: O }) => [
|
|
2891
|
-
R(i(
|
|
2914
|
+
R(i(K), re(A, {
|
|
2892
2915
|
ref: "newPasswordField",
|
|
2893
|
-
modelValue:
|
|
2916
|
+
modelValue: c.password,
|
|
2894
2917
|
"onUpdate:modelValue": [
|
|
2895
|
-
C[1] || (C[1] = (p) =>
|
|
2896
|
-
|
|
2918
|
+
C[1] || (C[1] = (p) => c.password = p),
|
|
2919
|
+
_
|
|
2897
2920
|
],
|
|
2898
2921
|
class: "tw-mb-4",
|
|
2899
2922
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.NEW_PASSWORD.LABEL"),
|
|
@@ -2907,19 +2930,19 @@ const sr = {
|
|
|
2907
2930
|
]),
|
|
2908
2931
|
_: 1
|
|
2909
2932
|
}, 8, ["label", "model-value"]),
|
|
2910
|
-
R(i(
|
|
2933
|
+
R(i(X), {
|
|
2911
2934
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.CONFIRM_PASSWORD.LABEL"),
|
|
2912
2935
|
name: "confirm_pass",
|
|
2913
2936
|
rules: "required|min:6",
|
|
2914
|
-
"model-value":
|
|
2937
|
+
"model-value": c.confirmPassword
|
|
2915
2938
|
}, {
|
|
2916
2939
|
default: T(({ field: A, errorMessage: g, errors: O }) => [
|
|
2917
|
-
R(i(
|
|
2940
|
+
R(i(K), re(A, {
|
|
2918
2941
|
ref: "confirmPasswordField",
|
|
2919
|
-
modelValue:
|
|
2942
|
+
modelValue: c.confirmPassword,
|
|
2920
2943
|
"onUpdate:modelValue": [
|
|
2921
|
-
C[2] || (C[2] = (p) =>
|
|
2922
|
-
|
|
2944
|
+
C[2] || (C[2] = (p) => c.confirmPassword = p),
|
|
2945
|
+
_
|
|
2923
2946
|
],
|
|
2924
2947
|
class: "tw-mb-6",
|
|
2925
2948
|
label: i(a)("COMPONENTS.CHANGE_PASSWORD.CONFIRM_PASSWORD.LABEL"),
|
|
@@ -2933,8 +2956,8 @@ const sr = {
|
|
|
2933
2956
|
]),
|
|
2934
2957
|
_: 1
|
|
2935
2958
|
}, 8, ["label", "model-value"]),
|
|
2936
|
-
U("div",
|
|
2937
|
-
R(i(
|
|
2959
|
+
U("div", Sr, [
|
|
2960
|
+
R(i($), {
|
|
2938
2961
|
variant: "secondary",
|
|
2939
2962
|
class: "tw-flex-1",
|
|
2940
2963
|
onClick: h
|
|
@@ -2944,10 +2967,10 @@ const sr = {
|
|
|
2944
2967
|
]),
|
|
2945
2968
|
_: 1
|
|
2946
2969
|
}),
|
|
2947
|
-
R(i(
|
|
2970
|
+
R(i($), {
|
|
2948
2971
|
variant: "primary",
|
|
2949
2972
|
class: "tw-flex-1",
|
|
2950
|
-
disabled: i(s) || !
|
|
2973
|
+
disabled: i(s) || !c.isValid || S.value,
|
|
2951
2974
|
loading: i(s),
|
|
2952
2975
|
onClick: L
|
|
2953
2976
|
}, {
|
|
@@ -2957,7 +2980,7 @@ const sr = {
|
|
|
2957
2980
|
_: 1
|
|
2958
2981
|
}, 8, ["disabled", "loading"])
|
|
2959
2982
|
]),
|
|
2960
|
-
(
|
|
2983
|
+
(b(!0), W(ne, null, We(c.errors, (A, g) => (b(), D(i(Ee), {
|
|
2961
2984
|
key: g,
|
|
2962
2985
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2963
2986
|
}, {
|
|
@@ -2973,7 +2996,7 @@ const sr = {
|
|
|
2973
2996
|
_: 1
|
|
2974
2997
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2975
2998
|
}
|
|
2976
|
-
}),
|
|
2999
|
+
}), zl = Ar, et = k("use-blade-navigation-adapter"), nt = /* @__PURE__ */ new Set();
|
|
2977
3000
|
function oe(e, t) {
|
|
2978
3001
|
if (nt.has(e)) return;
|
|
2979
3002
|
nt.add(e);
|
|
@@ -2987,7 +3010,7 @@ function Nt(e, t, a) {
|
|
|
2987
3010
|
idx: t,
|
|
2988
3011
|
instance: e.title != null ? { title: e.title } : void 0,
|
|
2989
3012
|
isVisible: e.visible,
|
|
2990
|
-
error:
|
|
3013
|
+
error: P(e.error ? new Error(String(e.error)) : null)
|
|
2991
3014
|
},
|
|
2992
3015
|
param: e.param,
|
|
2993
3016
|
options: e.options,
|
|
@@ -2998,22 +3021,22 @@ function Nt(e, t, a) {
|
|
|
2998
3021
|
};
|
|
2999
3022
|
}
|
|
3000
3023
|
let ye, Be;
|
|
3001
|
-
function
|
|
3024
|
+
function ql() {
|
|
3002
3025
|
ye = void 0, Be = void 0, nt.clear();
|
|
3003
3026
|
}
|
|
3004
|
-
function
|
|
3005
|
-
const e =
|
|
3027
|
+
function pr() {
|
|
3028
|
+
const e = ds, t = Es, a = cs;
|
|
3006
3029
|
if (!e || !t)
|
|
3007
3030
|
throw new Error(
|
|
3008
3031
|
"[useBladeNavigation adapter] BladeStack or BladeMessaging not available. Ensure plugin-v2 is installed before calling useBladeNavigation()."
|
|
3009
3032
|
);
|
|
3010
|
-
const n =
|
|
3033
|
+
const n = us?.router;
|
|
3011
3034
|
if (!n)
|
|
3012
3035
|
throw new Error("[@vc-shell/framework#useBladeNavigation] Vue Router instance is not available.");
|
|
3013
|
-
return ye || (ye =
|
|
3036
|
+
return ye || (ye = v(() => {
|
|
3014
3037
|
const s = e.activeBlade.value?.id;
|
|
3015
3038
|
return e.blades.value.map((o, r) => Nt(o, r, s));
|
|
3016
|
-
})), Be || (Be =
|
|
3039
|
+
})), Be || (Be = v(() => {
|
|
3017
3040
|
const s = e.workspace.value;
|
|
3018
3041
|
if (s)
|
|
3019
3042
|
return Nt(s, 0, e.activeBlade.value?.id);
|
|
@@ -3026,7 +3049,7 @@ function Sr() {
|
|
|
3026
3049
|
activeWorkspace: Be
|
|
3027
3050
|
};
|
|
3028
3051
|
}
|
|
3029
|
-
function
|
|
3052
|
+
function Tr(e) {
|
|
3030
3053
|
if (!e)
|
|
3031
3054
|
throw new Error("Blade cannot be null or undefined.");
|
|
3032
3055
|
if (typeof e == "object" && "name" in e && typeof e.name == "string")
|
|
@@ -3038,23 +3061,23 @@ function Dt(e) {
|
|
|
3038
3061
|
const [t, a = ""] = e.replace(/^#/, "").split("?");
|
|
3039
3062
|
return [t, a];
|
|
3040
3063
|
}
|
|
3041
|
-
function
|
|
3064
|
+
function hr(e) {
|
|
3042
3065
|
const t = Number(e);
|
|
3043
3066
|
return !isNaN(t) && String(t) === e ? t : e;
|
|
3044
3067
|
}
|
|
3045
|
-
function
|
|
3046
|
-
const { bladeStack: e, messaging: t, bladeRegistry: a, router: n, blades: s, activeWorkspace: o } =
|
|
3068
|
+
function Yl() {
|
|
3069
|
+
const { bladeStack: e, messaging: t, bladeRegistry: a, router: n, blades: s, activeWorkspace: o } = pr(), r = on() ? Q(xt, void 0) : void 0;
|
|
3047
3070
|
function l() {
|
|
3048
3071
|
return r ? r.value.id : e.activeBlade.value?.id;
|
|
3049
3072
|
}
|
|
3050
|
-
function
|
|
3073
|
+
function d(g) {
|
|
3051
3074
|
const O = e.blades.value;
|
|
3052
3075
|
if (g >= 0 && g < O.length)
|
|
3053
3076
|
return O[g].id;
|
|
3054
3077
|
}
|
|
3055
3078
|
async function u(g, O) {
|
|
3056
|
-
const
|
|
3057
|
-
name:
|
|
3079
|
+
const I = {
|
|
3080
|
+
name: Tr(g.blade),
|
|
3058
3081
|
param: g.param,
|
|
3059
3082
|
options: g.options,
|
|
3060
3083
|
onOpen: g.onOpen,
|
|
@@ -3062,45 +3085,45 @@ function zl() {
|
|
|
3062
3085
|
replaceCurrentBlade: g.replaceCurrentBlade
|
|
3063
3086
|
};
|
|
3064
3087
|
if (O)
|
|
3065
|
-
await e.openWorkspace(
|
|
3088
|
+
await e.openWorkspace(I);
|
|
3066
3089
|
else if (g.replaceCurrentBlade)
|
|
3067
|
-
await e.coverCurrentBlade(
|
|
3090
|
+
await e.coverCurrentBlade(I);
|
|
3068
3091
|
else {
|
|
3069
3092
|
const N = l();
|
|
3070
|
-
await e.openBlade({ ...
|
|
3093
|
+
await e.openBlade({ ...I, parentId: N });
|
|
3071
3094
|
}
|
|
3072
3095
|
}
|
|
3073
3096
|
async function f(g) {
|
|
3074
3097
|
oe("closeBlade(index)", "useBlade().closeSelf()");
|
|
3075
|
-
const O =
|
|
3098
|
+
const O = d(g);
|
|
3076
3099
|
return O ? e.closeBlade(O) : (et.error(`closeBlade: No blade found at index ${g}.`), !1);
|
|
3077
3100
|
}
|
|
3078
3101
|
function m() {
|
|
3079
3102
|
oe("goToRoot()");
|
|
3080
|
-
const g =
|
|
3103
|
+
const g = wn(n);
|
|
3081
3104
|
if (g?.name)
|
|
3082
3105
|
return {
|
|
3083
3106
|
name: g.name,
|
|
3084
3107
|
params: n.currentRoute.value.params
|
|
3085
3108
|
};
|
|
3086
|
-
const O =
|
|
3109
|
+
const O = Cn(n);
|
|
3087
3110
|
return { path: O ? `/${O}` : "/" };
|
|
3088
3111
|
}
|
|
3089
3112
|
async function E(g, O) {
|
|
3090
3113
|
oe("onParentCall(args, index)", "useBlade().callParent(method, args)");
|
|
3091
3114
|
let p;
|
|
3092
|
-
if (O !== void 0 ? p =
|
|
3115
|
+
if (O !== void 0 ? p = d(O) : p = l(), !p) {
|
|
3093
3116
|
et.error("onParentCall: Could not determine caller blade.");
|
|
3094
3117
|
return;
|
|
3095
3118
|
}
|
|
3096
3119
|
try {
|
|
3097
|
-
const
|
|
3098
|
-
typeof g.callback == "function" && g.callback(
|
|
3099
|
-
} catch (
|
|
3100
|
-
et.error(`onParentCall: Failed to call parent method "${g.method}":`,
|
|
3120
|
+
const I = await t.callParent(p, g.method, g.args);
|
|
3121
|
+
typeof g.callback == "function" && g.callback(I);
|
|
3122
|
+
} catch (I) {
|
|
3123
|
+
et.error(`onParentCall: Failed to call parent method "${g.method}":`, I);
|
|
3101
3124
|
}
|
|
3102
3125
|
}
|
|
3103
|
-
function
|
|
3126
|
+
function c(g) {
|
|
3104
3127
|
oe("onBeforeClose(cb)", "useBlade().onBeforeClose(guard)");
|
|
3105
3128
|
const O = l();
|
|
3106
3129
|
if (!O) {
|
|
@@ -3119,39 +3142,39 @@ function zl() {
|
|
|
3119
3142
|
oe("setNavigationQuery");
|
|
3120
3143
|
const O = e.workspace.value;
|
|
3121
3144
|
if (!O) return;
|
|
3122
|
-
const p = O.name.toLowerCase(), [
|
|
3123
|
-
for (const
|
|
3124
|
-
|
|
3125
|
-
for (const [
|
|
3126
|
-
|
|
3145
|
+
const p = O.name.toLowerCase(), [I, N] = Dt(window.location.hash), B = new URLSearchParams(N);
|
|
3146
|
+
for (const z of [...B.keys()])
|
|
3147
|
+
z.startsWith(`${p}_`) && B.delete(z);
|
|
3148
|
+
for (const [z, de] of Object.entries(g))
|
|
3149
|
+
de != null && B.set(`${p}_${z}`, String(de));
|
|
3127
3150
|
const V = B.toString();
|
|
3128
|
-
n.options.history.replace(V ? `${
|
|
3151
|
+
n.options.history.replace(V ? `${I}?${V}` : I);
|
|
3129
3152
|
}
|
|
3130
|
-
function
|
|
3153
|
+
function _() {
|
|
3131
3154
|
oe("getNavigationQuery");
|
|
3132
3155
|
const g = e.workspace.value;
|
|
3133
3156
|
if (!g) return;
|
|
3134
|
-
const O = g.name.toLowerCase(), p = new URLSearchParams(Dt(window.location.hash)[1]),
|
|
3157
|
+
const O = g.name.toLowerCase(), p = new URLSearchParams(Dt(window.location.hash)[1]), I = {};
|
|
3135
3158
|
for (const [N, B] of p.entries())
|
|
3136
|
-
N.startsWith(`${O}_`) && (
|
|
3137
|
-
return Object.keys(
|
|
3159
|
+
N.startsWith(`${O}_`) && (I[N.replace(`${O}_`, "")] = hr(B));
|
|
3160
|
+
return Object.keys(I).length > 0 ? I : void 0;
|
|
3138
3161
|
}
|
|
3139
3162
|
function w(g, O) {
|
|
3140
|
-
const p =
|
|
3163
|
+
const p = d(g);
|
|
3141
3164
|
p && e.setBladeError(p, O);
|
|
3142
3165
|
}
|
|
3143
3166
|
function C(g) {
|
|
3144
|
-
const O =
|
|
3167
|
+
const O = d(g);
|
|
3145
3168
|
O && e.clearBladeError(O);
|
|
3146
3169
|
}
|
|
3147
|
-
const A =
|
|
3170
|
+
const A = v(() => {
|
|
3148
3171
|
if (!r) return;
|
|
3149
3172
|
const g = r.value;
|
|
3150
3173
|
return {
|
|
3151
|
-
idx: e.blades.value.findIndex((
|
|
3174
|
+
idx: e.blades.value.findIndex((I) => I.id === g.id),
|
|
3152
3175
|
instance: g.title != null ? { title: g.title } : void 0,
|
|
3153
3176
|
isVisible: g.visible,
|
|
3154
|
-
error:
|
|
3177
|
+
error: P(g.error ? new Error(String(g.error)) : null)
|
|
3155
3178
|
};
|
|
3156
3179
|
});
|
|
3157
3180
|
return {
|
|
@@ -3161,11 +3184,11 @@ function zl() {
|
|
|
3161
3184
|
closeBlade: f,
|
|
3162
3185
|
goToRoot: m,
|
|
3163
3186
|
onParentCall: E,
|
|
3164
|
-
onBeforeClose:
|
|
3187
|
+
onBeforeClose: c,
|
|
3165
3188
|
resolveBladeByName: S,
|
|
3166
3189
|
routeResolver: h,
|
|
3167
3190
|
setNavigationQuery: L,
|
|
3168
|
-
getNavigationQuery:
|
|
3191
|
+
getNavigationQuery: _,
|
|
3169
3192
|
setBladeError: w,
|
|
3170
3193
|
clearBladeError: C,
|
|
3171
3194
|
currentBladeNavigationData: A
|
|
@@ -3184,7 +3207,7 @@ function Fe(e, t) {
|
|
|
3184
3207
|
if (!Fe(a[o], n[o])) return !1;
|
|
3185
3208
|
return !0;
|
|
3186
3209
|
}
|
|
3187
|
-
function
|
|
3210
|
+
function Zl(e) {
|
|
3188
3211
|
const {
|
|
3189
3212
|
data: t,
|
|
3190
3213
|
canSaveOverride: a,
|
|
@@ -3192,7 +3215,7 @@ function ql(e) {
|
|
|
3192
3215
|
autoBeforeUnload: s = !0,
|
|
3193
3216
|
closeConfirmMessage: o,
|
|
3194
3217
|
onRevert: r
|
|
3195
|
-
} = e, { meta: l, setFieldError:
|
|
3218
|
+
} = e, { meta: l, setFieldError: d, errorBag: u } = ue({ validateOnMount: !1 }), f = P(J(t.value)), m = P(!1);
|
|
3196
3219
|
ae(
|
|
3197
3220
|
t,
|
|
3198
3221
|
(w) => {
|
|
@@ -3200,70 +3223,70 @@ function ql(e) {
|
|
|
3200
3223
|
},
|
|
3201
3224
|
{ deep: !0 }
|
|
3202
3225
|
);
|
|
3203
|
-
const E =
|
|
3226
|
+
const E = P(!1), c = v(() => E.value && m.value), S = v(() => !(!E.value || !l.value.valid || !m.value || a && !a.value));
|
|
3204
3227
|
function h() {
|
|
3205
|
-
f.value =
|
|
3228
|
+
f.value = J(t.value), m.value = !1, E.value = !0;
|
|
3206
3229
|
}
|
|
3207
3230
|
function L() {
|
|
3208
3231
|
E.value = !0, m.value = !Fe(t.value, f.value);
|
|
3209
3232
|
}
|
|
3210
|
-
function
|
|
3233
|
+
function _() {
|
|
3211
3234
|
if (r)
|
|
3212
3235
|
return r();
|
|
3213
|
-
t.value =
|
|
3236
|
+
t.value = J(f.value);
|
|
3214
3237
|
}
|
|
3215
|
-
if (s &&
|
|
3216
|
-
const { onBeforeClose: w } = ut(), { showConfirmation: C } =
|
|
3238
|
+
if (s && Zs(c), n !== !1) {
|
|
3239
|
+
const { onBeforeClose: w } = ut(), { showConfirmation: C } = bn();
|
|
3217
3240
|
w(async () => {
|
|
3218
3241
|
let A;
|
|
3219
|
-
if (typeof n == "object" ? A = n.value &&
|
|
3242
|
+
if (typeof n == "object" ? A = n.value && c.value : A = c.value, A) {
|
|
3220
3243
|
const g = o ? Mt(o) : "You have unsaved changes. Are you sure you want to leave?";
|
|
3221
3244
|
return !await C(g);
|
|
3222
3245
|
}
|
|
3223
3246
|
return !1;
|
|
3224
3247
|
});
|
|
3225
3248
|
}
|
|
3226
|
-
return Bt(
|
|
3249
|
+
return Bt(Hn, { isModified: c, canSave: S }), {
|
|
3227
3250
|
setBaseline: h,
|
|
3228
3251
|
markReady: L,
|
|
3229
|
-
revert:
|
|
3252
|
+
revert: _,
|
|
3230
3253
|
canSave: S,
|
|
3231
|
-
isModified:
|
|
3232
|
-
isReady:
|
|
3254
|
+
isModified: c,
|
|
3255
|
+
isReady: v(() => E.value),
|
|
3233
3256
|
formMeta: l,
|
|
3234
|
-
setFieldError:
|
|
3257
|
+
setFieldError: d,
|
|
3235
3258
|
errorBag: u
|
|
3236
3259
|
};
|
|
3237
3260
|
}
|
|
3238
3261
|
const Me = 14, ya = 3;
|
|
3239
|
-
function
|
|
3262
|
+
function Lr(e, t, a) {
|
|
3240
3263
|
const n = e.length, s = (u) => u !== void 0 && t.get(u) || 0, o = n > 0 ? e[n - 1] : void 0, r = s(o), l = e.map((u, f) => {
|
|
3241
3264
|
const m = n - 1 - f;
|
|
3242
3265
|
let E = 0;
|
|
3243
3266
|
for (let S = f + 1; S < n; S++)
|
|
3244
3267
|
E += s(e[S]);
|
|
3245
|
-
const
|
|
3268
|
+
const c = m * Me + E;
|
|
3246
3269
|
return {
|
|
3247
3270
|
sonnerIndex: m,
|
|
3248
3271
|
zIndex: n - m,
|
|
3249
|
-
offset:
|
|
3272
|
+
offset: c,
|
|
3250
3273
|
initialHeight: s(u)
|
|
3251
3274
|
};
|
|
3252
3275
|
});
|
|
3253
|
-
let
|
|
3276
|
+
let d;
|
|
3254
3277
|
if (a && n > 1) {
|
|
3255
3278
|
const u = n - 1;
|
|
3256
3279
|
let f = 0;
|
|
3257
|
-
for (let
|
|
3258
|
-
f += s(e[
|
|
3280
|
+
for (let c = 1; c < n; c++)
|
|
3281
|
+
f += s(e[c]);
|
|
3259
3282
|
const m = u * Me + f, E = s(e[0]);
|
|
3260
|
-
|
|
3283
|
+
d = m + E;
|
|
3261
3284
|
} else
|
|
3262
|
-
|
|
3263
|
-
return { toasts: l, frontHeight: r, groupHeight:
|
|
3285
|
+
d = r + Math.min(n - 1, ya - 1) * Me;
|
|
3286
|
+
return { toasts: l, frontHeight: r, groupHeight: d };
|
|
3264
3287
|
}
|
|
3265
|
-
function
|
|
3266
|
-
const e =
|
|
3288
|
+
function Or() {
|
|
3289
|
+
const e = P(!1), t = P(!1);
|
|
3267
3290
|
let a = null;
|
|
3268
3291
|
function n() {
|
|
3269
3292
|
a && (clearTimeout(a), a = null), e.value = !0;
|
|
@@ -3281,7 +3304,7 @@ function hr() {
|
|
|
3281
3304
|
function l(f) {
|
|
3282
3305
|
o.delete(f);
|
|
3283
3306
|
}
|
|
3284
|
-
function
|
|
3307
|
+
function d() {
|
|
3285
3308
|
o.clear();
|
|
3286
3309
|
}
|
|
3287
3310
|
function u(f) {
|
|
@@ -3295,11 +3318,11 @@ function hr() {
|
|
|
3295
3318
|
collapseStack: s,
|
|
3296
3319
|
reportHeight: r,
|
|
3297
3320
|
forgetHeight: l,
|
|
3298
|
-
clearHeights:
|
|
3321
|
+
clearHeights: d,
|
|
3299
3322
|
setInteracting: u
|
|
3300
3323
|
};
|
|
3301
3324
|
}
|
|
3302
|
-
const
|
|
3325
|
+
const Rr = H({
|
|
3303
3326
|
name: "NotificationContainer",
|
|
3304
3327
|
inheritAttrs: !1,
|
|
3305
3328
|
props: {
|
|
@@ -3355,46 +3378,46 @@ const Lr = H({
|
|
|
3355
3378
|
}
|
|
3356
3379
|
},
|
|
3357
3380
|
setup(e) {
|
|
3358
|
-
const { notificationContainers: t, actions: a } = Q(jt), n =
|
|
3381
|
+
const { notificationContainers: t, actions: a } = Q(jt), n = v(() => t[e.position].value || []), {
|
|
3359
3382
|
expanded: s,
|
|
3360
3383
|
heightsMap: o,
|
|
3361
3384
|
expandStack: r,
|
|
3362
3385
|
collapseStack: l,
|
|
3363
|
-
reportHeight:
|
|
3386
|
+
reportHeight: d,
|
|
3364
3387
|
forgetHeight: u,
|
|
3365
3388
|
clearHeights: f,
|
|
3366
3389
|
setInteracting: m
|
|
3367
|
-
} =
|
|
3390
|
+
} = Or();
|
|
3368
3391
|
function E(L) {
|
|
3369
3392
|
return typeof L == "object" && (!!L?.render || !!L?.setup);
|
|
3370
3393
|
}
|
|
3371
|
-
function
|
|
3394
|
+
function c(L) {
|
|
3372
3395
|
L && (u(L), a.remove(L));
|
|
3373
3396
|
}
|
|
3374
3397
|
function S() {
|
|
3375
3398
|
a.clear(), f();
|
|
3376
3399
|
}
|
|
3377
|
-
const h =
|
|
3400
|
+
const h = v(() => (e.position || "top-center").startsWith("top"));
|
|
3378
3401
|
return () => {
|
|
3379
|
-
const L = n.value,
|
|
3402
|
+
const L = n.value, _ = L.length, w = s.value || _ <= 1, C = _ > 1, A = Lr(
|
|
3380
3403
|
L.map((p) => p.notificationId),
|
|
3381
3404
|
o,
|
|
3382
3405
|
w
|
|
3383
|
-
), g = L.map((p,
|
|
3384
|
-
const { sonnerIndex: N, zIndex: B, offset: V, initialHeight:
|
|
3406
|
+
), g = L.map((p, I) => {
|
|
3407
|
+
const { sonnerIndex: N, zIndex: B, offset: V, initialHeight: z } = A.toasts[I], de = {
|
|
3385
3408
|
"--toasts-before": N,
|
|
3386
3409
|
"--z-index": B,
|
|
3387
3410
|
"--offset": `${V}px`,
|
|
3388
|
-
"--initial-height":
|
|
3411
|
+
"--initial-height": z ? `${z}px` : "auto"
|
|
3389
3412
|
}, ge = {
|
|
3390
3413
|
...p,
|
|
3391
|
-
onClose:
|
|
3392
|
-
onReportHeight:
|
|
3414
|
+
onClose: c,
|
|
3415
|
+
onReportHeight: d,
|
|
3393
3416
|
toastIndex: N,
|
|
3394
|
-
toastsCount:
|
|
3417
|
+
toastsCount: _,
|
|
3395
3418
|
expanded: w,
|
|
3396
3419
|
visibleToasts: ya,
|
|
3397
|
-
style:
|
|
3420
|
+
style: de
|
|
3398
3421
|
}, Ba = p.content && E(p.content) ? ee(gt, { ...ge, content: ee(ln(p.content)) }) : ee(gt, ge);
|
|
3399
3422
|
return ee("li", { key: p.notificationId, style: { display: "contents" } }, [Ba]);
|
|
3400
3423
|
});
|
|
@@ -3422,8 +3445,8 @@ const Lr = H({
|
|
|
3422
3445
|
onClick: S
|
|
3423
3446
|
},
|
|
3424
3447
|
[
|
|
3425
|
-
ee(
|
|
3426
|
-
|
|
3448
|
+
ee(Gn, { icon: "lucide-x", size: "xs", "aria-hidden": "true" }),
|
|
3449
|
+
x.global.t("CORE.NOTIFICATIONS.CLEAR_ALL")
|
|
3427
3450
|
]
|
|
3428
3451
|
)
|
|
3429
3452
|
]
|
|
@@ -3453,40 +3476,40 @@ const Lr = H({
|
|
|
3453
3476
|
);
|
|
3454
3477
|
};
|
|
3455
3478
|
}
|
|
3456
|
-
}),
|
|
3479
|
+
}), _r = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
3457
3480
|
__proto__: null,
|
|
3458
|
-
default:
|
|
3481
|
+
default: Rr
|
|
3459
3482
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
3460
|
-
function
|
|
3461
|
-
t.i18n?.locale && (
|
|
3483
|
+
function Ir(e, t) {
|
|
3484
|
+
t.i18n?.locale && (x.global.locale.value = t.i18n.locale), t.i18n?.fallbackLocale && (x.global.fallbackLocale.value = t.i18n.fallbackLocale), e.use(x);
|
|
3462
3485
|
const a = Pn();
|
|
3463
|
-
e.provide(
|
|
3486
|
+
e.provide(xn, a);
|
|
3464
3487
|
const { resolveCamelCaseLocale: n } = a;
|
|
3465
3488
|
e.config.globalProperties.$mergeLocaleMessage = (s, o) => {
|
|
3466
|
-
|
|
3467
|
-
}, Object.entries(
|
|
3468
|
-
|
|
3489
|
+
x.global.mergeLocaleMessage(n(s), o);
|
|
3490
|
+
}, Object.entries(Wo).forEach(([s, o]) => {
|
|
3491
|
+
x.global.mergeLocaleMessage(n(s), o);
|
|
3469
3492
|
});
|
|
3470
3493
|
}
|
|
3471
|
-
function
|
|
3494
|
+
function vr(e) {
|
|
3472
3495
|
const t = ka({
|
|
3473
3496
|
phone: 480,
|
|
3474
3497
|
desktop: 1024
|
|
3475
3498
|
});
|
|
3476
|
-
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.greaterOrEqual("desktop"), e.config.globalProperties.$isTouch = "ontouchstart" in window || navigator.maxTouchPoints > 0, e.provide(
|
|
3499
|
+
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.greaterOrEqual("desktop"), e.config.globalProperties.$isTouch = "ontouchstart" in window || navigator.maxTouchPoints > 0, e.provide($n, e.config.globalProperties.$isPhone), e.provide(Kn, e.config.globalProperties.$isTablet), e.provide(zn, e.config.globalProperties.$isMobile), e.provide(qn, e.config.globalProperties.$isDesktop), e.provide(Yn, e.config.globalProperties.$isTouch);
|
|
3477
3500
|
}
|
|
3478
|
-
function
|
|
3479
|
-
e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(
|
|
3501
|
+
function wr(e) {
|
|
3502
|
+
e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(Zn, e.config.globalProperties.bladeRoutes);
|
|
3480
3503
|
}
|
|
3481
|
-
function
|
|
3482
|
-
e.provide(Gt, xa()), e.provide(
|
|
3483
|
-
const t =
|
|
3504
|
+
function Cr(e) {
|
|
3505
|
+
e.provide(Gt, xa()), e.provide(jn, $a()), e.provide(Xn, Ka()), e.provide(Jn, za()), e.provide(Qn, qa()), e.provide(es, fe());
|
|
3506
|
+
const t = Nn(e);
|
|
3484
3507
|
e.provide(Ut, t);
|
|
3485
3508
|
}
|
|
3486
|
-
function
|
|
3487
|
-
|
|
3509
|
+
function br(e, t) {
|
|
3510
|
+
Yo(), e.use(ys, { router: t.router }), e.use(Fs), e.use(po), e.use(Ro), e.use(bs), e.use(Cs), e.use(fs), e.use(ns, t.aiAgent);
|
|
3488
3511
|
}
|
|
3489
|
-
function
|
|
3512
|
+
function Pr(e, t) {
|
|
3490
3513
|
if (!t.applicationInsights?.instrumentationKey) return;
|
|
3491
3514
|
const a = {
|
|
3492
3515
|
appInsightsConfig: {
|
|
@@ -3501,7 +3524,7 @@ function Cr(e, t) {
|
|
|
3501
3524
|
};
|
|
3502
3525
|
e.provide(Ya, a);
|
|
3503
3526
|
}
|
|
3504
|
-
function
|
|
3527
|
+
function Nr(e, t) {
|
|
3505
3528
|
if (!t.applicationInsights?.instrumentationKey) return;
|
|
3506
3529
|
const a = {
|
|
3507
3530
|
appInsightsConfig: {
|
|
@@ -3514,8 +3537,8 @@ function Pr(e, t) {
|
|
|
3514
3537
|
cloudRole: t.applicationInsights?.cloudRole,
|
|
3515
3538
|
cloudRoleInstance: t.applicationInsights?.cloudRoleInstance
|
|
3516
3539
|
};
|
|
3517
|
-
e.use(
|
|
3518
|
-
const n = e.runWithContext(() =>
|
|
3540
|
+
e.use(ms, a);
|
|
3541
|
+
const n = e.runWithContext(() => gs());
|
|
3519
3542
|
e.provide(Za, n), e.runWithContext(() => {
|
|
3520
3543
|
const { setupPageTracking: s } = ja();
|
|
3521
3544
|
t.router.beforeEach((o) => {
|
|
@@ -3525,26 +3548,24 @@ function Pr(e, t) {
|
|
|
3525
3548
|
});
|
|
3526
3549
|
});
|
|
3527
3550
|
}
|
|
3528
|
-
function
|
|
3551
|
+
function Dr(e) {
|
|
3529
3552
|
const t = (a) => {
|
|
3530
3553
|
let n = {};
|
|
3531
3554
|
return Object.keys(a.params).length > 0 && (n = Object.fromEntries(Object.entries(a.params).filter(([s]) => s !== "pathMatch"))), n;
|
|
3532
3555
|
};
|
|
3533
|
-
e.beforeEach(
|
|
3534
|
-
const {
|
|
3535
|
-
|
|
3536
|
-
|
|
3537
|
-
|
|
3538
|
-
|
|
3539
|
-
|
|
3540
|
-
return localStorage.setItem("redirectAfterLogin", a.fullPath), { name: "Login" };
|
|
3541
|
-
}
|
|
3556
|
+
e.beforeEach((a) => {
|
|
3557
|
+
const { authState: n, loadUser: s } = se();
|
|
3558
|
+
return Mo(a, {
|
|
3559
|
+
authState: n,
|
|
3560
|
+
loadUser: s,
|
|
3561
|
+
onSessionCheckFailed: () => j.error(x.global.t("CORE.ERRORS.SESSION_CHECK_FAILED"), { timeout: 5e3 })
|
|
3562
|
+
});
|
|
3542
3563
|
}), e.beforeEach((a, n) => {
|
|
3543
3564
|
const { hasAccess: s } = st();
|
|
3544
3565
|
if (a.meta.permissions) {
|
|
3545
3566
|
if (s(a.meta.permissions)) return !0;
|
|
3546
3567
|
{
|
|
3547
|
-
|
|
3568
|
+
j.error(x.global.t("PERMISSION_MESSAGES.ACCESS_RESTRICTED"), {
|
|
3548
3569
|
timeout: 3e3
|
|
3549
3570
|
});
|
|
3550
3571
|
const o = t(a);
|
|
@@ -3553,423 +3574,424 @@ function br(e) {
|
|
|
3553
3574
|
} else return !0;
|
|
3554
3575
|
});
|
|
3555
3576
|
}
|
|
3556
|
-
const
|
|
3577
|
+
const jl = {
|
|
3557
3578
|
install(e, t) {
|
|
3558
|
-
|
|
3559
|
-
performance.mark("vc:deferred-plugins-start"),
|
|
3579
|
+
Xo(), Ga().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = yo(t.router), Ir(e, t), vr(e), wr(e), Cr(e), br(e, t), Pr(e, t), Ho(e), typeof window < "u" && (e.runWithContext(() => aa()), e.runWithContext(() => sa())), Dr(t.router), setTimeout(() => {
|
|
3580
|
+
performance.mark("vc:deferred-plugins-start"), Nr(e, t), performance.mark("vc:deferred-plugins-done");
|
|
3560
3581
|
}, 0);
|
|
3561
3582
|
}
|
|
3562
3583
|
};
|
|
3563
3584
|
export {
|
|
3564
|
-
|
|
3565
|
-
|
|
3566
|
-
|
|
3567
|
-
|
|
3568
|
-
|
|
3585
|
+
zf as AI_AGENT_URL_ENV_KEY,
|
|
3586
|
+
YE as AiAgentServiceKey,
|
|
3587
|
+
Fn as ApiException,
|
|
3588
|
+
ZE as AppBarMobileButtonsServiceKey,
|
|
3589
|
+
Xn as AppBarWidgetServiceKey,
|
|
3569
3590
|
Za as AppInsightsInstanceKey,
|
|
3570
3591
|
Ya as AppInsightsOptionsKey,
|
|
3571
|
-
|
|
3572
|
-
|
|
3573
|
-
|
|
3574
|
-
|
|
3575
|
-
|
|
3576
|
-
|
|
3577
|
-
|
|
3578
|
-
|
|
3579
|
-
|
|
3580
|
-
|
|
3581
|
-
|
|
3582
|
-
|
|
3592
|
+
jE as AppManifestClient,
|
|
3593
|
+
XE as AppPlacement,
|
|
3594
|
+
JE as AppRootElementKey,
|
|
3595
|
+
QE as AppsClient,
|
|
3596
|
+
po as AssetsDetailsModule,
|
|
3597
|
+
Lo as AssetsManager,
|
|
3598
|
+
Ro as AssetsManagerModule,
|
|
3599
|
+
ef as AuthApiBase,
|
|
3600
|
+
tf as AuthorizationClient,
|
|
3601
|
+
Ql as BUILTIN_CELL_TYPES,
|
|
3602
|
+
af as BladeBackButtonKey,
|
|
3603
|
+
nf as BladeBannersKey,
|
|
3583
3604
|
$t as BladeContextKey,
|
|
3584
|
-
|
|
3605
|
+
sf as BladeDataKey,
|
|
3585
3606
|
xt as BladeDescriptorKey,
|
|
3586
|
-
|
|
3587
|
-
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3591
|
-
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
|
|
3596
|
-
|
|
3597
|
-
|
|
3598
|
-
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3607
|
-
|
|
3608
|
-
|
|
3609
|
-
|
|
3610
|
-
|
|
3611
|
-
|
|
3612
|
-
|
|
3613
|
-
|
|
3614
|
-
|
|
3615
|
-
|
|
3616
|
-
|
|
3617
|
-
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3621
|
-
|
|
3607
|
+
eu as BladeError,
|
|
3608
|
+
Hn as BladeFormKey,
|
|
3609
|
+
of as BladeLoadingKey,
|
|
3610
|
+
rf as BladeMaximizedKey,
|
|
3611
|
+
Bn as BladeMessagingKey,
|
|
3612
|
+
lf as BladeRenderingStateKey,
|
|
3613
|
+
Zn as BladeRoutesKey,
|
|
3614
|
+
yn as BladeStackKey,
|
|
3615
|
+
tu as ButtonGroupKey,
|
|
3616
|
+
Bs as COMPONENT_DEFAULTS,
|
|
3617
|
+
au as CellDate,
|
|
3618
|
+
nu as CellDateAgo,
|
|
3619
|
+
su as CellDefault,
|
|
3620
|
+
ou as CellEditableWrapper,
|
|
3621
|
+
ru as CellHtml,
|
|
3622
|
+
iu as CellImage,
|
|
3623
|
+
lu as CellLink,
|
|
3624
|
+
uu as CellMoney,
|
|
3625
|
+
du as CellNumber,
|
|
3626
|
+
cu as CellStatus,
|
|
3627
|
+
Eu as CellStatusIcon,
|
|
3628
|
+
uf as ChangeLogClient,
|
|
3629
|
+
wd as ChangePassword,
|
|
3630
|
+
Cd as ChangePasswordButton,
|
|
3631
|
+
zl as ChangePasswordPage,
|
|
3632
|
+
Rm as ChartContainer,
|
|
3633
|
+
_m as ChartLegend,
|
|
3634
|
+
Im as ChartTooltip,
|
|
3635
|
+
df as CloseSettingsMenuKey,
|
|
3636
|
+
bd as ColumnCollector,
|
|
3637
|
+
qf as DEFAULT_AI_AGENT_CONFIG,
|
|
3638
|
+
vm as DashboardBarChart,
|
|
3639
|
+
wm as DashboardDonutChart,
|
|
3640
|
+
um as DashboardFeedList,
|
|
3641
|
+
dm as DashboardFeedRow,
|
|
3642
|
+
Cm as DashboardLineChart,
|
|
3622
3643
|
cf as DashboardServiceKey,
|
|
3623
|
-
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
|
|
3627
|
-
|
|
3628
|
-
|
|
3629
|
-
|
|
3630
|
-
|
|
3631
|
-
|
|
3632
|
-
|
|
3633
|
-
|
|
3634
|
-
|
|
3635
|
-
|
|
3636
|
-
|
|
3637
|
-
|
|
3638
|
-
|
|
3639
|
-
|
|
3640
|
-
|
|
3641
|
-
|
|
3642
|
-
|
|
3643
|
-
|
|
3644
|
+
cm as DashboardStatItem,
|
|
3645
|
+
Em as DashboardWidgetCard,
|
|
3646
|
+
Ef as DeveloperToolsClient,
|
|
3647
|
+
ff as DiagnosticsClient,
|
|
3648
|
+
fu as DisplayableError,
|
|
3649
|
+
fm as DraggableDashboard,
|
|
3650
|
+
mf as DynamicModulesKey,
|
|
3651
|
+
gf as DynamicPropertiesClient,
|
|
3652
|
+
Sf as DynamicPropertyValueType,
|
|
3653
|
+
Yf as EMBEDDED_TO_HOST_MESSAGE_TYPES,
|
|
3654
|
+
Af as EmbeddedModeKey,
|
|
3655
|
+
pf as EntryState,
|
|
3656
|
+
Pd as ErrorInterceptor,
|
|
3657
|
+
_s as ExtensionPoint,
|
|
3658
|
+
Pm as ExtensionPoints,
|
|
3659
|
+
ar as ExternalProviders,
|
|
3660
|
+
Tf as ExternalSignInClient,
|
|
3661
|
+
mu as FALLBACK_BLADE_ID,
|
|
3662
|
+
xl as ForgotPassword,
|
|
3663
|
+
gu as FrameworkError,
|
|
3664
|
+
Zf as HOST_TO_EMBEDDED_MESSAGE_TYPES,
|
|
3644
3665
|
yt as InjectionError,
|
|
3645
|
-
|
|
3646
|
-
|
|
3647
|
-
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
|
|
3652
|
-
|
|
3653
|
-
|
|
3654
|
-
|
|
3655
|
-
|
|
3656
|
-
|
|
3657
|
-
|
|
3658
|
-
|
|
3659
|
-
|
|
3660
|
-
|
|
3661
|
-
|
|
3662
|
-
|
|
3663
|
-
|
|
3664
|
-
|
|
3665
|
-
|
|
3666
|
-
|
|
3667
|
-
|
|
3666
|
+
hf as InternalRoutesKey,
|
|
3667
|
+
Kl as Invite,
|
|
3668
|
+
qn as IsDesktopKey,
|
|
3669
|
+
zn as IsMobileKey,
|
|
3670
|
+
$n as IsPhoneKey,
|
|
3671
|
+
Kn as IsTabletKey,
|
|
3672
|
+
Yn as IsTouchKey,
|
|
3673
|
+
Lf as JobsClient,
|
|
3674
|
+
Of as JsonValueKind,
|
|
3675
|
+
mm as LAYOUT_STORAGE_KEY,
|
|
3676
|
+
Nd as LanguageSelector,
|
|
3677
|
+
xn as LanguageServiceKey,
|
|
3678
|
+
Rf as LocalizableSettingsClient,
|
|
3679
|
+
Gl as Login,
|
|
3680
|
+
Dd as LogoutButton,
|
|
3681
|
+
yd as MenuBurgerIcon,
|
|
3682
|
+
Jn as MenuServiceKey,
|
|
3683
|
+
Su as ModuleLoadError,
|
|
3684
|
+
_f as ModulesClient,
|
|
3685
|
+
If as ModulesLoadErrorKey,
|
|
3686
|
+
vf as ModulesReadyKey,
|
|
3687
|
+
wf as NOOP_URL_SINK,
|
|
3688
|
+
Rr as NotificationContainer,
|
|
3668
3689
|
un as NotificationContextKey,
|
|
3669
|
-
|
|
3670
|
-
|
|
3671
|
-
|
|
3672
|
-
|
|
3673
|
-
|
|
3690
|
+
Bd as NotificationDropdown,
|
|
3691
|
+
es as NotificationStoreKey,
|
|
3692
|
+
Md as NotificationTemplate,
|
|
3693
|
+
Cf as OAuthAppsClient,
|
|
3694
|
+
bf as ProgressMessageLevel,
|
|
3674
3695
|
Pf as PushNotificationClient,
|
|
3675
|
-
|
|
3676
|
-
|
|
3677
|
-
|
|
3678
|
-
|
|
3679
|
-
|
|
3680
|
-
|
|
3681
|
-
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
|
|
3686
|
-
|
|
3687
|
-
|
|
3688
|
-
|
|
3689
|
-
|
|
3690
|
-
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
|
|
3694
|
-
|
|
3695
|
-
|
|
3696
|
-
|
|
3697
|
-
|
|
3698
|
-
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
|
|
3702
|
-
|
|
3703
|
-
|
|
3704
|
-
|
|
3705
|
-
|
|
3706
|
-
|
|
3707
|
-
|
|
3708
|
-
|
|
3709
|
-
|
|
3710
|
-
|
|
3711
|
-
|
|
3712
|
-
|
|
3713
|
-
|
|
3714
|
-
|
|
3715
|
-
|
|
3716
|
-
|
|
3717
|
-
|
|
3718
|
-
|
|
3719
|
-
|
|
3720
|
-
|
|
3721
|
-
|
|
3722
|
-
|
|
3696
|
+
Au as RegistrationError,
|
|
3697
|
+
$l as ResetPassword,
|
|
3698
|
+
kd as SCHEDULER_ZOOM_LEVELS,
|
|
3699
|
+
Vn as SecurityClient,
|
|
3700
|
+
pu as ServiceError,
|
|
3701
|
+
Mn as SettingClient,
|
|
3702
|
+
Nf as SettingValueType,
|
|
3703
|
+
Vd as SettingsMenu,
|
|
3704
|
+
Ud as SettingsMenuItem,
|
|
3705
|
+
Qn as SettingsMenuServiceKey,
|
|
3706
|
+
Df as SettingsV2Client,
|
|
3707
|
+
yf as ShellIndicatorsKey,
|
|
3708
|
+
Hl as Sidebar,
|
|
3709
|
+
Bf as SortDirection,
|
|
3710
|
+
Fd as Table,
|
|
3711
|
+
Wd as TableBody,
|
|
3712
|
+
Hd as TableCell,
|
|
3713
|
+
Gd as TableCheckbox,
|
|
3714
|
+
xd as TableColumnSwitcher,
|
|
3715
|
+
$d as TableEmpty,
|
|
3716
|
+
Kd as TableFooter,
|
|
3717
|
+
zd as TableGroupRow,
|
|
3718
|
+
qd as TableHead,
|
|
3719
|
+
Yd as TableHeader,
|
|
3720
|
+
Zd as TableRow,
|
|
3721
|
+
jd as TableRowActions,
|
|
3722
|
+
Xd as TableSearchHeader,
|
|
3723
|
+
Jd as TableSelectAllBar,
|
|
3724
|
+
Qd as ThemeSelector,
|
|
3725
|
+
jn as ToolbarServiceKey,
|
|
3726
|
+
ec as UserDropdownButton,
|
|
3727
|
+
Tu as ValidationError,
|
|
3728
|
+
tc as VcAccordion,
|
|
3729
|
+
ac as VcAccordionItem,
|
|
3730
|
+
jf as VcAiAgentPanel,
|
|
3731
|
+
nc as VcApp,
|
|
3732
|
+
sc as VcAppBarMobileActions,
|
|
3733
|
+
oc as VcAppBarOverlay,
|
|
3734
|
+
rc as VcAppBarWidgetContent,
|
|
3735
|
+
ic as VcAppBarWidgetItem,
|
|
3736
|
+
lc as VcAppBarWidgetsMenu,
|
|
3737
|
+
uc as VcAppDesktopLayout,
|
|
3738
|
+
dc as VcAppMenu,
|
|
3739
|
+
cc as VcAppMenuSidebar,
|
|
3740
|
+
Ec as VcAppMobileLayout,
|
|
3741
|
+
fc as VcAppSidebarCollapseButton,
|
|
3742
|
+
mc as VcAppSidebarContent,
|
|
3743
|
+
gc as VcAppSidebarHeader,
|
|
3723
3744
|
_e as VcAuthLayout,
|
|
3724
|
-
|
|
3725
|
-
|
|
3745
|
+
Sc as VcBadge,
|
|
3746
|
+
vn as VcBanner,
|
|
3726
3747
|
Wt as VcBlade,
|
|
3727
|
-
|
|
3728
|
-
|
|
3729
|
-
|
|
3730
|
-
|
|
3731
|
-
|
|
3732
|
-
|
|
3733
|
-
|
|
3734
|
-
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3748
|
+
Ac as VcBladeNavigation,
|
|
3749
|
+
ys as VcBladeNavigationComponent,
|
|
3750
|
+
pc as VcBladeNavigationV2,
|
|
3751
|
+
Tc as VcBladeSlot,
|
|
3752
|
+
hc as VcBreadcrumbs,
|
|
3753
|
+
$ as VcButton,
|
|
3754
|
+
Lc as VcButtonGroup,
|
|
3755
|
+
Oc as VcCard,
|
|
3756
|
+
In as VcCheckbox,
|
|
3757
|
+
Rc as VcCheckboxGroup,
|
|
3758
|
+
_c as VcCol,
|
|
3759
|
+
hu as VcColorInput,
|
|
3739
3760
|
Se as VcColumn,
|
|
3740
3761
|
Ln as VcContainer,
|
|
3741
3762
|
Rn as VcDataTable,
|
|
3742
|
-
|
|
3743
|
-
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
|
|
3747
|
-
|
|
3763
|
+
Lu as VcDatePicker,
|
|
3764
|
+
Ic as VcDropdown,
|
|
3765
|
+
vc as VcDropdownItem,
|
|
3766
|
+
wc as VcDynamicProperty,
|
|
3767
|
+
Cc as VcEditor,
|
|
3768
|
+
bc as VcEnvironmentBanner,
|
|
3748
3769
|
Ke as VcField,
|
|
3749
|
-
|
|
3770
|
+
Pc as VcFileUpload,
|
|
3750
3771
|
me as VcForm,
|
|
3751
|
-
|
|
3772
|
+
Nc as VcGallery,
|
|
3752
3773
|
Ee as VcHint,
|
|
3753
|
-
|
|
3774
|
+
Gn as VcIcon,
|
|
3754
3775
|
ot as VcImage,
|
|
3755
|
-
|
|
3756
|
-
|
|
3757
|
-
|
|
3758
|
-
|
|
3759
|
-
|
|
3760
|
-
|
|
3761
|
-
|
|
3762
|
-
|
|
3763
|
-
|
|
3776
|
+
Dc as VcImageTile,
|
|
3777
|
+
yc as VcImageUpload,
|
|
3778
|
+
K as VcInput,
|
|
3779
|
+
Ou as VcInputCurrency,
|
|
3780
|
+
Ru as VcInputDropdown,
|
|
3781
|
+
Bc as VcInputGroup,
|
|
3782
|
+
_u as VcLabel,
|
|
3783
|
+
Mc as VcLanguageSelector,
|
|
3784
|
+
Iu as VcLink,
|
|
3764
3785
|
Ht as VcLoading,
|
|
3765
|
-
|
|
3766
|
-
|
|
3767
|
-
|
|
3768
|
-
|
|
3769
|
-
|
|
3770
|
-
|
|
3771
|
-
|
|
3786
|
+
kc as VcMenu,
|
|
3787
|
+
Vc as VcMenuExpandedKey,
|
|
3788
|
+
Uc as VcMenuGroup,
|
|
3789
|
+
Fc as VcMenuItem,
|
|
3790
|
+
Wc as VcMultivalue,
|
|
3791
|
+
Hc as VcPagination,
|
|
3792
|
+
Gc as VcPopover,
|
|
3772
3793
|
Sn as VcPopup,
|
|
3773
|
-
|
|
3774
|
-
|
|
3775
|
-
|
|
3776
|
-
|
|
3777
|
-
|
|
3778
|
-
|
|
3779
|
-
|
|
3780
|
-
|
|
3794
|
+
xc as VcProgress,
|
|
3795
|
+
$c as VcRadioButton,
|
|
3796
|
+
Kc as VcRadioGroup,
|
|
3797
|
+
zc as VcRating,
|
|
3798
|
+
qc as VcRow,
|
|
3799
|
+
Yc as VcScheduler,
|
|
3800
|
+
vu as VcScrollableContainer,
|
|
3801
|
+
wu as VcSelect,
|
|
3781
3802
|
_n as VcSidebar,
|
|
3782
|
-
|
|
3783
|
-
|
|
3784
|
-
|
|
3785
|
-
|
|
3786
|
-
|
|
3787
|
-
|
|
3803
|
+
Cu as VcSkeleton,
|
|
3804
|
+
Zc as VcSlider,
|
|
3805
|
+
bu as VcStatus,
|
|
3806
|
+
Pu as VcStatusIcon,
|
|
3807
|
+
jc as VcSwitch,
|
|
3808
|
+
Xc as VcTable,
|
|
3788
3809
|
On as VcTextarea,
|
|
3789
3810
|
gt as VcToast,
|
|
3790
|
-
|
|
3791
|
-
|
|
3792
|
-
|
|
3793
|
-
|
|
3811
|
+
Mf as VcTooltip,
|
|
3812
|
+
Jc as VcVideo,
|
|
3813
|
+
Qc as VcWidget,
|
|
3814
|
+
kn as WidgetScopeKey,
|
|
3794
3815
|
Gt as WidgetServiceKey,
|
|
3795
3816
|
Ft as __registerBladeConfig,
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
|
|
3810
|
-
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
|
|
3815
|
-
|
|
3816
|
-
|
|
3817
|
+
eE as _createEnvironmentNameLogic,
|
|
3818
|
+
kf as _createInternalUserLogic,
|
|
3819
|
+
ql as _resetAdapterState,
|
|
3820
|
+
Vf as _sharedInternalUserLogic,
|
|
3821
|
+
Nu as addAppBarWidget,
|
|
3822
|
+
Du as addMenuItem,
|
|
3823
|
+
yu as addSettingsMenuItem,
|
|
3824
|
+
Bu as after,
|
|
3825
|
+
ns as aiAgentPlugin,
|
|
3826
|
+
tE as autofocus,
|
|
3827
|
+
Mu as before,
|
|
3828
|
+
ku as bigInt,
|
|
3829
|
+
Tl as camelToSnake,
|
|
3830
|
+
Ll as camelize,
|
|
3831
|
+
gm as clearLayoutStorage,
|
|
3832
|
+
Vu as convertColorNameToHex,
|
|
3833
|
+
Uu as convertMomentFormat,
|
|
3834
|
+
Xf as createAiAgentToolbarButton,
|
|
3835
|
+
vl as createAppModule,
|
|
3836
|
+
Fu as createBackendRegistry,
|
|
3837
|
+
Wu as createKeyedBackendRegistry,
|
|
3817
3838
|
k as createLogger,
|
|
3818
|
-
|
|
3839
|
+
jl as default,
|
|
3819
3840
|
Et as defineAppModule,
|
|
3820
|
-
|
|
3821
|
-
|
|
3822
|
-
|
|
3823
|
-
|
|
3824
|
-
|
|
3825
|
-
|
|
3826
|
-
|
|
3827
|
-
|
|
3828
|
-
|
|
3829
|
-
|
|
3830
|
-
|
|
3831
|
-
|
|
3832
|
-
|
|
3841
|
+
Ul as defineBladeContext,
|
|
3842
|
+
Nm as defineExtensionPoint,
|
|
3843
|
+
aE as detectThemePreset,
|
|
3844
|
+
Jf as expectedCode,
|
|
3845
|
+
Qf as expectedEventKey,
|
|
3846
|
+
Hu as fileWeight,
|
|
3847
|
+
nE as focusFallbackTarget,
|
|
3848
|
+
sE as focusIfLoose,
|
|
3849
|
+
oE as formatBadgeCount,
|
|
3850
|
+
Gu as formatDateRelative,
|
|
3851
|
+
xu as formatDateWithPattern,
|
|
3852
|
+
em as formatShortcut,
|
|
3853
|
+
Sm as fromGridstackNode,
|
|
3833
3854
|
Fa as generateId,
|
|
3834
|
-
|
|
3835
|
-
|
|
3836
|
-
|
|
3837
|
-
|
|
3855
|
+
rE as getAllBladeConfigs,
|
|
3856
|
+
$u as getBestThumbnailSize,
|
|
3857
|
+
iE as getBladeConfig,
|
|
3858
|
+
wl as getComponentDefaults,
|
|
3838
3859
|
Yt as getExtensionColor,
|
|
3839
3860
|
Zt as getExtensionLabel,
|
|
3840
|
-
|
|
3841
|
-
|
|
3842
|
-
|
|
3843
|
-
|
|
3844
|
-
|
|
3845
|
-
|
|
3846
|
-
|
|
3861
|
+
Ku as getMenuBadge,
|
|
3862
|
+
zu as getMenuBadges,
|
|
3863
|
+
qu as getThumbnailUrl,
|
|
3864
|
+
tm as hotkey,
|
|
3865
|
+
x as i18n,
|
|
3866
|
+
Fl as injectBladeContext,
|
|
3867
|
+
Uf as isAuthenticationFailure,
|
|
3868
|
+
Yu as isFrameworkError,
|
|
3847
3869
|
zt as isImage,
|
|
3848
|
-
|
|
3849
|
-
|
|
3850
|
-
|
|
3851
|
-
|
|
3852
|
-
|
|
3853
|
-
|
|
3854
|
-
|
|
3870
|
+
Zu as isScrolledToEnd,
|
|
3871
|
+
am as isTextInputFocused,
|
|
3872
|
+
ju as isValidHexColor,
|
|
3873
|
+
Is as kebabToCamel,
|
|
3874
|
+
hl as kebabToPascal,
|
|
3875
|
+
lE as languageToCountryMap,
|
|
3876
|
+
Am as loadLayoutFromStorage,
|
|
3855
3877
|
Ua as loading,
|
|
3856
|
-
|
|
3857
|
-
|
|
3858
|
-
|
|
3859
|
-
|
|
3860
|
-
|
|
3861
|
-
|
|
3862
|
-
|
|
3863
|
-
|
|
3864
|
-
|
|
3865
|
-
|
|
3866
|
-
|
|
3867
|
-
|
|
3868
|
-
|
|
3869
|
-
|
|
3870
|
-
|
|
3878
|
+
Ff as logger,
|
|
3879
|
+
Wf as loggers,
|
|
3880
|
+
nm as matchesEvent,
|
|
3881
|
+
pm as mergeLayoutWithWidgets,
|
|
3882
|
+
Xu as mindimensions,
|
|
3883
|
+
Ju as normalizeHexColor,
|
|
3884
|
+
j as notification,
|
|
3885
|
+
be as parseError,
|
|
3886
|
+
Cs as permissions,
|
|
3887
|
+
Qu as provideAppBarState,
|
|
3888
|
+
uE as provideAppBarWidget,
|
|
3889
|
+
ed as provideDashboardService,
|
|
3890
|
+
dE as provideLanguages,
|
|
3891
|
+
td as provideMenuService,
|
|
3892
|
+
ad as provideSettingsMenu,
|
|
3871
3893
|
cE as provideSidebarState,
|
|
3872
|
-
|
|
3894
|
+
nd as provideToolbarService,
|
|
3873
3895
|
qt as readableSize,
|
|
3874
|
-
|
|
3875
|
-
|
|
3876
|
-
|
|
3877
|
-
|
|
3878
|
-
|
|
3879
|
-
|
|
3880
|
-
|
|
3881
|
-
|
|
3882
|
-
|
|
3883
|
-
|
|
3884
|
-
|
|
3885
|
-
|
|
3886
|
-
|
|
3887
|
-
|
|
3888
|
-
|
|
3889
|
-
|
|
3890
|
-
|
|
3891
|
-
|
|
3892
|
-
|
|
3893
|
-
|
|
3894
|
-
|
|
3895
|
-
|
|
3896
|
-
|
|
3897
|
-
|
|
3896
|
+
sd as registerBuiltinCells,
|
|
3897
|
+
od as registerDashboardWidget,
|
|
3898
|
+
rd as registerExternalWidget,
|
|
3899
|
+
id as registerToolbarItem,
|
|
3900
|
+
ld as registerWidget,
|
|
3901
|
+
ud as removeMenuBadge,
|
|
3902
|
+
dd as removeRegisteredMenuItem,
|
|
3903
|
+
EE as resolveEnvironment,
|
|
3904
|
+
cd as resolveLocale,
|
|
3905
|
+
Ed as resolveLocaleSync,
|
|
3906
|
+
Tm as saveLayoutToStorage,
|
|
3907
|
+
fd as setMenuBadge,
|
|
3908
|
+
fE as sidebarStorageKey,
|
|
3909
|
+
bs as signalR,
|
|
3910
|
+
mE as stripTenantPrefix,
|
|
3911
|
+
hm as toGridstackWidget,
|
|
3912
|
+
gE as useAdaptiveItems,
|
|
3913
|
+
sm as useAiAgent,
|
|
3914
|
+
$f as useAiAgentContext,
|
|
3915
|
+
Ks as useApiClient,
|
|
3916
|
+
SE as useAppBarMobileActions,
|
|
3917
|
+
md as useAppBarState,
|
|
3918
|
+
AE as useAppBarWidget,
|
|
3919
|
+
pE as useAppBarWidgets,
|
|
3898
3920
|
ja as useAppInsights,
|
|
3899
|
-
|
|
3900
|
-
|
|
3921
|
+
Nl as useAssets,
|
|
3922
|
+
Dl as useAssetsManager,
|
|
3901
3923
|
Xt as useAsync,
|
|
3902
|
-
|
|
3903
|
-
|
|
3924
|
+
TE as useBadge,
|
|
3925
|
+
Zs as useBeforeUnload,
|
|
3904
3926
|
ut as useBlade,
|
|
3905
|
-
|
|
3906
|
-
|
|
3907
|
-
|
|
3908
|
-
|
|
3909
|
-
|
|
3910
|
-
|
|
3911
|
-
|
|
3912
|
-
|
|
3913
|
-
|
|
3914
|
-
|
|
3915
|
-
|
|
3916
|
-
|
|
3917
|
-
|
|
3918
|
-
|
|
3919
|
-
|
|
3920
|
-
|
|
3921
|
-
|
|
3922
|
-
|
|
3923
|
-
|
|
3924
|
-
|
|
3925
|
-
|
|
3926
|
-
|
|
3927
|
-
|
|
3928
|
-
|
|
3929
|
-
|
|
3930
|
-
|
|
3931
|
-
|
|
3932
|
-
|
|
3933
|
-
|
|
3934
|
-
|
|
3935
|
-
|
|
3936
|
-
|
|
3927
|
+
Zl as useBladeForm,
|
|
3928
|
+
gd as useBladeLoading,
|
|
3929
|
+
hE as useBladeMessaging,
|
|
3930
|
+
Yl as useBladeNavigation,
|
|
3931
|
+
Ol as useBladeNotifications,
|
|
3932
|
+
om as useBladeStack,
|
|
3933
|
+
kl as useBladeWidgets,
|
|
3934
|
+
yl as useBreadcrumbs,
|
|
3935
|
+
_l as useBroadcastFilter,
|
|
3936
|
+
Sd as useCellRegistry,
|
|
3937
|
+
LE as useCollapsible,
|
|
3938
|
+
OE as useColumnFilter,
|
|
3939
|
+
qo as useContainer,
|
|
3940
|
+
Ad as useDashboard,
|
|
3941
|
+
RE as useDataTablePagination,
|
|
3942
|
+
_E as useDataTableSort,
|
|
3943
|
+
Bl as useDynamicProperties,
|
|
3944
|
+
IE as useEnvironmentName,
|
|
3945
|
+
pd as useErrorHandler,
|
|
3946
|
+
Dm as useExtensionPoint,
|
|
3947
|
+
vE as useFilterState,
|
|
3948
|
+
Td as useFloatingPosition,
|
|
3949
|
+
hd as useFormField,
|
|
3950
|
+
Cl as useFunctions,
|
|
3951
|
+
wE as useGalleryPreview,
|
|
3952
|
+
Lm as useGridstack,
|
|
3953
|
+
CE as useImageLoad,
|
|
3954
|
+
xo as useInstance,
|
|
3955
|
+
rm as useIsMac,
|
|
3956
|
+
im as useKeyboardShortcuts,
|
|
3957
|
+
bE as useLanguages,
|
|
3958
|
+
Pl as useLatestRequest,
|
|
3937
3959
|
Jt as useLoading,
|
|
3938
3960
|
PE as useMenuActiveState,
|
|
3939
|
-
|
|
3940
|
-
|
|
3941
|
-
|
|
3961
|
+
Ld as useMenuService,
|
|
3962
|
+
Wl as useModificationTracker,
|
|
3963
|
+
Rl as useNotificationContext,
|
|
3942
3964
|
fe as useNotificationStore,
|
|
3943
|
-
|
|
3965
|
+
bl as useNotifications,
|
|
3944
3966
|
st as usePermissions,
|
|
3945
|
-
|
|
3967
|
+
bn as usePopup,
|
|
3946
3968
|
Ha as useResponsive,
|
|
3947
|
-
|
|
3969
|
+
Od as useScrollArrows,
|
|
3948
3970
|
we as useSettings,
|
|
3949
|
-
|
|
3950
|
-
|
|
3951
|
-
|
|
3952
|
-
|
|
3953
|
-
|
|
3954
|
-
|
|
3955
|
-
|
|
3956
|
-
|
|
3957
|
-
|
|
3958
|
-
|
|
3959
|
-
|
|
3960
|
-
|
|
3961
|
-
|
|
3962
|
-
|
|
3963
|
-
|
|
3964
|
-
|
|
3971
|
+
Rd as useSettingsMenu,
|
|
3972
|
+
NE as useShellBootstrap,
|
|
3973
|
+
DE as useShellLifecycle,
|
|
3974
|
+
yE as useShellNavigation,
|
|
3975
|
+
BE as useSidebarState,
|
|
3976
|
+
ME as useTableColumnsReorder,
|
|
3977
|
+
kE as useTableColumnsResize,
|
|
3978
|
+
VE as useTableContext,
|
|
3979
|
+
UE as useTableInlineEdit,
|
|
3980
|
+
Il as useTableQueryState,
|
|
3981
|
+
FE as useTableRowGrouping,
|
|
3982
|
+
WE as useTableRowReorder,
|
|
3983
|
+
HE as useTableSearch,
|
|
3984
|
+
GE as useTableSelection,
|
|
3985
|
+
xE as useTableSort,
|
|
3986
|
+
Hf as useTeleportTarget,
|
|
3965
3987
|
Ga as useTheme,
|
|
3966
|
-
|
|
3967
|
-
|
|
3968
|
-
|
|
3969
|
-
|
|
3970
|
-
|
|
3971
|
-
|
|
3972
|
-
|
|
3988
|
+
$E as useToggleableContent,
|
|
3989
|
+
_d as useToolbar,
|
|
3990
|
+
Gf as useUser,
|
|
3991
|
+
KE as useVirtualScroll,
|
|
3992
|
+
Ml as useWebVitals,
|
|
3993
|
+
Vl as useWidgetTrigger,
|
|
3994
|
+
zE as vAutofocus,
|
|
3973
3995
|
Ua as vLoading,
|
|
3974
|
-
|
|
3996
|
+
Id as wrapError
|
|
3975
3997
|
};
|