@vc-shell/framework 2.6.2-pr377.baaccf5 → 2.6.2-pr377.e84ea79
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-CnlpAf5M.js → VcAiAgentPanel.vue_vue_type_script_setup_true_lang-CmsM1ooA.js} +1 -1
- package/dist/chunks/{VcAiAgentPanel.vue_vue_type_script_setup_true_lang-CnlpAf5M.js.map → VcAiAgentPanel.vue_vue_type_script_setup_true_lang-CmsM1ooA.js.map} +1 -1
- package/dist/chunks/{VcAiAgentPanel.vue_vue_type_style_index_0_lang-WY4VKA8v.js → VcAiAgentPanel.vue_vue_type_style_index_0_lang-JB7OKRk6.js} +45 -45
- package/dist/chunks/{VcAiAgentPanel.vue_vue_type_style_index_0_lang-WY4VKA8v.js.map → VcAiAgentPanel.vue_vue_type_style_index_0_lang-JB7OKRk6.js.map} +1 -1
- package/dist/chunks/{VcScheduler.vue_vue_type_script_setup_true_lang-D63Qupyo.js → VcScheduler.vue_vue_type_script_setup_true_lang-CqFO0C1J.js} +3 -3
- package/dist/chunks/{VcScheduler.vue_vue_type_script_setup_true_lang-D63Qupyo.js.map → VcScheduler.vue_vue_type_script_setup_true_lang-CqFO0C1J.js.map} +1 -1
- package/dist/chunks/{VcScheduler.vue_vue_type_style_index_0_lang-Yh0wHy7X.js → VcScheduler.vue_vue_type_style_index_0_lang-Cjmi5lAM.js} +1 -1
- package/dist/chunks/{VcScheduler.vue_vue_type_style_index_0_lang-Yh0wHy7X.js.map → VcScheduler.vue_vue_type_style_index_0_lang-Cjmi5lAM.js.map} +1 -1
- package/dist/chunks/{dashboard-feed-row.vue_vue_type_script_setup_true_lang-BhXOhFMS.js → dashboard-feed-row.vue_vue_type_script_setup_true_lang-CYq_EvRc.js} +2 -2
- package/dist/chunks/{dashboard-feed-row.vue_vue_type_script_setup_true_lang-BhXOhFMS.js.map → dashboard-feed-row.vue_vue_type_script_setup_true_lang-CYq_EvRc.js.map} +1 -1
- package/dist/chunks/{index-DFCimHiC.js → index-_JlFbcuN.js} +2 -2
- package/dist/chunks/{index-DFCimHiC.js.map → index-_JlFbcuN.js.map} +1 -1
- package/dist/core/interceptors/index.d.ts.map +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/framework.js +1060 -1056
- package/dist/framework.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/index.js +3 -3
- package/package.json +4 -4
package/dist/framework.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { b as
|
|
2
|
-
import { N as st, O as se, P as J, Q as z, l as x, R as Pe, S as
|
|
3
|
-
import { B as
|
|
4
|
-
import { getCurrentScope as rt, onScopeDispose as it, computed as I, inject as Q, watch as ae, defineComponent as H, openBlock as P, createBlock as D, createSlots as Le, withCtx as T, renderSlot as Y, createElementVNode as U, normalizeClass as
|
|
5
|
-
import { aS as fe, aT as
|
|
6
|
-
import { bh as
|
|
7
|
-
import { _ as
|
|
8
|
-
import { c as k, b as
|
|
9
|
-
import { A as zE,
|
|
1
|
+
import { b as Va, c as Ua } from "./chunks/vendor-vueuse-core-_wFDcFkI.js";
|
|
2
|
+
import { N as st, O as se, P as J, Q as z, l as x, R as Pe, S as Fa, T as Mt, p as ot, q as $, n as Se, A as Wa, U as Ha, W as Ga, X as xa, V as Ee, Y as $a, Z as Ka, $ as za, a0 as qa, a1 as Ya, a2 as Za, a3 as ja, a4 as Xa, a5 as Ja } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-Cjmi5lAM.js";
|
|
3
|
+
import { B as jl, a6 as Xl, a as Jl, _ as Ql, b as eu, c as tu, d as au, e as nu, f as su, g as ou, h as ru, i as iu, j as lu, k as uu, a7 as cu, a8 as du, a9 as Eu, aa as fu, ab as mu, ac as gu, ad as Su, m as Au, o as pu, r as Tu, s as hu, t as Lu, u as Ou, v as Ru, w as _u, x as Iu, y as vu, z as wu, ae as Cu, af as Pu, ag as bu, ah as Nu, ai as Du, aj as yu, ak as Bu, al as Mu, am as ku, an as Vu, ao as Uu, ap as Fu, aq as Wu, ar as Hu, as as Gu, at as xu, au as $u, av as Ku, aw as zu, ax as qu, ay as Yu, C as Zu, az as ju, aA as Xu, aB as Ju, aC as Qu, D as ec, aD as tc, aE as ac, aF as nc, aG as sc, aH as oc, aI as rc, aJ as ic, aK as lc, aL as uc, E as cc, F as dc, G as Ec, L as fc, aM as mc, H as gc, I as Sc, aN as Ac, J as pc, aO as Tc, aP as hc, aQ as Lc } from "./chunks/VcScheduler.vue_vue_type_style_index_0_lang-Cjmi5lAM.js";
|
|
4
|
+
import { getCurrentScope as rt, onScopeDispose as it, computed as I, inject as Q, watch as ae, defineComponent as H, openBlock as P, createBlock as D, createSlots as Le, withCtx as T, renderSlot as Y, createElementVNode as U, normalizeClass as Qa, createElementBlock as W, Fragment as ne, createVNode as R, unref as i, createTextVNode as M, toDisplayString as y, shallowReactive as en, ref as b, readonly as ke, onMounted as Oe, onBeforeMount as tn, onBeforeUnmount as an, shallowRef as nn, onUnmounted as sn, provide as kt, toValue as Vt, isRef as Ut, normalizeStyle as Ft, createCommentVNode as q, withDirectives as on, withModifiers as Ge, reactive as ie, createApp as rn, nextTick as be, renderList as We, withKeys as lt, mergeProps as re, getCurrentInstance as ln, warn as un, h as ee, toRaw as cn } from "vue";
|
|
5
|
+
import { aS as fe, aT as dn, aU as En, aV as Wt, aW as xe, aX as fn, aY as mn, aZ as gn, a_ as Sn, a$ as An, ab as pn, b0 as $e, b1 as Tn, b2 as hn, b3 as Re, b4 as He, b5 as Te, b6 as F, b7 as he, b8 as Ln, b9 as On, ba as mt, bb as Ht, F as Gt, M as Rn, Y as me, W as Ke, am as _n, N as In, ai as vn, B as _e, a3 as xt, E as wn, bc as Cn, bd as Pn, be as bn, an as gt, bf as Nn, bg as Dn } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-CqFO0C1J.js";
|
|
6
|
+
import { bh as Rc, bi as _c, C as Ic, bj as vc, bk as wc, bl as Cc, _ as Pc, bm as bc, bn as Nc, S as Dc, bo as yc, bp as Bc, a as Mc, b as kc, c as Vc, d as Uc, e as Fc, f as Wc, T as Hc, g as Gc, h as xc, i as $c, j as Kc, k as zc, l as qc, m as Yc, bq as Zc, br as jc, V as Xc, n as Jc, o as Qc, p as ed, q as td, r as ad, s as nd, t as sd, u as od, v as rd, w as id, x as ld, y as ud, z as cd, A as dd, D as Ed, bs as fd, bs as md, bt as gd, G as Sd, H as Ad, I as pd, J as Td, K as hd, L as Ld, O as Od, P as Rd, Q as _d, R as Id, U as vd, X as wd, Z as Cd, $ as Pd, a0 as bd, a1 as Nd, a2 as Dd, a4 as yd, a5 as Bd, a6 as Md, a7 as kd, a8 as Vd, a9 as Ud, aa as Fd, ac as Wd, ad as Hd, ae as Gd, af as xd, ag as $d, ah as Kd, aj as zd, ak as qd, al as Yd, ao as Zd, ap as jd, bu as Xd, aq as Jd, bv as Qd, bw as eE, bx as tE, by as aE, bz as nE, bA as sE, bB as oE, bC as rE, bD as iE, bE as lE, bF as uE, bG as cE, ar as dE, as as EE, at as fE, bH as mE, au as gE, av as SE, bI as AE, aw as pE, ax as TE, ay as hE, az as LE, bJ as OE, aA as RE, aB as _E, aC as IE, bK as vE, aD as wE, aE as CE, aF as PE, aG as bE, bL as NE, aH as DE, aI as yE, aJ as BE, aK as ME, aL as kE, aM as VE, aN as UE, aO as FE, aP as WE, aQ as HE, aR as GE, aq as xE } from "./chunks/VcScheduler.vue_vue_type_script_setup_true_lang-CqFO0C1J.js";
|
|
7
|
+
import { _ as yn } from "./chunks/vendor-cypress-signalr-mock-itnm2wpA.js";
|
|
8
|
+
import { c as k, b as Bn, d as Mn, i as Ne, S as kn, W as $t, B as Kt, h as Vn, j as zt, k as Un, m as Fn, l as qt, n as Wn, _ as Hn, L as Gn, I as xn, o as $n, p as Kn, q as zn, r as qn, s as Yn, T as Zn, t as jn, v as Xn, w as Jn, x as Qn } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-JB7OKRk6.js";
|
|
9
|
+
import { A as KE, y as zE, z as qE, C as YE, D as ZE, F as jE, G as XE, H as JE, J as QE, K as ef, e as tf, f as af, O as nf, P as sf, Q as of, R as rf, U as lf, V as uf, X as cf, Y as df, Z as Ef, $ as ff, a0 as mf, E as gf, a1 as Sf, a2 as Af, a3 as pf, a4 as Tf, a5 as hf, a6 as Lf, a7 as Of, a8 as Rf, M as _f, N as If, a9 as vf, aa as wf, ab as Cf, ac as Pf, ad as bf, ae as Nf, af as Df, ag as yf, a as Bf, ah as Mf, ai as kf, aj as Vf, ak as Uf, u as Ff, g as Wf } from "./chunks/VcAiAgentPanel.vue_vue_type_style_index_0_lang-JB7OKRk6.js";
|
|
10
10
|
import { H as es, L as ts } from "./chunks/vendor-microsoft-signalr-Bgpbb4fW.js";
|
|
11
|
-
import { a as as } from "./chunks/index-
|
|
12
|
-
import { u as
|
|
13
|
-
import { a as ns, s as ss, b as os, d as rs, e as is, f as ut, g as ls, h as us, i as cs, j as ds } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-
|
|
14
|
-
import { A as
|
|
11
|
+
import { a as as } from "./chunks/index-_JlFbcuN.js";
|
|
12
|
+
import { u as Gf } from "./chunks/index-_JlFbcuN.js";
|
|
13
|
+
import { a as ns, s as ss, b as os, d as rs, e as is, f as ut, g as ls, h as us, i as cs, j as ds } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-CmsM1ooA.js";
|
|
14
|
+
import { A as $f, D as Kf, E as zf, H as qf, _ as Yf, c as Zf, k as jf, l as Xf, m as Jf, n as Qf, o as em, p as tm, u as am, q as nm, r as sm, t as om } from "./chunks/VcAiAgentPanel.vue_vue_type_script_setup_true_lang-CmsM1ooA.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";
|
|
@@ -93,24 +93,24 @@ import "./chunks/vendor-truncate-html-ChA1T5zy.js";
|
|
|
93
93
|
import "./chunks/vendor-sortablejs-Bsvu-FKn.js";
|
|
94
94
|
import { v as Es } from "./chunks/vendor-vue3-touch-events-DqysuuWh.js";
|
|
95
95
|
import "./chunks/vendor-gridstack-Beau2jQ7.js";
|
|
96
|
-
import { _ as
|
|
97
|
-
import { _ as
|
|
96
|
+
import { _ as im, a as lm, b as um, c as cm, d as dm, L as Em, e as fm, f as mm, l as gm, m as Sm, s as Am, t as pm, u as Tm } from "./chunks/dashboard-feed-row.vue_vue_type_script_setup_true_lang-CYq_EvRc.js";
|
|
97
|
+
import { _ as Lm, a as Om, b as Rm, c as _m, d as Im, e as vm } from "./chunks/DashboardDonutChart.vue_vue_type_script_setup_true_lang-hTcM33bM.js";
|
|
98
98
|
import { A as fs, u as ms } from "./chunks/vendor-vue3-application-insights-CAgbt8pk.js";
|
|
99
99
|
import { o as gs, c as X, d as Ss, i as As } from "./chunks/vendor-lodash-es-D2n90GJy.js";
|
|
100
100
|
import { T as ps, x as Ts, b as hs, S as Ls, $ as Os } from "./chunks/vendor-web-vitals-ByFgAM-8.js";
|
|
101
101
|
import { _ as Rs } from "./chunks/index-BuTo_Lx8.js";
|
|
102
|
-
import { E as
|
|
103
|
-
function
|
|
102
|
+
import { E as Cm, d as Pm, u as bm } from "./chunks/index-BuTo_Lx8.js";
|
|
103
|
+
function Sl(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
108
|
const _s = (e) => e.replace(/-./g, (t) => t[1].toUpperCase());
|
|
109
|
-
function
|
|
109
|
+
function Al(e) {
|
|
110
110
|
const t = _s(e);
|
|
111
111
|
return t[0].toUpperCase() + t.substring(1);
|
|
112
112
|
}
|
|
113
|
-
function
|
|
113
|
+
function pl(e) {
|
|
114
114
|
return e.replace(/\W+(.)/g, function(t, a) {
|
|
115
115
|
return a.toUpperCase();
|
|
116
116
|
});
|
|
@@ -119,10 +119,10 @@ const Is = /* @__PURE__ */ new Set(["png", "jpg", "jpeg", "svg", "gif"]);
|
|
|
119
119
|
function dt(e) {
|
|
120
120
|
return e.split(".").pop()?.toLowerCase();
|
|
121
121
|
}
|
|
122
|
-
function
|
|
122
|
+
function Yt(e) {
|
|
123
123
|
return e ? Is.has(dt(e) ?? "") : !1;
|
|
124
124
|
}
|
|
125
|
-
function
|
|
125
|
+
function Zt(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]}`;
|
|
@@ -142,12 +142,12 @@ const vs = {
|
|
|
142
142
|
mp4: "#8e44ad",
|
|
143
143
|
avi: "#8e44ad"
|
|
144
144
|
};
|
|
145
|
-
function
|
|
145
|
+
function jt(e) {
|
|
146
146
|
if (!e) return "var(--neutrals-400)";
|
|
147
147
|
const t = dt(e) ?? "";
|
|
148
148
|
return vs[t] ?? "var(--neutrals-400)";
|
|
149
149
|
}
|
|
150
|
-
function
|
|
150
|
+
function Xt(e) {
|
|
151
151
|
return e ? (dt(e) ?? "FILE").toUpperCase() : "FILE";
|
|
152
152
|
}
|
|
153
153
|
const ws = {
|
|
@@ -156,7 +156,7 @@ const ws = {
|
|
|
156
156
|
e.config.globalProperties.$hasAccess = t;
|
|
157
157
|
}
|
|
158
158
|
};
|
|
159
|
-
function
|
|
159
|
+
function Tl(e) {
|
|
160
160
|
const t = fe(), a = t.subscribe({
|
|
161
161
|
types: e.types,
|
|
162
162
|
filter: e.filter,
|
|
@@ -175,60 +175,60 @@ function hl(e) {
|
|
|
175
175
|
markAsRead: o
|
|
176
176
|
};
|
|
177
177
|
}
|
|
178
|
-
function
|
|
179
|
-
const e = Q(
|
|
178
|
+
function hl() {
|
|
179
|
+
const e = Q(dn);
|
|
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 Ll() {
|
|
185
185
|
const e = fe();
|
|
186
186
|
return {
|
|
187
187
|
setBroadcastFilter: e.setBroadcastFilter,
|
|
188
188
|
clearBroadcastFilter: e.clearBroadcastFilter
|
|
189
189
|
};
|
|
190
190
|
}
|
|
191
|
-
const
|
|
191
|
+
const Jt = Symbol("NotificationContainerState"), ze = k("signalR"), Cs = {
|
|
192
192
|
install(e) {
|
|
193
193
|
const t = fe(), { isAuthenticated: a } = se();
|
|
194
194
|
let n = !1;
|
|
195
|
-
const s =
|
|
196
|
-
let l = 0,
|
|
197
|
-
function
|
|
198
|
-
return
|
|
195
|
+
const s = yn("pushNotificationHub", { enableForVitest: !0 }) ?? new es().withUrl("/pushNotificationHub").withAutomaticReconnect().configureLogging(ts.Information).build(), o = 5e3, r = 6e4;
|
|
196
|
+
let l = 0, u;
|
|
197
|
+
function c(f) {
|
|
198
|
+
return f instanceof Error && /\b401\b/.test(f.message);
|
|
199
199
|
}
|
|
200
|
-
const
|
|
200
|
+
const E = () => {
|
|
201
201
|
s.start().then(() => {
|
|
202
202
|
l = 0, ze.info("Connected.");
|
|
203
|
-
}).catch((
|
|
204
|
-
if (ze.error("Connection Error: ",
|
|
203
|
+
}).catch((f) => {
|
|
204
|
+
if (ze.error("Connection Error: ", f), c(f)) {
|
|
205
205
|
ze.warn("Not authenticated — stopping reconnect attempts until sign-in.");
|
|
206
206
|
return;
|
|
207
207
|
}
|
|
208
208
|
const d = Math.min(o * 2 ** l, r);
|
|
209
|
-
l++,
|
|
209
|
+
l++, u = setTimeout(() => E(), d);
|
|
210
210
|
});
|
|
211
211
|
};
|
|
212
212
|
async function m() {
|
|
213
|
-
clearTimeout(
|
|
213
|
+
clearTimeout(u), u = void 0, await s.stop();
|
|
214
214
|
}
|
|
215
215
|
s.onclose(() => {
|
|
216
|
-
n &&
|
|
217
|
-
}), s.on("Send", (
|
|
218
|
-
t.ingest(
|
|
219
|
-
}), s.on("SendSystemEvents", (
|
|
220
|
-
t.ingest(
|
|
216
|
+
n && E();
|
|
217
|
+
}), s.on("Send", (f) => {
|
|
218
|
+
t.ingest(f);
|
|
219
|
+
}), s.on("SendSystemEvents", (f) => {
|
|
220
|
+
t.ingest(f, { broadcast: !0 });
|
|
221
221
|
}), ae(
|
|
222
222
|
a,
|
|
223
|
-
async (
|
|
224
|
-
|
|
223
|
+
async (f) => {
|
|
224
|
+
f ? (n = !0, l = 0, E()) : (n = !1, await m());
|
|
225
225
|
},
|
|
226
226
|
{ immediate: !0 }
|
|
227
227
|
);
|
|
228
228
|
}
|
|
229
229
|
};
|
|
230
|
-
function
|
|
231
|
-
const t = Q(
|
|
230
|
+
function Ol(e) {
|
|
231
|
+
const t = Q(En, void 0);
|
|
232
232
|
return {
|
|
233
233
|
read: () => t ? t.read(e) : {}
|
|
234
234
|
};
|
|
@@ -240,30 +240,30 @@ function Et(e) {
|
|
|
240
240
|
install(o) {
|
|
241
241
|
const r = fe();
|
|
242
242
|
if (t && Object.keys(t).length > 0) {
|
|
243
|
-
const l = o.runWithContext(() => Q(
|
|
243
|
+
const l = o.runWithContext(() => Q(Wt));
|
|
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
|
|
247
|
+
for (const [u, c] of Object.entries(t)) {
|
|
248
|
+
const E = c.name || u;
|
|
249
249
|
o.runWithContext(() => {
|
|
250
|
-
l._registerBladeFn(
|
|
251
|
-
component:
|
|
252
|
-
route:
|
|
253
|
-
isWorkspace:
|
|
254
|
-
routable:
|
|
255
|
-
permissions:
|
|
250
|
+
l._registerBladeFn(E, {
|
|
251
|
+
component: c,
|
|
252
|
+
route: c.url,
|
|
253
|
+
isWorkspace: c.isWorkspace || !1,
|
|
254
|
+
routable: c.routable !== !1,
|
|
255
|
+
permissions: c.permissions
|
|
256
256
|
});
|
|
257
257
|
});
|
|
258
258
|
}
|
|
259
259
|
}
|
|
260
260
|
if (s)
|
|
261
|
-
for (const [l,
|
|
262
|
-
r.registerType(l,
|
|
261
|
+
for (const [l, u] of Object.entries(s))
|
|
262
|
+
r.registerType(l, u);
|
|
263
263
|
if (!s && n)
|
|
264
264
|
for (const l of Object.values(n)) {
|
|
265
|
-
const
|
|
266
|
-
|
|
265
|
+
const u = l.notifyType;
|
|
266
|
+
u && r.registerType(u, {
|
|
267
267
|
template: l,
|
|
268
268
|
toast: { mode: "auto" }
|
|
269
269
|
});
|
|
@@ -271,13 +271,13 @@ 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:
|
|
277
|
-
handler: (
|
|
278
|
-
|
|
274
|
+
const u = Array.isArray(l.notifyType) ? l.notifyType : [l.notifyType];
|
|
275
|
+
u.filter((E) => !r.registry.has(E)).length > 0 && r.subscribe({
|
|
276
|
+
types: u,
|
|
277
|
+
handler: (E) => {
|
|
278
|
+
E.title && J(E.title, {
|
|
279
279
|
onClose() {
|
|
280
|
-
r.markAsRead(
|
|
280
|
+
r.markAsRead(E);
|
|
281
281
|
}
|
|
282
282
|
});
|
|
283
283
|
}
|
|
@@ -285,12 +285,12 @@ function Et(e) {
|
|
|
285
285
|
}
|
|
286
286
|
}
|
|
287
287
|
if (a)
|
|
288
|
-
for (const [l,
|
|
289
|
-
z.global.mergeLocaleMessage(l,
|
|
288
|
+
for (const [l, u] of Object.entries(a))
|
|
289
|
+
z.global.mergeLocaleMessage(l, u);
|
|
290
290
|
}
|
|
291
291
|
};
|
|
292
292
|
}
|
|
293
|
-
function
|
|
293
|
+
function Rl(e, t, a, n) {
|
|
294
294
|
return Et({
|
|
295
295
|
blades: e,
|
|
296
296
|
locales: t,
|
|
@@ -309,14 +309,14 @@ async function bs(e, t, a, n, s, o) {
|
|
|
309
309
|
if (n && r.data.permissions && !n(r.data.permissions))
|
|
310
310
|
return console.warn(`[restoreFromUrl] Access denied to workspace '${r.name}'`), J.error(z.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((
|
|
312
|
+
const u = t.getBladeByRoute(a.bladeUrl);
|
|
313
|
+
if (u) {
|
|
314
|
+
if (e.blades.value.find((E) => E.name === u.name && E.param === a.param))
|
|
315
315
|
return !1;
|
|
316
|
-
if (
|
|
316
|
+
if (u.data.routable === !1)
|
|
317
317
|
return !0;
|
|
318
318
|
await e.openBlade({
|
|
319
|
-
name:
|
|
319
|
+
name: u.name,
|
|
320
320
|
param: a.param
|
|
321
321
|
// options not available from URL — blade must handle gracefully
|
|
322
322
|
});
|
|
@@ -334,16 +334,16 @@ async function St(e) {
|
|
|
334
334
|
return e.blades.value.length > 0 && e._restoreStack([]), !0;
|
|
335
335
|
}
|
|
336
336
|
async function Ns(e, t, a, n, s) {
|
|
337
|
-
if (!e.matched.some((
|
|
338
|
-
if (!e.matched.some((
|
|
337
|
+
if (!e.matched.some((E) => E.meta?.root)) return;
|
|
338
|
+
if (!e.matched.some((E) => E.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 = fn(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 bs(t, a, l, n, s,
|
|
345
|
-
const { path:
|
|
346
|
-
return { path:
|
|
343
|
+
const u = Object.fromEntries(Object.entries(e.params).filter(([, E]) => typeof E == "string"));
|
|
344
|
+
if (await bs(t, a, l, n, s, u)) {
|
|
345
|
+
const { path: E, query: m } = mn(r, t.blades.value);
|
|
346
|
+
return { path: E, query: m, replace: !0 };
|
|
347
347
|
}
|
|
348
348
|
}
|
|
349
349
|
const Ds = {
|
|
@@ -354,7 +354,7 @@ const Ds = {
|
|
|
354
354
|
rs(n);
|
|
355
355
|
const s = e.runWithContext(() => {
|
|
356
356
|
try {
|
|
357
|
-
return
|
|
357
|
+
return gn();
|
|
358
358
|
} catch {
|
|
359
359
|
console.warn(
|
|
360
360
|
"[BladeNavigationPlugin] BladeRegistry not yet available. BladeStack will be created but URL restoration may be deferred."
|
|
@@ -366,17 +366,17 @@ 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 =
|
|
370
|
-
r.current =
|
|
371
|
-
const
|
|
372
|
-
e.provide(
|
|
373
|
-
const
|
|
374
|
-
|
|
369
|
+
const { hasAccess: o } = e.runWithContext(() => st()), r = {}, l = An(a, () => r.current), u = ns(s, o, l);
|
|
370
|
+
r.current = u, e.provide(Bn, u), ss(u);
|
|
371
|
+
const c = Sn(u);
|
|
372
|
+
e.provide(Mn, c), os(c), is(s);
|
|
373
|
+
const E = a.getRoutes().find((m) => m.meta?.root);
|
|
374
|
+
E && a.addRoute(E.name, {
|
|
375
375
|
path: ":pathMatch(.*)*",
|
|
376
376
|
component: { render: () => null },
|
|
377
377
|
meta: { bladeCatchAll: !0 }
|
|
378
378
|
}), a.beforeEach(
|
|
379
|
-
(m) => l.suppressWhile(() => Ns(m,
|
|
379
|
+
(m) => l.suppressWhile(() => Ns(m, u, s, o, a))
|
|
380
380
|
);
|
|
381
381
|
}
|
|
382
382
|
}, ys = {
|
|
@@ -429,7 +429,7 @@ const Ds = {
|
|
|
429
429
|
gap: 20
|
|
430
430
|
}
|
|
431
431
|
};
|
|
432
|
-
function
|
|
432
|
+
function _l(e) {
|
|
433
433
|
return ys[e];
|
|
434
434
|
}
|
|
435
435
|
const ft = /* @__PURE__ */ H({
|
|
@@ -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) => (P(), D(
|
|
455
|
+
return (o, r) => (P(), D(pn, {
|
|
456
456
|
variant: e.variant,
|
|
457
457
|
"is-mobile-fullscreen": e.isMobileFullscreen,
|
|
458
458
|
title: e.title,
|
|
@@ -468,7 +468,7 @@ const ft = /* @__PURE__ */ H({
|
|
|
468
468
|
confirm: () => s(l)
|
|
469
469
|
}, () => [
|
|
470
470
|
U("div", {
|
|
471
|
-
class:
|
|
471
|
+
class: Qa(["vc-popup-base__actions", {
|
|
472
472
|
"vc-popup-base__actions--confirm": e.mode === "confirm",
|
|
473
473
|
"vc-popup-base__actions--single": e.mode === "acknowledge"
|
|
474
474
|
}])
|
|
@@ -477,7 +477,7 @@ const ft = /* @__PURE__ */ H({
|
|
|
477
477
|
R(i(x), {
|
|
478
478
|
text: e.confirmAsText,
|
|
479
479
|
class: "vc-popup-base__confirm",
|
|
480
|
-
onClick: (
|
|
480
|
+
onClick: (u) => s(l)
|
|
481
481
|
}, {
|
|
482
482
|
default: T(() => [
|
|
483
483
|
M(y(e.confirmLabel), 1)
|
|
@@ -608,9 +608,9 @@ function Vs() {
|
|
|
608
608
|
const Us = {
|
|
609
609
|
install(e) {
|
|
610
610
|
const a = {
|
|
611
|
-
popups:
|
|
611
|
+
popups: en([])
|
|
612
612
|
};
|
|
613
|
-
e.config.globalProperties.$popupPlugin = a, e.provide(
|
|
613
|
+
e.config.globalProperties.$popupPlugin = a, e.provide(Tn, a), hn(a), Vs();
|
|
614
614
|
}
|
|
615
615
|
};
|
|
616
616
|
function Fs(e, t) {
|
|
@@ -642,7 +642,7 @@ function Gs(e, t) {
|
|
|
642
642
|
}, t));
|
|
643
643
|
};
|
|
644
644
|
}
|
|
645
|
-
function
|
|
645
|
+
function Il() {
|
|
646
646
|
return {
|
|
647
647
|
debounce: Fs,
|
|
648
648
|
delay: Ws,
|
|
@@ -650,7 +650,7 @@ function vl() {
|
|
|
650
650
|
throttle: Gs
|
|
651
651
|
};
|
|
652
652
|
}
|
|
653
|
-
function
|
|
653
|
+
function vl(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({
|
|
@@ -674,24 +674,24 @@ function wl(e) {
|
|
|
674
674
|
}
|
|
675
675
|
let Ye;
|
|
676
676
|
const xs = k("use-async");
|
|
677
|
-
function
|
|
677
|
+
function Qt(e, t) {
|
|
678
678
|
const a = b(!1), n = b(null), s = t?.notify !== !1, o = t?.notifyTimeout ?? 8e3;
|
|
679
|
-
async function r(l, ...
|
|
679
|
+
async function r(l, ...u) {
|
|
680
680
|
a.value = !0, n.value = null;
|
|
681
681
|
try {
|
|
682
|
-
return await e(l, ...
|
|
683
|
-
} catch (
|
|
684
|
-
const
|
|
685
|
-
if (n.value =
|
|
686
|
-
const m = `async-error-${
|
|
687
|
-
Ye || (Ye = (await import("./chunks/VcScheduler.vue_vue_type_style_index_0_lang-
|
|
682
|
+
return await e(l, ...u);
|
|
683
|
+
} catch (c) {
|
|
684
|
+
const E = Pe(c);
|
|
685
|
+
if (n.value = E, xs.error("Async action failed:", c), s && !Ne() && c && typeof c == "object") {
|
|
686
|
+
const m = `async-error-${E.message.slice(0, 80)}`, f = setTimeout(async () => {
|
|
687
|
+
Ye || (Ye = (await import("./chunks/VcScheduler.vue_vue_type_style_index_0_lang-Cjmi5lAM.js").then((A) => A.b0)).notification), Ye.error(E.message, {
|
|
688
688
|
timeout: o,
|
|
689
689
|
notificationId: m
|
|
690
690
|
});
|
|
691
691
|
}, 0);
|
|
692
|
-
|
|
692
|
+
Fa(c, f, m);
|
|
693
693
|
}
|
|
694
|
-
throw
|
|
694
|
+
throw c;
|
|
695
695
|
} finally {
|
|
696
696
|
a.value = !1;
|
|
697
697
|
}
|
|
@@ -710,20 +710,20 @@ function $s(e) {
|
|
|
710
710
|
getApiClient: t
|
|
711
711
|
};
|
|
712
712
|
}
|
|
713
|
-
function
|
|
713
|
+
function ea(...e) {
|
|
714
714
|
return I(() => e.some((t) => t.value));
|
|
715
715
|
}
|
|
716
716
|
const Ks = k("use-settings");
|
|
717
717
|
function we() {
|
|
718
|
-
const e = b(), t = b(!1), { getApiClient: a } = $s(
|
|
718
|
+
const e = b(), t = b(!1), { getApiClient: a } = $s(kn), { loading: n, action: s } = Qt(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
|
-
Ks.warn("Failed to parse UI customization settings JSON; ignoring.",
|
|
725
|
+
} catch (u) {
|
|
726
|
+
Ks.warn("Failed to parse UI customization settings JSON; ignoring.", u);
|
|
727
727
|
}
|
|
728
728
|
l && !e.value && (e.value = {
|
|
729
729
|
contrast_logo: l.contrast_logo,
|
|
@@ -745,29 +745,29 @@ function we() {
|
|
|
745
745
|
}), {
|
|
746
746
|
uiSettings: I(() => e.value ?? {}),
|
|
747
747
|
applySettings: o,
|
|
748
|
-
loading:
|
|
748
|
+
loading: ea(n)
|
|
749
749
|
};
|
|
750
750
|
}
|
|
751
|
-
function
|
|
751
|
+
function wl() {
|
|
752
752
|
const e = b(!1);
|
|
753
753
|
let t = 0, a = !1;
|
|
754
754
|
function n() {
|
|
755
755
|
const l = ++t;
|
|
756
|
-
let
|
|
756
|
+
let u = !1;
|
|
757
757
|
return a || (e.value = !0), {
|
|
758
758
|
isCurrent: () => !a && l === t,
|
|
759
759
|
complete: () => {
|
|
760
|
-
|
|
760
|
+
u || (u = !0, !a && l === t && (e.value = !1));
|
|
761
761
|
}
|
|
762
762
|
};
|
|
763
763
|
}
|
|
764
764
|
async function s(l) {
|
|
765
|
-
const
|
|
765
|
+
const u = n();
|
|
766
766
|
try {
|
|
767
|
-
const
|
|
768
|
-
return
|
|
767
|
+
const c = await l;
|
|
768
|
+
return u.isCurrent() ? c : void 0;
|
|
769
769
|
} finally {
|
|
770
|
-
|
|
770
|
+
u.complete();
|
|
771
771
|
}
|
|
772
772
|
}
|
|
773
773
|
function o() {
|
|
@@ -784,7 +784,7 @@ function Cl() {
|
|
|
784
784
|
pending: ke(e)
|
|
785
785
|
};
|
|
786
786
|
}
|
|
787
|
-
const
|
|
787
|
+
const ta = 4;
|
|
788
788
|
async function zs(e, t, a, n) {
|
|
789
789
|
const s = new FormData();
|
|
790
790
|
s.append("file", e);
|
|
@@ -793,25 +793,25 @@ 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 u = l[0];
|
|
797
|
+
return u.createdDate = /* @__PURE__ */ new Date(), u.sortOrder = n !== void 0 && n >= 0 ? n + a + 1 : 0, u.url = u.url ? decodeURI(u.url) : "", "size" in u && (u.size = e.size), u;
|
|
798
798
|
}
|
|
799
|
-
async function
|
|
799
|
+
async function aa(e, { uploadPath: t, startingSortOrder: a, concurrency: n = ta }) {
|
|
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((
|
|
802
|
+
const l = s.slice(r, r + n), u = await Promise.all(
|
|
803
|
+
l.map((c, E) => zs(c, t, r + E, a))
|
|
804
804
|
);
|
|
805
|
-
o.push(...
|
|
805
|
+
o.push(...u);
|
|
806
806
|
}
|
|
807
807
|
return o.filter((r) => r !== null);
|
|
808
808
|
}
|
|
809
809
|
const At = k("use-assets");
|
|
810
|
-
function
|
|
810
|
+
function Cl() {
|
|
811
811
|
const e = b(!1);
|
|
812
812
|
async function t(s, o, r) {
|
|
813
813
|
try {
|
|
814
|
-
return e.value = !0, await
|
|
814
|
+
return e.value = !0, await aa(s, { uploadPath: o, startingSortOrder: r });
|
|
815
815
|
} catch (l) {
|
|
816
816
|
throw At.error("Upload failed:", l), l;
|
|
817
817
|
} finally {
|
|
@@ -822,7 +822,7 @@ function Pl() {
|
|
|
822
822
|
try {
|
|
823
823
|
e.value = !0;
|
|
824
824
|
let l = X(o) || [];
|
|
825
|
-
return l && l.length && s.length > 0 && (l = Ss(l, s, (
|
|
825
|
+
return l && l.length && s.length > 0 && (l = Ss(l, s, (u, c) => u[r] === c[r])), l;
|
|
826
826
|
} catch (l) {
|
|
827
827
|
throw At.error("Remove failed:", l), l;
|
|
828
828
|
} finally {
|
|
@@ -834,8 +834,8 @@ function Pl() {
|
|
|
834
834
|
return s.map((l) => ({ ...l }));
|
|
835
835
|
const r = X(o) || [];
|
|
836
836
|
return r && r.length && s.forEach((l) => {
|
|
837
|
-
const
|
|
838
|
-
|
|
837
|
+
const u = r.findIndex((c) => c.url === l.url);
|
|
838
|
+
u !== -1 && (r[u] = { ...r[u], ...l });
|
|
839
839
|
}), r;
|
|
840
840
|
}
|
|
841
841
|
return {
|
|
@@ -852,23 +852,23 @@ function pt(e) {
|
|
|
852
852
|
return n === s ? t.index - a.index : n - s;
|
|
853
853
|
}).map(({ item: t }, a) => ({ ...t, sortOrder: a }));
|
|
854
854
|
}
|
|
855
|
-
function
|
|
855
|
+
function Pl(e, t) {
|
|
856
856
|
const a = b(!1), n = b(pt(e.value ?? []));
|
|
857
857
|
ae(
|
|
858
858
|
() => e.value,
|
|
859
|
-
(
|
|
860
|
-
n.value = pt(
|
|
859
|
+
(A) => {
|
|
860
|
+
n.value = pt(A ?? []);
|
|
861
861
|
},
|
|
862
862
|
{ deep: !0, immediate: !0 }
|
|
863
863
|
);
|
|
864
864
|
function s() {
|
|
865
865
|
e.value = n.value;
|
|
866
866
|
}
|
|
867
|
-
const o = n, r = I(() => a.value), l = t.concurrency ??
|
|
868
|
-
async function
|
|
867
|
+
const o = n, r = I(() => a.value), l = t.concurrency ?? ta, u = t.assetKey ?? "url";
|
|
868
|
+
async function c(A, h) {
|
|
869
869
|
try {
|
|
870
870
|
a.value = !0;
|
|
871
|
-
const L = t.uploadPath(), v = await
|
|
871
|
+
const L = t.uploadPath(), v = await aa(A, { uploadPath: L, startingSortOrder: h, concurrency: l });
|
|
872
872
|
n.value = [...n.value, ...v], s();
|
|
873
873
|
} catch (L) {
|
|
874
874
|
throw qs.error("Upload failed:", L), L;
|
|
@@ -876,39 +876,39 @@ function bl(e, t) {
|
|
|
876
876
|
a.value = !1;
|
|
877
877
|
}
|
|
878
878
|
}
|
|
879
|
-
async function
|
|
880
|
-
await m([
|
|
879
|
+
async function E(A) {
|
|
880
|
+
await m([A]);
|
|
881
881
|
}
|
|
882
|
-
async function m(
|
|
882
|
+
async function m(A) {
|
|
883
883
|
if (t.confirmRemove && !await t.confirmRemove())
|
|
884
884
|
return;
|
|
885
|
-
const h = new Set(
|
|
886
|
-
n.value = n.value.filter((L) => !h.has(L[
|
|
885
|
+
const h = new Set(A.map((L) => L[u]));
|
|
886
|
+
n.value = n.value.filter((L) => !h.has(L[u])), s();
|
|
887
887
|
}
|
|
888
|
-
function
|
|
889
|
-
n.value =
|
|
888
|
+
function f(A) {
|
|
889
|
+
n.value = A.map((h) => ({ ...h })), s();
|
|
890
890
|
}
|
|
891
|
-
function d(
|
|
892
|
-
const h = n.value.findIndex((L) => L[
|
|
891
|
+
function d(A) {
|
|
892
|
+
const h = n.value.findIndex((L) => L[u] === A[u]);
|
|
893
893
|
if (h !== -1) {
|
|
894
894
|
const L = [...n.value];
|
|
895
|
-
L[h] = { ...n.value[h], ...
|
|
895
|
+
L[h] = { ...n.value[h], ...A }, n.value = L, s();
|
|
896
896
|
}
|
|
897
897
|
}
|
|
898
898
|
return {
|
|
899
899
|
items: o,
|
|
900
|
-
upload:
|
|
901
|
-
remove:
|
|
900
|
+
upload: c,
|
|
901
|
+
remove: E,
|
|
902
902
|
removeMany: m,
|
|
903
|
-
reorder:
|
|
903
|
+
reorder: f,
|
|
904
904
|
updateItem: d,
|
|
905
905
|
loading: r
|
|
906
906
|
};
|
|
907
907
|
}
|
|
908
908
|
const Ys = (e) => {
|
|
909
|
-
|
|
909
|
+
tn(() => {
|
|
910
910
|
window.addEventListener("beforeunload", t);
|
|
911
|
-
}),
|
|
911
|
+
}), an(() => {
|
|
912
912
|
window.removeEventListener("beforeunload", t);
|
|
913
913
|
});
|
|
914
914
|
function t(a) {
|
|
@@ -918,8 +918,8 @@ const Ys = (e) => {
|
|
|
918
918
|
modified: e
|
|
919
919
|
};
|
|
920
920
|
}, Zs = k("use-breadcrumbs");
|
|
921
|
-
function
|
|
922
|
-
const e =
|
|
921
|
+
function bl() {
|
|
922
|
+
const e = nn([]);
|
|
923
923
|
function t(s) {
|
|
924
924
|
const o = e.value.findIndex((r) => r.id === s);
|
|
925
925
|
o !== -1 && (e.value = e.value.slice(0, o + 1));
|
|
@@ -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
|
-
Zs.error("Breadcrumb click handler failed:",
|
|
933
|
+
} catch (u) {
|
|
934
|
+
Zs.error("Breadcrumb click handler failed:", u);
|
|
935
935
|
}
|
|
936
936
|
} : void 0
|
|
937
937
|
}, r = e.value.findIndex((l) => l.id === o.id);
|
|
@@ -1109,45 +1109,45 @@ const no = {
|
|
|
1109
1109
|
}
|
|
1110
1110
|
};
|
|
1111
1111
|
function Tt(e) {
|
|
1112
|
-
return
|
|
1112
|
+
return Ln(e) ? no : On(e) && !mt(e) ? so : e.valueType === "Boolean" ? Xs : mt(e) ? Js : js;
|
|
1113
1113
|
}
|
|
1114
|
-
function
|
|
1115
|
-
const { searchDictionary: t, searchMeasurements: a } = e, { loading: n, action: s } =
|
|
1116
|
-
if (
|
|
1117
|
-
return await t(
|
|
1114
|
+
function Nl(e) {
|
|
1115
|
+
const { searchDictionary: t, searchMeasurements: a } = e, { loading: n, action: s } = Qt(async (c) => {
|
|
1116
|
+
if (c)
|
|
1117
|
+
return await t(c);
|
|
1118
1118
|
});
|
|
1119
|
-
async function o(
|
|
1120
|
-
if (!
|
|
1121
|
-
const
|
|
1122
|
-
propertyIds: [
|
|
1123
|
-
keyword:
|
|
1119
|
+
async function o(c, E, m) {
|
|
1120
|
+
if (!c) return;
|
|
1121
|
+
const f = await s({
|
|
1122
|
+
propertyIds: [c],
|
|
1123
|
+
keyword: E,
|
|
1124
1124
|
skip: 0
|
|
1125
1125
|
});
|
|
1126
|
-
return !m || !
|
|
1127
|
-
const
|
|
1128
|
-
return { ...d, value:
|
|
1126
|
+
return !m || !f ? f : f.map((d) => {
|
|
1127
|
+
const A = d.localizedValues?.find((h) => h.languageCode === m)?.value;
|
|
1128
|
+
return { ...d, value: A ?? d.alias };
|
|
1129
1129
|
});
|
|
1130
1130
|
}
|
|
1131
|
-
async function r(
|
|
1132
|
-
if (!(!
|
|
1133
|
-
return await a(
|
|
1131
|
+
async function r(c, E, m) {
|
|
1132
|
+
if (!(!c || !a))
|
|
1133
|
+
return await a(c, m);
|
|
1134
1134
|
}
|
|
1135
|
-
function l(
|
|
1136
|
-
return Tt(
|
|
1135
|
+
function l(c, E) {
|
|
1136
|
+
return Tt(c).get(c, E);
|
|
1137
1137
|
}
|
|
1138
|
-
function c
|
|
1139
|
-
const { property:
|
|
1140
|
-
Tt(
|
|
1138
|
+
function u(c) {
|
|
1139
|
+
const { property: E, value: m, ...f } = c;
|
|
1140
|
+
Tt(E).set(E, m, f);
|
|
1141
1141
|
}
|
|
1142
1142
|
return {
|
|
1143
1143
|
getPropertyValue: l,
|
|
1144
|
-
setPropertyValue:
|
|
1144
|
+
setPropertyValue: u,
|
|
1145
1145
|
loadDictionaries: o,
|
|
1146
1146
|
loadMeasurements: r,
|
|
1147
|
-
loading:
|
|
1147
|
+
loading: ea(n)
|
|
1148
1148
|
};
|
|
1149
1149
|
}
|
|
1150
|
-
function
|
|
1150
|
+
function Dl(e) {
|
|
1151
1151
|
const t = (n) => {
|
|
1152
1152
|
}, a = (n) => {
|
|
1153
1153
|
(e ?? t)({
|
|
@@ -1158,12 +1158,12 @@ function yl(e) {
|
|
|
1158
1158
|
};
|
|
1159
1159
|
ps(a), Ts(a), hs(a), Ls(a), Os(a);
|
|
1160
1160
|
}
|
|
1161
|
-
const
|
|
1162
|
-
function
|
|
1163
|
-
const t = Q(
|
|
1161
|
+
const na = k("use-blade-widgets");
|
|
1162
|
+
function yl(e) {
|
|
1163
|
+
const t = Q($t);
|
|
1164
1164
|
if (!t)
|
|
1165
|
-
throw new
|
|
1166
|
-
const a = t, n = Q(
|
|
1165
|
+
throw new Mt("WidgetService");
|
|
1166
|
+
const a = t, n = Q(Kt, void 0);
|
|
1167
1167
|
if (!n)
|
|
1168
1168
|
throw new Error(
|
|
1169
1169
|
"[vc-shell] useBladeWidgets() requires blade context (BladeDescriptorKey). It must be called inside a blade component rendered by VcBladeSlot."
|
|
@@ -1172,25 +1172,25 @@ function Bl(e) {
|
|
|
1172
1172
|
Oe(() => {
|
|
1173
1173
|
for (const l of e)
|
|
1174
1174
|
a.registerWidget(oo(l), s);
|
|
1175
|
-
}),
|
|
1175
|
+
}), sn(() => {
|
|
1176
1176
|
for (const l of e)
|
|
1177
1177
|
a.unregisterWidget(l.id, s);
|
|
1178
1178
|
});
|
|
1179
1179
|
function o(l) {
|
|
1180
|
-
const
|
|
1181
|
-
|
|
1180
|
+
const c = a.getWidgets(s).find((E) => E.id === l);
|
|
1181
|
+
c?.trigger?.onRefresh ? c.trigger.onRefresh() : na.warn(`Widget '${l}' has no trigger.onRefresh registered.`);
|
|
1182
1182
|
}
|
|
1183
1183
|
function r() {
|
|
1184
1184
|
const l = a.getWidgets(s);
|
|
1185
|
-
for (const
|
|
1186
|
-
|
|
1185
|
+
for (const u of l)
|
|
1186
|
+
u.trigger?.onRefresh && u.trigger.onRefresh();
|
|
1187
1187
|
}
|
|
1188
1188
|
return { refresh: o, refreshAll: r };
|
|
1189
1189
|
}
|
|
1190
|
-
function
|
|
1191
|
-
const t = Q(
|
|
1190
|
+
function Bl(e) {
|
|
1191
|
+
const t = Q(Vn);
|
|
1192
1192
|
if (!t) {
|
|
1193
|
-
|
|
1193
|
+
na.warn("useWidgetTrigger() called outside WidgetContainer scope — trigger will not be registered.");
|
|
1194
1194
|
return;
|
|
1195
1195
|
}
|
|
1196
1196
|
t.setTrigger(e);
|
|
@@ -1216,20 +1216,20 @@ function ro(e) {
|
|
|
1216
1216
|
const t = {};
|
|
1217
1217
|
for (const a of Object.keys(e)) {
|
|
1218
1218
|
const n = e[a];
|
|
1219
|
-
t[a] =
|
|
1219
|
+
t[a] = Ut(n) ? n.value : n;
|
|
1220
1220
|
}
|
|
1221
1221
|
return t;
|
|
1222
1222
|
}
|
|
1223
|
-
function
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
I(() => ro(
|
|
1223
|
+
function Ml(e) {
|
|
1224
|
+
kt(
|
|
1225
|
+
zt,
|
|
1226
|
+
I(() => ro(Vt(e)))
|
|
1227
1227
|
);
|
|
1228
1228
|
}
|
|
1229
|
-
function
|
|
1230
|
-
const e = Q(
|
|
1229
|
+
function kl() {
|
|
1230
|
+
const e = Q(zt);
|
|
1231
1231
|
if (!e)
|
|
1232
|
-
throw new
|
|
1232
|
+
throw new Mt("BladeContext");
|
|
1233
1233
|
return e;
|
|
1234
1234
|
}
|
|
1235
1235
|
function ht(e) {
|
|
@@ -1240,9 +1240,9 @@ function Lt(e, t) {
|
|
|
1240
1240
|
if (ht(a) && ht(n)) return !0;
|
|
1241
1241
|
});
|
|
1242
1242
|
}
|
|
1243
|
-
function
|
|
1243
|
+
function Vl(e) {
|
|
1244
1244
|
const t = (r) => X(i(r)), a = b(t(e)), n = b(t(e)), s = b(!1);
|
|
1245
|
-
|
|
1245
|
+
Ut(e) && ae(
|
|
1246
1246
|
e,
|
|
1247
1247
|
(r) => {
|
|
1248
1248
|
const l = !Lt(n.value, a.value);
|
|
@@ -1277,27 +1277,27 @@ const io = { class: "tw-flex tw-grow-1 tw-border-t tw-border-solid tw-border-t-[
|
|
|
1277
1277
|
key: 1,
|
|
1278
1278
|
class: "assets-details__file-preview tw-shrink-0"
|
|
1279
1279
|
}, fo = { class: "assets-details__meta" };
|
|
1280
|
-
|
|
1280
|
+
Ht("AssetsDetails", {});
|
|
1281
1281
|
const mo = /* @__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 = ct(), { t: o } = le({ useScope: "global" }), r = b({ ...t.value?.asset }), l = I(() => t.value?.disabled),
|
|
1287
|
+
const n = Ie(), s = ct(), { t: o } = le({ useScope: "global" }), r = b({ ...t.value?.asset }), l = I(() => t.value?.disabled), u = I({
|
|
1288
1288
|
get() {
|
|
1289
|
-
const
|
|
1290
|
-
if (!
|
|
1291
|
-
const d =
|
|
1292
|
-
return d > 0 ?
|
|
1289
|
+
const f = r.value.name;
|
|
1290
|
+
if (!f) return "";
|
|
1291
|
+
const d = f.lastIndexOf(".");
|
|
1292
|
+
return d > 0 ? f.slice(0, d) : f;
|
|
1293
1293
|
},
|
|
1294
|
-
set(
|
|
1294
|
+
set(f) {
|
|
1295
1295
|
const d = r.value.name;
|
|
1296
1296
|
if (!d) return;
|
|
1297
|
-
const
|
|
1298
|
-
r.value.name =
|
|
1297
|
+
const A = d.lastIndexOf("."), h = A > 0 ? d.slice(A) : "";
|
|
1298
|
+
r.value.name = f ? f + h : "";
|
|
1299
1299
|
}
|
|
1300
|
-
}),
|
|
1300
|
+
}), c = I(() => !s.value || !n.value), E = b([
|
|
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: I(() =>
|
|
1308
|
+
disabled: I(() => c.value || l.value)
|
|
1309
1309
|
},
|
|
1310
1310
|
{
|
|
1311
1311
|
id: "delete",
|
|
@@ -1317,21 +1317,21 @@ const mo = /* @__PURE__ */ H({
|
|
|
1317
1317
|
disabled: I(() => l.value)
|
|
1318
1318
|
}
|
|
1319
1319
|
]), m = I(() => r.value?.typeId);
|
|
1320
|
-
return (
|
|
1320
|
+
return (f, d) => (P(), D(i(Gt), {
|
|
1321
1321
|
title: i(t)?.asset?.name,
|
|
1322
1322
|
subtitle: i(o)("ASSETS.PAGES.DETAILS.SUBTITLE"),
|
|
1323
|
-
"toolbar-items":
|
|
1323
|
+
"toolbar-items": E.value
|
|
1324
1324
|
}, {
|
|
1325
1325
|
default: T(() => [
|
|
1326
1326
|
U("div", io, [
|
|
1327
1327
|
U("div", lo, [
|
|
1328
|
-
R(i(
|
|
1328
|
+
R(i(Rn), { "no-padding": !0 }, {
|
|
1329
1329
|
default: T(() => [
|
|
1330
1330
|
U("div", uo, [
|
|
1331
1331
|
R(i(me), null, {
|
|
1332
1332
|
default: T(() => [
|
|
1333
1333
|
U("div", co, [
|
|
1334
|
-
i(
|
|
1334
|
+
i(Yt)(r.value.name) ? (P(), D(i(ot), {
|
|
1335
1335
|
key: 0,
|
|
1336
1336
|
src: r.value.url,
|
|
1337
1337
|
size: "xl",
|
|
@@ -1340,13 +1340,13 @@ const mo = /* @__PURE__ */ H({
|
|
|
1340
1340
|
}, null, 8, ["src"])) : (P(), W("div", Eo, [
|
|
1341
1341
|
U("div", {
|
|
1342
1342
|
class: "assets-details__file-badge",
|
|
1343
|
-
style:
|
|
1344
|
-
}, y(i(
|
|
1343
|
+
style: Ft({ backgroundColor: i(jt)(r.value.name) })
|
|
1344
|
+
}, y(i(Xt)(r.value.name)), 5)
|
|
1345
1345
|
])),
|
|
1346
1346
|
U("div", fo, [
|
|
1347
1347
|
R(i(Ke), {
|
|
1348
1348
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.SIZE"),
|
|
1349
|
-
"model-value": i(
|
|
1349
|
+
"model-value": i(Zt)(r.value.size)
|
|
1350
1350
|
}, null, 8, ["label", "model-value"]),
|
|
1351
1351
|
R(i(Ke), {
|
|
1352
1352
|
label: i(o)("ASSETS.PAGES.DETAILS.FIELDS.CREATED_DATE"),
|
|
@@ -1369,11 +1369,11 @@ const mo = /* @__PURE__ */ H({
|
|
|
1369
1369
|
rules: "required",
|
|
1370
1370
|
"model-value": r.value.name
|
|
1371
1371
|
}, {
|
|
1372
|
-
default: T(({ errorMessage:
|
|
1372
|
+
default: T(({ errorMessage: A, handleChange: h, errors: L }) => [
|
|
1373
1373
|
R(i($), {
|
|
1374
|
-
modelValue:
|
|
1374
|
+
modelValue: u.value,
|
|
1375
1375
|
"onUpdate:modelValue": [
|
|
1376
|
-
d[0] || (d[0] = (v) =>
|
|
1376
|
+
d[0] || (d[0] = (v) => u.value = v),
|
|
1377
1377
|
h
|
|
1378
1378
|
],
|
|
1379
1379
|
class: "tw-mb-4",
|
|
@@ -1381,7 +1381,7 @@ const mo = /* @__PURE__ */ H({
|
|
|
1381
1381
|
clearable: "",
|
|
1382
1382
|
required: "",
|
|
1383
1383
|
error: !!L.length,
|
|
1384
|
-
"error-message":
|
|
1384
|
+
"error-message": A,
|
|
1385
1385
|
placeholder: i(o)("ASSETS.PAGES.DETAILS.FIELDS.NAME.PLACEHOLDER"),
|
|
1386
1386
|
disabled: l.value
|
|
1387
1387
|
}, null, 8, ["modelValue", "label", "error", "error-message", "placeholder", "disabled", "onUpdate:modelValue"])
|
|
@@ -1391,7 +1391,7 @@ const mo = /* @__PURE__ */ H({
|
|
|
1391
1391
|
m.value === "Image" && !i(t)?.hiddenFields?.includes("altText") ? (P(), D(i($), {
|
|
1392
1392
|
key: 1,
|
|
1393
1393
|
modelValue: r.value.altText,
|
|
1394
|
-
"onUpdate:modelValue": d[1] || (d[1] = (
|
|
1394
|
+
"onUpdate:modelValue": d[1] || (d[1] = (A) => r.value.altText = A),
|
|
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) : (P(), D(i(
|
|
1402
|
+
i(t)?.hiddenFields?.includes("description") ? q("", !0) : (P(), D(i(_n), {
|
|
1403
1403
|
key: 2,
|
|
1404
1404
|
modelValue: r.value.description,
|
|
1405
|
-
"onUpdate:modelValue": d[2] || (d[2] = (
|
|
1405
|
+
"onUpdate:modelValue": d[2] || (d[2] = (A) => r.value.description = A),
|
|
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"),
|
|
@@ -1425,12 +1425,12 @@ const mo = /* @__PURE__ */ H({
|
|
|
1425
1425
|
__proto__: null,
|
|
1426
1426
|
AssetsDetails: go
|
|
1427
1427
|
}, Symbol.toStringTag, { value: "Module" })), Ao = Et({ blades: So }), po = { class: "tw-flex tw-items-center tw-justify-center" };
|
|
1428
|
-
|
|
1428
|
+
Ht("AssetsManager", {});
|
|
1429
1429
|
const To = /* @__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 = I(() => a.value.manager), r = I(() => o.value.items.value ?? []), l = I(() => o.value.loading.value),
|
|
1433
|
+
const t = k("assets-manager"), { options: a, openBlade: n } = ut(), { t: s } = le({ useScope: "global" }), o = I(() => a.value.manager), r = I(() => o.value.items.value ?? []), l = I(() => o.value.loading.value), u = I(() => a.value?.title || s("ASSETS_MANAGER.TITLE")), c = b(!1), E = b(), m = b([]), f = I(() => a.value?.disabled), d = b([
|
|
1434
1434
|
{
|
|
1435
1435
|
id: "add",
|
|
1436
1436
|
title: I(() => s("ASSETS_MANAGER.TOOLBAR.ADD")),
|
|
@@ -1438,8 +1438,8 @@ const To = /* @__PURE__ */ H({
|
|
|
1438
1438
|
clickHandler() {
|
|
1439
1439
|
w();
|
|
1440
1440
|
},
|
|
1441
|
-
disabled: I(() =>
|
|
1442
|
-
isVisible: I(() => !
|
|
1441
|
+
disabled: I(() => f.value),
|
|
1442
|
+
isVisible: I(() => !f.value)
|
|
1443
1443
|
},
|
|
1444
1444
|
{
|
|
1445
1445
|
id: "delete",
|
|
@@ -1448,24 +1448,24 @@ const To = /* @__PURE__ */ H({
|
|
|
1448
1448
|
async clickHandler() {
|
|
1449
1449
|
await o.value.removeMany(m.value);
|
|
1450
1450
|
},
|
|
1451
|
-
disabled: I(() => !m.value.length ||
|
|
1452
|
-
isVisible: I(() => !
|
|
1451
|
+
disabled: I(() => !m.value.length || f.value),
|
|
1452
|
+
isVisible: I(() => !f.value)
|
|
1453
1453
|
}
|
|
1454
1454
|
]);
|
|
1455
|
-
async function
|
|
1455
|
+
async function A(p) {
|
|
1456
1456
|
if (p.dragIndex !== p.dropIndex) {
|
|
1457
1457
|
const _ = p.value.map((N, B) => (N.sortOrder = B, N));
|
|
1458
1458
|
o.value.reorder(_);
|
|
1459
1459
|
}
|
|
1460
1460
|
}
|
|
1461
1461
|
function h() {
|
|
1462
|
-
|
|
1462
|
+
f.value || (c.value = !0);
|
|
1463
1463
|
}
|
|
1464
1464
|
function L() {
|
|
1465
|
-
|
|
1465
|
+
f.value || (c.value = !1);
|
|
1466
1466
|
}
|
|
1467
1467
|
async function v(p) {
|
|
1468
|
-
if (!
|
|
1468
|
+
if (!f.value) {
|
|
1469
1469
|
const _ = p.dataTransfer?.files;
|
|
1470
1470
|
if (_ && _.length)
|
|
1471
1471
|
try {
|
|
@@ -1473,11 +1473,11 @@ const To = /* @__PURE__ */ H({
|
|
|
1473
1473
|
} catch (N) {
|
|
1474
1474
|
throw t.error("Failed to upload dropped files:", N), N;
|
|
1475
1475
|
}
|
|
1476
|
-
|
|
1476
|
+
c.value = !1;
|
|
1477
1477
|
}
|
|
1478
1478
|
}
|
|
1479
1479
|
function w() {
|
|
1480
|
-
|
|
1480
|
+
E.value.value = "", E.value.click();
|
|
1481
1481
|
}
|
|
1482
1482
|
async function C(p) {
|
|
1483
1483
|
if (!p || p.length === 0) return;
|
|
@@ -1499,7 +1499,7 @@ const To = /* @__PURE__ */ H({
|
|
|
1499
1499
|
throw t.error("Failed to upload assets:", B), B;
|
|
1500
1500
|
}
|
|
1501
1501
|
}
|
|
1502
|
-
async function
|
|
1502
|
+
async function S(p) {
|
|
1503
1503
|
const N = p.target.files;
|
|
1504
1504
|
if (N && N.length)
|
|
1505
1505
|
try {
|
|
@@ -1513,7 +1513,7 @@ const To = /* @__PURE__ */ H({
|
|
|
1513
1513
|
name: "AssetsDetails",
|
|
1514
1514
|
options: {
|
|
1515
1515
|
asset: i(p),
|
|
1516
|
-
disabled:
|
|
1516
|
+
disabled: f.value,
|
|
1517
1517
|
hiddenFields: a.value?.hiddenFields,
|
|
1518
1518
|
assetEditHandler: (_) => {
|
|
1519
1519
|
o.value.updateItem(_);
|
|
@@ -1536,26 +1536,26 @@ const To = /* @__PURE__ */ H({
|
|
|
1536
1536
|
}
|
|
1537
1537
|
}
|
|
1538
1538
|
];
|
|
1539
|
-
return (p, _) => (P(), D(i(
|
|
1540
|
-
title:
|
|
1539
|
+
return (p, _) => (P(), D(i(Gt), {
|
|
1540
|
+
title: u.value,
|
|
1541
1541
|
"toolbar-items": d.value,
|
|
1542
1542
|
width: "70%"
|
|
1543
1543
|
}, {
|
|
1544
1544
|
default: T(() => [
|
|
1545
|
-
|
|
1545
|
+
on((P(), 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
1549
|
onDrop: Ge(v, ["prevent", "stop"])
|
|
1550
1550
|
}, [
|
|
1551
|
-
R(i(
|
|
1551
|
+
R(i(In), {
|
|
1552
1552
|
selection: m.value,
|
|
1553
1553
|
"onUpdate:selection": _[0] || (_[0] = (N) => m.value = N),
|
|
1554
1554
|
items: r.value,
|
|
1555
1555
|
"state-key": "assets_manager",
|
|
1556
|
-
"reorderable-rows": !
|
|
1557
|
-
"selection-mode":
|
|
1558
|
-
"row-actions":
|
|
1556
|
+
"reorderable-rows": !f.value,
|
|
1557
|
+
"selection-mode": f.value ? void 0 : "multiple",
|
|
1558
|
+
"row-actions": f.value ? void 0 : O,
|
|
1559
1559
|
"empty-state": {
|
|
1560
1560
|
icon: "lucide-cloud-upload",
|
|
1561
1561
|
title: p.$t("ASSETS_MANAGER.EMPTY.UPLOAD_ASSETS"),
|
|
@@ -1564,7 +1564,7 @@ const To = /* @__PURE__ */ H({
|
|
|
1564
1564
|
},
|
|
1565
1565
|
class: "tw-h-full tw-w-full",
|
|
1566
1566
|
onRowClick: _[1] || (_[1] = ({ data: N }) => g(N)),
|
|
1567
|
-
onRowReorder:
|
|
1567
|
+
onRowReorder: A
|
|
1568
1568
|
}, {
|
|
1569
1569
|
default: T(() => [
|
|
1570
1570
|
R(i(Se), {
|
|
@@ -1576,7 +1576,7 @@ const To = /* @__PURE__ */ H({
|
|
|
1576
1576
|
}, {
|
|
1577
1577
|
body: T(({ data: N }) => [
|
|
1578
1578
|
U("div", po, [
|
|
1579
|
-
i(
|
|
1579
|
+
i(Yt)(N.name ?? "") ? (P(), D(i(ot), {
|
|
1580
1580
|
key: 0,
|
|
1581
1581
|
bordered: !0,
|
|
1582
1582
|
size: "s",
|
|
@@ -1586,8 +1586,8 @@ const To = /* @__PURE__ */ H({
|
|
|
1586
1586
|
}, null, 8, ["src"])) : (P(), W("div", {
|
|
1587
1587
|
key: 1,
|
|
1588
1588
|
class: "assets-manager__file-badge",
|
|
1589
|
-
style:
|
|
1590
|
-
}, y(i(
|
|
1589
|
+
style: Ft({ backgroundColor: i(jt)(N.name ?? "") })
|
|
1590
|
+
}, y(i(Xt)(N.name ?? "")), 5))
|
|
1591
1591
|
])
|
|
1592
1592
|
]),
|
|
1593
1593
|
_: 1
|
|
@@ -1605,7 +1605,7 @@ const To = /* @__PURE__ */ H({
|
|
|
1605
1605
|
"always-visible": ""
|
|
1606
1606
|
}, {
|
|
1607
1607
|
body: T(({ data: N }) => [
|
|
1608
|
-
U("div", null, y(i(
|
|
1608
|
+
U("div", null, y(i(Zt)(N.size ?? 0)), 1)
|
|
1609
1609
|
]),
|
|
1610
1610
|
_: 1
|
|
1611
1611
|
}, 8, ["title"]),
|
|
@@ -1631,16 +1631,16 @@ const To = /* @__PURE__ */ H({
|
|
|
1631
1631
|
_: 1
|
|
1632
1632
|
}, 8, ["selection", "items", "reorderable-rows", "selection-mode", "row-actions", "empty-state"])
|
|
1633
1633
|
], 32)), [
|
|
1634
|
-
[i(
|
|
1634
|
+
[i(Wa), l.value]
|
|
1635
1635
|
]),
|
|
1636
1636
|
U("input", {
|
|
1637
1637
|
ref_key: "uploader",
|
|
1638
|
-
ref:
|
|
1638
|
+
ref: E,
|
|
1639
1639
|
type: "file",
|
|
1640
1640
|
hidden: "",
|
|
1641
1641
|
multiple: "",
|
|
1642
1642
|
name: "assets_manager",
|
|
1643
|
-
onChange:
|
|
1643
|
+
onChange: S
|
|
1644
1644
|
}, null, 544)
|
|
1645
1645
|
]),
|
|
1646
1646
|
_: 1
|
|
@@ -1650,10 +1650,10 @@ const To = /* @__PURE__ */ H({
|
|
|
1650
1650
|
__proto__: null,
|
|
1651
1651
|
AssetsManager: ho
|
|
1652
1652
|
}, Symbol.toStringTag, { value: "Module" })), Oo = Et({ blades: Lo }), Ot = k("connection-status"), Rt = "vc-framework-offline-status", _t = b(!1), It = b(!0);
|
|
1653
|
-
function
|
|
1653
|
+
function sa() {
|
|
1654
1654
|
if (!_t.value && typeof window < "u") {
|
|
1655
1655
|
_t.value = !0;
|
|
1656
|
-
const { isOnline: e } =
|
|
1656
|
+
const { isOnline: e } = Va();
|
|
1657
1657
|
ae(
|
|
1658
1658
|
e,
|
|
1659
1659
|
(t) => {
|
|
@@ -1671,13 +1671,13 @@ function aa() {
|
|
|
1671
1671
|
}
|
|
1672
1672
|
const Ze = k("slow-network"), Ro = 1e4, _o = ["slow-2g", "2g"];
|
|
1673
1673
|
let je = null;
|
|
1674
|
-
const
|
|
1674
|
+
const oa = "vc-slow-network", Io = 3e3;
|
|
1675
1675
|
let te = null;
|
|
1676
1676
|
function vt() {
|
|
1677
|
-
document.documentElement.classList.add(
|
|
1677
|
+
document.documentElement.classList.add(oa);
|
|
1678
1678
|
}
|
|
1679
1679
|
function wt() {
|
|
1680
|
-
document.documentElement.classList.remove(
|
|
1680
|
+
document.documentElement.classList.remove(oa);
|
|
1681
1681
|
}
|
|
1682
1682
|
const Ct = b(!1), Ve = b(0), tt = b(!1), Ue = /* @__PURE__ */ new Map(), at = /* @__PURE__ */ new Set(), Xe = I(() => Ve.value > 0 || tt.value);
|
|
1683
1683
|
function vo(e) {
|
|
@@ -1690,7 +1690,7 @@ function wo(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
|
}
|
|
1693
|
-
function
|
|
1693
|
+
function ra() {
|
|
1694
1694
|
if (!Ct.value && typeof window < "u") {
|
|
1695
1695
|
Ct.value = !0;
|
|
1696
1696
|
const e = navigator.connection;
|
|
@@ -1698,7 +1698,7 @@ function sa() {
|
|
|
1698
1698
|
const a = _o.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
|
-
const { isOnline: t } =
|
|
1701
|
+
const { isOnline: t } = sa();
|
|
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;
|
|
@@ -1713,11 +1713,11 @@ function sa() {
|
|
|
1713
1713
|
untrackRequest: wo
|
|
1714
1714
|
};
|
|
1715
1715
|
}
|
|
1716
|
-
const Ae = k("interceptors"), Co = /(^|\/)(login|signin|sign-in|account\/login|connect\/authorize)(\/|$)/i, Po = /* @__PURE__ */ new Set(["GET", "HEAD"]);
|
|
1716
|
+
const Ae = k("interceptors"), Co = /(^|\/)(login|signin|sign-in|account\/login|connect\/authorize)(\/|$)/i, Po = /* @__PURE__ */ new Set(["GET", "HEAD"]), Pt = "/api/platform/security/currentuser";
|
|
1717
1717
|
function bo(e, t) {
|
|
1718
1718
|
return (t?.method ?? (e instanceof Request ? e.method : void 0) ?? "GET").toUpperCase();
|
|
1719
1719
|
}
|
|
1720
|
-
function
|
|
1720
|
+
function bt(e) {
|
|
1721
1721
|
let t;
|
|
1722
1722
|
try {
|
|
1723
1723
|
t = new URL(e.url, window.location.origin).pathname;
|
|
@@ -1729,183 +1729,187 @@ function No(e) {
|
|
|
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 No(e) {
|
|
1733
1733
|
if (window.fetch.__vcInterceptorsInstalled__)
|
|
1734
1734
|
return Ae.warn("registerInterceptors called twice — ignoring second install"), window.fetch;
|
|
1735
|
-
const { fetch: a } = window, { signOut: n, isAuthenticated: s } = se(), { trackRequest: o, untrackRequest: r } =
|
|
1736
|
-
let l = 0;
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
() => !0
|
|
1742
|
-
// Only a 401 answers the question. Anything else — an unreachable platform, a 5xx — says
|
|
1743
|
-
// nothing about the session, and signing out on it would be a guess.
|
|
1744
|
-
(E) => !(Un.isApiException(E) && E.status === 401)
|
|
1735
|
+
const { fetch: a } = window, { signOut: n, isAuthenticated: s } = se(), { trackRequest: o, untrackRequest: r } = ra();
|
|
1736
|
+
let l = 0, u = null;
|
|
1737
|
+
function c() {
|
|
1738
|
+
return u ??= a(Pt, { credentials: "same-origin" }).then(
|
|
1739
|
+
(m) => m.status !== 401 && !(m.ok && bt(m)),
|
|
1740
|
+
// An unreachable platform says nothing about the session; signing out would be a guess.
|
|
1741
|
+
() => !0
|
|
1745
1742
|
).finally(() => {
|
|
1746
1743
|
u = null;
|
|
1747
1744
|
}), u;
|
|
1748
1745
|
}
|
|
1749
|
-
const
|
|
1746
|
+
const E = (async (...m) => {
|
|
1750
1747
|
if (window.__DEMO_MODE__)
|
|
1751
|
-
return Ae.warn("CANCELLED FETCH WHILE IN __DEMO_MODE__: ", ...
|
|
1752
|
-
|
|
1748
|
+
return Ae.warn("CANCELLED FETCH WHILE IN __DEMO_MODE__: ", ...m), Ae.warn("Please logout and add APP_PLATFORM_URL into .env file of your application to enable API calls"), new Promise((f) => {
|
|
1749
|
+
m[0] === "/api/platform/security/login" ? f({
|
|
1753
1750
|
status: 200,
|
|
1754
1751
|
text: async () => JSON.stringify({ succeeded: !0 })
|
|
1755
|
-
}) :
|
|
1752
|
+
}) : m[0] === "/api/platform/security/currentuser" ? (J.warning(
|
|
1756
1753
|
`You are currently in DEMO mode until the first page refresh.
|
|
1757
1754
|
All API calls are disabled. Please add APP_PLATFORM_URL to your application's .env file to enable API calls.`,
|
|
1758
1755
|
{
|
|
1759
1756
|
timeout: 1e4
|
|
1760
1757
|
}
|
|
1761
|
-
),
|
|
1758
|
+
), f({
|
|
1762
1759
|
status: 200,
|
|
1763
1760
|
text: async () => JSON.stringify({ id: "demo_user_id", userName: "DEMO_USER" })
|
|
1764
|
-
})) :
|
|
1761
|
+
})) : f({
|
|
1765
1762
|
status: 200,
|
|
1766
1763
|
text: async () => JSON.stringify({})
|
|
1767
1764
|
});
|
|
1768
1765
|
});
|
|
1769
1766
|
{
|
|
1770
|
-
let
|
|
1771
|
-
const g = typeof
|
|
1767
|
+
let f = function(S) {
|
|
1768
|
+
const g = typeof S == "string" ? S : S instanceof Request ? S.url : S.toString();
|
|
1772
1769
|
try {
|
|
1773
1770
|
const O = new URL(g, window.location.origin);
|
|
1774
1771
|
return O.origin === window.location.origin && O.pathname.startsWith("/api/");
|
|
1775
1772
|
} catch {
|
|
1776
1773
|
return !1;
|
|
1777
1774
|
}
|
|
1778
|
-
},
|
|
1779
|
-
const g = typeof
|
|
1775
|
+
}, d = function(S) {
|
|
1776
|
+
const g = typeof S == "string" ? S : S instanceof Request ? S.url : S.toString();
|
|
1780
1777
|
try {
|
|
1781
1778
|
return new URL(g, window.location.origin).origin === window.location.origin;
|
|
1782
1779
|
} catch {
|
|
1783
1780
|
return !1;
|
|
1784
1781
|
}
|
|
1782
|
+
}, A = function(S) {
|
|
1783
|
+
const g = typeof S == "string" ? S : S instanceof Request ? S.url : S.toString();
|
|
1784
|
+
try {
|
|
1785
|
+
return new URL(g, window.location.origin).pathname === Pt;
|
|
1786
|
+
} catch {
|
|
1787
|
+
return !1;
|
|
1788
|
+
}
|
|
1785
1789
|
};
|
|
1786
|
-
const [h, L] =
|
|
1787
|
-
async function v(
|
|
1788
|
-
!
|
|
1790
|
+
const [h, L] = m;
|
|
1791
|
+
async function v(S, g = !1) {
|
|
1792
|
+
!S && !g || Ne() || !s.value || !g && !A(h) && await c() || Ne() || (Fn(), n().catch((O) => {
|
|
1789
1793
|
Ae.error("signOut failed after session expiry:", O);
|
|
1790
1794
|
}).finally(() => {
|
|
1791
|
-
|
|
1795
|
+
Do(e), J.error(z.global.t("CORE.ERRORS.SESSION_EXPIRED"));
|
|
1792
1796
|
}));
|
|
1793
1797
|
}
|
|
1794
|
-
if (!
|
|
1795
|
-
if (!
|
|
1796
|
-
return a(...
|
|
1797
|
-
const
|
|
1798
|
-
return await v(
|
|
1798
|
+
if (!f(h)) {
|
|
1799
|
+
if (!d(h))
|
|
1800
|
+
return a(...m);
|
|
1801
|
+
const S = await a(...m);
|
|
1802
|
+
return await v(S.status === 401), S;
|
|
1799
1803
|
}
|
|
1800
1804
|
if (!navigator.onLine)
|
|
1801
1805
|
return Ae.warn("Request blocked: browser is offline", h), Promise.reject(new Error(z.global.t("CORE.ERRORS.NETWORK_UNAVAILABLE")));
|
|
1802
1806
|
const w = String(++l), C = Po.has(bo(h, L));
|
|
1803
1807
|
C && o(w);
|
|
1804
1808
|
try {
|
|
1805
|
-
const
|
|
1806
|
-
if (await v(
|
|
1807
|
-
throw new
|
|
1808
|
-
return
|
|
1809
|
+
const S = await a(...m), g = S.ok && bt(S);
|
|
1810
|
+
if (await v(S.status === 401, g), g && Ne())
|
|
1811
|
+
throw new Un();
|
|
1812
|
+
return S;
|
|
1809
1813
|
} finally {
|
|
1810
1814
|
C && r(w);
|
|
1811
1815
|
}
|
|
1812
1816
|
}
|
|
1813
1817
|
});
|
|
1814
|
-
return
|
|
1818
|
+
return E.__vcInterceptorsInstalled__ = !0, window.fetch = E, E;
|
|
1815
1819
|
}
|
|
1816
|
-
function
|
|
1820
|
+
function Do(e) {
|
|
1817
1821
|
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
1822
|
}
|
|
1819
|
-
const
|
|
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 = {
|
|
1821
|
-
CORE:
|
|
1822
|
-
SHELL:
|
|
1823
|
-
COMPONENTS:
|
|
1824
|
-
INVITATION:
|
|
1825
|
-
LOGIN:
|
|
1826
|
-
FORGOT_PASSWORD:
|
|
1827
|
-
PASSWORDRESET:
|
|
1828
|
-
ASSETS_MANAGER:
|
|
1829
|
-
ASSETS:
|
|
1830
|
-
messages:
|
|
1831
|
-
PERMISSION_MESSAGES:
|
|
1832
|
-
AI_AGENT:
|
|
1833
|
-
VC_SCHEDULER:
|
|
1834
|
-
common:
|
|
1835
|
-
},
|
|
1823
|
+
const ia = { ERRORS: { SESSION_EXPIRED: `Access Denied: Your session has expired or you do not have the necessary permissions.
|
|
1824
|
+
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" } }, la = { 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" } }, ua = { 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" } }, ca = { 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." } }, da = { 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}" } }, Ea = { 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}" }, fa = { 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." } }, ma = { 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" } } }, ga = { 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" } } } } }, Sa = { _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" }, Aa = { ACCESS_RESTRICTED: "Access restricted" }, pa = { LOADING: "Loading Virto OZ..." }, Ta = { 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" }, ha = { no_options: "No options" }, yo = {
|
|
1825
|
+
CORE: ia,
|
|
1826
|
+
SHELL: la,
|
|
1827
|
+
COMPONENTS: ua,
|
|
1828
|
+
INVITATION: ca,
|
|
1829
|
+
LOGIN: da,
|
|
1830
|
+
FORGOT_PASSWORD: Ea,
|
|
1831
|
+
PASSWORDRESET: fa,
|
|
1832
|
+
ASSETS_MANAGER: ma,
|
|
1833
|
+
ASSETS: ga,
|
|
1834
|
+
messages: Sa,
|
|
1835
|
+
PERMISSION_MESSAGES: Aa,
|
|
1836
|
+
AI_AGENT: pa,
|
|
1837
|
+
VC_SCHEDULER: Ta,
|
|
1838
|
+
common: ha
|
|
1839
|
+
}, Bo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1836
1840
|
__proto__: null,
|
|
1837
|
-
AI_AGENT:
|
|
1838
|
-
ASSETS:
|
|
1839
|
-
ASSETS_MANAGER:
|
|
1840
|
-
COMPONENTS:
|
|
1841
|
-
CORE:
|
|
1842
|
-
FORGOT_PASSWORD:
|
|
1843
|
-
INVITATION:
|
|
1844
|
-
LOGIN:
|
|
1845
|
-
PASSWORDRESET:
|
|
1846
|
-
PERMISSION_MESSAGES:
|
|
1847
|
-
SHELL:
|
|
1848
|
-
VC_SCHEDULER:
|
|
1849
|
-
common:
|
|
1850
|
-
default:
|
|
1851
|
-
messages:
|
|
1852
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
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 = {
|
|
1854
|
-
CORE:
|
|
1855
|
-
SHELL:
|
|
1856
|
-
COMPONENTS:
|
|
1857
|
-
INVITATION:
|
|
1858
|
-
LOGIN:
|
|
1859
|
-
FORGOT_PASSWORD:
|
|
1860
|
-
PASSWORDRESET:
|
|
1861
|
-
ASSETS_MANAGER:
|
|
1862
|
-
ASSETS:
|
|
1863
|
-
messages:
|
|
1864
|
-
PERMISSION_MESSAGES:
|
|
1865
|
-
AI_AGENT:
|
|
1866
|
-
VC_SCHEDULER:
|
|
1867
|
-
common:
|
|
1868
|
-
},
|
|
1841
|
+
AI_AGENT: pa,
|
|
1842
|
+
ASSETS: ga,
|
|
1843
|
+
ASSETS_MANAGER: ma,
|
|
1844
|
+
COMPONENTS: ua,
|
|
1845
|
+
CORE: ia,
|
|
1846
|
+
FORGOT_PASSWORD: Ea,
|
|
1847
|
+
INVITATION: ca,
|
|
1848
|
+
LOGIN: da,
|
|
1849
|
+
PASSWORDRESET: fa,
|
|
1850
|
+
PERMISSION_MESSAGES: Aa,
|
|
1851
|
+
SHELL: la,
|
|
1852
|
+
VC_SCHEDULER: Ta,
|
|
1853
|
+
common: ha,
|
|
1854
|
+
default: yo,
|
|
1855
|
+
messages: Sa
|
|
1856
|
+
}, Symbol.toStringTag, { value: "Module" })), La = { ERRORS: { SESSION_EXPIRED: `Zugriff verweigert: Ihre Sitzung ist abgelaufen oder Sie verfügen nicht über die erforderlichen Berechtigungen.
|
|
1857
|
+
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" } }, Oa = { NAVIGATION_ARIA_LABEL: "Hauptnavigation", SIDEBAR: { SEARCH_PLACEHOLDER: "Suchbegriff" }, USER: { ROLE: { ADMINISTRATOR: "Administrator" } }, ACCOUNT: { SETTINGS: "Einstellungen", CHANGE_PASSWORD: "Passwort ändern", PROFILE: "Profil", LOGOUT: "Abmelden" } }, Ra = { 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" } }, _a = { 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." } }, Ia = { 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}" } }, va = { 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" }, wa = { 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." } }, Ca = { 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" } } }, Pa = { 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" } } } } }, ba = { _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" }, Na = { ACCESS_RESTRICTED: "Zugriff eingeschränkt" }, Da = { LOADING: "Virto OZ wird geladen..." }, ya = { 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" }, Ba = { no_options: "Keine Optionen" }, Mo = {
|
|
1858
|
+
CORE: La,
|
|
1859
|
+
SHELL: Oa,
|
|
1860
|
+
COMPONENTS: Ra,
|
|
1861
|
+
INVITATION: _a,
|
|
1862
|
+
LOGIN: Ia,
|
|
1863
|
+
FORGOT_PASSWORD: va,
|
|
1864
|
+
PASSWORDRESET: wa,
|
|
1865
|
+
ASSETS_MANAGER: Ca,
|
|
1866
|
+
ASSETS: Pa,
|
|
1867
|
+
messages: ba,
|
|
1868
|
+
PERMISSION_MESSAGES: Na,
|
|
1869
|
+
AI_AGENT: Da,
|
|
1870
|
+
VC_SCHEDULER: ya,
|
|
1871
|
+
common: Ba
|
|
1872
|
+
}, ko = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1869
1873
|
__proto__: null,
|
|
1870
|
-
AI_AGENT:
|
|
1871
|
-
ASSETS:
|
|
1872
|
-
ASSETS_MANAGER:
|
|
1873
|
-
COMPONENTS:
|
|
1874
|
-
CORE:
|
|
1875
|
-
FORGOT_PASSWORD:
|
|
1876
|
-
INVITATION:
|
|
1877
|
-
LOGIN:
|
|
1878
|
-
PASSWORDRESET:
|
|
1879
|
-
PERMISSION_MESSAGES:
|
|
1880
|
-
SHELL:
|
|
1881
|
-
VC_SCHEDULER:
|
|
1882
|
-
common:
|
|
1883
|
-
default:
|
|
1884
|
-
messages:
|
|
1885
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1874
|
+
AI_AGENT: Da,
|
|
1875
|
+
ASSETS: Pa,
|
|
1876
|
+
ASSETS_MANAGER: Ca,
|
|
1877
|
+
COMPONENTS: Ra,
|
|
1878
|
+
CORE: La,
|
|
1879
|
+
FORGOT_PASSWORD: va,
|
|
1880
|
+
INVITATION: _a,
|
|
1881
|
+
LOGIN: Ia,
|
|
1882
|
+
PASSWORDRESET: wa,
|
|
1883
|
+
PERMISSION_MESSAGES: Na,
|
|
1884
|
+
SHELL: Oa,
|
|
1885
|
+
VC_SCHEDULER: ya,
|
|
1886
|
+
common: Ba,
|
|
1887
|
+
default: Mo,
|
|
1888
|
+
messages: ba
|
|
1889
|
+
}, Symbol.toStringTag, { value: "Module" })), Vo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1886
1890
|
__proto__: null,
|
|
1887
|
-
de:
|
|
1888
|
-
en:
|
|
1891
|
+
de: ko,
|
|
1892
|
+
en: Bo
|
|
1889
1893
|
}, Symbol.toStringTag, { value: "Module" })), Je = k("global-error-handler");
|
|
1890
1894
|
function De(e) {
|
|
1891
1895
|
return e instanceof Error ? `${e.name}:${e.message}` : String(e);
|
|
1892
1896
|
}
|
|
1893
|
-
const pe = /* @__PURE__ */ new Map(),
|
|
1897
|
+
const pe = /* @__PURE__ */ new Map(), Nt = 3e3;
|
|
1894
1898
|
function Qe(e) {
|
|
1895
1899
|
const t = De(e), a = Date.now(), n = pe.get(t);
|
|
1896
|
-
if (n && a - n <
|
|
1900
|
+
if (n && a - n < Nt) return !0;
|
|
1897
1901
|
if (pe.set(t, a), pe.size > 50)
|
|
1898
1902
|
for (const [s, o] of pe)
|
|
1899
|
-
a - o >
|
|
1903
|
+
a - o > Nt && pe.delete(s);
|
|
1900
1904
|
return !1;
|
|
1901
1905
|
}
|
|
1902
|
-
function
|
|
1906
|
+
function Uo(e) {
|
|
1903
1907
|
const t = e.config.errorHandler;
|
|
1904
1908
|
if (e.config.errorHandler = (o, r, l) => {
|
|
1905
1909
|
if (Je.error("Unhandled Vue error:", o, `
|
|
1906
1910
|
Info:`, l), !Qe(o)) {
|
|
1907
|
-
const
|
|
1908
|
-
J.error(
|
|
1911
|
+
const u = Pe(o);
|
|
1912
|
+
J.error(u.message, {
|
|
1909
1913
|
timeout: 8e3,
|
|
1910
1914
|
notificationId: `global-vue-${De(o)}`
|
|
1911
1915
|
});
|
|
@@ -1936,7 +1940,7 @@ Info:`, l), !Qe(o)) {
|
|
|
1936
1940
|
};
|
|
1937
1941
|
window.addEventListener("error", s);
|
|
1938
1942
|
}
|
|
1939
|
-
const
|
|
1943
|
+
const Fo = k("notification-instance"), Z = {
|
|
1940
1944
|
"top-center": void 0,
|
|
1941
1945
|
"top-right": void 0,
|
|
1942
1946
|
"top-left": void 0,
|
|
@@ -1944,7 +1948,7 @@ const Wo = k("notification-instance"), Z = {
|
|
|
1944
1948
|
"bottom-right": void 0,
|
|
1945
1949
|
"bottom-left": void 0
|
|
1946
1950
|
};
|
|
1947
|
-
function
|
|
1951
|
+
function Wo() {
|
|
1948
1952
|
function e(s, o, r) {
|
|
1949
1953
|
document.getElementById(o) && (Z[r] = s);
|
|
1950
1954
|
}
|
|
@@ -1955,7 +1959,7 @@ function Ho() {
|
|
|
1955
1959
|
Z[l]?.unmount(), document.getElementById(`notification-${l}`)?.remove(), Z[l] = void 0;
|
|
1956
1960
|
}), Object.values(Z).some((r) => r !== void 0) || document.querySelector(".notification")?.remove());
|
|
1957
1961
|
} catch (o) {
|
|
1958
|
-
|
|
1962
|
+
Fo.error("Failed to unmount notification component:", o);
|
|
1959
1963
|
}
|
|
1960
1964
|
}
|
|
1961
1965
|
function a() {
|
|
@@ -1980,127 +1984,127 @@ const de = k("notification-container"), G = {
|
|
|
1980
1984
|
"bottom-center": b([]),
|
|
1981
1985
|
"bottom-right": b([]),
|
|
1982
1986
|
"bottom-left": b([])
|
|
1983
|
-
}, { clearContainer:
|
|
1984
|
-
function
|
|
1987
|
+
}, { clearContainer: Ho, unmountComponent: Go, saveInstance: xo, getInstanceByPosition: Dt } = Wo();
|
|
1988
|
+
function $o() {
|
|
1985
1989
|
const e = ie({
|
|
1986
1990
|
timeout: 3e3,
|
|
1987
1991
|
pauseOnHover: !0,
|
|
1988
1992
|
position: "top-center"
|
|
1989
1993
|
});
|
|
1990
1994
|
function t() {
|
|
1991
|
-
return Object.values(G).flatMap((
|
|
1995
|
+
return Object.values(G).flatMap((c) => c.value);
|
|
1992
1996
|
}
|
|
1993
|
-
function a(
|
|
1994
|
-
return G[
|
|
1997
|
+
function a(c) {
|
|
1998
|
+
return G[c].value;
|
|
1995
1999
|
}
|
|
1996
|
-
function n(
|
|
1997
|
-
return t().find((
|
|
2000
|
+
function n(c) {
|
|
2001
|
+
return t().find((E) => E.notificationId === c);
|
|
1998
2002
|
}
|
|
1999
|
-
function s(
|
|
2000
|
-
const
|
|
2001
|
-
let d = document.querySelector(
|
|
2002
|
-
return d || (d = document.createElement("div"), d.className = "notification__container", d.id = `notification-${
|
|
2003
|
+
function s(c) {
|
|
2004
|
+
const E = document.querySelector(".notification"), m = E || document.createElement("div"), f = `.notification__container[data-position="${c}"]`;
|
|
2005
|
+
let d = document.querySelector(f);
|
|
2006
|
+
return d || (d = document.createElement("div"), d.className = "notification__container", d.id = `notification-${c}`, d.setAttribute("data-position", c), E || (m.className = "notification", document.body.appendChild(m)), m.appendChild(d)), d;
|
|
2003
2007
|
}
|
|
2004
2008
|
const o = /* @__PURE__ */ new Map();
|
|
2005
|
-
async function r(
|
|
2006
|
-
const
|
|
2007
|
-
if (m && await m, !
|
|
2008
|
-
const
|
|
2009
|
-
const d = s(
|
|
2010
|
-
...
|
|
2011
|
-
position:
|
|
2009
|
+
async function r(c) {
|
|
2010
|
+
const E = c.position || e.position, m = o.get(E);
|
|
2011
|
+
if (m && await m, !Dt(E)) {
|
|
2012
|
+
const f = (async () => {
|
|
2013
|
+
const d = s(E), { default: A } = await Promise.resolve().then(() => Lr), h = rn(A, {
|
|
2014
|
+
...c,
|
|
2015
|
+
position: E
|
|
2012
2016
|
});
|
|
2013
|
-
h.use(z), h.provide(
|
|
2017
|
+
h.use(z), h.provide(Jt, { notificationContainers: G, actions: u }), h.mount(d), xo(h, d.id, E);
|
|
2014
2018
|
})();
|
|
2015
|
-
o.set(
|
|
2019
|
+
o.set(E, f), await f, o.delete(E);
|
|
2016
2020
|
}
|
|
2017
2021
|
be(() => {
|
|
2018
|
-
|
|
2022
|
+
c.updateId ? u.update(c) : u.add(c);
|
|
2019
2023
|
});
|
|
2020
2024
|
}
|
|
2021
|
-
function l(
|
|
2022
|
-
return t().some((
|
|
2025
|
+
function l(c) {
|
|
2026
|
+
return t().some((E) => E.notificationId === c);
|
|
2023
2027
|
}
|
|
2024
|
-
const
|
|
2025
|
-
add(
|
|
2026
|
-
const
|
|
2027
|
-
m.value.find((d) => d.notificationId ===
|
|
2028
|
-
m.value.push(
|
|
2028
|
+
const u = {
|
|
2029
|
+
add(c) {
|
|
2030
|
+
const E = c.position || e.position, m = G[E];
|
|
2031
|
+
m.value.find((d) => d.notificationId === c.notificationId) || be(() => {
|
|
2032
|
+
m.value.push(c), c.onOpen && typeof c?.onOpen == "function" && c.onOpen(c.payload);
|
|
2029
2033
|
});
|
|
2030
2034
|
},
|
|
2031
|
-
remove(
|
|
2032
|
-
if (
|
|
2033
|
-
let
|
|
2034
|
-
Object.entries(G).forEach(([
|
|
2035
|
-
const
|
|
2036
|
-
|
|
2037
|
-
}), m && (G[m].value = G[m].value.filter((
|
|
2038
|
-
|
|
2035
|
+
remove(c) {
|
|
2036
|
+
if (c) {
|
|
2037
|
+
let E, m;
|
|
2038
|
+
Object.entries(G).forEach(([f, d]) => {
|
|
2039
|
+
const A = d.value.find((h) => h.notificationId === c);
|
|
2040
|
+
A && (E = A, m = f);
|
|
2041
|
+
}), m && (G[m].value = G[m].value.filter((f) => f.notificationId !== c), G[m].value.length === 0 && Go(m), be(() => {
|
|
2042
|
+
E?.onClose && typeof E?.onClose == "function" && E.onClose(E.payload);
|
|
2039
2043
|
}));
|
|
2040
2044
|
}
|
|
2041
2045
|
},
|
|
2042
2046
|
clear() {
|
|
2043
|
-
|
|
2044
|
-
|
|
2047
|
+
Ho(), Object.values(G).forEach((c) => {
|
|
2048
|
+
c.value = [];
|
|
2045
2049
|
});
|
|
2046
2050
|
},
|
|
2047
|
-
dismiss(
|
|
2048
|
-
if (!
|
|
2049
|
-
let
|
|
2051
|
+
dismiss(c) {
|
|
2052
|
+
if (!c) return;
|
|
2053
|
+
let E = !1;
|
|
2050
2054
|
Object.values(G).forEach((m) => {
|
|
2051
|
-
m.value.forEach((
|
|
2052
|
-
|
|
2055
|
+
m.value.forEach((f) => {
|
|
2056
|
+
f.notificationId === c && (f.dismissing = !0, E = !0);
|
|
2053
2057
|
});
|
|
2054
|
-
}),
|
|
2058
|
+
}), E || de.debug(`dismiss: notification ${c} not found`);
|
|
2055
2059
|
},
|
|
2056
|
-
update(
|
|
2057
|
-
if (
|
|
2058
|
-
let
|
|
2059
|
-
if (Object.entries(G).forEach(([d,
|
|
2060
|
-
const h =
|
|
2061
|
-
h && (
|
|
2062
|
-
}),
|
|
2063
|
-
if (de.debug(`Updating notification ${
|
|
2060
|
+
update(c) {
|
|
2061
|
+
if (c.updateId) {
|
|
2062
|
+
let E, m, f;
|
|
2063
|
+
if (Object.entries(G).forEach(([d, A]) => {
|
|
2064
|
+
const h = A.value.find((L) => L.notificationId === c.notificationId);
|
|
2065
|
+
h && (E = h, m = A, f = d);
|
|
2066
|
+
}), E && m) {
|
|
2067
|
+
if (de.debug(`Updating notification ${c.notificationId} in position ${f}`), c.position && c.position !== f) {
|
|
2064
2068
|
m.value = m.value.filter(
|
|
2065
|
-
(h) => h.notificationId !==
|
|
2069
|
+
(h) => h.notificationId !== c.notificationId
|
|
2066
2070
|
);
|
|
2067
2071
|
const d = {
|
|
2068
|
-
...
|
|
2069
|
-
...
|
|
2070
|
-
},
|
|
2071
|
-
|
|
2072
|
+
...E,
|
|
2073
|
+
...c
|
|
2074
|
+
}, A = c.position;
|
|
2075
|
+
Dt(A) ? (de.debug(`Adding to existing container for position ${A}`), G[A].value.push(d)) : (de.debug(`Creating new container for position ${A}`), r(d));
|
|
2072
2076
|
} else
|
|
2073
|
-
de.debug("Standard update of notification properties"), Object.keys(
|
|
2077
|
+
de.debug("Standard update of notification properties"), Object.keys(c).forEach((d) => {
|
|
2074
2078
|
if (d !== "updateId" && d !== "notificationId") {
|
|
2075
|
-
const
|
|
2076
|
-
|
|
2079
|
+
const A = d, h = c[A];
|
|
2080
|
+
E && h !== void 0 && (E[A] = h);
|
|
2077
2081
|
}
|
|
2078
2082
|
});
|
|
2079
2083
|
return !0;
|
|
2080
2084
|
} else
|
|
2081
|
-
return de.warn(`Notification with ID ${
|
|
2085
|
+
return de.warn(`Notification with ID ${c.notificationId} not found for update`), !1;
|
|
2082
2086
|
}
|
|
2083
2087
|
return !1;
|
|
2084
2088
|
},
|
|
2085
|
-
setPosition(
|
|
2086
|
-
|
|
2089
|
+
setPosition(c) {
|
|
2090
|
+
c && (e.position = c);
|
|
2087
2091
|
}
|
|
2088
2092
|
};
|
|
2089
2093
|
return {
|
|
2090
2094
|
defaultOptions: e,
|
|
2091
2095
|
notificationContainers: G,
|
|
2092
|
-
actions:
|
|
2096
|
+
actions: u,
|
|
2093
2097
|
getAllNotifications: t,
|
|
2094
2098
|
getNotificationsByPosition: a,
|
|
2095
2099
|
appendInstance: r,
|
|
2096
2100
|
getNotification: n,
|
|
2097
|
-
generateNotificationId:
|
|
2101
|
+
generateNotificationId: Ha,
|
|
2098
2102
|
hasNotification: l
|
|
2099
2103
|
};
|
|
2100
2104
|
}
|
|
2101
|
-
function
|
|
2102
|
-
const e =
|
|
2103
|
-
|
|
2105
|
+
function Ko() {
|
|
2106
|
+
const e = $o();
|
|
2107
|
+
Ga({
|
|
2104
2108
|
defaultOptions: e.defaultOptions,
|
|
2105
2109
|
actions: e.actions,
|
|
2106
2110
|
getAllNotifications: e.getAllNotifications,
|
|
@@ -2109,22 +2113,22 @@ function zo() {
|
|
|
2109
2113
|
hasNotification: (t) => e.hasNotification(t)
|
|
2110
2114
|
});
|
|
2111
2115
|
}
|
|
2112
|
-
const
|
|
2113
|
-
function
|
|
2116
|
+
const zo = "2.6.2-pr377.e84ea79";
|
|
2117
|
+
function qo() {
|
|
2114
2118
|
return {
|
|
2115
|
-
version:
|
|
2116
|
-
buildDate: "2026-10-01T10:
|
|
2117
|
-
gitHash: "
|
|
2119
|
+
version: zo,
|
|
2120
|
+
buildDate: "2026-10-01T10:27:25.787Z",
|
|
2121
|
+
gitHash: "e84ea7944"
|
|
2118
2122
|
};
|
|
2119
2123
|
}
|
|
2120
|
-
function
|
|
2124
|
+
function Yo(e = qo()) {
|
|
2121
2125
|
console.warn(
|
|
2122
2126
|
`%c@vc-shell/framework%c v${e.version} · ${e.buildDate} · ${e.gitHash}`,
|
|
2123
2127
|
"font-weight:bold;color:#319ED4",
|
|
2124
2128
|
"color:inherit"
|
|
2125
2129
|
);
|
|
2126
2130
|
}
|
|
2127
|
-
const
|
|
2131
|
+
const Zo = /* @__PURE__ */ H({
|
|
2128
2132
|
__name: "sidebar",
|
|
2129
2133
|
props: {
|
|
2130
2134
|
position: { default: "right" },
|
|
@@ -2135,34 +2139,34 @@ const jo = /* @__PURE__ */ H({
|
|
|
2135
2139
|
},
|
|
2136
2140
|
emits: ["close"],
|
|
2137
2141
|
setup(e, { emit: t }) {
|
|
2138
|
-
const a = e, n = t, { isMobile: s, isDesktop: o } =
|
|
2139
|
-
function c
|
|
2140
|
-
|
|
2142
|
+
const a = e, n = t, { isMobile: s, isDesktop: o } = xa(), r = I(() => a.render === "always" ? !0 : a.render === "mobile" ? s.value : o.value), l = I(() => a.isExpanded && r.value);
|
|
2143
|
+
function u(c) {
|
|
2144
|
+
c || n("close");
|
|
2141
2145
|
}
|
|
2142
|
-
return (
|
|
2146
|
+
return (c, E) => l.value ? (P(), D(i(vn), {
|
|
2143
2147
|
key: 0,
|
|
2144
2148
|
"model-value": !0,
|
|
2145
2149
|
position: e.position,
|
|
2146
2150
|
title: e.title,
|
|
2147
2151
|
"close-button": e.closeCross,
|
|
2148
2152
|
teleport: !i(o),
|
|
2149
|
-
"onUpdate:modelValue":
|
|
2153
|
+
"onUpdate:modelValue": u
|
|
2150
2154
|
}, Le({
|
|
2151
2155
|
default: T(() => [
|
|
2152
|
-
Y(
|
|
2156
|
+
Y(c.$slots, "content")
|
|
2153
2157
|
]),
|
|
2154
2158
|
_: 2
|
|
2155
2159
|
}, [
|
|
2156
|
-
|
|
2160
|
+
c.$slots.header ? {
|
|
2157
2161
|
name: "header",
|
|
2158
2162
|
fn: T(({ close: m }) => [
|
|
2159
|
-
Y(
|
|
2163
|
+
Y(c.$slots, "header", { close: m })
|
|
2160
2164
|
]),
|
|
2161
2165
|
key: "0"
|
|
2162
2166
|
} : void 0
|
|
2163
|
-
]), 1032, ["position", "title", "close-button", "teleport"])) : Y(
|
|
2167
|
+
]), 1032, ["position", "title", "close-button", "teleport"])) : Y(c.$slots, "content", { key: 1 });
|
|
2164
2168
|
}
|
|
2165
|
-
}),
|
|
2169
|
+
}), Ul = Zo, jo = { class: "tw-flex tw-flex-row tw-items-center tw-gap-2" }, Xo = /* @__PURE__ */ H({
|
|
2166
2170
|
__name: "external-provider",
|
|
2167
2171
|
props: {
|
|
2168
2172
|
logo: {},
|
|
@@ -2178,7 +2182,7 @@ const jo = /* @__PURE__ */ H({
|
|
|
2178
2182
|
onClick: s[0] || (s[0] = (o) => n.$emit("signIn"))
|
|
2179
2183
|
}, {
|
|
2180
2184
|
default: T(() => [
|
|
2181
|
-
U("div",
|
|
2185
|
+
U("div", jo, [
|
|
2182
2186
|
R(i(ot), {
|
|
2183
2187
|
src: a.value,
|
|
2184
2188
|
class: "vc-external-provider__icon",
|
|
@@ -2190,15 +2194,15 @@ const jo = /* @__PURE__ */ H({
|
|
|
2190
2194
|
_: 1
|
|
2191
2195
|
}));
|
|
2192
2196
|
}
|
|
2193
|
-
}),
|
|
2197
|
+
}), Jo = { class: "tw-flex tw-justify-center tw-flex-col tw-gap-4" }, Qo = /* @__PURE__ */ H({
|
|
2194
2198
|
__name: "external-providers",
|
|
2195
2199
|
props: {
|
|
2196
2200
|
providers: {}
|
|
2197
2201
|
},
|
|
2198
2202
|
setup(e) {
|
|
2199
|
-
const { signIn: t } =
|
|
2200
|
-
return (a, n) => (P(), W("div",
|
|
2201
|
-
(P(!0), W(ne, null, We(e.providers, (s) => (P(), D(
|
|
2203
|
+
const { signIn: t } = qt();
|
|
2204
|
+
return (a, n) => (P(), W("div", Jo, [
|
|
2205
|
+
(P(!0), W(ne, null, We(e.providers, (s) => (P(), D(Xo, {
|
|
2202
2206
|
key: s.authenticationType,
|
|
2203
2207
|
logo: s.logoUrl,
|
|
2204
2208
|
"display-name": s.displayName,
|
|
@@ -2208,25 +2212,25 @@ const jo = /* @__PURE__ */ H({
|
|
|
2208
2212
|
]));
|
|
2209
2213
|
}
|
|
2210
2214
|
});
|
|
2211
|
-
function
|
|
2215
|
+
function er(e) {
|
|
2212
2216
|
if (!e) return "/";
|
|
2213
2217
|
const t = e.trim();
|
|
2214
2218
|
return !t.startsWith("/") || t.startsWith("//") ? "/" : t;
|
|
2215
2219
|
}
|
|
2216
|
-
function
|
|
2220
|
+
function tr(e, t) {
|
|
2217
2221
|
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
2222
|
}
|
|
2219
|
-
function
|
|
2223
|
+
function ar(e) {
|
|
2220
2224
|
const t = [];
|
|
2221
2225
|
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
2226
|
}
|
|
2223
|
-
const
|
|
2227
|
+
const nr = {
|
|
2224
2228
|
key: 0,
|
|
2225
2229
|
class: "vc-login-page__providers"
|
|
2226
|
-
},
|
|
2230
|
+
}, sr = {
|
|
2227
2231
|
key: 0,
|
|
2228
2232
|
class: "vc-login-page__separator-line"
|
|
2229
|
-
},
|
|
2233
|
+
}, or = /* @__PURE__ */ H({
|
|
2230
2234
|
__name: "Login",
|
|
2231
2235
|
props: {
|
|
2232
2236
|
logo: {},
|
|
@@ -2236,9 +2240,9 @@ const sr = {
|
|
|
2236
2240
|
ssoOnly: { type: Boolean }
|
|
2237
2241
|
},
|
|
2238
2242
|
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(),
|
|
2243
|
+
const t = k("login-page"), a = e, { t: n } = le({ useScope: "global" }), s = ve(), { validateField: o } = ue({ validateOnMount: !1 }), { uiSettings: r, loading: l } = we(), u = b({ succeeded: !0 }), { signIn: c, loading: E, user: m } = se(), { getProviders: f } = qt(), d = Ie(), A = b(), h = b(!1);
|
|
2240
2244
|
Oe(async () => {
|
|
2241
|
-
|
|
2245
|
+
A.value = await f(), h.value = !0;
|
|
2242
2246
|
});
|
|
2243
2247
|
const L = I(() => ({
|
|
2244
2248
|
logo: l.value ? "" : r.value?.logo || a.logo
|
|
@@ -2247,38 +2251,38 @@ const sr = {
|
|
|
2247
2251
|
password: ""
|
|
2248
2252
|
}), w = async () => {
|
|
2249
2253
|
if (d.value) {
|
|
2250
|
-
if (
|
|
2254
|
+
if (u.value.error = "", u.value = await c(v.username, v.password), u.value.succeeded && m.value?.passwordExpired) {
|
|
2251
2255
|
await s.push({ name: "ChangePassword" });
|
|
2252
2256
|
return;
|
|
2253
2257
|
}
|
|
2254
|
-
if (
|
|
2255
|
-
const
|
|
2256
|
-
localStorage.removeItem("redirectAfterLogin"), await s.push(
|
|
2258
|
+
if (u.value.succeeded) {
|
|
2259
|
+
const S = er(localStorage.getItem("redirectAfterLogin"));
|
|
2260
|
+
localStorage.removeItem("redirectAfterLogin"), await s.push(S);
|
|
2257
2261
|
return;
|
|
2258
2262
|
}
|
|
2259
|
-
|
|
2263
|
+
u.value.error = tr(u.value, n), v.password = "", o("password");
|
|
2260
2264
|
}
|
|
2261
2265
|
}, C = () => {
|
|
2262
2266
|
s.push({ name: "ForgotPassword" });
|
|
2263
2267
|
};
|
|
2264
|
-
return t.debug("Init login-page"), (
|
|
2268
|
+
return t.debug("Init login-page"), (S, g) => (P(), D(i(_e), {
|
|
2265
2269
|
logo: L.value.logo,
|
|
2266
2270
|
background: e.background,
|
|
2267
|
-
title: e.title ||
|
|
2268
|
-
subtitle: e.subtitle ||
|
|
2271
|
+
title: e.title || S.$t("LOGIN.TITLE"),
|
|
2272
|
+
subtitle: e.subtitle || S.$t("LOGIN.SUBTITLE"),
|
|
2269
2273
|
class: "vc-login-page"
|
|
2270
2274
|
}, {
|
|
2271
2275
|
default: T(() => [
|
|
2272
|
-
|
|
2273
|
-
R(
|
|
2274
|
-
e.ssoOnly ? q("", !0) : (P(), W("div",
|
|
2276
|
+
A.value && A.value.length ? (P(), W("div", nr, [
|
|
2277
|
+
R(Qo, { providers: A.value }, null, 8, ["providers"]),
|
|
2278
|
+
e.ssoOnly ? q("", !0) : (P(), W("div", sr, y(S.$t("LOGIN.OR")), 1))
|
|
2275
2279
|
])) : q("", !0),
|
|
2276
|
-
e.ssoOnly && h.value && !
|
|
2280
|
+
e.ssoOnly && h.value && !A.value?.length ? (P(), D(i(Ee), {
|
|
2277
2281
|
key: 1,
|
|
2278
2282
|
class: "tw-mt-4 tw-text-danger-500"
|
|
2279
2283
|
}, {
|
|
2280
2284
|
default: T(() => [
|
|
2281
|
-
M(y(
|
|
2285
|
+
M(y(S.$t("LOGIN.SSO_NO_PROVIDERS_ERROR")), 1)
|
|
2282
2286
|
]),
|
|
2283
2287
|
_: 1
|
|
2284
2288
|
})) : q("", !0),
|
|
@@ -2289,7 +2293,7 @@ const sr = {
|
|
|
2289
2293
|
}, {
|
|
2290
2294
|
default: T(() => [
|
|
2291
2295
|
R(i(j), {
|
|
2292
|
-
label:
|
|
2296
|
+
label: S.$t("LOGIN.FIELDS.LOGIN.LABEL"),
|
|
2293
2297
|
name: "username",
|
|
2294
2298
|
"model-value": v.username,
|
|
2295
2299
|
rules: "required"
|
|
@@ -2302,8 +2306,8 @@ const sr = {
|
|
|
2302
2306
|
g[0] || (g[0] = (N) => v.username = N),
|
|
2303
2307
|
p
|
|
2304
2308
|
],
|
|
2305
|
-
label:
|
|
2306
|
-
placeholder:
|
|
2309
|
+
label: S.$t("LOGIN.FIELDS.LOGIN.LABEL"),
|
|
2310
|
+
placeholder: S.$t("LOGIN.FIELDS.LOGIN.PLACEHOLDER"),
|
|
2307
2311
|
autocomplete: "username",
|
|
2308
2312
|
required: "",
|
|
2309
2313
|
error: !!_.length,
|
|
@@ -2313,7 +2317,7 @@ const sr = {
|
|
|
2313
2317
|
_: 1
|
|
2314
2318
|
}, 8, ["label", "model-value"]),
|
|
2315
2319
|
R(i(j), {
|
|
2316
|
-
label:
|
|
2320
|
+
label: S.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
|
|
2317
2321
|
name: "password",
|
|
2318
2322
|
"model-value": v.password,
|
|
2319
2323
|
rules: "required"
|
|
@@ -2326,8 +2330,8 @@ const sr = {
|
|
|
2326
2330
|
g[1] || (g[1] = (N) => v.password = N),
|
|
2327
2331
|
p
|
|
2328
2332
|
],
|
|
2329
|
-
label:
|
|
2330
|
-
placeholder:
|
|
2333
|
+
label: S.$t("LOGIN.FIELDS.PASSWORD.LABEL"),
|
|
2334
|
+
placeholder: S.$t("LOGIN.FIELDS.PASSWORD.PLACEHOLDER"),
|
|
2331
2335
|
type: "password",
|
|
2332
2336
|
autocomplete: "current-password",
|
|
2333
2337
|
required: "",
|
|
@@ -2343,11 +2347,11 @@ const sr = {
|
|
|
2343
2347
|
class: "tw-w-full",
|
|
2344
2348
|
icon: "lucide-log-in",
|
|
2345
2349
|
disabled: !i(d),
|
|
2346
|
-
loading: i(
|
|
2350
|
+
loading: i(E),
|
|
2347
2351
|
onClick: w
|
|
2348
2352
|
}, {
|
|
2349
2353
|
default: T(() => [
|
|
2350
|
-
M(y(
|
|
2354
|
+
M(y(S.$t("LOGIN.BUTTON")), 1)
|
|
2351
2355
|
]),
|
|
2352
2356
|
_: 1
|
|
2353
2357
|
}, 8, ["disabled", "loading"]),
|
|
@@ -2358,7 +2362,7 @@ const sr = {
|
|
|
2358
2362
|
onClick: C
|
|
2359
2363
|
}, {
|
|
2360
2364
|
default: T(() => [
|
|
2361
|
-
M(y(
|
|
2365
|
+
M(y(S.$t("LOGIN.FORGOT_PASSWORD_BUTTON")), 1)
|
|
2362
2366
|
]),
|
|
2363
2367
|
_: 1
|
|
2364
2368
|
})
|
|
@@ -2371,12 +2375,12 @@ const sr = {
|
|
|
2371
2375
|
"separator-class": "tw-border-t tw-border-[color:var(--login-separator)] tw-border-solid tw-pb-5",
|
|
2372
2376
|
"wrapper-class": "vc-login-page__separator"
|
|
2373
2377
|
}),
|
|
2374
|
-
|
|
2378
|
+
u.value.succeeded ? q("", !0) : (P(), D(i(Ee), {
|
|
2375
2379
|
key: 0,
|
|
2376
2380
|
class: "tw-mt-4 tw-text-danger-500"
|
|
2377
2381
|
}, {
|
|
2378
2382
|
default: T(() => [
|
|
2379
|
-
M(y(
|
|
2383
|
+
M(y(u.value.error), 1)
|
|
2380
2384
|
]),
|
|
2381
2385
|
_: 1
|
|
2382
2386
|
}))
|
|
@@ -2385,7 +2389,7 @@ const sr = {
|
|
|
2385
2389
|
_: 1
|
|
2386
2390
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2387
2391
|
}
|
|
2388
|
-
}),
|
|
2392
|
+
}), Fl = or, rr = { class: "tw-text-center" }, ir = { class: "tw-text-center tw-mb-6" }, lr = { class: "tw-text-sm tw-text-neutrals-600" }, ur = /* @__PURE__ */ H({
|
|
2389
2393
|
__name: "ForgotPassword",
|
|
2390
2394
|
props: {
|
|
2391
2395
|
logo: {},
|
|
@@ -2395,7 +2399,7 @@ const sr = {
|
|
|
2395
2399
|
setup(e) {
|
|
2396
2400
|
const t = e, a = ve(), { t: n } = le({ useScope: "global" });
|
|
2397
2401
|
ue({ validateOnMount: !1 });
|
|
2398
|
-
const s = Ie(), { uiSettings: o, loading: r } = we(), l = b(!1),
|
|
2402
|
+
const s = Ie(), { uiSettings: o, loading: r } = we(), l = b(!1), u = b(""), c = b(!1), E = ie({
|
|
2399
2403
|
loginOrEmail: ""
|
|
2400
2404
|
});
|
|
2401
2405
|
let m;
|
|
@@ -2407,17 +2411,17 @@ const sr = {
|
|
|
2407
2411
|
await L(v.loginOrEmail);
|
|
2408
2412
|
};
|
|
2409
2413
|
}
|
|
2410
|
-
const
|
|
2414
|
+
const f = I(() => ({
|
|
2411
2415
|
logo: r.value ? "" : o.value?.logo || t.logo
|
|
2412
2416
|
})), d = I(() => {
|
|
2413
|
-
const L =
|
|
2417
|
+
const L = E.loginOrEmail, [v, w] = L.split("@");
|
|
2414
2418
|
return !v || !w ? L : `${v.length > 2 ? v[0] + "***" + v[v.length - 1] : v[0] + "***"}@${w}`;
|
|
2415
|
-
}),
|
|
2419
|
+
}), A = async () => {
|
|
2416
2420
|
if (!(!s.value || !m))
|
|
2417
2421
|
try {
|
|
2418
|
-
l.value = !0,
|
|
2422
|
+
l.value = !0, u.value = "", await m({ loginOrEmail: E.loginOrEmail }), c.value = !0;
|
|
2419
2423
|
} catch (L) {
|
|
2420
|
-
|
|
2424
|
+
u.value = L instanceof Error ? L.message : String(L);
|
|
2421
2425
|
} finally {
|
|
2422
2426
|
l.value = !1;
|
|
2423
2427
|
}
|
|
@@ -2425,15 +2429,15 @@ const sr = {
|
|
|
2425
2429
|
a.push({ name: "Login" });
|
|
2426
2430
|
};
|
|
2427
2431
|
return (L, v) => (P(), D(i(_e), {
|
|
2428
|
-
logo:
|
|
2432
|
+
logo: f.value.logo,
|
|
2429
2433
|
background: e.background,
|
|
2430
|
-
title:
|
|
2431
|
-
subtitle:
|
|
2434
|
+
title: c.value ? i(n)("FORGOT_PASSWORD.SUCCESS_TITLE") : i(n)("FORGOT_PASSWORD.TITLE"),
|
|
2435
|
+
subtitle: c.value ? void 0 : i(n)("FORGOT_PASSWORD.SUBTITLE")
|
|
2432
2436
|
}, {
|
|
2433
2437
|
default: T(() => [
|
|
2434
|
-
|
|
2435
|
-
U("div",
|
|
2436
|
-
U("p",
|
|
2438
|
+
c.value ? (P(), W(ne, { key: 1 }, [
|
|
2439
|
+
U("div", ir, [
|
|
2440
|
+
U("p", lr, y(i(n)("FORGOT_PASSWORD.SUCCESS_TEXT", { email: d.value })), 1)
|
|
2437
2441
|
]),
|
|
2438
2442
|
R(i(x), {
|
|
2439
2443
|
variant: "primary",
|
|
@@ -2446,27 +2450,27 @@ const sr = {
|
|
|
2446
2450
|
_: 1
|
|
2447
2451
|
})
|
|
2448
2452
|
], 64)) : (P(), W(ne, { key: 0 }, [
|
|
2449
|
-
R(i(me), { onSubmit:
|
|
2453
|
+
R(i(me), { onSubmit: A }, {
|
|
2450
2454
|
default: T(() => [
|
|
2451
2455
|
R(i(j), {
|
|
2452
2456
|
label: i(n)("FORGOT_PASSWORD.FIELDS.EMAIL.LABEL"),
|
|
2453
2457
|
name: "loginOrEmail",
|
|
2454
|
-
"model-value":
|
|
2458
|
+
"model-value": E.loginOrEmail,
|
|
2455
2459
|
rules: "required|email"
|
|
2456
2460
|
}, {
|
|
2457
|
-
default: T(({ errorMessage: w, handleChange: C, errors:
|
|
2461
|
+
default: T(({ errorMessage: w, handleChange: C, errors: S }) => [
|
|
2458
2462
|
R(i($), {
|
|
2459
2463
|
ref: "emailField",
|
|
2460
|
-
modelValue:
|
|
2464
|
+
modelValue: E.loginOrEmail,
|
|
2461
2465
|
"onUpdate:modelValue": [
|
|
2462
|
-
v[0] || (v[0] = (g) =>
|
|
2466
|
+
v[0] || (v[0] = (g) => E.loginOrEmail = g),
|
|
2463
2467
|
C
|
|
2464
2468
|
],
|
|
2465
2469
|
class: "tw-mb-6",
|
|
2466
2470
|
label: i(n)("FORGOT_PASSWORD.FIELDS.EMAIL.LABEL"),
|
|
2467
2471
|
placeholder: i(n)("FORGOT_PASSWORD.FIELDS.EMAIL.PLACEHOLDER"),
|
|
2468
2472
|
required: "",
|
|
2469
|
-
error: !!
|
|
2473
|
+
error: !!S.length,
|
|
2470
2474
|
"error-message": w
|
|
2471
2475
|
}, null, 8, ["modelValue", "label", "placeholder", "error", "error-message", "onUpdate:modelValue"])
|
|
2472
2476
|
]),
|
|
@@ -2477,14 +2481,14 @@ const sr = {
|
|
|
2477
2481
|
class: "tw-w-full tw-mb-4",
|
|
2478
2482
|
disabled: !i(s) || l.value,
|
|
2479
2483
|
loading: l.value,
|
|
2480
|
-
onClick:
|
|
2484
|
+
onClick: A
|
|
2481
2485
|
}, {
|
|
2482
2486
|
default: T(() => [
|
|
2483
2487
|
M(y(i(n)("FORGOT_PASSWORD.SEND_BUTTON")), 1)
|
|
2484
2488
|
]),
|
|
2485
2489
|
_: 1
|
|
2486
2490
|
}, 8, ["disabled", "loading"]),
|
|
2487
|
-
U("div",
|
|
2491
|
+
U("div", rr, [
|
|
2488
2492
|
R(i(x), {
|
|
2489
2493
|
variant: "link",
|
|
2490
2494
|
icon: "lucide-arrow-left",
|
|
@@ -2501,12 +2505,12 @@ const sr = {
|
|
|
2501
2505
|
]),
|
|
2502
2506
|
_: 1
|
|
2503
2507
|
}),
|
|
2504
|
-
|
|
2508
|
+
u.value ? (P(), D(i(Ee), {
|
|
2505
2509
|
key: 0,
|
|
2506
2510
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2507
2511
|
}, {
|
|
2508
2512
|
default: T(() => [
|
|
2509
|
-
M(y(
|
|
2513
|
+
M(y(u.value), 1)
|
|
2510
2514
|
]),
|
|
2511
2515
|
_: 1
|
|
2512
2516
|
})) : q("", !0)
|
|
@@ -2515,7 +2519,7 @@ const sr = {
|
|
|
2515
2519
|
_: 1
|
|
2516
2520
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2517
2521
|
}
|
|
2518
|
-
}),
|
|
2522
|
+
}), Wl = ur, cr = /* @__PURE__ */ H({
|
|
2519
2523
|
__name: "ResetPassword",
|
|
2520
2524
|
props: {
|
|
2521
2525
|
userId: {},
|
|
@@ -2525,7 +2529,7 @@ const sr = {
|
|
|
2525
2529
|
background: { default: "/assets/background.jpg" }
|
|
2526
2530
|
},
|
|
2527
2531
|
setup(e) {
|
|
2528
|
-
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t:
|
|
2532
|
+
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t: u } = le({ useScope: "global" }), { validate: c } = ue({ validateOnMount: !1 }), { uiSettings: E, loading: m } = we(), f = ie({
|
|
2529
2533
|
isValid: !1,
|
|
2530
2534
|
tokenIsValid: !1,
|
|
2531
2535
|
errors: [],
|
|
@@ -2533,93 +2537,93 @@ const sr = {
|
|
|
2533
2537
|
confirmPassword: ""
|
|
2534
2538
|
});
|
|
2535
2539
|
Oe(async () => {
|
|
2536
|
-
|
|
2540
|
+
f.tokenIsValid = await a(t.userId, t.token), f.tokenIsValid || f.errors.push("Invalid-token");
|
|
2537
2541
|
});
|
|
2538
|
-
const d = I(() => r.value || !
|
|
2539
|
-
if (
|
|
2540
|
-
const v = (await n(
|
|
2541
|
-
|
|
2542
|
+
const d = I(() => r.value || !f.password || !f.confirmPassword || !f.isValid && f.tokenIsValid), A = async () => {
|
|
2543
|
+
if (f.tokenIsValid) {
|
|
2544
|
+
const v = (await n(f.password)).errors;
|
|
2545
|
+
f.errors = v?.map((w) => w.code), f.confirmPassword !== f.password && f.errors.push("Repeat-password"), f.isValid = f.errors.length == 0;
|
|
2542
2546
|
}
|
|
2543
2547
|
}, h = async () => {
|
|
2544
|
-
const { valid: v } = await
|
|
2548
|
+
const { valid: v } = await c();
|
|
2545
2549
|
if (v) {
|
|
2546
|
-
const w = await s(t.userId,
|
|
2550
|
+
const w = await s(t.userId, f.password, t.token);
|
|
2547
2551
|
if (w.succeeded) {
|
|
2548
|
-
const C = await o(t.userName,
|
|
2549
|
-
C.succeeded ? l.push("/") :
|
|
2552
|
+
const C = await o(t.userName, f.password);
|
|
2553
|
+
C.succeeded ? l.push("/") : f.errors = "error" in C && [C.error] || [];
|
|
2550
2554
|
} else
|
|
2551
|
-
|
|
2555
|
+
f.errors = w.errors;
|
|
2552
2556
|
}
|
|
2553
2557
|
}, L = I(() => ({
|
|
2554
|
-
logo: m.value ? "" :
|
|
2558
|
+
logo: m.value ? "" : E.value?.logo || t.logo
|
|
2555
2559
|
}));
|
|
2556
2560
|
return (v, w) => (P(), D(i(_e), {
|
|
2557
2561
|
logo: L.value.logo,
|
|
2558
2562
|
background: e.background,
|
|
2559
|
-
title: i(
|
|
2560
|
-
subtitle: i(
|
|
2563
|
+
title: i(u)("PASSWORDRESET.TITLE"),
|
|
2564
|
+
subtitle: i(u)("PASSWORDRESET.SUBTITLE")
|
|
2561
2565
|
}, {
|
|
2562
2566
|
default: T(() => [
|
|
2563
|
-
i(r) ? (P(), D(i(
|
|
2567
|
+
i(r) ? (P(), D(i(xt), {
|
|
2564
2568
|
key: 0,
|
|
2565
2569
|
active: ""
|
|
2566
2570
|
})) : q("", !0),
|
|
2567
2571
|
R(i(me), null, {
|
|
2568
2572
|
default: T(() => [
|
|
2569
2573
|
R(i(j), {
|
|
2570
|
-
label: i(
|
|
2574
|
+
label: i(u)("PASSWORDRESET.FIELDS.PASSWORD.LABEL"),
|
|
2571
2575
|
name: "password",
|
|
2572
|
-
"model-value":
|
|
2576
|
+
"model-value": f.password,
|
|
2573
2577
|
rules: "required"
|
|
2574
2578
|
}, {
|
|
2575
|
-
default: T(({ field: C, errorMessage:
|
|
2579
|
+
default: T(({ field: C, errorMessage: S, handleChange: g, errors: O }) => [
|
|
2576
2580
|
R(i($), re(C, {
|
|
2577
2581
|
ref: "passwordField",
|
|
2578
|
-
modelValue:
|
|
2582
|
+
modelValue: f.password,
|
|
2579
2583
|
"onUpdate:modelValue": [
|
|
2580
|
-
w[0] || (w[0] = (p) =>
|
|
2584
|
+
w[0] || (w[0] = (p) => f.password = p),
|
|
2581
2585
|
(p) => {
|
|
2582
|
-
g(p),
|
|
2586
|
+
g(p), A();
|
|
2583
2587
|
}
|
|
2584
2588
|
],
|
|
2585
2589
|
class: "tw-mb-4",
|
|
2586
|
-
label: i(
|
|
2587
|
-
placeholder: i(
|
|
2590
|
+
label: i(u)("PASSWORDRESET.FIELDS.PASSWORD.LABEL"),
|
|
2591
|
+
placeholder: i(u)("PASSWORDRESET.FIELDS.PASSWORD.PLACEHOLDER"),
|
|
2588
2592
|
type: "password",
|
|
2589
2593
|
autocomplete: "new-password",
|
|
2590
|
-
disabled: !
|
|
2594
|
+
disabled: !f.tokenIsValid,
|
|
2591
2595
|
required: "",
|
|
2592
2596
|
error: !!O.length,
|
|
2593
|
-
"error-message":
|
|
2597
|
+
"error-message": S
|
|
2594
2598
|
}), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
|
|
2595
2599
|
]),
|
|
2596
2600
|
_: 1
|
|
2597
2601
|
}, 8, ["label", "model-value"]),
|
|
2598
2602
|
R(i(j), {
|
|
2599
|
-
label: i(
|
|
2603
|
+
label: i(u)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2600
2604
|
name: "confirm_password",
|
|
2601
|
-
"model-value":
|
|
2605
|
+
"model-value": f.confirmPassword,
|
|
2602
2606
|
rules: "required"
|
|
2603
2607
|
}, {
|
|
2604
|
-
default: T(({ field: C, errorMessage:
|
|
2608
|
+
default: T(({ field: C, errorMessage: S, handleChange: g, errors: O }) => [
|
|
2605
2609
|
R(i($), re(C, {
|
|
2606
2610
|
ref: "confirmPasswordField",
|
|
2607
|
-
modelValue:
|
|
2611
|
+
modelValue: f.confirmPassword,
|
|
2608
2612
|
"onUpdate:modelValue": [
|
|
2609
|
-
w[1] || (w[1] = (p) =>
|
|
2613
|
+
w[1] || (w[1] = (p) => f.confirmPassword = p),
|
|
2610
2614
|
(p) => {
|
|
2611
|
-
g(p),
|
|
2615
|
+
g(p), A();
|
|
2612
2616
|
}
|
|
2613
2617
|
],
|
|
2614
2618
|
class: "tw-mb-6",
|
|
2615
|
-
label: i(
|
|
2616
|
-
placeholder: i(
|
|
2617
|
-
disabled: !
|
|
2619
|
+
label: i(u)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2620
|
+
placeholder: i(u)("PASSWORDRESET.FIELDS.CONFIRM_PASSWORD.PLACEHOLDER"),
|
|
2621
|
+
disabled: !f.tokenIsValid,
|
|
2618
2622
|
type: "password",
|
|
2619
2623
|
autocomplete: "new-password",
|
|
2620
2624
|
required: "",
|
|
2621
2625
|
error: !!O.length,
|
|
2622
|
-
"error-message":
|
|
2626
|
+
"error-message": S,
|
|
2623
2627
|
onKeyup: lt(h, ["enter"])
|
|
2624
2628
|
}), null, 16, ["modelValue", "label", "placeholder", "disabled", "error", "error-message", "onUpdate:modelValue"])
|
|
2625
2629
|
]),
|
|
@@ -2633,16 +2637,16 @@ const sr = {
|
|
|
2633
2637
|
onClick: h
|
|
2634
2638
|
}, {
|
|
2635
2639
|
default: T(() => [
|
|
2636
|
-
M(y(i(
|
|
2640
|
+
M(y(i(u)("PASSWORDRESET.SAVE_PASSWORD")), 1)
|
|
2637
2641
|
]),
|
|
2638
2642
|
_: 1
|
|
2639
2643
|
}, 8, ["disabled", "loading"]),
|
|
2640
|
-
(P(!0), W(ne, null, We(
|
|
2644
|
+
(P(!0), W(ne, null, We(f.errors, (C) => (P(), D(i(Ee), {
|
|
2641
2645
|
key: C,
|
|
2642
2646
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2643
2647
|
}, {
|
|
2644
2648
|
default: T(() => [
|
|
2645
|
-
M(y(i(
|
|
2649
|
+
M(y(i(u)(`PASSWORDRESET.ERRORS.${C}`)), 1)
|
|
2646
2650
|
]),
|
|
2647
2651
|
_: 2
|
|
2648
2652
|
}, 1024))), 128))
|
|
@@ -2653,7 +2657,7 @@ const sr = {
|
|
|
2653
2657
|
_: 1
|
|
2654
2658
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2655
2659
|
}
|
|
2656
|
-
}),
|
|
2660
|
+
}), Hl = cr, dr = /* @__PURE__ */ H({
|
|
2657
2661
|
__name: "Invite",
|
|
2658
2662
|
props: {
|
|
2659
2663
|
userId: {},
|
|
@@ -2664,35 +2668,35 @@ const sr = {
|
|
|
2664
2668
|
},
|
|
2665
2669
|
setup(e) {
|
|
2666
2670
|
ue({ validateOnMount: !1 });
|
|
2667
|
-
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t:
|
|
2671
|
+
const t = e, { validateToken: a, validatePassword: n, resetPasswordByToken: s, signIn: o, loading: r } = se(), l = ve(), { t: u } = le({ useScope: "global" }), c = Ie(), E = ct(), { uiSettings: m, loading: f } = we(), d = ie({
|
|
2668
2672
|
isValid: !1,
|
|
2669
2673
|
tokenIsValid: !1,
|
|
2670
2674
|
errors: [],
|
|
2671
2675
|
password: "",
|
|
2672
2676
|
confirmPassword: ""
|
|
2673
|
-
}),
|
|
2677
|
+
}), A = I(() => !E.value || !c.value);
|
|
2674
2678
|
Oe(async () => {
|
|
2675
2679
|
d.tokenIsValid = await a(t.userId, t.token), d.tokenIsValid || d.errors.push("Invalid-token");
|
|
2676
2680
|
});
|
|
2677
2681
|
const h = async () => {
|
|
2678
2682
|
if (d.tokenIsValid) {
|
|
2679
2683
|
const w = (await n(d.password)).errors;
|
|
2680
|
-
d.errors = w?.map((C) => C.code), d.confirmPassword && d.confirmPassword !== d.password && d.errors.push("Repeat-password"), d.isValid = d.errors.length == 0 && !
|
|
2684
|
+
d.errors = w?.map((C) => C.code), d.confirmPassword && d.confirmPassword !== d.password && d.errors.push("Repeat-password"), d.isValid = d.errors.length == 0 && !A.value;
|
|
2681
2685
|
}
|
|
2682
2686
|
}, L = async () => {
|
|
2683
2687
|
const w = await s(t.userId, d.password, t.token);
|
|
2684
2688
|
w.succeeded ? (await o(t.userName, d.password)).succeeded && l.push("/") : d.errors = w.errors;
|
|
2685
2689
|
}, v = I(() => ({
|
|
2686
|
-
logo:
|
|
2690
|
+
logo: f.value ? "" : m.value?.logo || t.logo
|
|
2687
2691
|
}));
|
|
2688
2692
|
return (w, C) => (P(), D(i(_e), {
|
|
2689
2693
|
logo: v.value.logo,
|
|
2690
2694
|
background: e.background,
|
|
2691
|
-
title: i(
|
|
2692
|
-
subtitle: i(
|
|
2695
|
+
title: i(u)("INVITATION.TITLE"),
|
|
2696
|
+
subtitle: i(u)("INVITATION.SUBTITLE")
|
|
2693
2697
|
}, {
|
|
2694
2698
|
default: T(() => [
|
|
2695
|
-
i(r) ? (P(), D(i(
|
|
2699
|
+
i(r) ? (P(), D(i(xt), {
|
|
2696
2700
|
key: 0,
|
|
2697
2701
|
active: ""
|
|
2698
2702
|
})) : q("", !0),
|
|
@@ -2700,20 +2704,20 @@ const sr = {
|
|
|
2700
2704
|
default: T(() => [
|
|
2701
2705
|
R(i($), {
|
|
2702
2706
|
class: "tw-mb-4",
|
|
2703
|
-
label: i(
|
|
2707
|
+
label: i(u)("INVITATION.FIELDS.EMAIL.LABEL"),
|
|
2704
2708
|
"model-value": e.userName,
|
|
2705
2709
|
name: "username",
|
|
2706
2710
|
autocomplete: "username",
|
|
2707
2711
|
disabled: ""
|
|
2708
2712
|
}, null, 8, ["label", "model-value"]),
|
|
2709
2713
|
R(i(j), {
|
|
2710
|
-
label: i(
|
|
2714
|
+
label: i(u)("INVITATION.FIELDS.PASSWORD.LABEL"),
|
|
2711
2715
|
"model-value": d.password,
|
|
2712
2716
|
rules: "required",
|
|
2713
2717
|
name: "password"
|
|
2714
2718
|
}, {
|
|
2715
|
-
default: T(({ field:
|
|
2716
|
-
R(i($), re(
|
|
2719
|
+
default: T(({ field: S, errorMessage: g, handleChange: O, errors: p }) => [
|
|
2720
|
+
R(i($), re(S, {
|
|
2717
2721
|
ref: "passwordField",
|
|
2718
2722
|
modelValue: d.password,
|
|
2719
2723
|
"onUpdate:modelValue": [
|
|
@@ -2723,8 +2727,8 @@ const sr = {
|
|
|
2723
2727
|
}
|
|
2724
2728
|
],
|
|
2725
2729
|
class: "tw-mb-4",
|
|
2726
|
-
label: i(
|
|
2727
|
-
placeholder: i(
|
|
2730
|
+
label: i(u)("INVITATION.FIELDS.PASSWORD.LABEL"),
|
|
2731
|
+
placeholder: i(u)("INVITATION.FIELDS.PASSWORD.PLACEHOLDER"),
|
|
2728
2732
|
type: "password",
|
|
2729
2733
|
autocomplete: "new-password",
|
|
2730
2734
|
disabled: !d.tokenIsValid,
|
|
@@ -2736,13 +2740,13 @@ const sr = {
|
|
|
2736
2740
|
_: 1
|
|
2737
2741
|
}, 8, ["label", "model-value"]),
|
|
2738
2742
|
R(i(j), {
|
|
2739
|
-
label: i(
|
|
2743
|
+
label: i(u)("INVITATION.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2740
2744
|
"model-value": d.confirmPassword,
|
|
2741
2745
|
rules: "required",
|
|
2742
2746
|
name: "confirm_password"
|
|
2743
2747
|
}, {
|
|
2744
|
-
default: T(({ field:
|
|
2745
|
-
R(i($), re(
|
|
2748
|
+
default: T(({ field: S, errorMessage: g, handleChange: O, errors: p }) => [
|
|
2749
|
+
R(i($), re(S, {
|
|
2746
2750
|
ref: "confirmPasswordField",
|
|
2747
2751
|
modelValue: d.confirmPassword,
|
|
2748
2752
|
"onUpdate:modelValue": [
|
|
@@ -2752,8 +2756,8 @@ const sr = {
|
|
|
2752
2756
|
}
|
|
2753
2757
|
],
|
|
2754
2758
|
class: "tw-mb-6",
|
|
2755
|
-
label: i(
|
|
2756
|
-
placeholder: i(
|
|
2759
|
+
label: i(u)("INVITATION.FIELDS.CONFIRM_PASSWORD.LABEL"),
|
|
2760
|
+
placeholder: i(u)("INVITATION.FIELDS.CONFIRM_PASSWORD.PLACEHOLDER"),
|
|
2757
2761
|
disabled: !d.tokenIsValid,
|
|
2758
2762
|
type: "password",
|
|
2759
2763
|
autocomplete: "new-password",
|
|
@@ -2773,16 +2777,16 @@ const sr = {
|
|
|
2773
2777
|
onClick: L
|
|
2774
2778
|
}, {
|
|
2775
2779
|
default: T(() => [
|
|
2776
|
-
M(y(i(
|
|
2780
|
+
M(y(i(u)("INVITATION.ACCEPT_INVITATION")), 1)
|
|
2777
2781
|
]),
|
|
2778
2782
|
_: 1
|
|
2779
2783
|
}, 8, ["disabled", "loading"]),
|
|
2780
|
-
(P(!0), W(ne, null, We(d.errors, (
|
|
2781
|
-
key:
|
|
2784
|
+
(P(!0), W(ne, null, We(d.errors, (S) => (P(), D(i(Ee), {
|
|
2785
|
+
key: S,
|
|
2782
2786
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2783
2787
|
}, {
|
|
2784
2788
|
default: T(() => [
|
|
2785
|
-
M(y(i(
|
|
2789
|
+
M(y(i(u)(`INVITATION.ERRORS.${S}`)), 1)
|
|
2786
2790
|
]),
|
|
2787
2791
|
_: 2
|
|
2788
2792
|
}, 1024))), 128))
|
|
@@ -2793,10 +2797,10 @@ const sr = {
|
|
|
2793
2797
|
_: 1
|
|
2794
2798
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2795
2799
|
}
|
|
2796
|
-
}),
|
|
2800
|
+
}), Gl = dr, Er = {
|
|
2797
2801
|
key: 0,
|
|
2798
2802
|
class: "tw-mb-4"
|
|
2799
|
-
},
|
|
2803
|
+
}, fr = { class: "tw-flex tw-gap-3" }, mr = /* @__PURE__ */ H({
|
|
2800
2804
|
__name: "ChangePassword",
|
|
2801
2805
|
props: {
|
|
2802
2806
|
forced: { type: Boolean },
|
|
@@ -2804,28 +2808,28 @@ const sr = {
|
|
|
2804
2808
|
background: {}
|
|
2805
2809
|
},
|
|
2806
2810
|
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:
|
|
2811
|
+
const t = e, { t: a } = le({ useScope: "global" }), { changeUserPassword: n, loading: s, validatePassword: o, signOut: r } = se(), { uiSettings: l, loading: u } = we(), c = I(() => ({
|
|
2812
|
+
logo: u.value ? "" : l.value?.logo || t.logo
|
|
2809
2813
|
}));
|
|
2810
2814
|
ue({ validateOnMount: !1 });
|
|
2811
|
-
const
|
|
2815
|
+
const E = Ie(), m = ct(), f = ve(), d = ie({
|
|
2812
2816
|
isValid: !1,
|
|
2813
2817
|
errors: [],
|
|
2814
2818
|
currentPassword: "",
|
|
2815
2819
|
password: "",
|
|
2816
2820
|
confirmPassword: ""
|
|
2817
|
-
}),
|
|
2821
|
+
}), A = I(() => !m.value || !E.value);
|
|
2818
2822
|
async function h() {
|
|
2819
|
-
await r(), await
|
|
2823
|
+
await r(), await f.push("/login");
|
|
2820
2824
|
}
|
|
2821
2825
|
async function L() {
|
|
2822
2826
|
const w = await n(d.currentPassword, d.password);
|
|
2823
|
-
w?.succeeded ? await
|
|
2827
|
+
w?.succeeded ? await f.push("/") : w?.errors && (d.errors = w?.errors, d.isValid = d.errors.length == 0);
|
|
2824
2828
|
}
|
|
2825
2829
|
function v() {
|
|
2826
2830
|
be(async () => {
|
|
2827
2831
|
if (d.password || d.confirmPassword) {
|
|
2828
|
-
const w = (await o(d.password)).errors ?? [], C =
|
|
2832
|
+
const w = (await o(d.password)).errors ?? [], C = ar({
|
|
2829
2833
|
password: d.password,
|
|
2830
2834
|
confirmPassword: d.confirmPassword,
|
|
2831
2835
|
currentPassword: d.currentPassword
|
|
@@ -2835,14 +2839,14 @@ const sr = {
|
|
|
2835
2839
|
});
|
|
2836
2840
|
}
|
|
2837
2841
|
return (w, C) => (P(), D(i(_e), {
|
|
2838
|
-
logo:
|
|
2842
|
+
logo: c.value.logo,
|
|
2839
2843
|
background: e.background,
|
|
2840
2844
|
title: e.forced ? i(a)("COMPONENTS.CHANGE_PASSWORD.TITLE_FORCED") : i(a)("COMPONENTS.CHANGE_PASSWORD.TITLE"),
|
|
2841
2845
|
subtitle: e.forced ? i(a)("COMPONENTS.CHANGE_PASSWORD.SUBTITLE_FORCED") : void 0
|
|
2842
2846
|
}, {
|
|
2843
2847
|
default: T(() => [
|
|
2844
|
-
e.forced ? (P(), W("div",
|
|
2845
|
-
R(i(
|
|
2848
|
+
e.forced ? (P(), W("div", Er, [
|
|
2849
|
+
R(i(wn), {
|
|
2846
2850
|
variant: "info",
|
|
2847
2851
|
icon: "lucide-lightbulb",
|
|
2848
2852
|
"icon-size": "l"
|
|
@@ -2861,8 +2865,8 @@ const sr = {
|
|
|
2861
2865
|
rules: "required|min:6",
|
|
2862
2866
|
"model-value": d.currentPassword
|
|
2863
2867
|
}, {
|
|
2864
|
-
default: T(({ field:
|
|
2865
|
-
R(i($), re(
|
|
2868
|
+
default: T(({ field: S, errorMessage: g, errors: O }) => [
|
|
2869
|
+
R(i($), re(S, {
|
|
2866
2870
|
ref: "passwordField",
|
|
2867
2871
|
modelValue: d.currentPassword,
|
|
2868
2872
|
"onUpdate:modelValue": [
|
|
@@ -2887,8 +2891,8 @@ const sr = {
|
|
|
2887
2891
|
rules: "required|min:6",
|
|
2888
2892
|
"model-value": d.password
|
|
2889
2893
|
}, {
|
|
2890
|
-
default: T(({ field:
|
|
2891
|
-
R(i($), re(
|
|
2894
|
+
default: T(({ field: S, errorMessage: g, errors: O }) => [
|
|
2895
|
+
R(i($), re(S, {
|
|
2892
2896
|
ref: "newPasswordField",
|
|
2893
2897
|
modelValue: d.password,
|
|
2894
2898
|
"onUpdate:modelValue": [
|
|
@@ -2913,8 +2917,8 @@ const sr = {
|
|
|
2913
2917
|
rules: "required|min:6",
|
|
2914
2918
|
"model-value": d.confirmPassword
|
|
2915
2919
|
}, {
|
|
2916
|
-
default: T(({ field:
|
|
2917
|
-
R(i($), re(
|
|
2920
|
+
default: T(({ field: S, errorMessage: g, errors: O }) => [
|
|
2921
|
+
R(i($), re(S, {
|
|
2918
2922
|
ref: "confirmPasswordField",
|
|
2919
2923
|
modelValue: d.confirmPassword,
|
|
2920
2924
|
"onUpdate:modelValue": [
|
|
@@ -2933,7 +2937,7 @@ const sr = {
|
|
|
2933
2937
|
]),
|
|
2934
2938
|
_: 1
|
|
2935
2939
|
}, 8, ["label", "model-value"]),
|
|
2936
|
-
U("div",
|
|
2940
|
+
U("div", fr, [
|
|
2937
2941
|
R(i(x), {
|
|
2938
2942
|
variant: "secondary",
|
|
2939
2943
|
class: "tw-flex-1",
|
|
@@ -2947,7 +2951,7 @@ const sr = {
|
|
|
2947
2951
|
R(i(x), {
|
|
2948
2952
|
variant: "primary",
|
|
2949
2953
|
class: "tw-flex-1",
|
|
2950
|
-
disabled: i(s) || !d.isValid ||
|
|
2954
|
+
disabled: i(s) || !d.isValid || A.value,
|
|
2951
2955
|
loading: i(s),
|
|
2952
2956
|
onClick: L
|
|
2953
2957
|
}, {
|
|
@@ -2957,12 +2961,12 @@ const sr = {
|
|
|
2957
2961
|
_: 1
|
|
2958
2962
|
}, 8, ["disabled", "loading"])
|
|
2959
2963
|
]),
|
|
2960
|
-
(P(!0), W(ne, null, We(d.errors, (
|
|
2964
|
+
(P(!0), W(ne, null, We(d.errors, (S, g) => (P(), D(i(Ee), {
|
|
2961
2965
|
key: g,
|
|
2962
2966
|
class: "tw-mt-3 tw-text-danger-500"
|
|
2963
2967
|
}, {
|
|
2964
2968
|
default: T(() => [
|
|
2965
|
-
M(y(
|
|
2969
|
+
M(y(S.code ? i(a)(`COMPONENTS.CHANGE_PASSWORD.ERRORS.${S.code}`) : S), 1)
|
|
2966
2970
|
]),
|
|
2967
2971
|
_: 2
|
|
2968
2972
|
}, 1024))), 128))
|
|
@@ -2973,14 +2977,14 @@ const sr = {
|
|
|
2973
2977
|
_: 1
|
|
2974
2978
|
}, 8, ["logo", "background", "title", "subtitle"]));
|
|
2975
2979
|
}
|
|
2976
|
-
}),
|
|
2980
|
+
}), xl = mr, et = k("use-blade-navigation-adapter"), nt = /* @__PURE__ */ new Set();
|
|
2977
2981
|
function oe(e, t) {
|
|
2978
2982
|
if (nt.has(e)) return;
|
|
2979
2983
|
nt.add(e);
|
|
2980
2984
|
const a = `[useBladeNavigation] "${e}" is deprecated.`;
|
|
2981
2985
|
console.warn(t ? `${a} Use ${t} instead.` : a);
|
|
2982
2986
|
}
|
|
2983
|
-
function
|
|
2987
|
+
function yt(e, t, a) {
|
|
2984
2988
|
return {
|
|
2985
2989
|
props: {
|
|
2986
2990
|
navigation: {
|
|
@@ -2998,10 +3002,10 @@ function Nt(e, t, a) {
|
|
|
2998
3002
|
};
|
|
2999
3003
|
}
|
|
3000
3004
|
let ye, Be;
|
|
3001
|
-
function
|
|
3005
|
+
function $l() {
|
|
3002
3006
|
ye = void 0, Be = void 0, nt.clear();
|
|
3003
3007
|
}
|
|
3004
|
-
function
|
|
3008
|
+
function gr() {
|
|
3005
3009
|
const e = us, t = ds, a = cs;
|
|
3006
3010
|
if (!e || !t)
|
|
3007
3011
|
throw new Error(
|
|
@@ -3012,11 +3016,11 @@ function Sr() {
|
|
|
3012
3016
|
throw new Error("[@vc-shell/framework#useBladeNavigation] Vue Router instance is not available.");
|
|
3013
3017
|
return ye || (ye = I(() => {
|
|
3014
3018
|
const s = e.activeBlade.value?.id;
|
|
3015
|
-
return e.blades.value.map((o, r) =>
|
|
3019
|
+
return e.blades.value.map((o, r) => yt(o, r, s));
|
|
3016
3020
|
})), Be || (Be = I(() => {
|
|
3017
3021
|
const s = e.workspace.value;
|
|
3018
3022
|
if (s)
|
|
3019
|
-
return
|
|
3023
|
+
return yt(s, 0, e.activeBlade.value?.id);
|
|
3020
3024
|
})), {
|
|
3021
3025
|
bladeStack: e,
|
|
3022
3026
|
messaging: t,
|
|
@@ -3026,7 +3030,7 @@ function Sr() {
|
|
|
3026
3030
|
activeWorkspace: Be
|
|
3027
3031
|
};
|
|
3028
3032
|
}
|
|
3029
|
-
function
|
|
3033
|
+
function Sr(e) {
|
|
3030
3034
|
if (!e)
|
|
3031
3035
|
throw new Error("Blade cannot be null or undefined.");
|
|
3032
3036
|
if (typeof e == "object" && "name" in e && typeof e.name == "string")
|
|
@@ -3034,27 +3038,27 @@ function Ar(e) {
|
|
|
3034
3038
|
const t = e;
|
|
3035
3039
|
return t.name || t.__name || "UnknownBlade";
|
|
3036
3040
|
}
|
|
3037
|
-
function
|
|
3041
|
+
function Bt(e) {
|
|
3038
3042
|
const [t, a = ""] = e.replace(/^#/, "").split("?");
|
|
3039
3043
|
return [t, a];
|
|
3040
3044
|
}
|
|
3041
|
-
function
|
|
3045
|
+
function Ar(e) {
|
|
3042
3046
|
const t = Number(e);
|
|
3043
3047
|
return !isNaN(t) && String(t) === e ? t : e;
|
|
3044
3048
|
}
|
|
3045
|
-
function
|
|
3046
|
-
const { bladeStack: e, messaging: t, bladeRegistry: a, router: n, blades: s, activeWorkspace: o } =
|
|
3049
|
+
function Kl() {
|
|
3050
|
+
const { bladeStack: e, messaging: t, bladeRegistry: a, router: n, blades: s, activeWorkspace: o } = gr(), r = ln() ? Q(Kt, void 0) : void 0;
|
|
3047
3051
|
function l() {
|
|
3048
3052
|
return r ? r.value.id : e.activeBlade.value?.id;
|
|
3049
3053
|
}
|
|
3050
|
-
function
|
|
3054
|
+
function u(g) {
|
|
3051
3055
|
const O = e.blades.value;
|
|
3052
3056
|
if (g >= 0 && g < O.length)
|
|
3053
3057
|
return O[g].id;
|
|
3054
3058
|
}
|
|
3055
|
-
async function
|
|
3059
|
+
async function c(g, O) {
|
|
3056
3060
|
const _ = {
|
|
3057
|
-
name:
|
|
3061
|
+
name: Sr(g.blade),
|
|
3058
3062
|
param: g.param,
|
|
3059
3063
|
options: g.options,
|
|
3060
3064
|
onOpen: g.onOpen,
|
|
@@ -3070,26 +3074,26 @@ function zl() {
|
|
|
3070
3074
|
await e.openBlade({ ..._, parentId: N });
|
|
3071
3075
|
}
|
|
3072
3076
|
}
|
|
3073
|
-
async function
|
|
3077
|
+
async function E(g) {
|
|
3074
3078
|
oe("closeBlade(index)", "useBlade().closeSelf()");
|
|
3075
|
-
const O =
|
|
3079
|
+
const O = u(g);
|
|
3076
3080
|
return O ? e.closeBlade(O) : (et.error(`closeBlade: No blade found at index ${g}.`), !1);
|
|
3077
3081
|
}
|
|
3078
3082
|
function m() {
|
|
3079
3083
|
oe("goToRoot()");
|
|
3080
|
-
const g =
|
|
3084
|
+
const g = Cn(n);
|
|
3081
3085
|
if (g?.name)
|
|
3082
3086
|
return {
|
|
3083
3087
|
name: g.name,
|
|
3084
3088
|
params: n.currentRoute.value.params
|
|
3085
3089
|
};
|
|
3086
|
-
const O =
|
|
3090
|
+
const O = Pn(n);
|
|
3087
3091
|
return { path: O ? `/${O}` : "/" };
|
|
3088
3092
|
}
|
|
3089
|
-
async function
|
|
3093
|
+
async function f(g, O) {
|
|
3090
3094
|
oe("onParentCall(args, index)", "useBlade().callParent(method, args)");
|
|
3091
3095
|
let p;
|
|
3092
|
-
if (O !== void 0 ? p =
|
|
3096
|
+
if (O !== void 0 ? p = u(O) : p = l(), !p) {
|
|
3093
3097
|
et.error("onParentCall: Could not determine caller blade.");
|
|
3094
3098
|
return;
|
|
3095
3099
|
}
|
|
@@ -3104,12 +3108,12 @@ function zl() {
|
|
|
3104
3108
|
oe("onBeforeClose(cb)", "useBlade().onBeforeClose(guard)");
|
|
3105
3109
|
const O = l();
|
|
3106
3110
|
if (!O) {
|
|
3107
|
-
|
|
3111
|
+
un("onBeforeClose: Could not determine current blade.");
|
|
3108
3112
|
return;
|
|
3109
3113
|
}
|
|
3110
3114
|
e.registerBeforeClose(O, async () => await g() === !1);
|
|
3111
3115
|
}
|
|
3112
|
-
function
|
|
3116
|
+
function A(g) {
|
|
3113
3117
|
return a.getBladeComponent(g);
|
|
3114
3118
|
}
|
|
3115
3119
|
function h(g) {
|
|
@@ -3119,7 +3123,7 @@ function zl() {
|
|
|
3119
3123
|
oe("setNavigationQuery");
|
|
3120
3124
|
const O = e.workspace.value;
|
|
3121
3125
|
if (!O) return;
|
|
3122
|
-
const p = O.name.toLowerCase(), [_, N] =
|
|
3126
|
+
const p = O.name.toLowerCase(), [_, N] = Bt(window.location.hash), B = new URLSearchParams(N);
|
|
3123
3127
|
for (const K of [...B.keys()])
|
|
3124
3128
|
K.startsWith(`${p}_`) && B.delete(K);
|
|
3125
3129
|
for (const [K, ce] of Object.entries(g))
|
|
@@ -3131,20 +3135,20 @@ function zl() {
|
|
|
3131
3135
|
oe("getNavigationQuery");
|
|
3132
3136
|
const g = e.workspace.value;
|
|
3133
3137
|
if (!g) return;
|
|
3134
|
-
const O = g.name.toLowerCase(), p = new URLSearchParams(
|
|
3138
|
+
const O = g.name.toLowerCase(), p = new URLSearchParams(Bt(window.location.hash)[1]), _ = {};
|
|
3135
3139
|
for (const [N, B] of p.entries())
|
|
3136
|
-
N.startsWith(`${O}_`) && (_[N.replace(`${O}_`, "")] =
|
|
3140
|
+
N.startsWith(`${O}_`) && (_[N.replace(`${O}_`, "")] = Ar(B));
|
|
3137
3141
|
return Object.keys(_).length > 0 ? _ : void 0;
|
|
3138
3142
|
}
|
|
3139
3143
|
function w(g, O) {
|
|
3140
|
-
const p =
|
|
3144
|
+
const p = u(g);
|
|
3141
3145
|
p && e.setBladeError(p, O);
|
|
3142
3146
|
}
|
|
3143
3147
|
function C(g) {
|
|
3144
|
-
const O =
|
|
3148
|
+
const O = u(g);
|
|
3145
3149
|
O && e.clearBladeError(O);
|
|
3146
3150
|
}
|
|
3147
|
-
const
|
|
3151
|
+
const S = I(() => {
|
|
3148
3152
|
if (!r) return;
|
|
3149
3153
|
const g = r.value;
|
|
3150
3154
|
return {
|
|
@@ -3157,18 +3161,18 @@ function zl() {
|
|
|
3157
3161
|
return {
|
|
3158
3162
|
blades: s,
|
|
3159
3163
|
activeWorkspace: o,
|
|
3160
|
-
openBlade:
|
|
3161
|
-
closeBlade:
|
|
3164
|
+
openBlade: c,
|
|
3165
|
+
closeBlade: E,
|
|
3162
3166
|
goToRoot: m,
|
|
3163
|
-
onParentCall:
|
|
3167
|
+
onParentCall: f,
|
|
3164
3168
|
onBeforeClose: d,
|
|
3165
|
-
resolveBladeByName:
|
|
3169
|
+
resolveBladeByName: A,
|
|
3166
3170
|
routeResolver: h,
|
|
3167
3171
|
setNavigationQuery: L,
|
|
3168
3172
|
getNavigationQuery: v,
|
|
3169
3173
|
setBladeError: w,
|
|
3170
3174
|
clearBladeError: C,
|
|
3171
|
-
currentBladeNavigationData:
|
|
3175
|
+
currentBladeNavigationData: S
|
|
3172
3176
|
};
|
|
3173
3177
|
}
|
|
3174
3178
|
function Ce(e) {
|
|
@@ -3184,7 +3188,7 @@ function Fe(e, t) {
|
|
|
3184
3188
|
if (!Fe(a[o], n[o])) return !1;
|
|
3185
3189
|
return !0;
|
|
3186
3190
|
}
|
|
3187
|
-
function
|
|
3191
|
+
function zl(e) {
|
|
3188
3192
|
const {
|
|
3189
3193
|
data: t,
|
|
3190
3194
|
canSaveOverride: a,
|
|
@@ -3192,77 +3196,77 @@ function ql(e) {
|
|
|
3192
3196
|
autoBeforeUnload: s = !0,
|
|
3193
3197
|
closeConfirmMessage: o,
|
|
3194
3198
|
onRevert: r
|
|
3195
|
-
} = e, { meta: l, setFieldError:
|
|
3199
|
+
} = e, { meta: l, setFieldError: u, errorBag: c } = ue({ validateOnMount: !1 }), E = b(X(t.value)), m = b(!1);
|
|
3196
3200
|
ae(
|
|
3197
3201
|
t,
|
|
3198
3202
|
(w) => {
|
|
3199
|
-
|
|
3203
|
+
f.value && (m.value = !Fe(w, E.value));
|
|
3200
3204
|
},
|
|
3201
3205
|
{ deep: !0 }
|
|
3202
3206
|
);
|
|
3203
|
-
const
|
|
3207
|
+
const f = b(!1), d = I(() => f.value && m.value), A = I(() => !(!f.value || !l.value.valid || !m.value || a && !a.value));
|
|
3204
3208
|
function h() {
|
|
3205
|
-
|
|
3209
|
+
E.value = X(t.value), m.value = !1, f.value = !0;
|
|
3206
3210
|
}
|
|
3207
3211
|
function L() {
|
|
3208
|
-
|
|
3212
|
+
f.value = !0, m.value = !Fe(t.value, E.value);
|
|
3209
3213
|
}
|
|
3210
3214
|
function v() {
|
|
3211
3215
|
if (r)
|
|
3212
3216
|
return r();
|
|
3213
|
-
t.value = X(
|
|
3217
|
+
t.value = X(E.value);
|
|
3214
3218
|
}
|
|
3215
3219
|
if (s && Ys(d), n !== !1) {
|
|
3216
|
-
const { onBeforeClose: w } = ut(), { showConfirmation: C } =
|
|
3220
|
+
const { onBeforeClose: w } = ut(), { showConfirmation: C } = bn();
|
|
3217
3221
|
w(async () => {
|
|
3218
|
-
let
|
|
3219
|
-
if (typeof n == "object" ?
|
|
3220
|
-
const g = o ?
|
|
3222
|
+
let S;
|
|
3223
|
+
if (typeof n == "object" ? S = n.value && d.value : S = d.value, S) {
|
|
3224
|
+
const g = o ? Vt(o) : "You have unsaved changes. Are you sure you want to leave?";
|
|
3221
3225
|
return !await C(g);
|
|
3222
3226
|
}
|
|
3223
3227
|
return !1;
|
|
3224
3228
|
});
|
|
3225
3229
|
}
|
|
3226
|
-
return
|
|
3230
|
+
return kt(Wn, { isModified: d, canSave: A }), {
|
|
3227
3231
|
setBaseline: h,
|
|
3228
3232
|
markReady: L,
|
|
3229
3233
|
revert: v,
|
|
3230
|
-
canSave:
|
|
3234
|
+
canSave: A,
|
|
3231
3235
|
isModified: d,
|
|
3232
|
-
isReady: I(() =>
|
|
3236
|
+
isReady: I(() => f.value),
|
|
3233
3237
|
formMeta: l,
|
|
3234
|
-
setFieldError:
|
|
3235
|
-
errorBag:
|
|
3238
|
+
setFieldError: u,
|
|
3239
|
+
errorBag: c
|
|
3236
3240
|
};
|
|
3237
3241
|
}
|
|
3238
|
-
const Me = 14,
|
|
3239
|
-
function
|
|
3240
|
-
const n = e.length, s = (
|
|
3241
|
-
const m = n - 1 -
|
|
3242
|
-
let
|
|
3243
|
-
for (let
|
|
3244
|
-
|
|
3245
|
-
const d = m * Me +
|
|
3242
|
+
const Me = 14, Ma = 3;
|
|
3243
|
+
function pr(e, t, a) {
|
|
3244
|
+
const n = e.length, s = (c) => c !== void 0 && t.get(c) || 0, o = n > 0 ? e[n - 1] : void 0, r = s(o), l = e.map((c, E) => {
|
|
3245
|
+
const m = n - 1 - E;
|
|
3246
|
+
let f = 0;
|
|
3247
|
+
for (let A = E + 1; A < n; A++)
|
|
3248
|
+
f += s(e[A]);
|
|
3249
|
+
const d = m * Me + f;
|
|
3246
3250
|
return {
|
|
3247
3251
|
sonnerIndex: m,
|
|
3248
3252
|
zIndex: n - m,
|
|
3249
3253
|
offset: d,
|
|
3250
|
-
initialHeight: s(
|
|
3254
|
+
initialHeight: s(c)
|
|
3251
3255
|
};
|
|
3252
3256
|
});
|
|
3253
|
-
let
|
|
3257
|
+
let u;
|
|
3254
3258
|
if (a && n > 1) {
|
|
3255
|
-
const
|
|
3256
|
-
let
|
|
3259
|
+
const c = n - 1;
|
|
3260
|
+
let E = 0;
|
|
3257
3261
|
for (let d = 1; d < n; d++)
|
|
3258
|
-
|
|
3259
|
-
const m =
|
|
3260
|
-
|
|
3262
|
+
E += s(e[d]);
|
|
3263
|
+
const m = c * Me + E, f = s(e[0]);
|
|
3264
|
+
u = m + f;
|
|
3261
3265
|
} else
|
|
3262
|
-
|
|
3263
|
-
return { toasts: l, frontHeight: r, groupHeight:
|
|
3266
|
+
u = r + Math.min(n - 1, Ma - 1) * Me;
|
|
3267
|
+
return { toasts: l, frontHeight: r, groupHeight: u };
|
|
3264
3268
|
}
|
|
3265
|
-
function
|
|
3269
|
+
function Tr() {
|
|
3266
3270
|
const e = b(!1), t = b(!1);
|
|
3267
3271
|
let a = null;
|
|
3268
3272
|
function n() {
|
|
@@ -3274,18 +3278,18 @@ function hr() {
|
|
|
3274
3278
|
}, 200));
|
|
3275
3279
|
}
|
|
3276
3280
|
const o = ie(/* @__PURE__ */ new Map());
|
|
3277
|
-
function r(
|
|
3278
|
-
const
|
|
3279
|
-
o.get(
|
|
3281
|
+
function r(E, m) {
|
|
3282
|
+
const f = Math.round(m);
|
|
3283
|
+
o.get(E) !== f && o.set(E, f);
|
|
3280
3284
|
}
|
|
3281
|
-
function l(
|
|
3282
|
-
o.delete(
|
|
3285
|
+
function l(E) {
|
|
3286
|
+
o.delete(E);
|
|
3283
3287
|
}
|
|
3284
|
-
function
|
|
3288
|
+
function u() {
|
|
3285
3289
|
o.clear();
|
|
3286
3290
|
}
|
|
3287
|
-
function
|
|
3288
|
-
t.value =
|
|
3291
|
+
function c(E) {
|
|
3292
|
+
t.value = E;
|
|
3289
3293
|
}
|
|
3290
3294
|
return {
|
|
3291
3295
|
expanded: e,
|
|
@@ -3295,11 +3299,11 @@ function hr() {
|
|
|
3295
3299
|
collapseStack: s,
|
|
3296
3300
|
reportHeight: r,
|
|
3297
3301
|
forgetHeight: l,
|
|
3298
|
-
clearHeights:
|
|
3299
|
-
setInteracting:
|
|
3302
|
+
clearHeights: u,
|
|
3303
|
+
setInteracting: c
|
|
3300
3304
|
};
|
|
3301
3305
|
}
|
|
3302
|
-
const
|
|
3306
|
+
const hr = H({
|
|
3303
3307
|
name: "NotificationContainer",
|
|
3304
3308
|
inheritAttrs: !1,
|
|
3305
3309
|
props: {
|
|
@@ -3355,33 +3359,33 @@ const Lr = H({
|
|
|
3355
3359
|
}
|
|
3356
3360
|
},
|
|
3357
3361
|
setup(e) {
|
|
3358
|
-
const { notificationContainers: t, actions: a } = Q(
|
|
3362
|
+
const { notificationContainers: t, actions: a } = Q(Jt), n = I(() => t[e.position].value || []), {
|
|
3359
3363
|
expanded: s,
|
|
3360
3364
|
heightsMap: o,
|
|
3361
3365
|
expandStack: r,
|
|
3362
3366
|
collapseStack: l,
|
|
3363
|
-
reportHeight:
|
|
3364
|
-
forgetHeight:
|
|
3365
|
-
clearHeights:
|
|
3367
|
+
reportHeight: u,
|
|
3368
|
+
forgetHeight: c,
|
|
3369
|
+
clearHeights: E,
|
|
3366
3370
|
setInteracting: m
|
|
3367
|
-
} =
|
|
3368
|
-
function
|
|
3371
|
+
} = Tr();
|
|
3372
|
+
function f(L) {
|
|
3369
3373
|
return typeof L == "object" && (!!L?.render || !!L?.setup);
|
|
3370
3374
|
}
|
|
3371
3375
|
function d(L) {
|
|
3372
|
-
L && (
|
|
3376
|
+
L && (c(L), a.remove(L));
|
|
3373
3377
|
}
|
|
3374
|
-
function
|
|
3375
|
-
a.clear(),
|
|
3378
|
+
function A() {
|
|
3379
|
+
a.clear(), E();
|
|
3376
3380
|
}
|
|
3377
3381
|
const h = I(() => (e.position || "top-center").startsWith("top"));
|
|
3378
3382
|
return () => {
|
|
3379
|
-
const L = n.value, v = L.length, w = s.value || v <= 1, C = v > 1,
|
|
3383
|
+
const L = n.value, v = L.length, w = s.value || v <= 1, C = v > 1, S = pr(
|
|
3380
3384
|
L.map((p) => p.notificationId),
|
|
3381
3385
|
o,
|
|
3382
3386
|
w
|
|
3383
3387
|
), g = L.map((p, _) => {
|
|
3384
|
-
const { sonnerIndex: N, zIndex: B, offset: V, initialHeight: K } =
|
|
3388
|
+
const { sonnerIndex: N, zIndex: B, offset: V, initialHeight: K } = S.toasts[_], ce = {
|
|
3385
3389
|
"--toasts-before": N,
|
|
3386
3390
|
"--z-index": B,
|
|
3387
3391
|
"--offset": `${V}px`,
|
|
@@ -3389,14 +3393,14 @@ const Lr = H({
|
|
|
3389
3393
|
}, ge = {
|
|
3390
3394
|
...p,
|
|
3391
3395
|
onClose: d,
|
|
3392
|
-
onReportHeight:
|
|
3396
|
+
onReportHeight: u,
|
|
3393
3397
|
toastIndex: N,
|
|
3394
3398
|
toastsCount: v,
|
|
3395
3399
|
expanded: w,
|
|
3396
|
-
visibleToasts:
|
|
3400
|
+
visibleToasts: Ma,
|
|
3397
3401
|
style: ce
|
|
3398
|
-
},
|
|
3399
|
-
return ee("li", { key: p.notificationId, style: { display: "contents" } }, [
|
|
3402
|
+
}, ka = p.content && f(p.content) ? ee(gt, { ...ge, content: ee(cn(p.content)) }) : ee(gt, ge);
|
|
3403
|
+
return ee("li", { key: p.notificationId, style: { display: "contents" } }, [ka]);
|
|
3400
3404
|
});
|
|
3401
3405
|
let O = null;
|
|
3402
3406
|
return C && (O = ee(
|
|
@@ -3419,7 +3423,7 @@ const Lr = H({
|
|
|
3419
3423
|
"button",
|
|
3420
3424
|
{
|
|
3421
3425
|
type: "button",
|
|
3422
|
-
onClick:
|
|
3426
|
+
onClick: A
|
|
3423
3427
|
},
|
|
3424
3428
|
[
|
|
3425
3429
|
ee(Hn, { icon: "lucide-x", size: "xs", "aria-hidden": "true" }),
|
|
@@ -3435,10 +3439,10 @@ const Lr = H({
|
|
|
3435
3439
|
"data-position": e.position || "top-center",
|
|
3436
3440
|
"data-y-position": h.value ? "top" : "bottom",
|
|
3437
3441
|
style: {
|
|
3438
|
-
"--front-toast-height": `${
|
|
3442
|
+
"--front-toast-height": `${S.frontHeight}px`,
|
|
3439
3443
|
"--gap": `${Me}px`,
|
|
3440
3444
|
width: "var(--width, 356px)",
|
|
3441
|
-
height: `${
|
|
3445
|
+
height: `${S.groupHeight}px`
|
|
3442
3446
|
},
|
|
3443
3447
|
onMouseenter: r,
|
|
3444
3448
|
onMouseleave: l,
|
|
@@ -3453,40 +3457,40 @@ const Lr = H({
|
|
|
3453
3457
|
);
|
|
3454
3458
|
};
|
|
3455
3459
|
}
|
|
3456
|
-
}),
|
|
3460
|
+
}), Lr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
3457
3461
|
__proto__: null,
|
|
3458
|
-
default:
|
|
3462
|
+
default: hr
|
|
3459
3463
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
3460
|
-
function
|
|
3464
|
+
function Or(e, t) {
|
|
3461
3465
|
t.i18n?.locale && (z.global.locale.value = t.i18n.locale), t.i18n?.fallbackLocale && (z.global.fallbackLocale.value = t.i18n.fallbackLocale), e.use(z);
|
|
3462
|
-
const a =
|
|
3466
|
+
const a = Nn();
|
|
3463
3467
|
e.provide(Gn, a);
|
|
3464
3468
|
const { resolveCamelCaseLocale: n } = a;
|
|
3465
3469
|
e.config.globalProperties.$mergeLocaleMessage = (s, o) => {
|
|
3466
3470
|
z.global.mergeLocaleMessage(n(s), o);
|
|
3467
|
-
}, Object.entries(
|
|
3471
|
+
}, Object.entries(Vo).forEach(([s, o]) => {
|
|
3468
3472
|
z.global.mergeLocaleMessage(n(s), o);
|
|
3469
3473
|
});
|
|
3470
3474
|
}
|
|
3471
|
-
function
|
|
3472
|
-
const t =
|
|
3475
|
+
function Rr(e) {
|
|
3476
|
+
const t = Ua({
|
|
3473
3477
|
phone: 480,
|
|
3474
3478
|
desktop: 1024
|
|
3475
3479
|
});
|
|
3476
3480
|
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(xn, e.config.globalProperties.$isPhone), e.provide($n, e.config.globalProperties.$isTablet), e.provide(Kn, e.config.globalProperties.$isMobile), e.provide(zn, e.config.globalProperties.$isDesktop), e.provide(qn, e.config.globalProperties.$isTouch);
|
|
3477
3481
|
}
|
|
3478
|
-
function
|
|
3482
|
+
function _r(e) {
|
|
3479
3483
|
e.config.globalProperties.pages = [], e.config.globalProperties.bladeRoutes = [], e.provide(Yn, e.config.globalProperties.bladeRoutes);
|
|
3480
3484
|
}
|
|
3481
|
-
function
|
|
3482
|
-
e.provide(
|
|
3483
|
-
const t =
|
|
3484
|
-
e.provide(
|
|
3485
|
+
function Ir(e) {
|
|
3486
|
+
e.provide($t, Ka()), e.provide(Zn, za()), e.provide(jn, qa()), e.provide(Xn, Ya()), e.provide(Jn, Za()), e.provide(Qn, fe());
|
|
3487
|
+
const t = Dn(e);
|
|
3488
|
+
e.provide(Wt, t);
|
|
3485
3489
|
}
|
|
3486
|
-
function
|
|
3487
|
-
|
|
3490
|
+
function vr(e, t) {
|
|
3491
|
+
Ko(), e.use(Ds, { router: t.router }), e.use(Us), e.use(Ao), e.use(Oo), e.use(Cs), e.use(ws), e.use(Es), e.use(as, t.aiAgent);
|
|
3488
3492
|
}
|
|
3489
|
-
function
|
|
3493
|
+
function wr(e, t) {
|
|
3490
3494
|
if (!t.applicationInsights?.instrumentationKey) return;
|
|
3491
3495
|
const a = {
|
|
3492
3496
|
appInsightsConfig: {
|
|
@@ -3499,9 +3503,9 @@ function Cr(e, t) {
|
|
|
3499
3503
|
cloudRole: t.applicationInsights?.cloudRole,
|
|
3500
3504
|
cloudRoleInstance: t.applicationInsights?.cloudRoleInstance
|
|
3501
3505
|
};
|
|
3502
|
-
e.provide(
|
|
3506
|
+
e.provide(ja, a);
|
|
3503
3507
|
}
|
|
3504
|
-
function
|
|
3508
|
+
function Cr(e, t) {
|
|
3505
3509
|
if (!t.applicationInsights?.instrumentationKey) return;
|
|
3506
3510
|
const a = {
|
|
3507
3511
|
appInsightsConfig: {
|
|
@@ -3516,8 +3520,8 @@ function Pr(e, t) {
|
|
|
3516
3520
|
};
|
|
3517
3521
|
e.use(fs, a);
|
|
3518
3522
|
const n = e.runWithContext(() => ms());
|
|
3519
|
-
e.provide(
|
|
3520
|
-
const { setupPageTracking: s } =
|
|
3523
|
+
e.provide(Xa, n), e.runWithContext(() => {
|
|
3524
|
+
const { setupPageTracking: s } = Ja();
|
|
3521
3525
|
t.router.beforeEach((o) => {
|
|
3522
3526
|
s.beforeEach({ name: o.name });
|
|
3523
3527
|
}), t.router.afterEach((o) => {
|
|
@@ -3525,7 +3529,7 @@ function Pr(e, t) {
|
|
|
3525
3529
|
});
|
|
3526
3530
|
});
|
|
3527
3531
|
}
|
|
3528
|
-
function
|
|
3532
|
+
function Pr(e) {
|
|
3529
3533
|
const t = (a) => {
|
|
3530
3534
|
let n = {};
|
|
3531
3535
|
return Object.keys(a.params).length > 0 && (n = Object.fromEntries(Object.entries(a.params).filter(([s]) => s !== "pathMatch"))), n;
|
|
@@ -3553,21 +3557,21 @@ function br(e) {
|
|
|
3553
3557
|
} else return !0;
|
|
3554
3558
|
});
|
|
3555
3559
|
}
|
|
3556
|
-
const
|
|
3560
|
+
const ql = {
|
|
3557
3561
|
install(e, t) {
|
|
3558
|
-
|
|
3559
|
-
performance.mark("vc:deferred-plugins-start"),
|
|
3562
|
+
Yo(), $a().register([{ key: "light", localizationKey: "core.themes.light" }]), window.fetch = No(t.router), Or(e, t), Rr(e), _r(e), Ir(e), vr(e, t), wr(e, t), Uo(e), typeof window < "u" && (e.runWithContext(() => sa()), e.runWithContext(() => ra())), Pr(t.router), setTimeout(() => {
|
|
3563
|
+
performance.mark("vc:deferred-plugins-start"), Cr(e, t), performance.mark("vc:deferred-plugins-done");
|
|
3560
3564
|
}, 0);
|
|
3561
3565
|
}
|
|
3562
3566
|
};
|
|
3563
3567
|
export {
|
|
3564
|
-
|
|
3565
|
-
|
|
3566
|
-
|
|
3568
|
+
$f as AI_AGENT_URL_ENV_KEY,
|
|
3569
|
+
KE as AiAgentServiceKey,
|
|
3570
|
+
zE as ApiException,
|
|
3567
3571
|
qE as AppBarMobileButtonsServiceKey,
|
|
3568
3572
|
jn as AppBarWidgetServiceKey,
|
|
3569
|
-
|
|
3570
|
-
|
|
3573
|
+
Xa as AppInsightsInstanceKey,
|
|
3574
|
+
ja as AppInsightsOptionsKey,
|
|
3571
3575
|
YE as AppManifestClient,
|
|
3572
3576
|
ZE as AppPlacement,
|
|
3573
3577
|
jE as AppRootElementKey,
|
|
@@ -3577,73 +3581,73 @@ export {
|
|
|
3577
3581
|
Oo as AssetsManagerModule,
|
|
3578
3582
|
JE as AuthApiBase,
|
|
3579
3583
|
QE as AuthorizationClient,
|
|
3580
|
-
|
|
3584
|
+
jl as BUILTIN_CELL_TYPES,
|
|
3581
3585
|
ef as BladeBackButtonKey,
|
|
3582
3586
|
tf as BladeBannersKey,
|
|
3583
|
-
|
|
3587
|
+
zt as BladeContextKey,
|
|
3584
3588
|
af as BladeDataKey,
|
|
3585
|
-
|
|
3586
|
-
|
|
3589
|
+
Kt as BladeDescriptorKey,
|
|
3590
|
+
Xl as BladeError,
|
|
3587
3591
|
Wn as BladeFormKey,
|
|
3588
3592
|
nf as BladeLoadingKey,
|
|
3589
3593
|
sf as BladeMaximizedKey,
|
|
3590
|
-
|
|
3594
|
+
Mn as BladeMessagingKey,
|
|
3591
3595
|
of as BladeRenderingStateKey,
|
|
3592
3596
|
Yn as BladeRoutesKey,
|
|
3593
|
-
|
|
3594
|
-
|
|
3597
|
+
Bn as BladeStackKey,
|
|
3598
|
+
Jl as ButtonGroupKey,
|
|
3595
3599
|
ys as COMPONENT_DEFAULTS,
|
|
3596
|
-
|
|
3597
|
-
|
|
3598
|
-
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3600
|
+
Ql as CellDate,
|
|
3601
|
+
eu as CellDateAgo,
|
|
3602
|
+
tu as CellDefault,
|
|
3603
|
+
au as CellEditableWrapper,
|
|
3604
|
+
nu as CellHtml,
|
|
3605
|
+
su as CellImage,
|
|
3606
|
+
ou as CellLink,
|
|
3607
|
+
ru as CellMoney,
|
|
3608
|
+
iu as CellNumber,
|
|
3609
|
+
lu as CellStatus,
|
|
3610
|
+
uu as CellStatusIcon,
|
|
3607
3611
|
rf as ChangeLogClient,
|
|
3608
|
-
|
|
3609
|
-
|
|
3610
|
-
|
|
3611
|
-
|
|
3612
|
-
|
|
3613
|
-
|
|
3612
|
+
Rc as ChangePassword,
|
|
3613
|
+
_c as ChangePasswordButton,
|
|
3614
|
+
xl as ChangePasswordPage,
|
|
3615
|
+
Lm as ChartContainer,
|
|
3616
|
+
Om as ChartLegend,
|
|
3617
|
+
Rm as ChartTooltip,
|
|
3614
3618
|
lf as CloseSettingsMenuKey,
|
|
3615
|
-
|
|
3616
|
-
|
|
3617
|
-
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3621
|
-
|
|
3619
|
+
Ic as ColumnCollector,
|
|
3620
|
+
Kf as DEFAULT_AI_AGENT_CONFIG,
|
|
3621
|
+
_m as DashboardBarChart,
|
|
3622
|
+
Im as DashboardDonutChart,
|
|
3623
|
+
im as DashboardFeedList,
|
|
3624
|
+
lm as DashboardFeedRow,
|
|
3625
|
+
vm as DashboardLineChart,
|
|
3622
3626
|
uf as DashboardServiceKey,
|
|
3623
|
-
|
|
3624
|
-
|
|
3627
|
+
um as DashboardStatItem,
|
|
3628
|
+
cm as DashboardWidgetCard,
|
|
3625
3629
|
cf as DeveloperToolsClient,
|
|
3626
3630
|
df as DiagnosticsClient,
|
|
3627
|
-
|
|
3628
|
-
|
|
3631
|
+
cu as DisplayableError,
|
|
3632
|
+
dm as DraggableDashboard,
|
|
3629
3633
|
Ef as DynamicModulesKey,
|
|
3630
3634
|
ff as DynamicPropertiesClient,
|
|
3631
3635
|
mf as DynamicPropertyValueType,
|
|
3632
|
-
|
|
3636
|
+
zf as EMBEDDED_TO_HOST_MESSAGE_TYPES,
|
|
3633
3637
|
gf as EmbeddedModeKey,
|
|
3634
3638
|
Sf as EntryState,
|
|
3635
|
-
|
|
3639
|
+
vc as ErrorInterceptor,
|
|
3636
3640
|
Rs as ExtensionPoint,
|
|
3637
|
-
|
|
3638
|
-
|
|
3641
|
+
Cm as ExtensionPoints,
|
|
3642
|
+
Qo as ExternalProviders,
|
|
3639
3643
|
Af as ExternalSignInClient,
|
|
3640
|
-
|
|
3641
|
-
|
|
3642
|
-
|
|
3643
|
-
|
|
3644
|
-
|
|
3644
|
+
du as FALLBACK_BLADE_ID,
|
|
3645
|
+
Wl as ForgotPassword,
|
|
3646
|
+
Eu as FrameworkError,
|
|
3647
|
+
qf as HOST_TO_EMBEDDED_MESSAGE_TYPES,
|
|
3648
|
+
Mt as InjectionError,
|
|
3645
3649
|
pf as InternalRoutesKey,
|
|
3646
|
-
|
|
3650
|
+
Gl as Invite,
|
|
3647
3651
|
zn as IsDesktopKey,
|
|
3648
3652
|
Kn as IsMobileKey,
|
|
3649
3653
|
xn as IsPhoneKey,
|
|
@@ -3651,324 +3655,324 @@ export {
|
|
|
3651
3655
|
qn as IsTouchKey,
|
|
3652
3656
|
Tf as JobsClient,
|
|
3653
3657
|
hf as JsonValueKind,
|
|
3654
|
-
|
|
3655
|
-
|
|
3658
|
+
Em as LAYOUT_STORAGE_KEY,
|
|
3659
|
+
wc as LanguageSelector,
|
|
3656
3660
|
Gn as LanguageServiceKey,
|
|
3657
3661
|
Lf as LocalizableSettingsClient,
|
|
3658
|
-
|
|
3659
|
-
|
|
3660
|
-
|
|
3662
|
+
Fl as Login,
|
|
3663
|
+
Cc as LogoutButton,
|
|
3664
|
+
Pc as MenuBurgerIcon,
|
|
3661
3665
|
Xn as MenuServiceKey,
|
|
3662
|
-
|
|
3666
|
+
fu as ModuleLoadError,
|
|
3663
3667
|
Of as ModulesClient,
|
|
3664
3668
|
Rf as ModulesLoadErrorKey,
|
|
3665
3669
|
_f as ModulesReadyKey,
|
|
3666
3670
|
If as NOOP_URL_SINK,
|
|
3667
|
-
|
|
3668
|
-
|
|
3669
|
-
|
|
3671
|
+
hr as NotificationContainer,
|
|
3672
|
+
dn as NotificationContextKey,
|
|
3673
|
+
bc as NotificationDropdown,
|
|
3670
3674
|
Qn as NotificationStoreKey,
|
|
3671
|
-
|
|
3675
|
+
Nc as NotificationTemplate,
|
|
3672
3676
|
vf as OAuthAppsClient,
|
|
3673
3677
|
wf as ProgressMessageLevel,
|
|
3674
3678
|
Cf as PushNotificationClient,
|
|
3675
|
-
|
|
3676
|
-
|
|
3677
|
-
|
|
3678
|
-
|
|
3679
|
-
|
|
3680
|
-
|
|
3681
|
-
|
|
3682
|
-
|
|
3683
|
-
|
|
3679
|
+
mu as RegistrationError,
|
|
3680
|
+
Hl as ResetPassword,
|
|
3681
|
+
Dc as SCHEDULER_ZOOM_LEVELS,
|
|
3682
|
+
Pf as SecurityClient,
|
|
3683
|
+
gu as ServiceError,
|
|
3684
|
+
kn as SettingClient,
|
|
3685
|
+
bf as SettingValueType,
|
|
3686
|
+
yc as SettingsMenu,
|
|
3687
|
+
Bc as SettingsMenuItem,
|
|
3684
3688
|
Jn as SettingsMenuServiceKey,
|
|
3685
|
-
|
|
3686
|
-
|
|
3687
|
-
|
|
3688
|
-
|
|
3689
|
-
|
|
3690
|
-
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
|
|
3694
|
-
|
|
3695
|
-
|
|
3696
|
-
|
|
3697
|
-
|
|
3698
|
-
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
|
|
3702
|
-
|
|
3703
|
-
|
|
3689
|
+
Nf as SettingsV2Client,
|
|
3690
|
+
Df as ShellIndicatorsKey,
|
|
3691
|
+
Ul as Sidebar,
|
|
3692
|
+
yf as SortDirection,
|
|
3693
|
+
Mc as Table,
|
|
3694
|
+
kc as TableBody,
|
|
3695
|
+
Vc as TableCell,
|
|
3696
|
+
Uc as TableCheckbox,
|
|
3697
|
+
Fc as TableColumnSwitcher,
|
|
3698
|
+
Wc as TableEmpty,
|
|
3699
|
+
Hc as TableFooter,
|
|
3700
|
+
Gc as TableGroupRow,
|
|
3701
|
+
xc as TableHead,
|
|
3702
|
+
$c as TableHeader,
|
|
3703
|
+
Kc as TableRow,
|
|
3704
|
+
zc as TableRowActions,
|
|
3705
|
+
qc as TableSearchHeader,
|
|
3706
|
+
Yc as TableSelectAllBar,
|
|
3707
|
+
Zc as ThemeSelector,
|
|
3704
3708
|
Zn as ToolbarServiceKey,
|
|
3705
|
-
|
|
3706
|
-
|
|
3707
|
-
|
|
3708
|
-
|
|
3709
|
-
|
|
3710
|
-
|
|
3711
|
-
|
|
3712
|
-
|
|
3713
|
-
|
|
3714
|
-
|
|
3715
|
-
|
|
3716
|
-
|
|
3717
|
-
|
|
3718
|
-
|
|
3719
|
-
|
|
3720
|
-
|
|
3721
|
-
|
|
3722
|
-
|
|
3709
|
+
jc as UserDropdownButton,
|
|
3710
|
+
Su as ValidationError,
|
|
3711
|
+
Xc as VcAccordion,
|
|
3712
|
+
Jc as VcAccordionItem,
|
|
3713
|
+
Yf as VcAiAgentPanel,
|
|
3714
|
+
Qc as VcApp,
|
|
3715
|
+
ed as VcAppBarMobileActions,
|
|
3716
|
+
td as VcAppBarOverlay,
|
|
3717
|
+
ad as VcAppBarWidgetContent,
|
|
3718
|
+
nd as VcAppBarWidgetItem,
|
|
3719
|
+
sd as VcAppBarWidgetsMenu,
|
|
3720
|
+
od as VcAppDesktopLayout,
|
|
3721
|
+
rd as VcAppMenu,
|
|
3722
|
+
id as VcAppMenuSidebar,
|
|
3723
|
+
ld as VcAppMobileLayout,
|
|
3724
|
+
ud as VcAppSidebarCollapseButton,
|
|
3725
|
+
cd as VcAppSidebarContent,
|
|
3726
|
+
dd as VcAppSidebarHeader,
|
|
3723
3727
|
_e as VcAuthLayout,
|
|
3724
|
-
|
|
3725
|
-
|
|
3726
|
-
|
|
3727
|
-
|
|
3728
|
+
Ed as VcBadge,
|
|
3729
|
+
wn as VcBanner,
|
|
3730
|
+
Gt as VcBlade,
|
|
3731
|
+
fd as VcBladeNavigation,
|
|
3728
3732
|
Ds as VcBladeNavigationComponent,
|
|
3729
|
-
|
|
3730
|
-
|
|
3731
|
-
|
|
3733
|
+
md as VcBladeNavigationV2,
|
|
3734
|
+
gd as VcBladeSlot,
|
|
3735
|
+
Sd as VcBreadcrumbs,
|
|
3732
3736
|
x as VcButton,
|
|
3733
|
-
|
|
3734
|
-
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3737
|
+
Ad as VcButtonGroup,
|
|
3738
|
+
pd as VcCard,
|
|
3739
|
+
Td as VcCheckbox,
|
|
3740
|
+
hd as VcCheckboxGroup,
|
|
3741
|
+
Ld as VcCol,
|
|
3742
|
+
Au as VcColorInput,
|
|
3739
3743
|
Se as VcColumn,
|
|
3740
|
-
|
|
3741
|
-
|
|
3742
|
-
|
|
3743
|
-
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
|
|
3747
|
-
|
|
3744
|
+
Rn as VcContainer,
|
|
3745
|
+
In as VcDataTable,
|
|
3746
|
+
pu as VcDatePicker,
|
|
3747
|
+
Od as VcDropdown,
|
|
3748
|
+
Rd as VcDropdownItem,
|
|
3749
|
+
_d as VcDynamicProperty,
|
|
3750
|
+
Id as VcEditor,
|
|
3751
|
+
vd as VcEnvironmentBanner,
|
|
3748
3752
|
Ke as VcField,
|
|
3749
|
-
|
|
3753
|
+
wd as VcFileUpload,
|
|
3750
3754
|
me as VcForm,
|
|
3751
|
-
|
|
3755
|
+
Cd as VcGallery,
|
|
3752
3756
|
Ee as VcHint,
|
|
3753
3757
|
Hn as VcIcon,
|
|
3754
3758
|
ot as VcImage,
|
|
3755
|
-
|
|
3756
|
-
|
|
3759
|
+
Pd as VcImageTile,
|
|
3760
|
+
bd as VcImageUpload,
|
|
3757
3761
|
$ as VcInput,
|
|
3758
|
-
|
|
3759
|
-
|
|
3760
|
-
|
|
3761
|
-
|
|
3762
|
-
|
|
3763
|
-
|
|
3764
|
-
|
|
3765
|
-
|
|
3766
|
-
|
|
3767
|
-
|
|
3768
|
-
|
|
3769
|
-
|
|
3770
|
-
|
|
3771
|
-
|
|
3772
|
-
|
|
3773
|
-
|
|
3774
|
-
|
|
3775
|
-
|
|
3776
|
-
|
|
3777
|
-
|
|
3778
|
-
|
|
3779
|
-
|
|
3780
|
-
|
|
3781
|
-
|
|
3782
|
-
|
|
3783
|
-
|
|
3784
|
-
|
|
3785
|
-
|
|
3786
|
-
|
|
3787
|
-
|
|
3788
|
-
|
|
3762
|
+
Tu as VcInputCurrency,
|
|
3763
|
+
hu as VcInputDropdown,
|
|
3764
|
+
Nd as VcInputGroup,
|
|
3765
|
+
Lu as VcLabel,
|
|
3766
|
+
Dd as VcLanguageSelector,
|
|
3767
|
+
Ou as VcLink,
|
|
3768
|
+
xt as VcLoading,
|
|
3769
|
+
yd as VcMenu,
|
|
3770
|
+
Bd as VcMenuExpandedKey,
|
|
3771
|
+
Md as VcMenuGroup,
|
|
3772
|
+
kd as VcMenuItem,
|
|
3773
|
+
Vd as VcMultivalue,
|
|
3774
|
+
Ud as VcPagination,
|
|
3775
|
+
Fd as VcPopover,
|
|
3776
|
+
pn as VcPopup,
|
|
3777
|
+
Wd as VcProgress,
|
|
3778
|
+
Hd as VcRadioButton,
|
|
3779
|
+
Gd as VcRadioGroup,
|
|
3780
|
+
xd as VcRating,
|
|
3781
|
+
$d as VcRow,
|
|
3782
|
+
Kd as VcScheduler,
|
|
3783
|
+
Ru as VcScrollableContainer,
|
|
3784
|
+
_u as VcSelect,
|
|
3785
|
+
vn as VcSidebar,
|
|
3786
|
+
Iu as VcSkeleton,
|
|
3787
|
+
zd as VcSlider,
|
|
3788
|
+
vu as VcStatus,
|
|
3789
|
+
wu as VcStatusIcon,
|
|
3790
|
+
qd as VcSwitch,
|
|
3791
|
+
Yd as VcTable,
|
|
3792
|
+
_n as VcTextarea,
|
|
3789
3793
|
gt as VcToast,
|
|
3790
|
-
|
|
3791
|
-
|
|
3792
|
-
|
|
3793
|
-
|
|
3794
|
-
|
|
3795
|
-
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3794
|
+
Bf as VcTooltip,
|
|
3795
|
+
Zd as VcVideo,
|
|
3796
|
+
jd as VcWidget,
|
|
3797
|
+
Vn as WidgetScopeKey,
|
|
3798
|
+
$t as WidgetServiceKey,
|
|
3799
|
+
Ht as __registerBladeConfig,
|
|
3800
|
+
Xd as _createEnvironmentNameLogic,
|
|
3801
|
+
Mf as _createInternalUserLogic,
|
|
3802
|
+
$l as _resetAdapterState,
|
|
3803
|
+
kf as _sharedInternalUserLogic,
|
|
3804
|
+
Cu as addAppBarWidget,
|
|
3805
|
+
Pu as addMenuItem,
|
|
3806
|
+
bu as addSettingsMenuItem,
|
|
3807
|
+
Nu as after,
|
|
3804
3808
|
as as aiAgentPlugin,
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
|
|
3810
|
-
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
|
|
3815
|
-
|
|
3816
|
-
|
|
3809
|
+
Jd as autofocus,
|
|
3810
|
+
Du as before,
|
|
3811
|
+
yu as bigInt,
|
|
3812
|
+
Sl as camelToSnake,
|
|
3813
|
+
pl as camelize,
|
|
3814
|
+
fm as clearLayoutStorage,
|
|
3815
|
+
Bu as convertColorNameToHex,
|
|
3816
|
+
Mu as convertMomentFormat,
|
|
3817
|
+
Zf as createAiAgentToolbarButton,
|
|
3818
|
+
Rl as createAppModule,
|
|
3819
|
+
ku as createBackendRegistry,
|
|
3820
|
+
Vu as createKeyedBackendRegistry,
|
|
3817
3821
|
k as createLogger,
|
|
3818
|
-
|
|
3822
|
+
ql as default,
|
|
3819
3823
|
Et as defineAppModule,
|
|
3820
|
-
|
|
3821
|
-
|
|
3822
|
-
|
|
3823
|
-
|
|
3824
|
-
|
|
3825
|
-
|
|
3826
|
-
|
|
3827
|
-
|
|
3828
|
-
|
|
3829
|
-
|
|
3830
|
-
|
|
3831
|
-
|
|
3832
|
-
|
|
3833
|
-
|
|
3834
|
-
|
|
3835
|
-
|
|
3836
|
-
|
|
3837
|
-
|
|
3838
|
-
|
|
3839
|
-
|
|
3840
|
-
|
|
3841
|
-
|
|
3842
|
-
|
|
3843
|
-
|
|
3824
|
+
Ml as defineBladeContext,
|
|
3825
|
+
Pm as defineExtensionPoint,
|
|
3826
|
+
Qd as detectThemePreset,
|
|
3827
|
+
jf as expectedCode,
|
|
3828
|
+
Xf as expectedEventKey,
|
|
3829
|
+
Uu as fileWeight,
|
|
3830
|
+
eE as focusFallbackTarget,
|
|
3831
|
+
tE as focusIfLoose,
|
|
3832
|
+
aE as formatBadgeCount,
|
|
3833
|
+
Fu as formatDateRelative,
|
|
3834
|
+
Wu as formatDateWithPattern,
|
|
3835
|
+
Jf as formatShortcut,
|
|
3836
|
+
mm as fromGridstackNode,
|
|
3837
|
+
Ha as generateId,
|
|
3838
|
+
nE as getAllBladeConfigs,
|
|
3839
|
+
Hu as getBestThumbnailSize,
|
|
3840
|
+
sE as getBladeConfig,
|
|
3841
|
+
_l as getComponentDefaults,
|
|
3842
|
+
jt as getExtensionColor,
|
|
3843
|
+
Xt as getExtensionLabel,
|
|
3844
|
+
Gu as getMenuBadge,
|
|
3845
|
+
xu as getMenuBadges,
|
|
3846
|
+
$u as getThumbnailUrl,
|
|
3847
|
+
Qf as hotkey,
|
|
3844
3848
|
z as i18n,
|
|
3845
|
-
|
|
3846
|
-
|
|
3847
|
-
|
|
3848
|
-
|
|
3849
|
-
|
|
3849
|
+
kl as injectBladeContext,
|
|
3850
|
+
Ku as isFrameworkError,
|
|
3851
|
+
Yt as isImage,
|
|
3852
|
+
em as isTextInputFocused,
|
|
3853
|
+
zu as isValidHexColor,
|
|
3850
3854
|
_s as kebabToCamel,
|
|
3851
|
-
|
|
3852
|
-
|
|
3853
|
-
|
|
3854
|
-
|
|
3855
|
-
|
|
3856
|
-
|
|
3857
|
-
|
|
3858
|
-
|
|
3859
|
-
|
|
3860
|
-
|
|
3855
|
+
Al as kebabToPascal,
|
|
3856
|
+
oE as languageToCountryMap,
|
|
3857
|
+
gm as loadLayoutFromStorage,
|
|
3858
|
+
Wa as loading,
|
|
3859
|
+
Vf as logger,
|
|
3860
|
+
Uf as loggers,
|
|
3861
|
+
tm as matchesEvent,
|
|
3862
|
+
Sm as mergeLayoutWithWidgets,
|
|
3863
|
+
qu as mindimensions,
|
|
3864
|
+
Yu as normalizeHexColor,
|
|
3861
3865
|
J as notification,
|
|
3862
3866
|
Pe as parseError,
|
|
3863
3867
|
ws as permissions,
|
|
3864
|
-
|
|
3865
|
-
|
|
3866
|
-
|
|
3867
|
-
|
|
3868
|
-
|
|
3869
|
-
|
|
3870
|
-
|
|
3871
|
-
|
|
3872
|
-
|
|
3873
|
-
|
|
3874
|
-
|
|
3875
|
-
|
|
3876
|
-
|
|
3877
|
-
|
|
3878
|
-
|
|
3879
|
-
|
|
3880
|
-
|
|
3881
|
-
|
|
3882
|
-
|
|
3883
|
-
|
|
3884
|
-
|
|
3885
|
-
|
|
3868
|
+
Zu as provideAppBarState,
|
|
3869
|
+
rE as provideAppBarWidget,
|
|
3870
|
+
ju as provideDashboardService,
|
|
3871
|
+
iE as provideLanguages,
|
|
3872
|
+
Xu as provideMenuService,
|
|
3873
|
+
Ju as provideSettingsMenu,
|
|
3874
|
+
lE as provideSidebarState,
|
|
3875
|
+
Qu as provideToolbarService,
|
|
3876
|
+
Zt as readableSize,
|
|
3877
|
+
ec as registerBuiltinCells,
|
|
3878
|
+
tc as registerDashboardWidget,
|
|
3879
|
+
ac as registerExternalWidget,
|
|
3880
|
+
nc as registerToolbarItem,
|
|
3881
|
+
sc as registerWidget,
|
|
3882
|
+
oc as removeMenuBadge,
|
|
3883
|
+
rc as removeRegisteredMenuItem,
|
|
3884
|
+
uE as resolveEnvironment,
|
|
3885
|
+
ic as resolveLocale,
|
|
3886
|
+
lc as resolveLocaleSync,
|
|
3887
|
+
Am as saveLayoutToStorage,
|
|
3888
|
+
uc as setMenuBadge,
|
|
3889
|
+
cE as sidebarStorageKey,
|
|
3886
3890
|
Cs as signalR,
|
|
3887
|
-
|
|
3888
|
-
|
|
3889
|
-
|
|
3890
|
-
|
|
3891
|
-
|
|
3891
|
+
dE as stripTenantPrefix,
|
|
3892
|
+
pm as toGridstackWidget,
|
|
3893
|
+
EE as useAdaptiveItems,
|
|
3894
|
+
am as useAiAgent,
|
|
3895
|
+
Gf as useAiAgentContext,
|
|
3892
3896
|
$s as useApiClient,
|
|
3893
|
-
|
|
3894
|
-
|
|
3895
|
-
|
|
3896
|
-
|
|
3897
|
-
|
|
3898
|
-
|
|
3899
|
-
|
|
3900
|
-
|
|
3901
|
-
|
|
3897
|
+
fE as useAppBarMobileActions,
|
|
3898
|
+
cc as useAppBarState,
|
|
3899
|
+
mE as useAppBarWidget,
|
|
3900
|
+
gE as useAppBarWidgets,
|
|
3901
|
+
Ja as useAppInsights,
|
|
3902
|
+
Cl as useAssets,
|
|
3903
|
+
Pl as useAssetsManager,
|
|
3904
|
+
Qt as useAsync,
|
|
3905
|
+
SE as useBadge,
|
|
3902
3906
|
Ys as useBeforeUnload,
|
|
3903
3907
|
ut as useBlade,
|
|
3904
|
-
|
|
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
|
-
|
|
3937
|
-
|
|
3938
|
-
|
|
3939
|
-
|
|
3940
|
-
|
|
3908
|
+
zl as useBladeForm,
|
|
3909
|
+
dc as useBladeLoading,
|
|
3910
|
+
AE as useBladeMessaging,
|
|
3911
|
+
Kl as useBladeNavigation,
|
|
3912
|
+
Tl as useBladeNotifications,
|
|
3913
|
+
nm as useBladeStack,
|
|
3914
|
+
yl as useBladeWidgets,
|
|
3915
|
+
bl as useBreadcrumbs,
|
|
3916
|
+
Ll as useBroadcastFilter,
|
|
3917
|
+
Ec as useCellRegistry,
|
|
3918
|
+
pE as useCollapsible,
|
|
3919
|
+
TE as useColumnFilter,
|
|
3920
|
+
$o as useContainer,
|
|
3921
|
+
fc as useDashboard,
|
|
3922
|
+
hE as useDataTablePagination,
|
|
3923
|
+
LE as useDataTableSort,
|
|
3924
|
+
Nl as useDynamicProperties,
|
|
3925
|
+
OE as useEnvironmentName,
|
|
3926
|
+
mc as useErrorHandler,
|
|
3927
|
+
bm as useExtensionPoint,
|
|
3928
|
+
RE as useFilterState,
|
|
3929
|
+
gc as useFloatingPosition,
|
|
3930
|
+
Sc as useFormField,
|
|
3931
|
+
Il as useFunctions,
|
|
3932
|
+
_E as useGalleryPreview,
|
|
3933
|
+
Tm as useGridstack,
|
|
3934
|
+
IE as useImageLoad,
|
|
3935
|
+
Wo as useInstance,
|
|
3936
|
+
sm as useIsMac,
|
|
3937
|
+
om as useKeyboardShortcuts,
|
|
3938
|
+
vE as useLanguages,
|
|
3939
|
+
wl as useLatestRequest,
|
|
3940
|
+
ea as useLoading,
|
|
3941
|
+
wE as useMenuActiveState,
|
|
3942
|
+
Ac as useMenuService,
|
|
3943
|
+
Vl as useModificationTracker,
|
|
3944
|
+
hl as useNotificationContext,
|
|
3941
3945
|
fe as useNotificationStore,
|
|
3942
|
-
|
|
3946
|
+
vl as useNotifications,
|
|
3943
3947
|
st as usePermissions,
|
|
3944
|
-
|
|
3945
|
-
|
|
3946
|
-
|
|
3948
|
+
bn as usePopup,
|
|
3949
|
+
xa as useResponsive,
|
|
3950
|
+
pc as useScrollArrows,
|
|
3947
3951
|
we as useSettings,
|
|
3948
|
-
|
|
3949
|
-
|
|
3950
|
-
|
|
3951
|
-
|
|
3952
|
-
|
|
3953
|
-
|
|
3954
|
-
|
|
3955
|
-
|
|
3956
|
-
|
|
3957
|
-
|
|
3958
|
-
|
|
3959
|
-
|
|
3960
|
-
|
|
3961
|
-
|
|
3962
|
-
|
|
3963
|
-
|
|
3964
|
-
|
|
3965
|
-
|
|
3966
|
-
|
|
3967
|
-
|
|
3968
|
-
|
|
3969
|
-
|
|
3970
|
-
|
|
3971
|
-
|
|
3972
|
-
|
|
3973
|
-
|
|
3952
|
+
Tc as useSettingsMenu,
|
|
3953
|
+
CE as useShellBootstrap,
|
|
3954
|
+
PE as useShellLifecycle,
|
|
3955
|
+
bE as useShellNavigation,
|
|
3956
|
+
NE as useSidebarState,
|
|
3957
|
+
DE as useTableColumnsReorder,
|
|
3958
|
+
yE as useTableColumnsResize,
|
|
3959
|
+
BE as useTableContext,
|
|
3960
|
+
ME as useTableInlineEdit,
|
|
3961
|
+
Ol as useTableQueryState,
|
|
3962
|
+
kE as useTableRowGrouping,
|
|
3963
|
+
VE as useTableRowReorder,
|
|
3964
|
+
UE as useTableSearch,
|
|
3965
|
+
FE as useTableSelection,
|
|
3966
|
+
WE as useTableSort,
|
|
3967
|
+
Ff as useTeleportTarget,
|
|
3968
|
+
$a as useTheme,
|
|
3969
|
+
HE as useToggleableContent,
|
|
3970
|
+
hc as useToolbar,
|
|
3971
|
+
Wf as useUser,
|
|
3972
|
+
GE as useVirtualScroll,
|
|
3973
|
+
Dl as useWebVitals,
|
|
3974
|
+
Bl as useWidgetTrigger,
|
|
3975
|
+
xE as vAutofocus,
|
|
3976
|
+
Wa as vLoading,
|
|
3977
|
+
Lc as wrapError
|
|
3974
3978
|
};
|